Matlab之fmincon函数 100
如果其中包含半连续变量,即或者等于零,或者是连续变量。(为零或者为连续变量求解前已知),这样的nlp问题,fmincon求解是否会慢?如何解决这个问题?...
如果其中包含半连续变量,即或者等于零,或者是连续变量。(为零或者为连续变量求解前已知),这样的nlp问题,fmincon求解是否会慢?如何解决这个问题?
展开
2个回答
展开全部
matlab解决具有非线性约束条件的目标函数求解常用的函数是fmincon。它包含了好几个寻优算法,有些算法确实对处理不连续约束条件能力较差。你既然知道约束条件的连续性,那么在间断点不多的情况下可以先分段求解最小值。然后再用比较函数求最优值。还有,据我所知遗传算法好像也可以解决非线性约束问题,但我也不是很清楚能否正好对症你的问题。获者你把你的问题具体给出来,看看大家能不能解决。
追问
问题是MINLP,分断线性的是变量,并不是你所说的函数分段线性问题。另外,变量个数很多,你的办法也不能解决我的问题。
追答
我有本书叫数学建模,那上面讲了处理NLP问题的三种方法。其中有代表性的是引入0 - 1变量处理分段线性函数,化为整数规划模型。把模型转化以后,就可以用MATLAB或者LINGO软件中求解了。至于转化方法,到处是公式,打不出来的。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询