【发布时间】:2012-03-12 14:49:18
【问题描述】:
我正在尝试解决 MATLAB 或 CPLEX 上的优化问题。我们有两个集合 A(n 个元素)和 B(m 个元素)。我们必须将 A 中的一个元素准确地分配给 B 中的一个元素。
可以根据需要为 B 中的单个元素分配任意数量的元素(最大 n)。将 A 中的元素 i 分配给 B 中的 j 元素是有代价的 = cij。
此外,分配给 B 中的元素的 A 中元素的数量(负载)还有另一个相关的成本。该成本是:lj = ( sum (分配给 j 的元素数) ^2 )
因此总成本为:sum (cij+lj)
我们希望找到最优分配,使得 sum (cij+lj) 最小化。 如果没有负载,该问题可以表述为二进制整数编程。我关心的是如何在 MATLAB 或 CPLEX 中编写这样的函数。
【问题讨论】:
标签: matlab variable-assignment cplex