没有二进制变量的“精确/至多一个非零元素”的约束

计算科学 非线性规划 约束 混合整数规划 约束优化
2021-11-26 21:16:29

在一个更大的 MINLP 问题中,我有一组变量{aij}m,n, 这样0aij1对所有人i,j,我可以将其视为一个矩阵,对此我有两个要求:

  • 每行恰好有一个非零元素;
  • 每列最多有一个非零元素。

这可以通过让aij=xijbij和:

minf(xijbij,)s.t.jxijbij=1i,ixijbij1j,xij{0,1}, 0bij1i,j.
是多变量中的一些非线性函数,省略了与本题无关的约束)f

但是,出于计算原因,我宁愿不使用所有这些额外的二进制变量也就是说,我正在寻找不引入额外二元变量的约束公式。xij

有没有办法在上构造线性约束,以确保满足两个要求(如本文顶部所述)?aij

任何建议都非常感谢。

1个回答

不,这是不可能的。有一种标准的方式来展示这一点:

您的约束的可行区域不是凸的。例如 ,是可行的, ,是可行的,但是中点 ,是不可行的。x1,1=1x1,2=0x1,1=0x1,2=1x1,1=1/2x1,2=1/2

线性等式和不等式约束系统的可行集总是凸的。

因此,您想要的约束不能用线性约束来表达。