关于线性指派问题的表述

时间:2010-02-03 12:18:02

标签: algorithm math operations-research

我正在查看已定义here

的分配问题的标准定义

我的问题是关于两个约束(乳胶符号如下):

\sum_{j=1}^n(x_{ij}) = 1 for all i = 1, ... , n
\sum_{i=1}^n(x_{ij}) = 1 for all j = 1, ... , n

具体来说,为什么需要第二个约束?不是第一个已经覆盖了所有x_ {ij}对吗?

3 个答案:

答案 0 :(得分:4)

考虑矩阵x_ij,其中i的范围超出行数,j范围超过列。

第一个等式表示对于每个i(即每行!),该行中值的总和等于1.

第二个等式表示每个j的thta(即每列!),该列中值的总和等于1.

答案 1 :(得分:1)

没有。鉴于X中的所有条目均为01,一个约束条件为“每个列中只有一个1 ” - 其他人说'每个行中只有一个1 '(我总是忘记传统的矩阵下标循环方式)。这些陈述具有独立的真值。

答案 2 :(得分:0)

这甚至不是远程编程问题。但无论如何我都会回答。

对于i的每个值,第一个是j的和。对于每个j的值,第二个是i的总和。

基本上,这些约束集之一要求矩阵x_ {i,j}矩阵的行之和必须为1。另一个约束是要求该矩阵的列的总和必须是1。

(编辑)看来我们现在还不清楚。考虑矩阵

[0 1]
[0 1]

必须同意,对于每一行,此矩阵的行之和为1。但是,当你形成第一列元素的总和时,它为零,并且第二列中元素的总和,我们找到2.

现在,考虑一个不同的矩阵。

[0 1]
[1 0]

在此处看到,行或列下的总和始终为1.