Can I restart surrogateopt from earlier iterations with checkpoint file?

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

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.
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.

Products

Release

R2022b

Asked:

on 6 May 2023

Commented:

on 9 May 2023

Community Treasure Hunt

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

Start Hunting!