Penalty Function With Memory
class PenaltyFunctionWithMemory(val basePenalty: Double = 100.0, val iterationExponent: Double = 1.0, val violationExponent: Double = 2.0) : PenaltyFunctionIfc(source)
A penalty function adapted for Simulation Optimization based on the "Memory" principles of Park and Kim (2015). Park, C., & Kim, S. H. (2015). Penalty Function with Memory for Discrete Optimization via Simulation with Stochastic Constraints. Operations Research, 63(5), 1195-1212. This function scales the dynamic multiplier using the sample count (memory) to prevent stochastic noise from infinitely penalizing boundary solutions.