Интерпретируйте surrogateoptplot

Функция построения графика surrogateoptplot предоставляет большую информацию о суррогатных шагах оптимизации. Например, рассмотрите график шагов, surrogateopt берет встроенную тестовую функцию rastriginsfcn. Эта функция имеет глобальное минимальное значение 0 в точке [0,0]. Путем предоставления асимметричных границ вы поощряете surrogateopt искать далеко от глобального минимума.

Создайте объемную поверхностную диаграмму rastriginsfcn.

ezsurf(@(x,y)rastriginsfcn([x(:),y(:)]));

Установите асимметричные границы [-3,-3] и [9,10]. Установите опции использовать функцию построения графика surrogateoptplot, и затем вызывать surrogateopt.

lb = [-3,-3];
ub = [9,10];
options = optimoptions('surrogateopt','PlotFcn','surrogateoptplot');
rng default
[x,fval] = surrogateopt(@rastriginsfcn,lb,ub,options);

Surrogateopt stopped because it exceeded the function evaluation limit set by 
'options.MaxFunctionEvaluations'.

Начните интерпретировать график с его левой стороны. Для получения дополнительной информации шагов алгоритма, см. Суррогатный Алгоритм Оптимизации.

  • Первые точки являются голубыми треугольниками, указывая на квазислучайные выборки функции в проблемных границах. Эти моменты наступают от фазы Construct Surrogate.

  • Затем черные точки, указывающие на адаптивные точки, точки, созданные в Поиске фазы Minimum.

  • Толстая зеленая строка представляет лучшее (самое низкое) найденное значение целевой функции. Вскоре после оценки номер 30 surrogateopt застревает в локальном минимуме со значением целевой функции около 5. Увеличьте масштаб, чтобы видеть это поведение более ясно.

xlim([20 100])
ylim([0 10])

  • Около оценки номер 115 вертикальная строка указывает на суррогатный сброс. На данном этапе алгоритм возвращается к фазе Construct Surrogate.

  • Темно-синие точки x представляют должностное лицо, которое является лучшей точкой, найденной начиная с предыдущего суррогатного сброса.

  • Около оценки номер 150 должностное лицо улучшается относительно предыдущей лучшей точки путем достижения значения меньше чем 1. После этого номера оценки лучшая точка медленно падает в цене, чтобы почти обнулить. Увеличьте масштаб, чтобы видеть это поведение более ясно.

xlim([140 200])
ylim([0 6])

  • После оценки номер приблизительно 180 самые адаптивные точки около должностного лица, указывая, что шкала поиска уменьшается.

  • Оптимизация останавливается при оценке номер 200, потому что это - функциональный предел оценки по умолчанию для 2D проблемы.

Смотрите также

Похожие темы