Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МО2-2010 (новая редакция).doc
Скачиваний:
102
Добавлен:
28.04.2019
Размер:
5.01 Mб
Скачать
      1. Метод Хука-Дживса

Этот метод был разработан в 1961 году для решения задачи (12.1). Метод Хука-Дживса представляет собой последовательность двух процедур: исследующего поиска (ИП) вокруг текущей базисной точки и поиска по образцу (ПО).

Исследующий поиск (ИП). Для проведения ИП (рис. 12.1.) необходимо задать исходную базисную точку , шаг для каждой переменной , - коэффициент уменьшения шага в процессе поиска. Каждая переменная (координата) по очереди изменяется на величину шага и вычисляется , где -j-ый единичный вектор . Если , то заменяется на . В противном случае делается шаг в противоположном направлении, т.е. вычисляется . Если это приводит к уменьшению значения функции, то заменяется на ; иначе точка не заменяется. После перебора всех n координат ИП вокруг точки завершается получением новой базисной точки . Если новая базисная точка , производится поиск по образцу, иначе ИП повторяется вокруг точки , но с уменьшенным шагом.

Алгоритм исследующего поиска вокруг текущей базисной точки x

Начальный этап. Задать точку , систему линейно-независимых направлений , шаг ; положить , ; .

Основной этап.

  1. Вычислить , .

  2. Если , то перейти к шагу 5.

  3. Вычислить , .

  4. Если , то перейти к шагу 5, иначе положить , .

  5. Если , то положить и перейти к шагу 1, иначе положить и остановиться.

Поиск по образцу (ПО) заключается в нахождении точки , лежащей на направлении, соединяющем две соседние базисные точки и : .

Далее проводится ИП вокруг точки , приводящий в точку . Если , то точка принимается за новую базисную точку и вновь производится ПО, но уже в направлении , в противном случае нужно вернуться в точку и провести ИП вокруг нее с целью построения нового направления движения по образцу. Если ИП вокруг текущей базисной точки не приводит к успеху , т.е. значение функции не уменьшается при движении вдоль любых координат осей, то необходимо уменьшить величину шага вдоль каждой из осей и провести ИП заново. Решение задачи завершается, когда величина шага ( ) становится достаточно малой.

Алгоритм метода Хука-Дживса

Начальный этап. Задать начальную точку ,начальный вектор приращения , – коэффициент уменьшения шага, – параметр окончания счета, положить .

Основной этап.

  1. Провести ИП вокруг точки ; – полученная в результате точка.

  2. Если , то перейти к шагу 4.

  3. Если , то положить и остановиться, иначе положить и перейти к шагу 1.

  4. Вычислить .

  5. Провести ИП вокруг точки ; – полученная в результате точка.

  6. Если , то положить , и перейти к шагу 3.

На рис 12.2 приведена блок-схема алгоритма.

Пример 12.1. Найти точку минимума функции .

Очевидно, что оптимальной является точка , в которой .

Начальный этап. Пусть , , , , .

Основной этап.

  1. ИП вокруг , . Полагаем , . Так как , вычисляем , . Так как , то .

  2. Так как , то – новая базисная точка.

  1. ПО. Вычисляем = .

  2. ИП вокруг , . Вычисляем , . Так как , вычисляем , . Так как , то .

  3. Так как , полагаем , и переходим опять к ПО при .

  1. , .

  2. ИП вокруг , . Вычисляем . Так как , полагаем , Так как , вычисляем . Так как , вычисляем . Так как , то .

  3. Так как , полагаем и переходим к шагу 3, не меняя базисной точки, т.к. поиск ПО был неудачным.

  1. Так как , то и переходим к шагу 1.

  1. ИП вокруг точки , . Вычисляем . Так как , полагаем . Так как , то полагаем и , .

  2. Так как , переходим к шагу 4.

  1. ПО. , .

  2. ИП вокруг . Вычисляем . Так как , то вычисляем . Так как , то . Так как , то . Так как , то и .

  3. Так как , полагаем и переходим опять к шагу 3, не меняя базисной точки.

  1. Так как , то и переходим к шагу 1.

  1. ИП вокруг точки , . Вычисляем . Так как , то . Так как , то . Далее . Так как , то . Так как , то и .

  2. Так как , то переходим к шагу 3.

  3. Так как , то и переходим к шагу 1.

  1. ИП вокруг точки , . Вычисляем . Так как , то . Так как , то . Далее , , . Так как , то .

  2. , то – новая базисной точки, .

  1. ПО. , .

  2. ИП вокруг , . Вычисляем . Так как , то . Так как , то . Так как , то . Так как , следовательно .

  3. , поэтому полагаем , , , переходим к шагу 4.

  1. ПО. .

  2. ИП вокруг , . Вычисляем , , тогда , , т.е. . Далее , , тогда , , то есть .

  3. Так как , то , , полагаем , переходим к шагу 4.

  1. ПО. , .

  2. ИП вокруг , . Вычисляем , , , , тогда , , т. е. , .

  3. Так как , положим , положим и перейдем к шагу 4.

  1. ПО. .

  2. ИП вокруг , . , . , , , , . Таким образом, .

  3. , переходим к шагу 3, полагая .

  1. , следовательно, , .

Последовательные шаги алгоритма показаны на рис. 12.3.

Р.Хук и Т.Дживс предложили алгоритм, не содержащий одномерной оптимизации ни при ИП вдоль координатных направлений, ни при ПО. Очевидно, что можно рассматривать вариант метода Хука-Дживса с использованием методов одномерной оптимизации как на этапе ИП, так и при поиске по образцу.