Python FMI卡在平坦区域
我想求解Python FMI卡在平坦区域,python,scipy,Python,Scipy,我想求解f(x)=0,因此我定义了g(x)=f(x)**2,并让fminbound运行g(x) 这里是pickle:正如您将看到的,我有x的理论边界,但在某些参数规范下,这些边界有些宽。显然,有时,fminbound卡在平坦区域,找不到解决方案。我能在这里做什么 这是[0,1.5]的f(x)图。我在fminbound中设置的边界是[0,2],但是f(x)在1.5之后保持平坦: 将优化例程视为函数上的一个短视的2d漫游棒形人物,他试图找到最低点。每走一步后,他都会向左和向右看,以确定下一步要走哪一
f(x)=0
,因此我定义了g(x)=f(x)**2
,并让fminbound
运行g(x)
这里是pickle:正如您将看到的,我有x
的理论边界,但在某些参数规范下,这些边界有些宽。显然,有时,fminbound
卡在平坦区域,找不到解决方案。我能在这里做什么
这是[0,1.5]
的f(x)
图。我在fminbound
中设置的边界是[0,2]
,但是f(x)
在1.5之后保持平坦:
将优化例程视为函数上的一个短视的2d漫游棒形人物,他试图找到最低点。每走一步后,他都会向左和向右看,以确定下一步要走哪一步。如果左侧和右侧是完全平坦的,这就不起作用了。对于数值最小化,起点至关重要。由于这似乎只是一个非常简单的1d函数,例如,您可以从一个简单的对分例程开始,以找到一个好的开始位置。将优化例程视为您函数上一个短视的2d漫游棒形,试图找到最低点。每走一步后,他都会向左和向右看,以确定下一步要走哪一步。如果左侧和右侧是完全平坦的,这就不起作用了。对于数值最小化,起点至关重要。由于这似乎只是一个非常简单的1d函数,您可以从一个简单的对分例程开始,找到一个好的开始位置。