There is a newer version of the record available.

Published October 8, 2025 | Version v2.0.0a1

MilesCranmer/PySR: v2.0.0a1

  • 1. University of Cambridge
  • 2. AAE @ Loughborough University
  • 3. Scott Logic
  • 4. Qualcomm AI Research
  • 5. @JaneliaSciComp
  • 6. Brown University; Pumas-AI
  • 7. @dottxt-ai
  • 8. New York University Abu Dhabi
  • 9. @abzu-ai
  • 10. University of Colorado, Boulder
  • 11. UT Austin
  • 12. Imperial College London
  • 13. Beihang University

Description

This is an alpha release of v2.0.0. There will still be changes before the release of v2.0.0, likely including new hyperparameter defaults.

What's Changed

Major changes

Multiple features (update backend to 2.0) (#999)

This PR updates the backend to SymbolicRegression.jl 2.0.0-alpha.8 and exposes several major new features:

  • N-ary operators: Support for operators with arbitrary arity (not just unary/binary)
    • Added 3-arity operators: fma (fused multiply-add), clamp, etc.
    • Automatic constraint processing for n-arity operators
  • Equation guesses: Pass initial equation guesses to guide the search using the guesses parameter to fit
    • Control replacement rate with fraction_replaced_guesses
  • Advanced autodiff backends: Experimental support for Mooncake.jl and Enzyme.jl
    • Enzyme.jl support via autodiff_backend="Enzyme" (fragile/experimental)
    • Mooncake.jl (experimental - currently disabled pending upstream fix)
  • Feature node mutation: New mutation operator that directly modifies which features are used
    • Control mutation weight with weight_mutate_feature
  • Worker management:
    • worker_imports: specify Julia packages to import on workers
    • worker_timeout: control timeout for worker processes

Automatic batching for big data (#1045)

Other changes

  • docs: add vector expression example by @MilesCranmer in https://github.com/MilesCranmer/PySR/pull/1041
  • [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in https://github.com/MilesCranmer/PySR/pull/1008
  • chore(deps): bump actions/checkout from 4 to 5 by @dependabot[bot] in https://github.com/MilesCranmer/PySR/pull/1009
  • ci: update Dockerfile image by @MilesCranmer in https://github.com/MilesCranmer/PySR/pull/1022
  • test: update docker versions by @MilesCranmer in https://github.com/MilesCranmer/PySR/pull/1023
  • chore(deps): bump actions/setup-python from 5 to 6 by @dependabot[bot] in https://github.com/MilesCranmer/PySR/pull/1027
  • deps: update min python to 3.9 by @MilesCranmer in https://github.com/MilesCranmer/PySR/pull/1052
  • deps: bump juliacall requirement by @dependabot[bot] in https://github.com/MilesCranmer/PySR/pull/1035
  • chore(deps): bump actions/checkout from 4 to 5 by @dependabot[bot] in https://github.com/MilesCranmer/PySR/pull/1049
  • chore(deps): bump github/codeql-action from 3 to 4 by @dependabot[bot] in https://github.com/MilesCranmer/PySR/pull/1050
  • chore(deps): bump actions/setup-python from 5 to 6 by @dependabot[bot] in https://github.com/MilesCranmer/PySR/pull/1051
  • chore(deps): update beartype requirement from <0.22,>=0.19 to >=0.19,<0.23 by @dependabot[bot] in https://github.com/MilesCranmer/PySR/pull/1047
  • chore: update pyjuliacall requirement in environment.yml by @MilesCranmer in https://github.com/MilesCranmer/PySR/pull/1054

Full Changelog: https://github.com/MilesCranmer/PySR/compare/v1.5.9...v2.0.0a1

Files

MilesCranmer/PySR-v2.0.0a1.zip

Files (2.4 MB)

Name Size Download all
md5:68b05c16ae36251882e7fa544bf8dbab
2.4 MB Preview Download

Additional details

Related works

Software