Matlab遗传算法工具箱的使用(解决连续性优化问题)
问题:
我们经常需要在研究过程中求解一些比较复杂的公式,如下:
这样的公式,用常规的方法比较难以求解和
的关系,可以采用Matlab自带的优化工具箱遗传算法模块进行快速求解近似关系。
(1)首先转化公式:
首先将公式转化成优化目标和约束的关系式,如下:
min
s.t.
进一步转化约束为小于号,同时零在右边,如下:
s.t.
(2)编写目标与约束的脚本
目标脚本如下:
约束脚本如下:
其中c表示具有大小关系的约束,ceq表示等式关系,这里没有等式约束,因此空。
保存脚本之后,目录里有两个脚本文件:
(3)求解器设置
Matlab里优化求解器的位置:
点击之后,按照图中所示步骤操作:
结果如下: