matlab程序调试显示结果,不知道是什么意思?请高手指教?运行的结果不符合约束条件。
答案:2 悬赏:0 手机版
解决时间 2021-02-17 20:18
- 提问者网友:杀手的诗
- 2021-02-17 02:20
matlab程序调试显示结果,不知道是什么意思?请高手指教?运行的结果不符合约束条件。
最佳答案
- 五星知识达人网友:时间的尘埃
- 2021-02-17 03:01
意思是说:
警告:用于大型优化问题的信赖域方法不能解决楼主这种类型问题,请改为中型优化算法(线性搜索算法);
已经超过了最大目标函数计算次数,请调高此设置,即OPTIONS.MaxFunEvals
事实上,很可能是你的优化模型有问题,没有最有解。
options=optimset('LargeScale','off','display','iter','MaxFunEvals',100000);
用上面这句代替原程序中的代码,仍然没有最优结果,基本上是你的模型的问题,你有很多等式约束,这种优化不好搞,能不能消掉几个设计变量,减少等式约束的个数。追问非常感谢啊,这个程序运行有结果,但是变量的值不满足我的等式约束条件,为什么啊?减少等式约束的个数可以求得最优解吗?追答不满足约束条件的解是没有意义的。
一般来说,一个等值约束条件可以消掉一个设计变量,通过这种办法可以简化优化求解过程。但不能完全保证一定可以得到最优解。
警告:用于大型优化问题的信赖域方法不能解决楼主这种类型问题,请改为中型优化算法(线性搜索算法);
已经超过了最大目标函数计算次数,请调高此设置,即OPTIONS.MaxFunEvals
事实上,很可能是你的优化模型有问题,没有最有解。
options=optimset('LargeScale','off','display','iter','MaxFunEvals',100000);
用上面这句代替原程序中的代码,仍然没有最优结果,基本上是你的模型的问题,你有很多等式约束,这种优化不好搞,能不能消掉几个设计变量,减少等式约束的个数。追问非常感谢啊,这个程序运行有结果,但是变量的值不满足我的等式约束条件,为什么啊?减少等式约束的个数可以求得最优解吗?追答不满足约束条件的解是没有意义的。
一般来说,一个等值约束条件可以消掉一个设计变量,通过这种办法可以简化优化求解过程。但不能完全保证一定可以得到最优解。
全部回答
- 1楼网友:杯酒困英雄
- 2021-02-17 04:07
好难啊,我也不知道。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯