paref.pareto_reflections.minimize_g#

Classes

MinGParetoReflection(blackbox_function, ...)

Find a Pareto point among all points minimizing some function g

class paref.pareto_reflections.minimize_g.MinGParetoReflection(blackbox_function: ~paref.interfaces.moo_algorithms.blackbox_function.BlackboxFunction, epsilon: float | ~numpy.ndarray = 0.01, scaling_g: ~typing.Callable[[~numpy.ndarray], ~numpy.ndarray] = <function MinGParetoReflection.<lambda>>, scaling_x: ~typing.Callable[[~numpy.ndarray], ~numpy.ndarray] = <function MinGParetoReflection.<lambda>>)[source]#

Bases: ParetoReflection

Find a Pareto point among all points minimizing some function g

When to use#

This Pareto reflection should be used if a Pareto point is desired which is Pareto optimal among all points minimizing some function g.

Warning

This Reflection is not necessarily Pareto reflecting. It is only if the points which are Pareto optimal among all points that minimize g are in fact Pareto optimal.

Mathematical formula#

\[p(x) = \sum_{i=1,...,n}\epsilon scaling_x(x)_{i}+scaling_g(g(x))\]
param blackbox_function:

blackbox function to which Pareto reflection is applied

type blackbox_function:

BlackboxFunction

param epsilon:

epsilon determining weight of components

type epsilon:

Union[float, np.ndarray] default 1e-3

param scaling_g:

scaling function for g

type scaling_g:

Callable[[np.ndarray], np.ndarray] default lambda x: x

param scaling_x:

scaling function for x

type scaling_x:

Callable[[np.ndarray], np.ndarray] default lambda x: x

__call__(x: ndarray) ndarray[source]#
property dimension_codomain: int#
property dimension_domain: int#
abstract property g: Callable[[ndarray], ndarray]#