最优化的非线性例子集中

最优化的非线性例子集中_第1张图片
上面的例子,是非线性的,是二次规划,但不知道是不是凸二次规划。问题是怎么判断,通过hessian matrix?因为线性的函数是凸函数,因此约束不用证明了,只要证明目标函数是不是凸函数就OK,那怎么证明呢?看链接https://blog.csdn.net/qq_39521554/article/details/78895869
里面有比较详细的介绍。
二次规划,有专有的名称,就做QP(Quadratic Programming),有专门的已经成熟的算法求解?

看https://blog.csdn.net/lilong117194/article/details/78204994 里面提到了集中求解方法,但是经过资料的搜集,可以发现,主要有两种方法:一种是内点法(Interior Point Method),一种是有效集法(Active Set Method, ASM),而且ASM似乎是对二次规划的内定算法。可是,可以看一下另外一篇blog https://blog.csdn.net/zc02051126/article/details/8588644里面提到的,对中等问题,是没有问题的,如果是大规模问题,怎么破呢?可以看 https://blog.csdn.net/dymodi/article/details/46441783#举例 这个里面说了另外一种方法,就是内点法。内点法里面有两种方法,障碍函数法(Barrier Method)和原始对偶法(Primal-Dual Method)。这里先重点关注 障碍函数法。

已经说了这么多方法,那么我们看看商业软件的应该是怎么样的?
首先是matlab,对于小规模的问题,应该没有问题的,这里用的是quadprog函数,可以看help文件的options中的Algorithm,里面有两种算法:‘interior-point-convex’ (default)和’trust-region-reflective’。居然没有ASM,但是有IPM,总算有一个啦。
接着看gurobi,对于大规模问题,应该是没有问题的。看gurobi中的help文件,看图
在这里插入图片描述
从上面的资料可以看出,用的是内点法中的BM。
3、
最优化的非线性例子集中_第2张图片
上面的例子是非线性规划(非二次规划的),但不知道是不是凸规划。问题是怎么判断?

因为有了非多项式的非线性,但是可以看出,exp的函数是凸函数
最优化的非线性例子集中_第3张图片
最优化的非线性例子集中_第4张图片
上面的例子还是二次规划,不知道怎么判断是不是凸规划。

你可能感兴趣的:(最优化的非线性例子集中)