Использование addVars и addConstrs в Gurobi - PullRequest
0 голосов
/ 16 апреля 2020

Я довольно новичок в моделировании с интерфейсом Gurobi / python. Я написал полный код, однако в ограничениях № 6 что-то есть. Я делюсь частью своего кода, которая вызывает проблемы. Я надеюсь, что кто-нибудь свяжется со мной и обсудит со мной этот кусок кода, чтобы получить переменные, как я намереваюсь.

требуемое ограничение ,

f параметр ,

необходимая переменная

from gurobipy import GRB,quicksum,Model

m = Model ('sab')
# all nodes in the network
N = list(range(0,27))
# no of requests 
R = [i for i in range(1,6)] # Requests 
# Transfer nodes for each request
Cr = {1: [12,13,14], 2: [15,16,17], 3: [18,19,20], 4: [21,22,23], 5:[24,25,26] }
# parameter f
[description of f][1]as shown in the image, I do not know how to code it correctly

# variables [variable description][1] 
for r in R:
    yr = m.addVars(R,N,N, vtype=GRB.BINARY)

for r in R:
    z = m.addVars(Cr[r],Cr[r],vtype=GRB.BINARY)
    m.update()

# constraint no 6 [enter image description here][1]
for r in R:
    m.addConstrs(((quicksum(yr[i,j] for j in N if j !=i) + quicksum(z [i,j] for j in Cr[r] if j !=i)- quicksum(yr[j,i] for j in N if j !=i)- quicksum(z [j,i] for j in Cr[r]if j !=i ) == f) for i in Cr[r] ),'6')
...