WithMemory

@Serializable
@SerialName(value = "withMemory")
data class WithMemory(val basePenalty: Double = 100.0, val iterationExponent: Double = 1.0, val violationExponent: Double = 2.0) : PenaltyFunctionSpec(source)

Mirrors ksl.simopt.problem.PenaltyFunctionWithMemory.

The penalty grows polynomially with the violation magnitude and the iteration counter, but is dampened by 1/sqrt(sampleCount) so that stochastic noise on response measurements does not infinitely penalize boundary solutions.

Constructors

Link copied to clipboard
constructor(basePenalty: Double = 100.0, iterationExponent: Double = 1.0, violationExponent: Double = 2.0)

Properties

Link copied to clipboard

scaling coefficient (C); must be > 0 and finite

Link copied to clipboard

power applied to the iteration counter (beta); must be >= 0 and finite

Link copied to clipboard

power applied to the violation magnitude (alpha); must be > 0 and finite