Safely Stop a Pareto Search
3 views (last 30 days)
Show older comments
Ayman Al-Sukhon
on 14 May 2020
Commented: Ameer Hamza
on 14 May 2020
Hi,
I am running a Pareto search with an expensive cost function. I limited the time to 39600 s using the 'MaxTime' option however it has been more than 12 hours (43200 s):
fun = @CostFunctionOptim_Pareto;
options = optimoptions('paretosearch','ParetoSetSize',200,'InitialPoints',x_seed,'PlotFcn','psplotparetof','MaxTime',39600);
[x,fval,exitflag,output] = paretosearch(fun,4,Aineq,bineq,Aeq,beq,lb,ub,nonlcon,options);
I don't know why it's still going, but I don't want to stop it for fear that it will erase all the progress it has so far (I am happy with the results it has so far and don't need more points in the Pareto front). Is there any way to safely stop the optimzer and still get the output values?
Thanks
0 Comments
Accepted Answer
Ameer Hamza
on 14 May 2020
I hope you haven't interrupted the optimization already. The safest way I can think of is to add a breakpoint inside your objective function. The optimizer will stop at that point, and you will have access to the current values of the optimization variables. You can then use save() to save the values of optimization variables in a .mat file, and then you can interrupt the paretosearch. Now you have the latest optimal values of the variable in a mat file, load that file and use those those values.
4 Comments
More Answers (0)
See Also
Categories
Find more on Multiobjective Optimization in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!