首页 > 解决方案 > 空集下的求和

问题描述

我有一些收藏,这些收藏的交集给了我一些新的收藏。

我想在这些交叉点下求和,但其中一些是空的。例如,我的求和错误

 Set I/1*3/;
  Set j/1*3/;
  Set  s(I,j)
 1.(2,3)
 2.(1,3)
 3.(2);
Alias (I,i1,j);
  Set  intersection (I,i1,j);
 Intersection (I,i1,j)= s(I,j)*s(i1,j);
 Variable x(j) ,z;
 Binary variable x;
 Equation    c1,c2;

  C1(I)..sum(j$s(I,j),x(j))=e=z;
 C2(I,i1)..sum(j$ intesection(i,I1,j),x(j))=g=1;
 Model test /all/;
 Solve test using lp minimizing z;

我对约束 2 有错误,因为 intersection(2,3) 为空,并且我有 0> 1

我该如何写这个总结?

标签: gams-math

解决方案


我真的不明白,你在这里建模什么,但是这样它运行没有错误(由于方程 C1('3'),仍然没有可行的解决方案):

Set I/1*3/;
Set j/1*3/;
Set  s(I,j) / 1.(2,3)
              2.(1,3)
              3.(2)   /;
Alias (I,i1);
Set  intersection (I,i1,j);
Intersection (I,i1,j)= s(I,j)*s(i1,j);

Variable x(j) ,z;
Binary variable x;
Equation    c1,c2;

C1(I)..  sum(j$s(I,j),x(j))=e=z;
C2(I,i1)$sum(j$ Intersection(i,I1,j),1)..
         sum(j$ Intersection(i,I1,j),x(j))=g=1;
Model test /all/;
Solve test using mip minimizing z;

推荐阅读