ribs.archives.ArchiveStats¶
- class ribs.archives.ArchiveStats(num_elites: int | integer, coverage: float | floating, qd_score: float | floating, norm_qd_score: float | floating, obj_max: float | floating | None, obj_mean: float | floating | None)[source]¶
Holds statistics about an archive.
Methods
Attributes
Number of elites in the archive.
Proportion of cells in the archive that have an elite - always in the range \([0,1]\).
QD score, i.e., sum of objective values of all elites in the archive.
Normalized QD score, i.e., the QD score divided by the number of cells in the archive.
Maximum objective value of the elites in the archive.
Mean objective value of the elites in the archive.
- coverage : float | floating¶
Proportion of cells in the archive that have an elite - always in the range \([0,1]\).
- norm_qd_score : float | floating¶
Normalized QD score, i.e., the QD score divided by the number of cells in the archive.
- obj_max : float | floating | None¶
Maximum objective value of the elites in the archive. None if there are no elites in the archive.
Note
If the archive is non-elitist (this occurs when using the archive with a learning rate which is not 1.0, as in CMA-MAE), then an elite with this objective may no longer exist in the archive because it was replaced with an elite with a lower objective value. This can happen because in non-elitist archives, new solutions only need to exceed the threshold of the cell they are being inserted into, not the objective of the elite currently in the cell. See #314 for more info.