Mixed-Integer Multi-objective Constrained Optimization Problem Solving

Dear All,
I wonder if there is a direct package that can be used to solve a mixed-integer multi-objective constrained problem. I tried to use “Metaheuristics.jl” but failed to represent my model’s mixed-integer variables.

Best Regards
Magy

1 Like

Hi there,

There’s BlackBoxOptim: GitHub - robertfeldt/BlackBoxOptim.jl: Black-box optimization for Julia

But if you’re looking for something like a multi-objective mixed-integer linear programming solver, I don’t know of one in Julia. It’s on our roadmap though: Multiobjective support in JuMP · Issue #2099 · jump-dev/JuMP.jl · GitHub

1 Like

If you want an out-of-the-box package that will take as input a JuMP problem with multiple objectives, and returns a Pareto front, I’m afraid there is not on at the moment.

If you want to optimize for a weighted combination of objectives (without manually making it into a single objective), or want have a priority in your objectives, e.g., “minimize objective 1, then minimize objective 2 while remaining optimal for objective 1”, it is possible (but not officially supported) with JuMP+Gurobi.

Gurobi supports a range of mixed-integer problems (linear and quadratic) and has some support for multiple objectives. That latter feature is not officially available through JuMP, however, you can follow this example to make it work. Credits to @odow for that original solution.

1 Like