Header menu logo bristlecone

EndConditions Module

Nested modules

Modules Description

Profiles

Functions and values

Function or value Description

acceptanceRateGate min max interval log results iteration

Full Usage: acceptanceRateGate min max interval log results iteration

Parameters:
Returns: OptimStopReason

Stops when acceptance rate is not within the defined range. Used to avoid stopping when not mixing.

min : float
max : float
interval : int<MeasureProduct<iteration, MeasureOne>>
log : LogEvent -> unit
results : Solution list
iteration : int<MeasureProduct<iteration, MeasureOne>>
Returns: OptimStopReason

atIteration iteration arg2 currentIteration

Full Usage: atIteration iteration arg2 currentIteration

Parameters:
Returns: OptimStopReason

End the optimisation procedure when a minimum number of iterations is exceeded.

iteration : int<MeasureProduct<iteration, MeasureOne>>
arg1 : Solution list
currentIteration : int<MeasureProduct<iteration, MeasureOne>>
Returns: OptimStopReason

convergence thin chainCount

Full Usage: convergence thin chainCount

Parameters:
    thin : int
    chainCount : int

Returns: EndCondition

Convergence of results using the Gelman-Rubin Rhat statistic. TODO Keep track of model-engine-subject ID for unique composition only. `thin` - Only test for convergence at multiples of the following intervals (when all chains are ready). `chainCount` - The number of chains to test for convergence. This makes the agent wait until results for all chains are in.

thin : int
chainCount : int
Returns: EndCondition

defaultTolerance

Full Usage: defaultTolerance

Returns: float<MeasureProduct<-logL, MeasureOne>>

improvementCount count interval results iteration

Full Usage: improvementCount count interval results iteration

Parameters:
Returns: OptimStopReason
count : int
interval : int<MeasureProduct<iteration, MeasureOne>>
results : Solution list
iteration : int<MeasureProduct<iteration, MeasureOne>>
Returns: OptimStopReason

movementFloorGate movementFloor interval results iteration

Full Usage: movementFloorGate movementFloor interval results iteration

Parameters:
Returns: OptimStopReason

noImprovement results iteration

Full Usage: noImprovement results iteration

Parameters:
Returns: OptimStopReason
results : Solution list
iteration : int<MeasureProduct<iteration, MeasureOne>>
Returns: OptimStopReason

stationarySquaredJumpDistance log

Full Usage: stationarySquaredJumpDistance log

Parameters:
Returns: EndCondition

True if there is no significant slope in mean squared jumping distances (MSJD), binned per 200 iterations and a regression of five bins.

log : LogEvent -> unit
Returns: EndCondition

stationarySquaredJumpDistance' fixedBin pointsRequired slopeTol log results i

Full Usage: stationarySquaredJumpDistance' fixedBin pointsRequired slopeTol log results i

Parameters:
Returns: OptimStopReason

An `EndCondition` that calculates that segregates the most recent n results into five bins, and runs a regression to detect a temporal variation in the mean squared jumping distance (MSJD). The significance of the slope coefficient of a linear regression is assessed to determine if the MSJD is increasing through time for every parameter sequentially: if all p-values are >0.1, then the `EndCondition` is true.

fixedBin : int
pointsRequired : int
slopeTol : float
log : LogEvent -> unit
results : Solution list
i : int<MeasureProduct<iteration, MeasureOne>>
Returns: OptimStopReason

stoppedImproving chains minimums

Full Usage: stoppedImproving chains minimums

Parameters:
Returns: bool

Given a list of solutions, which are ordered most recent first, returns `true` if there are at least `chains` recent results, and the change within the recent results is no more than `tolerance`.

chains : int
minimums : Solution list
Returns: bool

Type something to start searching.