surrogateopt: output function
조회 수: 2 (최근 30일)
이전 댓글 표시
How do we create a customize output function for the 'surrogateopt' that will show the solution at every iteration. I need am example for better understanding. Thank you.
댓글 수: 0
채택된 답변
Alan Weiss
2022년 8월 9일
Try this.
lb = [-3 -3];
ub = -lb;
opts = optimoptions('surrogateopt','OutputFcn',@listout);
obj = @(x)100*(x(2) - x(1)^2)^2 + (1 - x(1))^2;
[sol,fval] = surrogateopt(obj,lb,ub,opts)
function stop = listout(x,optimValues,state)
stop = false;
switch state
case 'iter'
nval = optimValues.funccount;
y = optimValues.currentX;
fprintf("Number of fevals = %g, x = [%g,%g]\n",nval,y(1),y(2))
end
end
Alan Weiss
MATLAB mathematical toolbox documentation
댓글 수: 3
Alan Weiss
2022년 8월 11일
For an example (uses different syntax, be careful) see https://www.mathworks.com/help/gads/custom-output-function-for-genetic-algorithm.html.
Alan Weiss
MATLAB mathematical toolbox documentation
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Surrogate Optimization에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!