Matlab 优化电缆总数

Matlab 优化电缆总数,matlab,vba,optimization,Matlab,Vba,Optimization,我需要不同的小尺寸(100米以下)和电缆,只有在100米的长度出售很多电缆 所以,为了优化我的购买,我想要一个代码,我可以输入我需要的所有电缆的长度。代码将在总和小于100的约束条件下合并我的输入,同时最小化我需要购买的100米长电缆的总数 如果有人能在VBA、Matlab或Python中提供代码帮助,我将不胜感激。这被称为a,实际上很难(从计算角度)找到最佳解决方案 然而,这是一个实际上很有用的问题(正如你自己所看到的),因此有几种方法寻求一个近似的解决方案——一个“足够好”而不保证它是最好的

我需要不同的小尺寸(100米以下)和电缆,只有在100米的长度出售很多电缆

所以,为了优化我的购买,我想要一个代码,我可以输入我需要的所有电缆的长度。代码将在总和小于100的约束条件下合并我的输入,同时最小化我需要购买的100米长电缆的总数

如果有人能在VBA、Matlab或Python中提供代码帮助,我将不胜感激。

这被称为a,实际上很难(从计算角度)找到最佳解决方案

然而,这是一个实际上很有用的问题(正如你自己所看到的),因此有几种方法寻求一个近似的解决方案——一个“足够好”而不保证它是最好的解决方案。我做了一个快速搜索,找到了一些可能对您有所帮助的示例

如果您正在寻找确切的解决方案,您可以问相关的问题“我是否能够将所需的电缆安装到
N
100米电缆中?”。该可行性问题可以表示为“二进制程序”,这是“混合整数线性程序”的特例,对于该程序,MATLAB有一个名为
intlinprog
(需要优化工具箱)的解算器


很抱歉,我没有任何代码来解决您的问题,但我希望这至少能给您一些关键字,帮助您找到更多的资源

我相信这是一个很好的例子。有一些很好的方法可以解决这个问题。是一个实现和一些背景。为此编写Excel前端并不太困难(请参阅)


如果你在谷歌上搜索“削减库存问题”,你会找到很多参考资料。

谢谢Matthew。我最初也是这样想的。但这种方法不起作用,因为电缆只能切割,不能连接。因此,通过将所有小电缆件的总和除以100,约束“件总和<100”将不会得到遵守。这显然像是一个覆盖-打包问题,应该通过MATLAB中的
inlinprog
或'linprog'来解决