我写了以下代码:
如何在以下公式中解释辅助约束和子行程消除约束?
MTZ子行程消除方法的解释实际上非常简单。u(i)
按访问顺序为每个节点分配编号。约束
u(i) - u(j) + n x(i,j) <= n - 1
可以解释为
u(j) >= u(i) + 1 - M*(1-x(i,j))
要么
x(i,j) = 1 ==> u(j) >= u(i) + 1
如果您有子路线,请说2-3-2,但不能成立:
2-3 means u(3) >= u(2)+1
3-2 means u(2) >= u(3)+1
由于应该允许整个游览,因此我们只需要从此检查中删除第一个节点即可。