Skip to content

fireSense_spreadFit: convergence parameter, in the fit's cache key - #79

Merged
eliotmcintire merged 1 commit into
developmentfrom
feat/spreadfit-convergence
Oct 17, 2026
Merged

eliotmcintire merged 1 commit into
developmentfrom
feat/spreadfit-convergence

Conversation

@eliotmcintire

Copy link
Copy Markdown
Collaborator

Fits sometimes stop while still improving. The stopping rule is now a fit setting that the fit's cache sees, so a stopped fit can be continued with a stricter rule instead of being returned as is or started over.

Affects: every fit cached before this re-keys once (the rule is now in the key); after that, changing the rule or the clusters.deoptim* options re-runs the fit from its cached generations.

Depends-on: PredictiveEcology/fireSenseUtils#162
Depends-on: PredictiveEcology/clusters#55

Technical details

fitSpread() (R/fitSpread.R) gave runDEoptim() no early-stop settings, so the rule lived only in clusters' options, outside the fit's Cache() key, and a finished fit was returned from cache whatever the rule. New parameter convergence (list, default NULL) is resolved once with clusters::deoptimConvergence() (parameter, else options, else clusters defaults) and the full list is passed as convergence = inside the existing Cache() call; clusters keeps it out of the per-generation keys, so a rerun resumes. Floors: fireSenseUtils 0.2.3.9102, clusters 0.0.80. New test-convergence.R (the args a mocked runDEoptim sees: default, parameter, options; fails on development) and the metadata tests list the parameter. Full module tests with convertToPackage() + test_local(): 0 failures on the branch; on development, only the new test fails.

🤖 Generated with Claude Code

https://claude.ai/code/session_014G18Mik3fH4z5M5CyMSUS6

…to runDEoptim inside the fit's Cache()

Floors fireSenseUtils 0.2.3.9102, clusters 0.0.80.
Depends-on: PredictiveEcology/fireSenseUtils#162, PredictiveEcology/clusters#55

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014G18Mik3fH4z5M5CyMSUS6
@eliotmcintire eliotmcintire added enhancement New feature or request backwards compatible Existing code and results keep working unchanged labels Oct 16, 2026
@eliotmcintire
eliotmcintire merged commit 7119fb2 into development Oct 17, 2026
9 checks passed
@eliotmcintire
eliotmcintire deleted the feat/spreadfit-convergence branch October 17, 2026 18:00
eliotmcintire added a commit that referenced this pull request Oct 17, 2026
…runDEoptim convergence, #162)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014G18Mik3fH4z5M5CyMSUS6
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backwards compatible Existing code and results keep working unchanged enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant