Python 寻找被认为是图中某个节点的近邻的边

Python 寻找被认为是图中某个节点的近邻的边,python,optimization,Python,Optimization,我正在尝试使用pill和networkX在Python中建模一个约束,该约束得到所有节点上包含此节点的边的总和。 约束可以是这样的: 我已使用此代码对约束进行建模: 对于g.nodes中的m():prob+=palp.lpSum(z[(m,n)]对于g.nodes中的m())>=k*(1-y[m]) 这样的代码会导致字典的键出错。如果我用这个来代替 对于g.节点中的m():对于g.边中的(u,v)()>=k*(1-y[m]),prob+=palp.lpSum(z[(m,n)] 它将所有链接相加

我正在尝试使用pillnetworkX在Python中建模一个约束,该约束得到所有节点上包含此节点的边的总和。 约束可以是这样的:

我已使用此代码对约束进行建模:

对于g.nodes中的m():prob+=palp.lpSum(z[(m,n)]对于g.nodes中的m())>=k*(1-y[m])
这样的代码会导致字典的键出错。如果我用这个来代替

对于g.节点中的m():对于g.边中的(u,v)()>=k*(1-y[m]),prob+=palp.lpSum(z[(m,n)]

它将所有链接相加,而不是与链接m关联的链接

在这方面我需要你的帮助


请注意,z[(m,n)]是图边的一个dict。

在您的第一个版本中,您隐式假设每个节点
m
都存在一条边
(m,n)
。在一般图形中,情况并非如此,因此当访问
z[(m,n)]
时,键
(m,n)
是未知的。若要仅尝试访问有效边,应检查该边是否存在。同样,在第二步中,您应该检查
n
是否在边中,以避免对所有边求和。我还感觉到你的问题中混合了
m
n