Matlab遗传算法工具箱的使用(解决连续性优化问题)

问题:

我们经常需要在研究过程中求解一些比较复杂的公式,如下:

Matlab遗传算法工具箱的使用(解决连续性优化问题)

这样的公式,用常规的方法比较难以求解Matlab遗传算法工具箱的使用(解决连续性优化问题)Matlab遗传算法工具箱的使用(解决连续性优化问题)的关系,可以采用Matlab自带的优化工具箱遗传算法模块进行快速求解近似关系。

(1)首先转化公式:

首先将公式转化成优化目标和约束的关系式,如下:

min Matlab遗传算法工具箱的使用(解决连续性优化问题)

s.t.Matlab遗传算法工具箱的使用(解决连续性优化问题)

进一步转化约束为小于号,同时零在右边,如下:

s.t.Matlab遗传算法工具箱的使用(解决连续性优化问题)

(2)编写目标与约束的脚本

目标脚本如下:

Matlab遗传算法工具箱的使用(解决连续性优化问题)

约束脚本如下:

Matlab遗传算法工具箱的使用(解决连续性优化问题)

其中c表示具有大小关系的约束,ceq表示等式关系,这里没有等式约束,因此空。

保存脚本之后,目录里有两个脚本文件:

Matlab遗传算法工具箱的使用(解决连续性优化问题)

(3)求解器设置

Matlab里优化求解器的位置:

Matlab遗传算法工具箱的使用(解决连续性优化问题)

点击之后,按照图中所示步骤操作:

Matlab遗传算法工具箱的使用(解决连续性优化问题)

结果如下:

Matlab遗传算法工具箱的使用(解决连续性优化问题)