physbo.search.pareto module
- class physbo.search.pareto.Pareto(num_objectives, dom_rule=None)[ソース]
ベースクラス:
object- prepare_reference_points(upper=True)[ソース]
Make the reference points valid for the current front.
EHVI needs the front between reference_min and reference_max, and HVPI needs it above reference_min. A reference point that is not set is estimated from the front. An estimated reference point that the front has grown beyond is estimated again; a reference point set by the user is kept, with a warning. The warning is always issued from this module, whichever function calls this method, so that warning filters treat all calls alike (and all processes of a parallel run alike).
- パラメータ:
upper (bool) -- Whether reference_max is needed as well.
- rebuild_front(t, terminal_num_run)[ソース]
Recompute the non-dominated set of points from the observations.
The front is updated in the same order as the observations were written. The reference points are kept unless they are not finite.
- パラメータ:
t (numpy.ndarray) -- N x num_objectives dimensional array. All the observations.
terminal_num_run (numpy.ndarray) -- The number of the observations at the end of each run.
- set_reference_max(reference_max=None)[ソース]
Set the upper reference point.
Without an argument, it is estimated from the current front as front_max + 100 w, with w as for set_reference_min; prepare_reference_points estimates it again when the front no longer lies below it. A given reference point is kept as it is.
- set_reference_min(reference_min=None)[ソース]
Set the lower reference point.
Without an argument, it is estimated from the current front as front_min - 2 w / n, with w the width of the front in each objective (an objective in which the front has no extent takes the largest width of the others, or 1) and n the number of points of the front; prepare_reference_points estimates it again when the front no longer lies above it. A given reference point is kept as it is.