无法在混合设施中创建用于计划优化的模型

时间:2019-05-08 18:09:12

标签: modeling linear-programming traveling-salesman minizinc

我最初试图在VBA中解决此问题。该帖子的链接在这里:How can I implement dijkstra's algorithm to optimize a blending schedule?

我现在正在寻找使用微型锌为我的混合设备创建模型的方法,但是我很迷茫。

问题的基础是我需要一个可以输入的模型:

我需要安排哪些混合酒(这里简化为A-F混合酒,实际上是A-AF,具有30多种混合酒。)

当前正在混合的产品

星期几

需要计划的每种掺混物的数量(通常为0-8欧元)

输出:

以{| M,T,W,T,F,| M,T,W,T,F,|}…格式输出需要最少天数/洗涤次数的时间表,其混合和洗涤名称为工作日的地点。  使用过渡成本矩阵,例如;从A到F花费2天(在矩阵1,6中发现),共混1天,洗净1天。 A-A(1,1),A-B(1,2)花费1天...等;在6X6矩阵中按A-F顺序概述。

我的问题:

我现在很新,我不确定从哪里开始。我一直在看有关迷你锌的Coursera基本教程,但没有发现它有极大帮助。

如何生成一个可以包含顺序中节点的每个组合的数组(由输入混合/量决定)

如何确定要最小化的功能?对于第一次添加成本,这需要参考先前的混合,然后使用成本矩阵确定每个未来过渡的成本,将它们汇总为一个时间/天。

我如何生成从所选日期开始并创建5天计划/行直到每个混合完成的输出矩阵?并且当过渡成本定义为2时,如何使输出显示混合日后是洗涤日?

有关我在VBA中尝试过的内容,请参见我以前的文章和代码,

Quantity = { 3, 2, 1, 2, 5, 1 }

%Enum Quantity
%Enum Blendcost

array [Blends] of int: Quantity;
array [Blends] of int: costgrid;

%Blendcost(curblend, nexblend)
Blendcost = [|1,2,2,2,2,|1,1,1,1,1,1,|1,1,1,1,1,1,|2,2,2,1,2,2,|1,1,1,1,1,1,|1,1,1,1,1,1,|];

0 个答案:

没有答案