DynamicPolynomial

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

Mirrors ksl.simopt.problem.DynamicPolynomialPenalty.

A polynomial penalty that scales with both the violation magnitude and the iteration counter, with no sample-count dampening; suitable for deterministic linear and functional constraints whose violation is computed exactly rather than estimated.

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