FEDOT icon indicating copy to clipboard operation
FEDOT copied to clipboard

Implement custom class for generations

Open MorrisNein opened this issue 2 years ago • 0 comments

This PR is addressed to solve the following issues:

  • #900
  • #846

Also makes a step towards #866 (labeled generations are planned, possible with custom values).

Work in progress:

  • [x] Move OptHistory and related objects to a separate repo.
  • [x] Implement custom classes for individuals storage: IndividualsList & Generation.
  • [x] Make the new classes responsible for consistency of individuals during the optimization by implementing individuals_pool context variable.
  • [x] Wrap the optimization process into the new context. Test consistency of the resulting history with & without multiprocessing.
  • [x] Add type hints for Generation methods.
  • [x] Unify Generation class usage in Optimiser.
  • [x] Set signatures of historical operators for working with IndividualsList or Generation instead of PopulationT (where it is necessary).
  • [x] Add ability for generations labeling & other metadata.
  • [ ] Add final choices to OptHistory.
  • [ ] Adapt OptHistory serialization.
  • [ ] Develop readable representation for IndividualsList & Generation.

An alternative solution: try using custom serialization class.

MorrisNein avatar Sep 28 '22 12:09 MorrisNein