
Excel 里的规划求解插件中提供了一种求解方法,模拟大自然"物竞天择、适者生存"的方式来找最优解。(零代码零插件)
本文将介绍:
1. 算法原理、应用场景;
2. 介绍界面功能、原理以及推荐参数(可速查);
3. 结合具体优化示例,演示调用方法。
您的点赞是对我最大的支持,感谢感谢~
遗传算法,一种模拟生物进化“优胜劣汰”规律的全局优化算法。
核心逻辑可以参考本号的过往文章Matlab遗传算法-GA函数简介II。

这种算法可以自动地迭代多个变量,类似于“让一群猴子找山底”,可贵的是它不要求函数平滑可导。
在Excel中调用演化算法,不需要代码,也不需要额外下载插件,适用于需要快速迭代的场景,或者直接套用到具体的业务表格中。

本质上,就是在Excel中将需要迭代的业务场景翻译为:目标+可变单元格+约束。然后再由算法一遍遍筛选出最优解。
设想一下,
在人员排班场景里,需要调整员工搭配,找到满足工时和成本最低的组合;
在仓库选址时,希望通过迭代划定仓库可选的区域以确保运输距离最优;
考虑生产配料问题时,迭代不同营养成分达标且性价比最高的配方;
计算资源分配场景中,通过设定最大运行时间和收敛容差,在有限预算内不断迭代,直到产出接近理论最大值。
Excel内置的规划求解(Solver)
First:加载规划求解插件










演化算法是一种算法家族,Excel内置的算法是一种变体的遗传算法
具体可以参考 [solver.com帮助文档]

https://www.solver.com/genetic-evolutionary-introduction
在”选项“设置中控制演化算法(默认参数一般够用)


最后,附一下场景自查表,在某些简单场景可以通过其他模型更高效地解决问题。
a*x + b*y | Simplex LP | |
x²、exp、x*y,光滑 | GRG 非线性 | |
| 演化(本文介绍) | ||
下面是Excel中调用算法的操作演示。
在Excel中定义输入量和输出量,如果所示A2到E2单元格都是输入量,G2单元格为输出量。
优化目标是调整输入量的值,让输出量达到目标值400。

G2==A2+B2+C2*D2-E2
在规划求解界面中,定义输入输出

然后,在下方约束界面中定义约束

设置以后,选择优化的目标以及算法


点击“求解”得到优化结果。
