EndConditions Module
Nested modules
| Modules | Description |
|
|
Functions and values
| Function or value |
Description
|
Full Usage:
acceptanceRateGate min max interval log results iteration
Parameters:
float
max : float
interval : int<MeasureProduct<iteration, MeasureOne>>
log : LogEvent -> unit
results : Solution list
iteration : int<MeasureProduct<iteration, MeasureOne>>
Returns: OptimStopReason
|
Stops when acceptance rate is not within the defined range. Used to avoid stopping when not mixing.
|
Full Usage:
atIteration iteration arg2 currentIteration
Parameters:
int<MeasureProduct<iteration, MeasureOne>>
arg1 : Solution list
currentIteration : int<MeasureProduct<iteration, MeasureOne>>
Returns: OptimStopReason
|
End the optimisation procedure when a minimum number of iterations is exceeded.
|
Full Usage:
convergence thin chainCount
Parameters:
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.
|
|
|
Full Usage:
improvementCount count interval results iteration
Parameters:
int
interval : int<MeasureProduct<iteration, MeasureOne>>
results : Solution list
iteration : int<MeasureProduct<iteration, MeasureOne>>
Returns: OptimStopReason
|
|
Full Usage:
movementFloorGate movementFloor interval results iteration
Parameters:
float<MeasureProduct<-logL, MeasureOne>>
interval : int<MeasureProduct<iteration, MeasureOne>>
results : Solution list
iteration : int<MeasureProduct<iteration, MeasureOne>>
Returns: OptimStopReason
|
|
Full Usage:
noImprovement results iteration
Parameters:
Solution list
iteration : int<MeasureProduct<iteration, MeasureOne>>
Returns: OptimStopReason
|
|
Full Usage:
stationarySquaredJumpDistance log
Parameters:
LogEvent -> unit
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.
|
Full Usage:
stationarySquaredJumpDistance' fixedBin pointsRequired slopeTol log results i
Parameters:
int
pointsRequired : int
slopeTol : float
log : LogEvent -> unit
results : Solution list
i : int<MeasureProduct<iteration, MeasureOne>>
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.
|
Full Usage:
stoppedImproving chains minimums
Parameters:
int
minimums : Solution list
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`.
|
bristlecone