Excel解算器 - 无法在解算器中确定必要的约束来完成我的任务

时间:2017-05-22 15:17:00

标签: excel solver

我无法找出完成任务所需的正确约束。

关于任务的小描述是:

  

A,B,C,D,E,F =城市

     

A和B工厂正在进行制造

     

仓库位于C和D城市

     

生产必须交付给E和F城市

     工厂A每月可生产700公斤,工厂B - 450公斤

     

每月需求量为450千克,每月F - 550千克

     

在第一张表中显示了城市之间的运输成本   每1公斤

     

目标是获得最低的运输成本并满足   需求

     

流程应该像工厂一样 - >仓库 - > E或F城市

我已经开始研究Excel和Solver了,我只是错过了一些我无法弄清楚的约束。

链接到Excel:mega.nz /#!FFIwiI7T!gx4c0Bwg3NtEEyqs0Zdnkwbclr0uWOUxW45RkSTn_ 9k(最新)

仅仅通过查看运输成本表,它似乎(我认为至少)就像它应该是这样:1)生产的东西移动到 - > B,2)B和A产生的东西到仓库C或D,3)然后从C和D到E或F

例如,它直接从仓库C到E,这是不可能的,因为C还没有从A或B收到。

1 个答案:

答案 0 :(得分:1)

您正在使用Transshipment problem。看一下该页面的约束。

您当前模型中缺少的约束涉及转换节点 C and D。您应该声明这些只是传输节点;因此,在其列中输入C(resp。D)的数量必须等于其行上留下C(resp。D)的数量。

要做到这一点:

1-将公式H20复制到H21H22。这些将说明来自传输节点CD离开的内容。

2-将公式E25复制到C25D25。这些将说明输入到传输节点CD中的内容。

3-添加约束,指出输入C的内容应该等于C的内容(类似于D)。这个约束可以在数组中输入,如下所示:

$H$21:$H$22 = $C$25:$D$25

最后,您可以通过删除第3个表并使用非常强大的 Excel函数SUMPRODUCT来简化模型。也就是说,在单元格B29中输入此作为目标函数:

=SUMPRODUCT(B8:F12,B19:F23)

此功能将为您提供产品Sigma(cij * xij)的总和,而无需使用公式计算不同单元格中的每个产品。