参考资料:官方Tutorial The Glop Linear Solver
from ortools.linear_solver import pywraplp
初始化
solver = pywraplp.Solver.CreateSolver('linear_programming_examples', 'GLOP')
obj = solver.Objective()
obj.SetMaximization()
加变量
x = {
} # 用字典表示变量,key为元组
# x_1 ≥ 0 , x_2 ≥ 0
for i in range(2):
x[i] = solver.NumVar(0, solver.infinity(), 'x[%i]' % (i))
加约束
# 方法一:直接加
solver.Add(sum(x[i] for i in range(2)) == 1,'sum_x')
# 方法二:先初始化再设置系数
const = solver.Constraint(-solver.infinity(), 1,'sum_x')
for i in range(2):
const.SetCoefficie