Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat: Make MAPElitesRepertoire more modular so that it can store any kind of information. #211

Draft
wants to merge 15 commits into
base: develop
Choose a base branch
from

Conversation

Lookatator
Copy link
Member

Depends on this previous PR: #209
Related issue: #191

Make MAPElitesRepertoire more modular so that it can store any kind of information.

Changes:

  • Standardizes extra_scores handling across all repertoire classes by:
    • Adding keys_extra_scores parameter to control which extra scores are stored
    • Adding filter_extra_scores method to filter extra scores based on keys
    • Updating add() and init() methods to properly handle extra scores
  • Moves observations from being a dedicated field (in UnstructuredRepertoire) to being stored in extra_scores
  • Updates AURORA class and Seq2seq training to use the new extra_scores interface

Motivation

  • Reduces code duplication by unifying handling of extra scores across repertoire implementations
  • Makes the codebase more maintainable by standardizing how additional evaluation data is stored
  • Allows for more flexible storage of additional data beyond just observations (e.g. age of individuals, number of addition to a cell...)

Technical Details

  • Added filter_extra_scores method to GARepertoire base class
  • Updated initialization and add methods across repertoire classes to properly handle extra_scores

Checks

  • a clear description of the PR has been added
  • sufficient tests have been written
    N/A relevant section added to the documentation
    N/A example notebook added to the repo
  • clean docstrings and comments have been written
  • if any issue/observation has been discovered, a new issue has been opened

@Lookatator Lookatator self-assigned this Feb 17, 2025
@Lookatator Lookatator added the enhancement New feature or request label Feb 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant