У меня есть простая математика прога, что я пытаюсь решить:JuMP ограничение макро изменение типа ранее объявленные переменная
m = Model(solver=MosekSolver())
@variable(m, x[1:8] >= 0)
@objective(m,Min,sum(x))
@constraint(m,A*x .== given)
@constraint(m, x, sum(x)==1)
status = solve(m)
println("x = ", getvalue(x))
А некоторая матрица с типом Array{Float64,2
Линия:
@constraint(m, x, sum(x)==1))
Изменяет тип x
от Array{JuMP.Variable,1}
до JuMP.ConstraintRef{JuMP.Model,JuMP.GenericRangeConstraint{JuMP.GenericAffExpr{Float64,JuMP.Variable}}}
.
Так как
x
был ранее объявлен как переменный не должен типа остается теми же? (Кроме того, если выше линии выполняется, все еще работает, но,getvalue
не будет в связи с изменением типа.)Есть ли способ, чтобы добавить суммирования ограничений без изменения типа
x