我使用Scipy找到像here这样的最大独立集合
import scipy.optimize as opt
c=[1,1,1,1]
A=[[1,1,0,0],[1,0,0,1],[0,0,1,1],[0,1,1,0]];
b=[1,1,1,1]
print(opt.linprog([-a for a in c],A_ub=A,b_ub=b))
考虑周期图C_4
,因此解决方案[1,0,1,0]
对应
fun: -2.0
message: 'Optimization terminated successfully.'
nit: 2
slack: array([ 0., 0., 0., 0.])
status: 0
success: True
x: array([ 1., 0., 1., 0.])
选择第一个顶点和第三个顶点。其他缺少的解决方案是[0,1,0,1]
,我该怎么做?
更一般地说,
如何让所有可能的解决方案候选人参与Scipy的LP问题?