2
혼합 정수 프로그래밍 문제가 있습니다. 목적 함수는 벡터의 최대 변수 값을 최소화하는 것입니다. 변수는 문제점이 같다 (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)
최대 변수 줄리아 점프 구문의 일부가 아니다. 그래서
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
이 솔루션은 하나의 변수에 대한 상한으로 시작하는 반복하고 solutoin이 가능하다 때까지 하나 증가 문제를 해결하여 작업을 수행하여 문제를 수정했습니다. 이것을 실제로하는 것이 가장 좋은 방법입니까?
잘 이해했다면 선형 문제가 아니라 원래 문제가 (최대 때문에). JuMP에서는 NLP 최적화를 위해 Ipopt를 사용할 수 있습니다 (그러나 IPOPT가 혼합 정수 비선형 프로그래밍을 지원하는지 모르겠습니다) – Antonello