Статистические методы локального поиска

Статистические методы или методы случайного поиска получили достаточно широкое распространение при построении оптимальных решений в различных приложениях. Это объясняется в первую очередь тем, что с ростом размерности задач резко снижается эффективность регулярных методов поиска (детермини­рованных): так называемое “проклятие размерности”. Во-вторых, зачастую информация об оптимизируемом объекте слишком мала для того, чтобы можно было применить детерминированные методы. Достаточно часто статистические алгоритмы используют при поиске оптимального решения в системах управления, когда отклик системы можно получить только при задании управляющих воздействий img01 на ее входах. В таких ситуациях статистические алгоритмы могут оказаться значительно эффективнее детерминированных.

img02

Рис.


Наибольший эффект применение статистических методов приносит при решении задач большой размерности или при поиске глобального экстремума.

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

Статистические алгоритмы обладают рядом достоинств:

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

Принято считать, что преимущество статистических методов проявляется с ростом размерности задач, так как вычислительные затраты в детерми­нированных методах поиска с ростом размерности растут быстрее, чем в статистических алгоритмах.


Простой случайный поиск

Пусть нам необходимо решить задачу минимизации функции img03 при условии, что img04.

В данной области по равномерному закону выбираем случайную точку img05 и вычисляем в ней значение функции img06. Затем выбираем таким же образом случайную точку img07 и вычисляем img08. Запоминаем минимальное из этих значений и точку, в которой значение функции минимально. Далее генерируем новую точку. Делаем img09 экспериментов, после чего лучшую точку берем в качестве решения задачи (в которой функция имеет минимальное значение среди всех случайно сгенерированных).

img10. img11 Вероятность попадания в эту окрестность при одном испытании равна img12. Вероятность непопадания равна img13. Испытания независимы, поэтому вероятность непопадания за img14 экспериментов равна img15.

Вероятность того, что мы найдем решение за img16 испытаний: img17.

Отсюда нетрудно получить оценку необходимого числа испытаний img18 для определения минимума с требуемой точностью:

img19.

При решении экстремальных задач на областях со сложной геометрией обычно вписывают эту область в img20-мерный параллелепипед. А далее генерируют в этом img21-мерном параллелепипеде случайные точки по равномерному закону, оставляя только те, которые попадают в допустимую область.

img22

Рис.


Различают направленный и ненаправленный случайный поиск.

  1. Ненаправленный случайный поиск. При таком поиске все последующие испытания проводят совершенно независимо от результатов предыдущих. Сходимость такого поиска очень мала, но имеется важное преимущество, связанное с возможностью решения многоэкстремальных задач (искать глобальный экстремум). Примером является рассмотренный простой случайный поиск.

  2. Направленный случайный поиск. В этом случае отдельные испытания связаны между собой. Результаты проведенных испытаний используются для формирования последующих. Сходимость таких методов, как правило, выше, но сами методы обычно приводят только к локальным экстремумам.

Простейшие алгоритмы направленного случайного поиска


Алгоритм парной пробы. В данном алгоритме четко разделены пробный и рабочий шаги.

Пусть img23 – найденное на img24-м шаге наименьшее значение минимизируемой функции img25. По равномерному закону генерируется случайный единичный вектор img26 и по обе стороны от исходной точки img27 делаются две пробы: проводим вычисление функции в точках img28, где img29-величина пробного шага.

Рабочий шаг делается в направлении наи­меньшего значения целевой функции. Очередное приближение определяется соотношением

img30.


img31

Рис.


Особенностью данного алгоритма является его повышенная тенденция к “блужданию”. Даже найдя экстремум, алгоритм может увести процесс поиска в сторону.


Алгоритм наилучшей пробы. На img32-м шаге мы имеем точку img33. Генерируется img34 случайных единичных векторов img35. Делаются пробные шаги в на­правлениях img36 и в точках img37 вычисляются значения функции. Выбирается тот шаг, который приводит к наибольшему уменьшению функции: img38. И в данном направлении де­ла­ется шаг

img39.

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

     С увеличением числа проб выбранное направление приближается к направлению img41.

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


img43

Рис.


Метод статистического градиента. Из исходного состояния img44 делается img45 независимых проб img46 в img47 случайных направлениях, а затем вычисляются соответствующие значения минимизируемой функции в этих точках. Для каждой пробы запоминаем приращения функции

img48.

После этого формируем векторную сумму

img49.

В пределе при img50 направление img51 совпадает с направлением градиента целевой функции. При конечном img52 вектор img53 представляет собой статистическую оценку направления градиента. В направлении img54 делается рабочий шаг и, в результате, очередное приближение определяется соотно­шением

img55.

При выборе оптимального значения img56, которое минимизирует функцию в заданном направлении, мы получаем статистический вариант метода наи­скорейшего спуска. Существенное преимущество перед детермини­рованными алгоритмами заключается в возможности принятия решения о направлении рабочего шага при img57. При img58 и неслучайных ортогональных рабочих шагах, направленных вдоль осей координат, алгоритм вырождается в градиентный метод.


img59

Рис.


Алгоритм наилучшей пробы с направляющим гиперквадратом. Внутри допустимой области строится гиперквадрат. В этом гиперквадрате случайным образом разбрасывается img60 точек img61, в которых вычисляются значения функции. Среди построенных точек выбираем наилучшую. Таким образом, на 1-м этапе координаты случайных точек удовлетворяют неравенствам img62, и img63 – точка с минимальным значением целевой функции.

Опираясь на эту точку, строим новый гиперквадрат. Точка, в которой достигается минимум функции на img64-м этапе, берется в качестве центра нового гиперквадрата на img65-м этапе.

img66

Рис.


Координаты вершин гиперквадрата на img67-м этапе определяются соотношениями

img68,  img69,

где img70 – наилучшая точка в гиперквадрате на img71-м этапе.

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

В алгоритме с обучением стороны гиперквадрата могут регулироваться в соответствии с изменением по некоторому правилу параметра img73, определяющего стратегию изменения стороны гиперквадрата. В этом случае координаты вершин гиперквадрата на img74-м этапе будут определяться соотношениями

img75,  img76.

Хорошо выбранное правило регулирования стороны гиперквадрата приводит к достаточно эффективному алгоритму поиска.

В алгоритмах случайного поиска вместо направляющего гиперквадрата могут использоваться направляющие гиперсферы, направляющие гиперконусы.


Hosted by uCoz