utils.desirability.DOverall

utils.desirability.DOverall(*d_objs)

Combines multiple desirability objects into an overall desirability function.

This class computes the overall desirability by combining individual desirability objects using the geometric mean of their desirability scores.

Attributes

Name Type Description
d_objs list A list of desirability objects (e.g., DMax, DMin, DTarget, etc.).

Functions

Predicts the overall desirability based on the individual desirability objects.

References

Many thanks to Max Kuhn for his implementation of the ‘desirability’ package in R. This class is based on the ‘desirability’ package in R, see: https://cran.r-project.org/package=desirability

Examples

from spotdesirability import DOverall, DMax, DMin
import numpy as np
# Create individual desirability objects
dmax = DMax(low=0, high=10, scale=1)
dmin = DMin(low=5, high=15, scale=1)
# Combine them into an overall desirability object
doverall = DOverall(dmax, dmin)
# Predict overall desirability for a set of inputs
inputs = np.array([[5, 10], [0, 15], [10, 5]])
overall_desirability = doverall.predict(inputs)
print(overall_desirability)
# Predict individual and overall desirabilities
individual, overall = doverall.predict(inputs, all=True)
print("Individual:", individual)
print("Overall:", overall)
[ 0.5 -0.   1. ]
Individual: [array([0.5, 0. , 1. ]), array([ 0.5, -0. ,  1. ])]
Overall: [ 0.5 -0.   1. ]

Methods

Name Description
predict Predicts the overall desirability based on the individual desirability objects.