desdeo.problem.RangeEstimators

Contains tools to estimate the range of objective values in the Patero optimal set. The vector with the best objective values is called the ideal, and the vector with the worst values is called the nadir.

desdeo.problem.RangeEstimators.default_estimate(opt_meth, mo_prob, dp=2)[source]

The recommended nadir/ideal estimator - use a payoff table and then round off the result.

Return type

Tuple[List[float], List[float]]

desdeo.problem.RangeEstimators.estimate_payoff_table(opt_meth_cls, mo_prob)[source]

Estimates the ideal and nadir by using a payoff table. This should give a good estimate for the ideal, but can be very inaccurate for the nadir. For an explanation of why, see [DEB2010].

References

DEB2010

Deb, K., Miettinen, K., & Chaudhuri, S. (2010). Toward an estimation of nadir objective vector using a hybrid of evolutionary and local search approaches. IEEE Transactions on Evolutionary Computation, 14(6), 821-841.

Return type

Tuple[List[float], List[float]]

desdeo.problem.RangeEstimators.pad(idnad, pad_nadir=0.05, pad_ideal=0.0)[source]

Pad an ideal/nadir estimate. This is mainly useful for padding the nadir estimated by a payoff table for safety purposes.

desdeo.problem.RangeEstimators.round_off(idnad, dp=2)[source]

Round off an ideal/nadir estimate e.g. so that it’s looks nicer when plotted. This function is careful to round so only ever move the values away from the contained range.