Safely Stop a Pareto Search

조회 수: 2 (최근 30일)
Ayman Al-Sukhon
Ayman Al-Sukhon 2020년 5월 14일
댓글: Ameer Hamza 2020년 5월 14일
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

채택된 답변

Ameer Hamza
Ameer Hamza 2020년 5월 14일
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
Ayman Al-Sukhon
Ayman Al-Sukhon 2020년 5월 14일
Ameer,
Your MVP title is well deserved. Thank you for this, it helps a whole lot.
Ameer Hamza
Ameer Hamza 2020년 5월 14일
Thanks for your comment :) I am glad to be of help!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Multiobjective Optimization에 대해 자세히 알아보기

제품


릴리스

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by