Can I restart surrogateopt from earlier iterations with checkpoint file?

2 views (last 30 days)
My surrogateopt stopped because of external program crash, and I'm sure several function evaluations near the crash is not reliable. Thus, I want to restart surrogateopt from earlier iterations rather than resuming from the itertaion that the checkpoint file ends. Is it possible?
  2 Comments
广志 满
广志 满 on 9 May 2023
I finally gave up this attempt and edited my code to save checkpoint file every iteration rather than overwrite it. The implementation is based on 'OutputFcn' in optimoptions. So next time I can restart the optimization process from any iteration.
广志 满
广志 满 on 9 May 2023
options = optimoptions('surrogateopt','CheckpointFile','surrogateopt_check.mat','OutputFcn',@saveFcn);
and define saveFcn as
function stop = saveFcn(x,optimValues,state)
load 'surrogateopt_check.mat'
filename = 'check' + string(CheckPointData.BlackboxModelOptimizerData.state.iter) +'.mat';
save(filename,'CheckPointData');
stop = false;
end

Sign in to comment.

Answers (1)

Rakesh Kumar
Rakesh Kumar on 9 May 2023
I don't think of any easy way to do this.

Products


Release

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!