Evaluator
An evaluator should communicate with the simulation oracle to determine solutions for requests for evaluation from solvers.
Parameters
the problem that the evaluation of responses will be used on
the provider of responses from the simulation oracle
a cache that can be used instead of a costly simulation evaluation
Constructors
Properties
The total number of replications successfully bypassed/satisfied by the cache.
The total number of unique design points (ModelInputs) requested for evaluation across all evaluator calls.
The total number of times the evaluate() method has been invoked. This essentially tracks the number of "batches" or "generations" processed.
The total number of replications actually executed by the simulation oracle.
Functions
Processes the supplied requests for solutions. The solutions may come from an associated solution cache (if present or allowed) or via evaluations by the simulation oracle. The CRN option is applied to the set of requests and does not permit cached solutions, even if caching is permitted.
Resets the evaluation clock: the per-call counter stamped into produced solutions as their evaluation number, which drives dynamic penalty-function ramps (the iteration count in Park-and-Kim-style penalties). Restart-style solvers reset the clock between independent runs so each run's penalty ramp begins fresh instead of inheriting ever-steeper multipliers from earlier runs. Resetting the clock does NOT disturb the cumulative statistics counters (totalEvaluatorCalls and friends), which feed post-run evaluator metrics. The default implementation does nothing, for evaluators without a clock.
The evaluator collects some basic counts (statistics) on its evaluations. This function resets all counters to 0 (including the evaluation clock), perhaps in preparation for another evaluation run.