CESamplerIfc

An interface to define the sampling mechanism used within the Cross-Entropy method. Implementors of this interface are responsible for generating samples from the cross-entropy "distribution", updating the parameters based on observations of the elite samples, and determining if the sampling distribution has degenerated (converged).

Inheritors

Properties

Link copied to clipboard

If true, the stream will automatically participate in having its stream advanced to the next sub-stream via stream managers

Link copied to clipboard
open override var antithetic: Boolean

Tells the stream to start producing antithetic variates

Link copied to clipboard

The problem definition associated with the sampling process.

Link copied to clipboard
open override var resetStartStreamOption: Boolean

If true, the stream will automatically participate in having its stream reset to its start stream via stream managers

Link copied to clipboard
abstract val rnStream: RNStreamIfc

The random number stream associated with the sampling process.

Link copied to clipboard
abstract val streamNumber: Int

The assigned stream number associated with the sampling process.

Link copied to clipboard

The stream provider associated with the sampling process.

Functions

Link copied to clipboard
open override fun advanceToNextSubStream()

Positions the RNG at the beginning of its next substream

Link copied to clipboard
abstract fun hasConverged(): Boolean
Link copied to clipboard
abstract fun initializeParameters(values: DoubleArray)

This function should be used to specify the initial values of the underlying sampling mechanism.

Link copied to clipboard
abstract fun parameters(): DoubleArray
Link copied to clipboard
open override fun resetStartStream()

The resetStartStream method will position the RNG at the beginning of its stream. This is the same location in the stream as assigned when the RNG was created and initialized.

Link copied to clipboard
open override fun resetStartSubStream()

Resets the position of the RNG at the start of the current substream

Link copied to clipboard
abstract fun updateParameters(elites: List<DoubleArray>)

The underlying parameters of the sampling mechanism should be updated. Implementors need to handle the edge case of less than 2 elites.