使用 Excel 使用整数输入的求解器找到最佳结果(线性方程)
Finding best result with Excel Solver using integers for input (linear equation)
我有四种产品的库存,有确定的可用数量和确定的单一价格。我从客户那里收到固定金额的产品费用。
鉴于此数量,我必须找到最佳产品组合才能达到最接近客户定义的数量。例如:客户想要100.000,需要得到最接近100.000的。
table如下:
Product
Price
Amount Avaible
1
15000
1000
2
20000
1000
3
5500
1000
4
5000
1000
放入一个线性方程是这样的:
客户的投资 = Price1 * AMT1 + Price2 * AMT2 + Price3 * AMT3 + Price4 * AMT4
或
V = 15000x + 20000y + 5500z + 5000t
鉴于此,我想使用 solver 来达到产品的最佳分布,其中他要求的和我能提供的之间的差异最小。
使用求解器我可以轻松快速地得到这个,但我得到的非整数对股票不起作用。我尝试将所有变量四舍五入,但并不总是最佳解决方案,将其中一个四舍五入可以获得更好的结果(真的很少见)。
在 Solver 中将变量限制为整数需要无限长的时间 运行 并且在四舍五入的值中使用 Solver 总是给我一个错误。
是否有更好的解决方案,或者在每种情况下尝试最佳回合 (up/down) 组合的例程(也许 16 次迭代?)。
我不明白你为什么需要细胞 F9:F12...
我会将决策变量设置为单元格 C2:C5 并将它们设置为整数的约束。
如果总销售量为 100000,则将这些单元格的总和限制为小于或等于 100000,并将 objective 设置为总和的最大值。
感谢 Solar Mike 解决了。
变量变成了Amount和goal乘积值的总和。他们被设置为达到最大值(等于或小于目标)
Image of Solution
我有四种产品的库存,有确定的可用数量和确定的单一价格。我从客户那里收到固定金额的产品费用。
鉴于此数量,我必须找到最佳产品组合才能达到最接近客户定义的数量。例如:客户想要100.000,需要得到最接近100.000的。
table如下:
Product | Price | Amount Avaible | |
---|---|---|---|
1 | 15000 | 1000 | |
2 | 20000 | 1000 | |
3 | 5500 | 1000 | |
4 | 5000 | 1000 |
放入一个线性方程是这样的:
客户的投资 = Price1 * AMT1 + Price2 * AMT2 + Price3 * AMT3 + Price4 * AMT4
或
V = 15000x + 20000y + 5500z + 5000t
鉴于此,我想使用 solver 来达到产品的最佳分布,其中他要求的和我能提供的之间的差异最小。
使用求解器我可以轻松快速地得到这个,但我得到的非整数对股票不起作用。我尝试将所有变量四舍五入,但并不总是最佳解决方案,将其中一个四舍五入可以获得更好的结果(真的很少见)。
在 Solver 中将变量限制为整数需要无限长的时间 运行 并且在四舍五入的值中使用 Solver 总是给我一个错误。
是否有更好的解决方案,或者在每种情况下尝试最佳回合 (up/down) 组合的例程(也许 16 次迭代?)。
我不明白你为什么需要细胞 F9:F12...
我会将决策变量设置为单元格 C2:C5 并将它们设置为整数的约束。
如果总销售量为 100000,则将这些单元格的总和限制为小于或等于 100000,并将 objective 设置为总和的最大值。
感谢 Solar Mike 解决了。
变量变成了Amount和goal乘积值的总和。他们被设置为达到最大值(等于或小于目标)
Image of Solution