NOMAD.jl icon indicating copy to clipboard operation
NOMAD.jl copied to clipboard

How to use biobjective function in NOMAD.jl

Open sivabkumar opened this issue 4 years ago • 3 comments

In the user guide of NOMAD they said that NOMAD will be able to handle biobjective function also. Is it possible in our NOMAD.jl also?

sivabkumar avatar Feb 27 '21 07:02 sivabkumar

Infortunately, NOMAD.jl is based on the software NOMAD 4, which does not implement a biobjective optimization algorithm. You have to use the C++ version of NOMAD 3.9 to have this functionality.

salomonl avatar Feb 27 '21 16:02 salomonl

Well, you can always create a resulting objective that is a linear combination of any number of objectives with different weights. I think this will just work. By changing the weights you get the Pareto front...

ufechner7 avatar Jan 28 '24 18:01 ufechner7

Not really, with this type of approach, you could miss non-convex parts of the Pareto front. You could reimplement the BiMADS algorithm given in this paper

MULTIOBJECTIVE OPTIMIZATION THROUGH A SERIES OF SINGLE-OBJECTIVE FORMULATIONS

or if you need more objectives the MultiMADS algorithm

A mesh adaptive direct search algorithm for multiobjective optimization

If you have enough patience, note that we are planning to upgrade NOMAD.jl, to make use of a new multiobjective algorithm, DMulti-MADS, implemented in NOMAD 4 but still in beta testing for the moment.

salomonl avatar Jan 28 '24 19:01 salomonl