opytimizer.math.distribution

Distribution-based mathematical generators.

opytimizer.math.distribution.generate_bernoulli_distribution(prob: Optional[float] = 0.0, size: Optional[int] = 1) → numpy.ndarray

Generates a Bernoulli distribution based on an input probability.

Parameters:
  • prob – Probability of distribution.
  • size – Size of array.
Returns:

Bernoulli distribution n-dimensional array.

Return type:

(np.ndarray)

opytimizer.math.distribution.generate_choice_distribution(n: Optional[int] = 1, probs: Optional[numpy.ndarray] = None, size: Optional[int] = 1) → numpy.ndarray

Generates a random choice distribution based on probabilities.

Parameters:
  • n – Amount of values to be picked from.
  • probs – Array of probabilities.
  • size – Size of array.
Returns:

Choice distribution array.

Return type:

(np.ndarray)

opytimizer.math.distribution.generate_levy_distribution(beta: Optional[float] = 0.1, size: Optional[int] = 1) → numpy.ndarray

Generates a n-dimensional array based on a Lévy distribution.

References

X.-S. Yang and S. Deb. Computers & Operations Research. Multiobjective Cuckoo Search for Design Optimization (2013).

Parameters:
  • beta – Skewness parameter.
  • size – Size of array.
Returns:

Lévy distribution n-dimensional array.

Return type:

(np.ndarray)