在 AMPL 中编写大量约束

writing large number of constraints in AMPL

我正在尝试解决 AMPL 中 TSP 的小实例。但是,即使对于一个小实例,subtour 消除约束也太多了。在 AMPL 中编写这些约束的有效方法是什么。谢谢

这是AMPL中一组subtour消除约束的常用公式

subj to SubtourElim {k in SS diff {0,2**n-1}}:
   sum {i in POW[k], j in S diff POW[k]: (i,j) in LINKS} X[i,j] +
   sum {i in POW[k], j in S diff POW[k]: (j,i) in LINKS} X[j,i] >= 2;

取自http://ampl.com/FAQ/tsp.mod

由于约束的数量随着 n 呈指数增长,您可以按照 here.

在 AMPL 脚本中动态添加它们,而不是提前添加所有这些