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([seed])

Ranks the solutions based on the improvement in the objective.

ribs.emitters.rankers.TwoStageImprovementRanker([seed])

Ranks the solutions based on the improvement in the objective.

ribs.emitters.rankers.RandomDirectionRanker([seed])

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

ribs.emitters.rankers.TwoStageRandomDirectionRanker([seed])

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([seed])

Ranks the solutions solely based on the objective values.

ribs.emitters.rankers.TwoStageObjectiveRanker([seed])

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

ribs.emitters.rankers.RankerBase([seed])

Base class for rankers.