Vincent

class ioh.iohcpp.problem.Vincent

Bases: CEC2013

Attributes Summary

bounds

The bounds of the problem.

constraints

The constraints of the problem.

create

log_info

The data is that being sent to the logger.

meta_data

The static meta-data of the problem containing, e.g., problem id, instance id, and problem's dimensionality

n_optima

(self) -> int

optima

The optima of the problem, as a list of new RealSolution objects (copies)

optimum

The optimum and its objective value for a problem instance

problems

All registered problems

rho

(self) -> float

single_global_optimum

(self) -> bool

sphere_limit

(self) -> float

state

The current state of the optimization process containing, e.g., the current solution and the number of function evaluated consumed so far

Methods Summary

__call__([order, device, writable])

Overloaded function.

add_constraint(self, arg, /)

add a constraint

attach_logger(self, arg, /)

Attach a logger to the problem to allow performance tracking.

detach_logger(self)

Remove the specified logger from the problem.

enforce_bounds(self[, weight, how, exponent])

Enforced the bounds (box-constraints) as constraint :param weight: :type weight: The weight for computing the penalty (can be infinity to have strict box-constraints) :param how: :type how: The enforcement strategy, should be one of the 'ioh.ConstraintEnforcement' options :param exponent: :type exponent: The exponent for scaling the contraint

invert(self)

remove_constraint(self, arg, /)

remove a constraint

reset(self)

Reset all state variables of the problem.

set_final_target(self, new_target)

update the final target

set_id(self, new_problem_id)

update the problem id

set_instance(self, new_instance)

update the problem instance

set_name(self, new_name)

update the problem name

set_optimum(self, i[, single_global])

Attributes Documentation

bounds

The bounds of the problem.

constraints

The constraints of the problem.

create = <nanobind.nb_func object>
log_info

The data is that being sent to the logger.

meta_data

The static meta-data of the problem containing, e.g., problem id, instance id, and problem’s dimensionality

n_optima

(self) -> int

optima

The optima of the problem, as a list of new RealSolution objects (copies)

optimum

The optimum and its objective value for a problem instance

problems

All registered problems

rho

(self) -> float

single_global_optimum

(self) -> bool

sphere_limit

(self) -> float

state

The current state of the optimization process containing, e.g., the current solution and the number of function evaluated consumed so far

Methods Documentation

__call__(self, arg: ndarray[dtype=float64, shape=(*), order='C', device='cpu', writable=False], /) → float
__call__(self, arg: collections.abc.Sequence[float], /) → float
__call__(self, arg: ndarray[dtype=float64, shape=(*, *), order='C', device='cpu', writable=False], /) → numpy.ndarray[dtype=float64, shape=(*)]
__call__(self, arg: collections.abc.Sequence[collections.abc.Sequence[float]], /) → numpy.ndarray[dtype=float64, shape=(*)]

Overloaded function.

  1. __call__(self, arg: ndarray[dtype=float64, shape=(*), order='C', device='cpu', writable=False], /) -> float

  2. __call__(self, arg: collections.abc.Sequence[float], /) -> float

    Evaluate the problem.

    x: list

    the search point to evaluate. It must be a 1-dimensional array/list whose length matches search space’s dimensionality

    float

    The evaluated search point

  3. __call__(self, arg: ndarray[dtype=float64, shape=(*, *), order='C', device='cpu', writable=False], /) -> numpy.ndarray[dtype=float64, shape=(*)]

  4. __call__(self, arg: collections.abc.Sequence[collections.abc.Sequence[float]], /) -> numpy.ndarray[dtype=float64, shape=(*)]

    Evaluate the problem at several search points.

    x: list[list]

    the search points to evaluate, one per row. It must be a 2-dimensional array/list whose rows’ length matches search space’s dimensionality

    numpy.ndarray

    The objective values of the search points: a new float64 array with one value per row

add_constraint(self, arg: ioh.iohcpp.AbstractRealConstraint, /) → None

add a constraint

attach_logger(self, arg: ioh.iohcpp.logger.Logger, /) → None

Attach a logger to the problem to allow performance tracking.

Parameters:

logger (Logger) – A logger-object from the IOHexperimenter logger module.

detach_logger(self) → None

Remove the specified logger from the problem.

enforce_bounds(self, weight: float = 1.0, how: ioh.iohcpp.ConstraintEnforcement = ConstraintEnforcement.SOFT, exponent: float = 1.0) → None

Enforced the bounds (box-constraints) as constraint :param weight: :type weight: The weight for computing the penalty (can be infinity to have strict box-constraints) :param how: :type how: The enforcement strategy, should be one of the ‘ioh.ConstraintEnforcement’ options :param exponent: :type exponent: The exponent for scaling the contraint

invert(self) → None
remove_constraint(self, arg: ioh.iohcpp.AbstractRealConstraint, /) → None

remove a constraint

reset(self) → None

Reset all state variables of the problem.

set_final_target(self, new_target: float) → None

update the final target

set_id(self, new_problem_id: int) → None

update the problem id

set_instance(self, new_instance: int) → None

update the problem instance

set_name(self, new_name: str) → None

update the problem name

set_optimum(self, i: int, single_global: bool = True) → None