EvaluatorIfc

interface EvaluatorIfc

Inheritors

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
abstract val cache: SolutionCacheIfc?

A possible cache to hold evaluated solutions

Link copied to clipboard

Indicates if the number of replications budgeted has been exceeded or not.

Link copied to clipboard

The maximum budget (in terms of number of replications) within the evaluations performed by the simulation oracle.

Link copied to clipboard

The problem definition associated with the evaluation process

Link copied to clipboard

The total number of remaining replications that can be performed by the simulation oracle.

Link copied to clipboard

The total number of evaluations performed via the cache.

Link copied to clipboard

The total number of replications satisfied by the cache.

Link copied to clipboard

The total number of evaluation requests received that were duplicates in terms of inputs.

Link copied to clipboard
abstract val totalEvaluations: Int

The total number of evaluations performed. An evaluation may have many replications.

Link copied to clipboard

The total number of evaluations performed via the simulation oracle.

Link copied to clipboard

The total number of replications performed by the simulation oracle.

Link copied to clipboard
abstract val totalReplications: Int

The total number of replications requested across all evaluation requests.

Link copied to clipboard

The total number of evaluation requests that were received.

Functions

Link copied to clipboard
abstract fun evaluate(rawRequests: List<RequestData>): List<Solution>

Processes the supplied requests for solutions. The solutions may come from an associated solution cache (if present) or via evaluations by the simulation oracle. The list of requests may have duplicated inputs, in which case, the solution will also be a duplicate. That is, no extra evaluations occur for duplicates in the list of requests. Any new solutions that result due to the processing will be entered into the cache (according to the rules governing the cache). Any incoming requests that have input range infeasible input settings will not be evaluated and will result in solutions that are bad and infeasible.

open fun evaluate(request: RequestData): Solution

Processes the supplied request for a solution. The solution may come from an associated solution cache (if present) or via an evaluation by the simulation oracle. A solution that results due to the processing will be entered into the cache (according to the rules governing the cache). If the request is input range-infeasible, then a bad and infeasible solution will be returned.

Link copied to clipboard
abstract fun resetEvaluationCounts()

The evaluator collects some basic counts (statistics) on its evaluations. This function resets all counters to 0, perhaps in preparation for another evaluation run.