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

Increase reproducibility and control stochasticity #106

Merged
merged 30 commits into from
Oct 31, 2023

Conversation

jgh9094
Copy link
Contributor

@jgh9094 jgh9094 commented Oct 31, 2023

[please review the Contribution Guidelines prior to submitting your pull request. go ahead and delete this line if you've already reviewed said guidelines.]

What does this PR do?

We increase the reproducibility of tpot2 by locking in a random number generator that is passed between classes. Additionally, we pass the random_state value to all other functions that use it within tpot2.

Where should the reviewer start?

Reviewers can start by looking at the estimator -> evolvers -> all classes that evolver uses to evolve population.

How should this PR be tested?

Making sure that multiple seed runs yield similar results across different runs/computational environments.

Any background context you want to provide?

What are the relevant issues?

[you can link directly to issues by entering # then the number of the issue]

Screenshots (if appropriate)

Questions:

  • Do the docs need to be updated?
  • Does this PR add new (Python) dependencies?

Merging Pedro's fix on the mutation/crossover variations applied to the pop.
@nickotto
Copy link
Contributor

tested on macos/windows/linux. Also on 3.9/3.10/3.11. Looks good!

@nickotto nickotto merged commit eddc07f into EpistasisLab:dev Oct 31, 2023
1 check passed
@jgh9094 jgh9094 deleted the reproducibility-rng branch November 1, 2023 18:01
@perib perib mentioned this pull request Dec 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants