ribs.emitters.rankers

Rankers for use across emitters.

The rankers implemented in this file are intended to be used with emitters. Specifically, a ranker object should be initialized or passed in the emitters. The Ranker object will define the rank() method that returns the result of a descending argsort of the solutions. It will also define a reset() method that resets the internal state of the object.

When specifying which ranker to use for each emitter, one could either pass in the full name of a ranker, e.g., “ImprovementRanker”, or the abbreviated name of a ranker, e.g., “imp”. The supported abbreviations are:

DensityRanker([seed])

Ranks solutions based on density in measure space.

ImprovementRanker([seed])

Ranks solutions based on improvement in the objective.

NoveltyRanker([seed])

Ranks solutions based on novelty scores.

ObjectiveRanker([seed])

Ranks solutions based on objective values.

RandomDirectionRanker([seed])

Ranks solutions based on projection onto a direction in measure space.

TwoStageImprovementRanker([seed])

Ranks solutions based on status and on improvement in the objective.

TwoStageObjectiveRanker([seed])

Ranks solutions based on status and on objective values.

TwoStageRandomDirectionRanker([seed])

Ranks solutions based on status and on projection onto a direction in measure space.

RankerBase([seed])

Base class for rankers.