关于智能优化的笔记
智能优化
- 在matlab中进行优化
- 优化
- 即达到最佳状态→达到最大值/最小值
- 把实际问题抽象为一个函数→求解最大值/最小值
- 在实际问题中诸多可调整参数抽象为优化变量
- 建立一个模型,通过寻找某组值使得目标函数达到最大值/最小值
- 过程即为优化算法
- 当得到的目标函数简单时,可通过解析找到最大值/最小值
- 当得到的目标函数复杂时,通过数学方法找到局部最优解
- 当优化参数之间存在关系时,需附加约束条件
- 即达到最佳状态→达到最大值/最小值
例:青蛙跳远
青蛙的腿,结构等是优化变量
调整青蛙能跳的最远是目标函数
使得青蛙跳的最远的参数就是最优解
求得最优解过程需要的工具就是求解器
优化流程:想要对某个实例进行优化,首先建立起目标函数,其次获取优化变量(附加约束条件),最终求得最大值/最小值。若优化算法最后只能求得最大值/最小值,则需要对其进行变换得到想要的优化效果。
曲线拟合(求最小值)
即拟合曲线上的点和被拟合的点坐标差值尽可能小
例:线性拟合中求f(x)=kx+b里面的k,b
找到能使g(x)=Σ|f(xi)-yi|求得最小值的k,b值
通过多项式可以尽可能拟合
使用matlab进行优化操作
打开matlab中任务,选择优化,选择模式(基于问题/基于解决),选择目标、约束、求解器(算法)、问题数据等
运行节,等待算法运算,输出优化结果