混合整数計画法の問題があります。目的関数は、ベクトルの最大変数値の最小化です。変数の上限は 5 です。問題は次のようになります。
m = Model(solver = GLPKSolverMIP())
@objective(m, Min, max(x[i] for i=1:12))
@variable(m, 0 <= x[i] <= 5, Int)
@constraint(m, sum(x[i] for i=1:12) == 12)
status = solve(m)
max 変数は、julia JuMP 構文の一部ではありません。だから私は問題を
t=1
while t<=5 && (status == :NotSolved || status == :Infeasible)
m = Model(solver = GLPKSolverMIP())
i = 1:12
@objective(m, Min, max(x[i] for i=1:12))
@variable(m, 0 <= x[i] <= t, Int)
@constraint(m, sum(x[i] for i=1:12) == 12)
status = solve(m)
t += 1
end
この解法は、変数の上限を 1 から開始し、解が実現可能になるまで 1 ずつ増加させる反復問題を解くことによって、ジョブを実行します。これは本当にこれを行うための最良の方法ですか?