假设分析可让您测试不同情景,观察它们如何影响结果。它为您提供一个安全的试验空间,去调整成本或产能等变量,从而找到最有效的方案。对于需要进行资源管理、排期规划或制定战略性业务决策的人来说,这种方法至关重要。
手动反复试错要花上数小时,且常常错过最优解。求解器能在几秒内保证数学上的最优性。这就是凭感觉分配资源与确信自己做出最佳决策之间的差别。
本教程将带您深入了解 Excel 求解器,这是一项专门用于此类优化问题的高级功能。我将通过真实案例向您展示如何搭建工作表、执行分析并解读结果。
理解 Excel 求解器:基础概念
在演示如何使用求解器之前,我先解释每个优化问题的三个构件。这些不只是术语,它们是求解器运作的核心。
目标单元格、决策变量与约束
将目标单元格视为您的目标。它是您想要最大化或最小化的公式,比如总利润或总成本。它必须是公式而非纯数字,因为求解器需要看到当您调整其他内容时它如何变化。
决策变量是您要找出的量。我们应生产多少把椅子?各个营销渠道应投入多少预算?我通常将这些初值设为 0,这样在求解器运行后更容易看出变化。
约束是您的限制与规则。您不能超出预算。您不能生产负数量。有些项目需要最低投资额。这些约束让数学问题更贴近现实,反映实际的业务限制。
工作原理如下:求解器会调整您的决策变量,在满足所有约束的前提下优化目标。如果您学过运筹学,这听起来会很熟悉;如果没有,也可以把它理解为带有保证的“聪明试错”。
与单变量求解的比较
我经常被问到这点。单变量求解更简单,它更改一个单元格以达到特定目标。当您知道想要的结果,只需找到能达到它的输入时,就用它。
求解器不同。当您需要在多个决策与多个约束之间寻找最佳答案时用它。如果您需要在权衡多个变量的同时实现最大化或最小化,求解器就派上用场了。
我的经验法则是:如果您能明确说出“我要的就是这个数”,用单变量求解;如果您在问“做这件事的最佳方式是什么?”,用求解器。
加载并激活求解器加载项
求解器随 Excel 一起提供,但您需要先开启它。别担心,不到一分钟。
Windows 与 Mac 的安装步骤
Windows:
- 文件 > 选项 > 加载项
- 在“管理”下拉中选择 Excel 加载项,点击 转到
- 勾选Solver Add-in(求解器加载项),点击 确定
- 转到数据选项卡,在分析组中找到求解器



Mac:
- 工具 > Excel 加载项
- 勾选Solver Add-in(求解器加载项),点击确定


如果您使用的是 Excel Online,很遗憾,它不支持求解器。您需要桌面版(2016 或更高)。
配置
激活后,通过 数据 选项卡 > 求解器 按钮进入。默认设置适用于大多数问题,不必过度思考。
不过,遇到问题时有两个设置更关键:精确度(Precision)决定求解器满足约束的严格程度。做财务模型、每分钱都重要时我会收紧它。收敛(Convergence)告诉求解器何时停止继续改进解。如果求解器过早停止且结果不够理想,我会降低这个阈值。
两者都在 求解器 参数 对话框 > 选项 按钮中,老实说我很少改动它们。
建立问题:在 Excel 中进行模型表述
干净的工作表能让求解器配置变得简单。
让我带您通过一个示例:一家家具制造商生产椅子和桌子。椅子每件利润 $60(需 4 小时工时、2 单位木材),桌子每件利润 $75(需 6 小时工时、2 单位木材)。我们有 240 小时工时与 100 单位木材可用。各应生产多少?
问题定义与工作表搭建
我对每个求解器模型的组织方式都相同。永远是四个部分:
- 输入数据(产品信息、资源上限)
- 决策变量(生产数量)
- 目标函数(总利润)
- 约束计算(资源使用量 vs. 可用量)

包含四个部分的完整求解器模型。作者供图。
这种布局让一切一目了然。查看您模型的人能立即看到您在优化什么以及受哪些限制约束。
接着,我总会为重要单元格创建所谓的命名区域。与其写=B8*B3+B9*B4,我可以写=SUMPRODUCT(QuantityToProduce,ProfitPerUnit)。六个月后当您忘了这些单元格引用含义时,这样更容易理解。

命名区域让公式更易读。作者供图。
创建方法:选中单元格,点击名称框,输入名称,按 Enter。两秒钟的事,省去后患。
决策变量与目标函数
我把决策变量初值设为 0,便于对比。有些人喜欢用估计值起步,也没问题,但 0 对我来说更顺手。
目标函数必须是公式。就我们的家具示例,我用:
=SUMPRODUCT(B8:B9,B3:B4)技术支持
它计算的是:(椅子 × $60)+(桌子 × $75)
就是乘法加法。对多数商业问题来说,这已足够。
约束
约束是您将真实业务限制转化为数学表达的地方。我们的家具厂有两条资源约束:
-
工时:=SUMPRODUCT(B8:B9,C3:C4) <= 240
-
木材: =SUMPRODUCT(B8:B9,D3:D4) <= 100
还有一点是我吃过亏才记住的:务必添加非负约束(B8:B9 >= 0)。否则求解器可能会建议生产“负数量”的椅子,这在现实中显然行不通。
我还会加一个状态列,用 =IF() 公式,比如 =IF(B16<=C16,"OK","EXCEEDED")。这样在运行求解器之前就能即时看到可视化反馈。绿色表示可以,红色表示设置有问题。
分步操作:如何在 Excel 中使用求解器
好了,模型已建立。现在我来演示如何实际运行求解器。一旦上手,这部分大概只需 30 秒。
使用“求解器参数”对话框
点击 数据 选项卡 > 求解器 按钮打开求解器。

配置前的求解器对话框。作者供图。
您需要填写:
设置目标(Set Objective):点击该字段,然后点选B12 单元格(我们的“总利润”)。
目标(To):选择最大值(Max),因为我们要最大化利润。
可变单元格(By Changing Variable Cells):选择B8:B9(我们要决定的数量)。
受约束条件限制(Subject to the Constraints):为每个约束点击添加(Add):
-
工时:$B$16 <= $C$16
-
木材:$B$17 <= $C$17
-
非负性:$B$8:$B$9 >= 0
选择求解方法(Select a Solving Method):选择Simplex LP。其他方法稍后再讲,但对这种线性问题,Simplex LP 就是您要的。

求解器已配置,准备求解。作者供图。
求解模型
点击“求解”之前,先快速查看当前值。所有地方都应为 0。

初始状态全部为 0。作者供图。
现在点击求解(Solve)。像我们这样的简单问题,几秒就能完成。

成功!求解器找到了最优解。作者供图。
当求解结果对话框弹出时,应显示“Solver found a solution.” 在“报告”下勾选答案(Answer)与敏感性(Sensitivity)。这些会生成详细分析,我们稍后查看。然后点击 确定。

最优解:30 把椅子和 20 张桌子。作者供图。
就这样。解显示我们应生产 30 把椅子和 20 张桌子,利润 $3,300。注意两条约束均为“OK”,说明我们高效使用了资源且未超限。
流程回顾
我每次都遵循这个流程:
- 搭建模型(输入、变量、目标、约束)
- 配置求解器(设置优化目标与可调整项)
- 点击 求解 并等待
- 检查结果是否符合业务常识
- 查看报告以获得更深入洞见
最后一步很重要。即使求解器找到了答案,也不代表它就是适合您业务的答案。务必对结果做理性检验。
求解方法、参数与高级选项
求解器提供三种不同算法。选对能显著提升速度与准确性。
求解方法概览

三种方法对应不同问题类型。作者供图。
Simplex LP
我有 80% 的时间都用 Simplex LP。适用于线性问题,运算仅为加法与乘法。产品组合?预算分配?资源计划?用 Simplex LP。它速度快,并能保证获得最优解。
GRG Nonlinear
GRG 非线性用于您的公式包含曲线、平方或指数项的情况。比如价格提升导致需求下降但不是直线关系的定价模型,或包含方差计算的投资组合优化。它找到的是局部最优,可能不是全局最优,但通常已足够好。
Evolutionary
进化算法是“暴力”选项。当您有整数约束(只能生产整数单位)、二元决策(是/否)或公式中包含 =IF() 时使用。它更慢,因为基本上是在尝试大量随机解并保留较好的那些,但当其他方法失效时它能奏效。t 它在其他方法失败时有效。
|
方法
|
适用场景
|
速度
|
示例
|
|
Simplex LP
|
线性问题(仅加法与乘法)
|
快
|
产品组合、预算分配
|
|
GRG Nonlinear
|
含曲线、平方、指数项的问题
|
中
|
定价模型、投资组合优化
|
|
Evolutionary
|
整数约束、IF 语句
|
慢
|
排班、项目选择
|
我的选择规则很简单:先用 Simplex LP;如果公式里有指数或变量与变量相乘,切换到 GRG 非线性;若需要整数或二元变量,使用进化算法。
求解器选项与设置
在求解器对话框中点击选项(Options)查看高级设置。我很少调整,但下面这些更重要:
用最大时间(Max Time)限制运行时长。默认 100 秒,对多数问题足够。大型模型需要更长时间时我会调高。
用迭代次数(Iterations)限制尝试次数。如果在此上限前未求解成功,增加它。
用精确度(Precision)控制对约束的严格程度。财务模型里我会收紧,否则保持默认。
报告生成与敏感性分析
还记得我让您勾选报告吗?您会得到这些。

“答案报告”记录解的细节。作者供图。
“答案报告”是您的留存记录。它显示发生了什么变化:决策变量从 0 变为 30 把椅子与 20 张桌子,利润从 $0 变为 $3,300。它还告诉您哪些约束是绑定的(完全用尽)与非绑定的(有松弛)。在我们的例子中,工时与木材均为绑定,意味着我们用满了所有可用产能。

输入能变动多大才会改变解。作者供图。
“敏感性报告”更有意思。允许增加/减少(Allowable Increase/Decrease)列显示您的输入在需要更换解之前可变动的幅度。范围越宽,说明答案越稳健;范围越窄,说明小变化就可能颠覆一切。

影子价格揭示资源价值。作者供图。
真正的“金矿”是影子价格。它告诉您每多一单位资源的价值。如果工时的影子价格是 $7.5,多一小时工时会让利润增加 $7.5。因此,若您能以 $5/小时雇到临时工,就去做;若要 $10/小时,则不划算。
敏感性分析的重要性
我用这些报告回答三个问题:应投资于哪些资源?我的解是否脆弱?如果预测出错会怎样?报告能为这三点提供清晰答案。
首先,我查看影子价格来判断应该投资哪些资源。影子价格越高,价值越高。
接着,我查看允许范围,评估我的解是否脆弱。若利润只要变动 $1 解就会改变,您处境危险;若可变动 $50 才会改变,那就很稳。
最后,我会问如果预测出错会怎样?允许范围告诉您在必须重新计算之前可以偏离多少。
我的建议:在批准预算前总要先看影子价格。如果某资源的影子价格为 0,意味着您有过剩产能。在那里追加投资是浪费。把钱投到影子价格最高的地方。
疑难排解与错误处理
求解器的错误提示看起来吓人,但通常很容易修复。以下是我最常见到的。
常见错误与消息
Solver could not find a feasible solution(找不到可行解)
这表示您的约束互相冲突。

没有任何解能满足所有约束。作者供图。
这种情况通常出现在您提出不可能的要求时,比如试图达成资源根本无法支持的利润目标。修复方法是一次移除一个约束,直到求解器能工作;这个过程能定位到底是哪条约束引发冲突。
Set Cell values do not converge(目标值不收敛)
这意味着您的目标可以无限增长。某处缺失上限。现实业务总有上限,请添加它们。
Solver cannot improve the current solution(无法改进当前解)
这通常出现在非线性问题上。尝试不同的初值,或切换到进化算法。有时局部最优已足够。
模型表述错误
循环引用
当 A 单元格依赖 B,而 B 又依赖 A 时就会发生。Excel 会警告您。使用 公式 选项卡 > 追踪从属单元 找到并打破循环。
整数约束

为整数添加约束。作者供图。
求解器的局限与大规模问题的替代方案
Excel 求解器很强,但也有您需要了解的限制。
了解求解器的限制
标准版求解器最多支持 200 个决策变量与 100 条约束。听起来很多,但当您要为 200 名员工安排 50 个时段时,就是 10,000 个变量,远超求解器能力。
我会用求解器做月度生产计划、季度预算与项目选择。它非常适合战术层面的决策。但它并非为企业级的大型问题(如含成千上万地点的供应链网络)而建。
大型问题的替代方案
OpenSolver
OpenSolver 是免费的,能移除这些限制。它能处理多到由您电脑内存决定的变量,界面与 Excel 求解器相同,您可以从 OpenSolver.org 下载。我建议当您超出标准求解器能力时使用它。
Frontline Solver Premium
Frontline Solver 需付费($300-$1,500/年),但支持成千上万个变量并配备更优算法。如果我全职专业从事这类工作,我会用它。
独立软件
像 CPLEX 或 Gurobi 等工具可处理数以百万计的变量,但需要编程知识与真正的投入。这是企业级别的东西。
在我看来,对大多数业务分析师而言,Excel 求解器能覆盖 95% 的需求。如果您碰到它的上限,这其实是好事,说明您做的工作足够复杂,值得采用更好的工具。
结语
我们涵盖了很多内容,从基础设置到解读影子价格。
现在,您不必在会议室里用主观意见争论,而是能把数字摆在屏幕上:“这是数学上最优的方案。” 这会改变对话方式。您不再猜测,而是用证据说话。
去试试把它用在您下一个棘手问题上吧,那些您一直在回避的排班冲突或预算挤压。也许完美答案一直就藏在您的工作表里。
如果您想学到更多能让上司刮目相看的技巧,欢迎学习我们的Excel 数据分析课程,继续提升自己。
假设分析可让您测试不同情景,观察它们如何影响结果。它为您提供一个安全的试验空间,去调整成本或产能等变量,从而找到最有效的方案。对于需要进行资源管理、排期规划或制定战略性业务决策的人来说,这种方法至关重要。
手动反复试错要花上数小时,且常常错过最优解。求解器能在几秒内保证数学上的最优性。这就是凭感觉分配资源与确信自己做出最佳决策之间的差别。
本教程将带您深入了解 Excel 求解器,这是一项专门用于此类优化问题的高级功能。我将通过真实案例向您展示如何搭建工作表、执行分析并解读结果。
理解 Excel 求解器:基础概念
在演示如何使用求解器之前,我先解释每个优化问题的三个构件。这些不只是术语,它们是求解器运作的核心。
目标单元格、决策变量与约束
将目标单元格视为您的目标。它是您想要最大化或最小化的公式,比如总利润或总成本。它必须是公式而非纯数字,因为求解器需要看到当您调整其他内容时它如何变化。
决策变量是您要找出的量。我们应生产多少把椅子?各个营销渠道应投入多少预算?我通常将这些初值设为 0,这样在求解器运行后更容易看出变化。
约束是您的限制与规则。您不能超出预算。您不能生产负数量。有些项目需要最低投资额。这些约束让数学问题更贴近现实,反映实际的业务限制。
工作原理如下:求解器会调整您的决策变量,在满足所有约束的前提下优化目标。如果您学过运筹学,这听起来会很熟悉;如果没有,也可以把它理解为带有保证的“聪明试错”。
与单变量求解的比较
我经常被问到这点。单变量求解更简单,它更改一个单元格以达到特定目标。当您知道想要的结果,只需找到能达到它的输入时,就用它。
求解器不同。当您需要在多个决策与多个约束之间寻找最佳答案时用它。如果您需要在权衡多个变量的同时实现最大化或最小化,求解器就派上用场了。
我的经验法则是:如果您能明确说出“我要的就是这个数”,用单变量求解;如果您在问“做这件事的最佳方式是什么?”,用求解器。
加载并激活求解器加载项
求解器随 Excel 一起提供,但您需要先开启它。别担心,不到一分钟。
Windows 与 Mac 的安装步骤
Windows:
Mac:
如果您使用的是 Excel Online,很遗憾,它不支持求解器。您需要桌面版(2016 或更高)。
配置
激活后,通过 数据 选项卡 > 求解器 按钮进入。默认设置适用于大多数问题,不必过度思考。
不过,遇到问题时有两个设置更关键:精确度(Precision)决定求解器满足约束的严格程度。做财务模型、每分钱都重要时我会收紧它。收敛(Convergence)告诉求解器何时停止继续改进解。如果求解器过早停止且结果不够理想,我会降低这个阈值。
两者都在 求解器 参数 对话框 > 选项 按钮中,老实说我很少改动它们。
建立问题:在 Excel 中进行模型表述
干净的工作表能让求解器配置变得简单。
让我带您通过一个示例:一家家具制造商生产椅子和桌子。椅子每件利润 $60(需 4 小时工时、2 单位木材),桌子每件利润 $75(需 6 小时工时、2 单位木材)。我们有 240 小时工时与 100 单位木材可用。各应生产多少?
问题定义与工作表搭建
我对每个求解器模型的组织方式都相同。永远是四个部分:
包含四个部分的完整求解器模型。作者供图。
这种布局让一切一目了然。查看您模型的人能立即看到您在优化什么以及受哪些限制约束。
接着,我总会为重要单元格创建所谓的命名区域。与其写
=B8*B3+B9*B4,我可以写=SUMPRODUCT(QuantityToProduce,ProfitPerUnit)。六个月后当您忘了这些单元格引用含义时,这样更容易理解。命名区域让公式更易读。作者供图。
创建方法:选中单元格,点击名称框,输入名称,按 Enter。两秒钟的事,省去后患。
决策变量与目标函数
我把决策变量初值设为 0,便于对比。有些人喜欢用估计值起步,也没问题,但 0 对我来说更顺手。
目标函数必须是公式。就我们的家具示例,我用:
它计算的是:(椅子 × $60)+(桌子 × $75)
就是乘法加法。对多数商业问题来说,这已足够。
约束
约束是您将真实业务限制转化为数学表达的地方。我们的家具厂有两条资源约束:
工时:
=SUMPRODUCT(B8:B9,C3:C4) <= 240木材:
=SUMPRODUCT(B8:B9,D3:D4) <= 100还有一点是我吃过亏才记住的:务必添加非负约束(
B8:B9 >= 0)。否则求解器可能会建议生产“负数量”的椅子,这在现实中显然行不通。我还会加一个状态列,用
=IF()公式,比如=IF(B16<=C16,"OK","EXCEEDED")。这样在运行求解器之前就能即时看到可视化反馈。绿色表示可以,红色表示设置有问题。分步操作:如何在 Excel 中使用求解器
好了,模型已建立。现在我来演示如何实际运行求解器。一旦上手,这部分大概只需 30 秒。
使用“求解器参数”对话框
点击 数据 选项卡 > 求解器 按钮打开求解器。
配置前的求解器对话框。作者供图。
您需要填写:
设置目标(Set Objective):点击该字段,然后点选B12 单元格(我们的“总利润”)。
目标(To):选择最大值(Max),因为我们要最大化利润。
可变单元格(By Changing Variable Cells):选择B8:B9(我们要决定的数量)。
受约束条件限制(Subject to the Constraints):为每个约束点击添加(Add):
工时:
$B$16 <= $C$16木材:
$B$17 <= $C$17非负性:
$B$8:$B$9 >= 0选择求解方法(Select a Solving Method):选择Simplex LP。其他方法稍后再讲,但对这种线性问题,Simplex LP 就是您要的。
求解器已配置,准备求解。作者供图。
求解模型
点击“求解”之前,先快速查看当前值。所有地方都应为 0。
初始状态全部为 0。作者供图。
现在点击求解(Solve)。像我们这样的简单问题,几秒就能完成。
成功!求解器找到了最优解。作者供图。
当求解结果对话框弹出时,应显示“Solver found a solution.” 在“报告”下勾选答案(Answer)与敏感性(Sensitivity)。这些会生成详细分析,我们稍后查看。然后点击 确定。
最优解:30 把椅子和 20 张桌子。作者供图。
就这样。解显示我们应生产 30 把椅子和 20 张桌子,利润 $3,300。注意两条约束均为“OK”,说明我们高效使用了资源且未超限。
流程回顾
我每次都遵循这个流程:
最后一步很重要。即使求解器找到了答案,也不代表它就是适合您业务的答案。务必对结果做理性检验。
求解方法、参数与高级选项
求解器提供三种不同算法。选对能显著提升速度与准确性。
求解方法概览
三种方法对应不同问题类型。作者供图。
Simplex LP
我有 80% 的时间都用 Simplex LP。适用于线性问题,运算仅为加法与乘法。产品组合?预算分配?资源计划?用 Simplex LP。它速度快,并能保证获得最优解。
GRG Nonlinear
GRG 非线性用于您的公式包含曲线、平方或指数项的情况。比如价格提升导致需求下降但不是直线关系的定价模型,或包含方差计算的投资组合优化。它找到的是局部最优,可能不是全局最优,但通常已足够好。
Evolutionary
进化算法是“暴力”选项。当您有整数约束(只能生产整数单位)、二元决策(是/否)或公式中包含
=IF()时使用。它更慢,因为基本上是在尝试大量随机解并保留较好的那些,但当其他方法失效时它能奏效。t 它在其他方法失败时有效。方法
适用场景
速度
示例
Simplex LP
线性问题(仅加法与乘法)
快
产品组合、预算分配
GRG Nonlinear
含曲线、平方、指数项的问题
中
定价模型、投资组合优化
Evolutionary
整数约束、IF 语句
慢
排班、项目选择
我的选择规则很简单:先用 Simplex LP;如果公式里有指数或变量与变量相乘,切换到 GRG 非线性;若需要整数或二元变量,使用进化算法。
求解器选项与设置
在求解器对话框中点击选项(Options)查看高级设置。我很少调整,但下面这些更重要:
用最大时间(Max Time)限制运行时长。默认 100 秒,对多数问题足够。大型模型需要更长时间时我会调高。
用迭代次数(Iterations)限制尝试次数。如果在此上限前未求解成功,增加它。
用精确度(Precision)控制对约束的严格程度。财务模型里我会收紧,否则保持默认。
报告生成与敏感性分析
还记得我让您勾选报告吗?您会得到这些。
“答案报告”记录解的细节。作者供图。
“答案报告”是您的留存记录。它显示发生了什么变化:决策变量从 0 变为 30 把椅子与 20 张桌子,利润从 $0 变为 $3,300。它还告诉您哪些约束是绑定的(完全用尽)与非绑定的(有松弛)。在我们的例子中,工时与木材均为绑定,意味着我们用满了所有可用产能。
输入能变动多大才会改变解。作者供图。
“敏感性报告”更有意思。允许增加/减少(Allowable Increase/Decrease)列显示您的输入在需要更换解之前可变动的幅度。范围越宽,说明答案越稳健;范围越窄,说明小变化就可能颠覆一切。
影子价格揭示资源价值。作者供图。
真正的“金矿”是影子价格。它告诉您每多一单位资源的价值。如果工时的影子价格是 $7.5,多一小时工时会让利润增加 $7.5。因此,若您能以 $5/小时雇到临时工,就去做;若要 $10/小时,则不划算。
敏感性分析的重要性
我用这些报告回答三个问题:应投资于哪些资源?我的解是否脆弱?如果预测出错会怎样?报告能为这三点提供清晰答案。
首先,我查看影子价格来判断应该投资哪些资源。影子价格越高,价值越高。
接着,我查看允许范围,评估我的解是否脆弱。若利润只要变动 $1 解就会改变,您处境危险;若可变动 $50 才会改变,那就很稳。
最后,我会问如果预测出错会怎样?允许范围告诉您在必须重新计算之前可以偏离多少。
我的建议:在批准预算前总要先看影子价格。如果某资源的影子价格为 0,意味着您有过剩产能。在那里追加投资是浪费。把钱投到影子价格最高的地方。
疑难排解与错误处理
求解器的错误提示看起来吓人,但通常很容易修复。以下是我最常见到的。
常见错误与消息
Solver could not find a feasible solution(找不到可行解)
这表示您的约束互相冲突。
没有任何解能满足所有约束。作者供图。
这种情况通常出现在您提出不可能的要求时,比如试图达成资源根本无法支持的利润目标。修复方法是一次移除一个约束,直到求解器能工作;这个过程能定位到底是哪条约束引发冲突。
Set Cell values do not converge(目标值不收敛)
这意味着您的目标可以无限增长。某处缺失上限。现实业务总有上限,请添加它们。
Solver cannot improve the current solution(无法改进当前解)
这通常出现在非线性问题上。尝试不同的初值,或切换到进化算法。有时局部最优已足够。
模型表述错误
循环引用
当 A 单元格依赖 B,而 B 又依赖 A 时就会发生。Excel 会警告您。使用 公式 选项卡 > 追踪从属单元 找到并打破循环。
整数约束
为整数添加约束。作者供图。
求解器的局限与大规模问题的替代方案
Excel 求解器很强,但也有您需要了解的限制。
了解求解器的限制
标准版求解器最多支持 200 个决策变量与 100 条约束。听起来很多,但当您要为 200 名员工安排 50 个时段时,就是 10,000 个变量,远超求解器能力。
我会用求解器做月度生产计划、季度预算与项目选择。它非常适合战术层面的决策。但它并非为企业级的大型问题(如含成千上万地点的供应链网络)而建。
大型问题的替代方案
OpenSolver
OpenSolver 是免费的,能移除这些限制。它能处理多到由您电脑内存决定的变量,界面与 Excel 求解器相同,您可以从 OpenSolver.org 下载。我建议当您超出标准求解器能力时使用它。
Frontline Solver Premium
Frontline Solver 需付费($300-$1,500/年),但支持成千上万个变量并配备更优算法。如果我全职专业从事这类工作,我会用它。
独立软件
像 CPLEX 或 Gurobi 等工具可处理数以百万计的变量,但需要编程知识与真正的投入。这是企业级别的东西。
在我看来,对大多数业务分析师而言,Excel 求解器能覆盖 95% 的需求。如果您碰到它的上限,这其实是好事,说明您做的工作足够复杂,值得采用更好的工具。
结语
我们涵盖了很多内容,从基础设置到解读影子价格。
现在,您不必在会议室里用主观意见争论,而是能把数字摆在屏幕上:“这是数学上最优的方案。” 这会改变对话方式。您不再猜测,而是用证据说话。
去试试把它用在您下一个棘手问题上吧,那些您一直在回避的排班冲突或预算挤压。也许完美答案一直就藏在您的工作表里。
如果您想学到更多能让上司刮目相看的技巧,欢迎学习我们的Excel 数据分析课程,继续提升自己。