LibMOON: A Gradient-based MultiObjective OptimizatioN Library in PyTorch

Xiaoyuan Zhang, Liang Zhao, Yingying Yu, Xi Lin, Yifan Chen +2 more
9/4/2024
cs.MScs.LGmath.OC

No official code found. Best implementation: xzhang2523/libmoon (144 stars, MIT, last commit 2025-03-28).

Abstract

Multiobjective optimization problems (MOPs) are prevalent in machine learning, with applications in multi-task learning, learning under fairness or robustness constraints, etc. Instead of reducing multiple objective functions into a scalar objective, MOPs aim to optimize for the so-called Pareto optimality or Pareto set learning, which involves optimizing more than one objective function simultaneously, over models with thousands / millions of parameters. Existing benchmark libraries for MOPs mainly focus on evolutionary algorithms, most of which are zeroth-order / meta-heuristic methods that do not effectively utilize higher-order information from objectives and cannot scale to large-scale models with thousands / millions of parameters. In light of the above gap, this paper introduces LibMOON, the first multiobjective optimization library that supports state-of-the-art gradient-based methods, provides a fair benchmark, and is open-sourced for the community.

View on arXivView PDF

Code Implementations(1)

xzhang2523/libmoonCommunity100%
MIT

LibMOON is a standard and flexible framework to study gradient-based multiobjective optimization.

14413Shell, PythonFeb 22, 20241 years agoMIT
baysian-optimisationmultiobjective-learningmultiobjective-optimizationmultitask-learningoptimization-algorithms+1 more

Cite this paper

@article{zhang2024libmoon,
  title  = {LibMOON: A Gradient-based MultiObjective OptimizatioN Library in PyTorch},
  author = {Xiaoyuan Zhang and Liang Zhao and Yingying Yu and Xi Lin and Yifan Chen and Han Zhao and Qingfu Zhang},
  year   = {2024},
  eprint = {2409.02969},
  archivePrefix = {arXiv},
  doi    = {10.48550/arXiv.2409.02969},
  url    = {http://arxiv.org/abs/2409.02969v3},
  journal = {NEURIPS 2024 2024}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2409.02969.svg)](https://codeofpaper.com/paper/2409.02969)

Discussion