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 which returns the result of a descending argsort of the solutions. It will also define a reset() method which 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:

ribs.emitters.rankers.ImprovementRanker()

Ranks the solutions based on the improvement in the objective.

ribs.emitters.rankers.TwoStageImprovementRanker()

Ranks the solutions based on the improvement in the objective.

ribs.emitters.rankers.RandomDirectionRanker()

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

ribs.emitters.rankers.TwoStageRandomDirectionRanker()

Similar to ribs.emitters.rankers.RandomDirectionRanker, but the solutions are first ranked by whether they are added, then by their projection onto a random direction in the archive space.

ribs.emitters.rankers.ObjectiveRanker()

Ranks the solutions solely based on the objective values.

ribs.emitters.rankers.TwoStageObjectiveRanker()

Similar to ribs.emitters.rankers.ObjectiveRanker, but ranks newly added solutions before improved solutions.

ribs.emitters.rankers.RankerBase()

Base class for rankers.