exponenta event banner

Что такое суррогатная оптимизация?

Суррогат - это функция, которая аппроксимирует другую функцию. Суррогат полезен, потому что для его оценки требуется мало времени. Так, например, искать точку, минимизирующую целевую функцию, просто оценивать её суррогат по тысячам точек, а наилучшее значение принимать за приближение к минимизатору целевой функции.

Суррогатная оптимизация лучше всего подходит для трудоемких объективных функций. Целевая функция не обязательно должна быть гладкой, но алгоритм работает лучше всего, когда целевая функция является непрерывной.

Суррогатная оптимизация пытается найти глобальный минимум целевой функции, используя несколько оценок целевой функции. Для этого алгоритм пытается сбалансировать процесс оптимизации между двумя целями: исследованием и скоростью.

  • Исследование для поиска глобального минимума.

  • Скорость получения хорошего решения в нескольких объективных оценках функций.

Было доказано, что алгоритм сходится к глобальному решению для непрерывных объективных функций на ограниченных доменах. См. Гутманн [1]. Однако это схождение происходит небыстро.

Как правило, нет полезного критерия остановки, который останавливает решатель, когда он находится вблизи глобального решения. Как правило, вы устанавливаете критерий остановки для ряда оценок функций или количества времени и берете лучшее решение, найденное в этом вычислительном бюджете.

Для получения подробной информации о surrogateopt алгоритм см. в разделе Алгоритм суррогатной оптимизации.

Ссылки

[1] Гутманн, Х.-М. Метод радиальной базовой функции для глобальной оптимизации. Журнал глобальной оптимизации 19, выпуск 3, 2001, стр. 201-227. https://doi.org/10.1023/A:1011255519438

См. также

Связанные темы