liveBook · Manning

Nondominated solution

As explained in Bayesian Optimization in Action

A nondominated point is a multiobjective solution for which no other considered solution is at least as good in every objective and better in one.

A nondominated solution balances competing objectives: improving one objective requires sacrificing at least one other. Such solutions reveal the meaningful trade-offs in multiobjective optimization. section 11.2 section 11.5

Formally, a point is nondominated when no considered point matches or exceeds it on every objective while improving at least one. A point is dominated when another point has higher values for all objectives. Nondominated points are also called Pareto optimal, Pareto efficient, or noninferior. section 11.2

Two competing objectives

For two objectives f1(x) and f2(x), x = -5 is nondominated because moving toward higher f1 values reduces f2. By contrast, x = -1.9 is dominated when both objective values are lower than those at x = -5. In practice, many nondominated points may form several regions rather than a single optimum. section 11.2

Nondominated solutions support multiobjective analysis by:

  • Tracing the Pareto frontier, the boundary beyond which no considered point lies. section 11.5
  • Showing which objective trade-offs remain available to a decision-maker. section 11.2
  • Supporting hypervolume measurement, where larger dominated volume indicates better optimization performance. section 11.5
  • Guiding Expected Hypervolume Improvement, which favors queries likely to extend the Pareto frontier. section 11.3
from botorch.acquisition.multi_objective
.analytic import                                    #1
ExpectedHypervolumeImprovement                      #1
from botorch.utils.multi_objective.box_decompositions
.non_dominated import                               #1
FastNondominatedPartitioning                        #1
from botorch.models.model_list_gp_regression import ModelListGP
 
policy = ExpectedHypervolumeImprovement(
    model=ModelListGP(model1, model2),                #2
    ref_point=ref_point,                              #3
    partitioning=FastNondominatedPartitioning
    (ref_point, train_y)                            #4
)

Inspect a BoTorch construction that combines separate Gaussian-process models with nondominated partitioning for EHVI. section 11.3

How Bayesian Optimization in Action covers it

How deep it goes
Defines dominance formally, works through a two-objective toy example, and connects points to Pareto frontiers and hypervolume.
Examples
Uses competing toy objectives, dominated and nondominated points, scatter plots, Pareto-frontier figures, and BoTorch code.
What it assumes
Assumes multiple objectives are being maximized and introduces dominance through an intuitive two-objective example.
What you can do after
Evaluate/understand which solutions remain optimal under objective trade-offs and how they define a Pareto frontier.
How it connects
Connects nondominated solutions to multiobjective optimization, Pareto frontiers, dominated hypervolume, Gaussian processes, and EHVI.

Also explained in

Compare how 2 books explain nondominated solution →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Bayesian Optimization in Action. The section links point to the parts of the book it draws on.