-
Notifications
You must be signed in to change notification settings - Fork 887
Open
Labels
enhancementNew feature or requestNew feature or requesthelp wantedExtra attention is neededExtra attention is needed
Description
Currently, checkpoints are saved based on checkpoint_interval (e.g., every 10 iterations), regardless of whether any improvement was made. This can be wasteful when the optimization is making slow progress.
Feature Request:
Add a configuration option checkpoint_on_improvement: bool that when set to True, only saves a checkpoint when a new best solution is found, rather than at fixed intervals.
Possible Implementation:
- Config: Add checkpoint_on_improvement: bool = False to Config class in openevolve/config.py
- Logic: Modify checkpoint trigger in openevolve/process_parallel.py (around line 667):
- If checkpoint_on_improvement is True, checkpoint only when database.best_program_id == child_program.id (improvement detected)
- If False, use existing interval-based logic
Example use case:
- Only save checkpoint when a new best is found
checkpoint_on_improvement: true - checkpoint_interval is ignored when above is true
This is especially useful when:
- Users only care about capturing improvements, not every N iterations
- Long-running jobs where disk space is a concern
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requesthelp wantedExtra attention is neededExtra attention is needed