Skip to content

docs(searches): add multi-start gradient searches to the MLE example#95

Merged
Jammy2211 merged 1 commit into
mainfrom
feature/multi-start-gradient-examples
Jul 14, 2026
Merged

docs(searches): add multi-start gradient searches to the MLE example#95
Jammy2211 merged 1 commit into
mainfrom
feature/multi-start-gradient-examples

Conversation

@Jammy2211

Copy link
Copy Markdown
Collaborator

Summary

Phase 2 of the multi-start gradient MAP search promotion (PyAutoFit#1369; library merged in Fit#1370, JAX validation in autofit_workspace_test#43). Adds a Search: MultiStartAdam section to scripts/searches/mle.py documenting the new af.MultiStartAdam search (with MultiStartADABelief / MultiStartLion noted as drop-in optax-rule alternatives), run on the shared 1D Gaussian with a use_jax=True analysis and the standard fit plot. Updates the module header/contents/links and regenerates the paired notebooks/searches/mle.ipynb.

(The original "config + packaged defaults" phase was dropped — PyAutoFit searches have no per-search config and the new searches add zero config keys.)

Test Plan

  • python scripts/searches/mle.py runs end-to-end (Drawer + LBFGS + MultiStartAdam); MultiStartAdam recovers the truth basin (centre=50.20, normalization=25.22, sigma=10.03) on jax 0.10.2 + optax 0.2.5
  • Notebook regenerated via the standard py_to_notebook + colab-injection transform; diff scoped to mle.py + mle.ipynb

Notes

  • No JAX pytree registration in the example: MultiStartAdam builds each model instance inside its traced objective from a plain parameter vector, so (unlike Nautilus_jax) the model never crosses a jax.jit boundary. Verified it runs identically without enable_pytrees/register_model.

Generated by the PyAutoLabs agent workflow.

Document af.MultiStartAdam (with MultiStartADABelief / MultiStartLion as drop-in
alternatives) in scripts/searches/mle.py: a JAX/optax multi-start first-order
gradient MAP optimizer run on the 1D Gaussian with a use_jax=True analysis, with
the standard fit plot. No pytree registration is needed — the search builds each
instance inside its own traced objective, so the model never crosses a jax.jit
boundary. Regenerate the paired notebook.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@Jammy2211 Jammy2211 added the pending-release PR queued for the next release build label Jul 14, 2026
@Jammy2211 Jammy2211 merged commit f23254b into main Jul 14, 2026
3 of 4 checks passed
@Jammy2211 Jammy2211 deleted the feature/multi-start-gradient-examples branch July 14, 2026 18:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pending-release PR queued for the next release build

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant