DynamicPolynomialPenalty

class DynamicPolynomialPenalty(val basePenalty: Double = 100.0, val violationExponent: Double = 2.0, val iterationExponent: Double = 1.0) : PenaltyFunctionIfc(source)

A dynamic polynomial penalty function that scales based on both the magnitude of the constraint violation and the current iteration of the solver.

Parameters

basePenalty

The scaling coefficient (C). Default is 100.0.

violationExponent

The power applied to the violation magnitude (\alpha). Default is 2.0 (Quadratic penalty).

iterationExponent

The power applied to the iteration counter (\beta). Default is 1.0 (Linear growth over time).

Constructors

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

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
open override fun penalty(violation: Double, iterationCounter: Int, sampleCount: Int): Double