Собственно в питоне можно сказать пару часов, пытаюсь решить определенную задачу. Воплощаю оптимизационную модель, но из-за синтаксических ошибок не работает.
Проверил и на каждую строку начиная со строки “m = Model()” ругается из-за синтаксиса.
Если кто может взглянуть мельком, то буду очень признателен!
from gurobipy import * from itertools import product I, J, K = range(5), range(5), range (2) q = 2 c = [[0, 11, 10, 11, 14], [11, 0, 5, 15, 25], [10, 5, 0, 11, 22], [11, 15, 11, 0, 15], [14, 25, 22, 15, 0,] m = Model() X=m.addVars(I,J,K, vtype = GRB.BINARY, name= "X") Y=m.addVars(I,J,K, vtype= GRB.BINARY, name= "Y") U=m.addVars(I,J, vtype = GRB.INTEGER, name = "U") #1 m.setObjective(sum(c[i][j] * X[i,j,k] for i in I for j in J for k in K), GRB.MINIMIZE) #2 m.addConstrs(sum(d[i] * Y[i,k] for i in I) <= q for k in K) #3 for i in I: if i >= 1: m.addConstrs(sum(Y[i,k] for k in K) == 1) #4 for i in I: if i == 0: m.addConstrs(sum(Y[i,k] for k in K) == K) #5 m.addConstrs(sum(X[i,j,k] for i in I) == Y[j,k] for j in J for k in K) #6 m.addConstrs(sum(X[i,j,k] for j in J) == Y[i,k] for i in I for k in K ) #7 m.addConstrs(X[i,i,k] == 0 for i in I for k in K) #8 for i =! j: m.addConstrs(U[j,k] >= U[i,k] + 1 - (1 - X[i,j,k]) * I for i in I for j in J for k in K)] #10 m.addConstrs(U[i,k] >= 0 for i in I for k in K) m.optimize() m.printAttr('X') m.printAttr('Y') m.printAttr('U') #m.write("problem.lp")