-
Notifications
You must be signed in to change notification settings - Fork 8
Description
@xgandibleux says:
I have prepared an exercise for my students which is a project planning
problem with 3 objectives, all the variables are discrete (ps: setting
the variables t_i >=0 is enough), see the attached document.When I solve it with MOA.Lexicographic(all_permutations = true) I get a
result (ps: here I have to check the implementation because line 2 and 3
in the solution returned should be exchanged because we expect to get
the minimum on fct2 when fct2 is minimized, which is not the case - but
it is late now, maybe I don't see the obvious-).When MOA.KirlikSayin() is called for solving this problem, a warning
appears and the resolution is stopped: "objective 1 does not have a
finite domain". If I am not wrong the initial conditions for applying KS
on this problem are fulfilled, right (objectives have bounded values).
Do you have any idea why this warning is raised and then the resolution
stopped?
Reproducible example
julia> using JuMP
julia> import MultiObjectiveAlgorithms as MOA
julia> import HiGHS
julia> model = Model(() -> MOA.Optimizer(HiGHS.Optimizer))
A JuMP Model
Feasibility problem with:
Variables: 0
Model mode: AUTOMATIC
CachingOptimizer state: EMPTY_OPTIMIZER
Solver name: MOA[algorithm=MultiObjectiveAlgorithms.Lexicographic, optimizer=HiGHS]
julia> set_silent(model)
julia> set_attribute(model, MOA.Algorithm(), MOA.KirlikSayin())
julia> @variable(model, x >= 0, Int)
x
julia> @variable(model, y >= 0, Int)
y
julia> @constraint(model, x + y >= 1)
x + y β₯ 1.0
julia> @objective(model, Min, 1.0 * [x, y])
2-element Vector{AffExpr}:
x
y
julia> optimize!(model)
β Warning: Unable to solve problem using `KirlikSayin()` because objective 1 does not have a finite domain.
β @ MultiObjectiveAlgorithms ~/.julia/packages/MultiObjectiveAlgorithms/RdHL3/src/algorithms/KirlikSayin.jl:126