ZKX's LAB

在做MATLAB约束最优化时,目标函数值越来越大,为什么? 没有目标函数的最优化约束

2020-10-10知识8

matlab有没有命令可以直接计算目标函数和约束均为非线性的单变量最优化问题? 我知道,有约束的一元函数的最小值用命令fminbnd(fun,x1,x2);但是,如果约束不是x1x1或者x,这个命令该怎么用呢?还有,如果约束比较多,又不好求显示解(正如我上面的问题一样),又该怎么办呢?我知道,我的问题其实应该就是用这个命令可以解决(但问题是我先要对其进行化简,还是挺麻烦的),但是有没有更好更方便的办法呢?谢谢各位

在做MATLAB约束最优化时,目标函数值越来越大,为什么? 没有目标函数的最优化约束

在凸优化中,目标函数必须是凸函数吗 其几何意义表示为:如果集合C中任意2个元素连线上的点也在集合C中,则C为凸集。其示意图如下所示:常见的凸集有:n维实数空间;一些范数约束形式的集合;。

在做MATLAB约束最优化时,目标函数值越来越大,为什么? 没有目标函数的最优化约束

如果matlab 优化当中, 目标函数 和 约束条件都很复杂,没有办法直接用x 表示出来,该怎么处理? 目标函数形式不是很重要,fmincon不需要知道目标函数的结果是怎么求出来的只要是利用一个x未知向量输入,得到一个结果的函数就可以你的约束条件好像也并不复杂,奇怪的是如果要权重x加起来是1那么每个x分量的值应该是0~1之间的正数才是而你给输入初始化x0的值是-1~1之间的随机数,所以这里比较奇怪问题的关键就是多目标的问题fmincon是只能寻找一个目标的,也就是目标函数只有一个返回值如果要多目标优化,那么需要使用遗传算法或其它办法但是多目标优化本来就是一个可能不能完全实现所有目标的优化结果也就是说多个目标很多时候是无法同时达到的,和多时候只能得到离多个目标都比较近的结果所以,多目标的优化一般会给帕累托解集不过,也有简单一点的办法,因为很多时候,我们是知道鱼与熊掌是不能兼得的我们要优化结果只是尽量靠近目标就可以了对于有多目标的,很多时候我们需要的只是一个离所有目标都比较接近的解例如最小二乘法意义的最优解这个时候可以根据得到的theta,计算 theta(1)-0.24,theta(2)-0.38,.等多个目标的平方和的开方,利用这个总的\"距离\"作为优化目标如果得到的theta是向量,而多个目标o,o(1)=0.24,o(2)=0.38,.也可以。

在做MATLAB约束最优化时,目标函数值越来越大,为什么? 没有目标函数的最优化约束

在凸优化中,目标函数必须是凸函数吗 其几何意义表示为:如果集合C中任意2个元素连线上的点也在集合C中,则C为凸集。其示意图如下所示:常见的凸集有:n维实数空间;。

已知目标函数和设计变量的关系式、确定了约束条件,进行最优化计算该用什么软件

#目标函数#matlab函数

qrcode
访问手机版