GA总是能找到目标低于SQP吗?

2视图(30天)
大家好!
这些天我用GA和SQP优化。
很奇怪的结果从SQP小于GA,即。从SQP,更好的结果。
我想我的代码都是正确的,但我不确定结果。
据说SQP只能找到局部最优结果,而遗传算法可以搜索全球。
但是为什么发生这种情况呢?
非常感谢您的帮助!
干杯

接受的答案

1月
1月 2014年12月29日
SQP方法从指定点和移动(几乎)以及当地梯度较小的函数值。如果开始点是在一个山谷,不包含全球最低只有一个微小的机会,在周围的群山超过偶然。
遗传算法使用一组开始点和交叉超过搜索区域的处理。因此有一个 更大的 机会找到全局最优。
3评论
艾伦·韦斯
艾伦·韦斯 2015年1月5日
很难知道如何回答你。你的数据显示每秒125功能评估,和5 e6总评价函数。这是一个大量的计算。你还说,GA exitflag返回2,表明你有非线性约束。
假设你的目标和非线性约束函数是光滑的,你可能会发现一些提示 当解决失败的文档 或者当 解决花费的时间太长 。尝试了你的建议之后,发现,你可能想问这里,但更多细节请给一些你们的非线性约束函数。
艾伦·韦斯
MATLAB数学工具箱文档

登录置评。

答案(1)

斯坦利程
斯坦利程 2014年12月29日
圣诞快乐,新年快乐!
谢谢这么多为你的答案!你都是对的,
但在我的项目,我想找到全局最小值。
所以我的策略是:针对同一目标,首先使用遗传算法解决方案,
然后SQP是用于获取解决方案B, A和B进行了比较。理想情况下应该小于B,证明遗传算法可以找到全局最小值而SQP发现当地的最小值。
上述现象的原因可能是:
我只使用默认gaoptimset,一些重要参数如populationsize、代等不根据实际情况设置。
我将得到更好的结果!
非常谢谢!
干杯

类别

找到更多的在和迭代解算器输出显示帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!