ConfirmationOptions

data class ConfirmationOptions(val topK: Int = 3, val replicationsPerCandidate: Int = 50, val recommendationCILevel: Double = 0.99, val selectionComparator: Comparator<Solution>? = null, val screenK: Int? = null, val screeningReplications: Int? = null)(source)

Options for the optional confirmation stage run after all members of a concurrent solver run complete. Members can return "best" solutions estimated with different precision (different replication counts, different luck), so picking the winner from point estimates alone favors noise. The confirmation stage re-evaluates the top candidates with common random numbers and picks the winner from the confirmed estimates — standard ranking-and-selection hygiene.

Parameters

topK

the number of best candidate solutions to confirm; must be at least 1

replicationsPerCandidate

the number of replications for each confirmed candidate; must be at least 1

Constructors

Link copied to clipboard
constructor(topK: Int = 3, replicationsPerCandidate: Int = 50, recommendationCILevel: Double = 0.99, selectionComparator: Comparator<Solution>? = null, screenK: Int? = null, screeningReplications: Int? = null)

Properties

Link copied to clipboard

True when both screening parameters are set, so the screening stage runs.

Link copied to clipboard

The overall confidence used when testing response-constraint feasibility during selection, matching Solver.recommendationCILevel so that confirmation and the solvers agree about which solutions count as feasible.

Link copied to clipboard
Link copied to clipboard

The replications per candidate used by the screening stage. Null (the default) disables screening; it must be supplied exactly when screenK is.

Link copied to clipboard
val screenK: Int?

How many candidates to carry into a screening stage before the finalists are chosen. Null (the default) disables screening entirely and preserves the single-stage behaviour.

Link copied to clipboard

The rule used to rank candidates and to pick the winner. Null (the default) uses FeasibilityFirstComparator at recommendationCILevel, which is what the solvers themselves use, so confirmation and search agree about what "best" means.

Link copied to clipboard
val topK: Int