Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
  • F FEDOT
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 87
    • Issues 87
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 1
    • Merge requests 1
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • ITMO-NSS-team
  • FEDOT
  • Merge requests
  • !724

Merged
Created Jun 15, 2022 by Elizaveta Lutsenko@LizLutsenkoOwner

Individuals inheritance fix

  • Overview 59
  • Commits 45
  • Changes 32

Created by: MorrisNein

These changes elaborate the PR #700.

  1. Python objects change list:
  • Individual and ParentOperator classes are now frozen data classes;
  • Every uid now normally exists in a single Individual object. This is a soft restriction, though, and any violation will be noticed with warning;
  • fitness and graph of Individual now can be updated only once - during its evaluation;
  • Individual has a new attribute called native_generation. It points to the number of generation in which the individual is obtained;
  • parent_operators of individuals are not cleaned in every generation any more;
  • Individual.parent_operators and ParentOperator.parent_individuals are now tuples;
  • Side change: Moved SingletonMeta from fedot.core.log to fedot.core.utilities.singleton_meta
  • Bug fix: OptNode now accepts content with params, not replacing parameters with default stub.
  • Minor: ind argument of mutate() now has explicit name individual;
  • Minor: many typing fixes.
  1. OptHitsory serialization change list:
  • Serialized OptHistory now has an attribute called individuals_pool. It contains all unique individuals from the history;
  • In history JSON, individuals and archive_history now contain only uids that point to the elements of individuals_pool;
  • Any intermediate parent, that is not represented in any generation, is placed to individuals_pool. Its children point to it via its uid;
  • As a bonus, newly-saved history JSONs now take much less size (about 10+ times lesser);
  • All individuals not found in loaded histories now are re-created with the same uid. Their metadata contains an explicit message explaining that they are missing;
  • Added support for relatively recent histories;
  • Improved OptHistory tests to guarantee stability and backward compatibility;
  • Updated the histories stored in Git repo.
Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: individuals_inheritance_fix