Skip to content

feat: add parallel uncertainty fraction mapping#24

Open
ConradBitt wants to merge 1 commit into
mrolims:mainfrom
ConradBitt:feature/uncertainty-exponent
Open

feat: add parallel uncertainty fraction mapping#24
ConradBitt wants to merge 1 commit into
mrolims:mainfrom
ConradBitt:feature/uncertainty-exponent

Conversation

@ConradBitt
Copy link
Copy Markdown

Description

This PR implements the calculation of the uncertainty exponent for attraction basins, using the computed basin as a reference and a DiscreteDynamicalSystem mapping to check if the perturbation leads to a classification different from that already performed by the escape_analysis function.

Main Technical Changes

  • Main Implementation: Added the uncertainty_fraction_mapping function to handle uniform sampling perturbations on disk and classify basin boundary uncertainty.
  • High-Performance Parallelization: Leveraged joblib to parallelize processing at the epsilon-scale level, drastically reducing execution time.
  • Thread-Safe PRNG: Integrated numpy.random.SeedSequence.spawn to guarantee strictly isolated and reproducible random streams across concurrent worker processes.
  • Early Exit Optimization: Integrated a short-circuit check into the point perturbation loops to immediately flag a coordinate as uncertain as soon as the threshold mismatch condition is met, avoiding redundant path calculations.
  • Documentation: Fully documented functions following the standard NumPy/SciPy style guide with internal English commentary.

Verification and Testing

  • Validated performance, scalability, and array shape consistency directly through the notebook environment asset test_uncertainty_exponent.ipynb.

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.

1 participant