前言
优化算法是指在满足一定条件下,在众多方案中或者参数中最优方案,或者参数值,以使得某个或者多个功能指标达到最优,或使得系统的某些性能指标达到最大值或者最小值。
现实问题中,很多都需要用到优化。可以说优化随处可见。在普通的函数寻找极值、空间配置、背包问题、旅行商问题中都需要用到优化算法。在机器学习中优化算法能够帮助我们在大量的迭代中快速训练模型。
01实例分析
此篇介绍0-1规划,以经典的背包问题为例。MATLAB智能优化算法:从写代码到算法思想【1】中的第一章就提到了用遗传算法求解背包问题。为了对照结果,此篇选用文中的数据,并与结果进行对照。
有50个物品和1个背包,每个物品有相应的价值和重量,背包可承受的最大重量为1000kg,要在重量范围内选取最大价值的物品。
各个物品质量和价值如下:
最后书中的求解结果如下: