は一例であり:
>>> import cplex
>>> c = cplex.Cplex()
>>> c.variables.add(names = ["x1", "x2", "x3"])
>>> c.linear_constraints.add(lin_expr = [cplex.SparsePair(ind = ["x1", "x3"], val = [1.0, -1.0]),
cplex.SparsePair(ind = ["x1", "x2"], val = [1.0, 1.0]),
cplex.SparsePair(ind = ["x1", "x2", "x3"], val = [-1.0] * 3),
cplex.SparsePair(ind = ["x2", "x3"], val = [10.0, -2.0])],
senses = ["E", "L", "G", "R"],
rhs = [0.0, 1.0, -1.0, 2.0],
range_values = [0.0, 0.0, 0.0, -10.0],
names = ["c0", "c1", "c2", "c3"],)
>>> c.linear_constraints.get_rhs()
[0.0, 1.0, -1.0, 2.0]
range_valuesは左側面と各線形制約の右側面との間の差を指定し、浮動小数点数のリストです。 range_values [i]> 0(ゼロ)の場合、制約iはrhs [i] < = rhs [i] + range_values [i]として定義されます。 range_values [i] <が0(ゼロ)の場合、制約iはrhs [i] + range_value [i] < = a * x < = rhs [i]として定義されます。私はそれをデフォルト値(空白)のままにすることをお勧めします。ただ
NumCols = 10
vars = [ 'x'+str(n) for n in xrange(1,NumCols+1) ]
coef = [1]*NumCols
cpx.linear_constraints.add(
lin_expr= [cplex.SparsePair(ind = vars, val = coef)] ,
senses=["L"],
rhs=[constantValue])
、例えば、もののすべての変数とベクトルを示す
合計を定義するには、私は、あなたがCPLEX(例えば、lpex1.pyに同梱されているサンプルスクリプトを見てみることをお勧めします等。)。 – rkersh