MultiObjectiveAlgorithms.jl: a Julia package for solving multi-objective optimization problems
Oscar Dowson, Xavier Gandibleux, G\"okhan Kof

TL;DR
MultiObjectiveAlgorithms.jl is a Julia library that provides various algorithms for multi-objective optimization, leveraging JuMP's capabilities to solve diverse problem classes with multiple solvers.
Contribution
It introduces a Julia package that implements iterative scalarization algorithms for multi-objective problems and extends JuMP to support vector-valued objectives.
Findings
Supports a wide range of problem classes from linear to nonlinear.
Enables use of various solvers for single-objective subproblems.
Open-source and easily integrable with existing Julia workflows.
Abstract
We present MultiObjectiveAlgorithms.jl, an open-source Julia library for solving multi-objective optimization problems written in JuMP. MultiObjectiveAlgorithms.jl implements a number of different solution algorithms, which all rely on an iterative scalarization of the problem from a multi-objective optimization problem to a sequence of single-objective subproblems. As part of this work, we extended JuMP to support vector-valued objective functions. Because it is based on JuMP, MultiObjectiveAlgorithms.jl can use a wide variety of commercial and open-source solvers to solve the single-objective subproblems, and it supports problem classes ranging from linear, to conic, semi-definite, and general nonlinear. MultiObjectiveAlgorithms.jl is available at https://github.com/jump-dev/MultiObjectiveAlgorithms.jl under a MPL-2 license.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Multi-Objective Optimization Algorithms · Advanced Optimization Algorithms Research · Process Optimization and Integration
