1. МЕТОД НЕЛИНЕЙНОЙ ОПТИМИЗАЦИИ ХУКА-ДЖИВСА
Постановка задачи
Ознакомиться с методами нелинейной оптимизации
нулевого порядка
Детально изучить метод нелинейной оптимизации Хука-
Дживса
Используя алгоритм Хука-Дживса реализовать программу
нахождения минимума функции Розенброка с заданной
точностью
Нижников М. С. Курсовой проект 2011
2. МЕТОД НЕЛИНЕЙНОЙ ОПТИМИЗАЦИИ ХУКА-ДЖИВСА
Методы нелинейной оптимизации
нулевого порядка
Методы оптимизации, не использующие значения
производных функции, называются методами нулевого
порядка. Они сходятся медленнее, чем градиентные методы,
но используются в том случае, если значения производных
сложно получить в виде аналитических функций или процесс
вычисления производных довольно трудоёмкий.
Нижников М. С. Курсовой проект 2011
3. МЕТОД НЕЛИНЕЙНОЙ ОПТИМИЗАЦИИ ХУКА-ДЖИВСА
Метод оптимизации Хука-Дживса
Метод Хука — Дживса (англ. Hooke — Jeeves), служит для
поиска безусловного локального экстремума функции и
относится к прямым методам, то есть опирается
непосредственно на значения функции. Алгоритм делится на
две фазы: исследующий поиск и поиск по образцу.
Нижников М. С. Курсовой проект 2011
4. МЕТОД НЕЛИНЕЙНОЙ ОПТИМИЗАЦИИ ХУКА-ДЖИВСА
Исследующий поиск
На начальном этапе задается стартовая точка (обозначим её 1)
и шаги hi по координатам. Затем зафиксируем значения всех
координат кроме 1-ой, вычисляем значения функции в точках
x0 + h0 x0 − h0 и x0 (где — первая координата точки, а
h0
— соответственно значение шага по этой координате) и
переходим в точку с наименьшим значением функции. В этой
точке зафиксируем значения всех координат кроме 2-ой,
вычисляем значения функции в точках x1 + h1 и x1 − h1 ,
переходим в точку с наименьшим значением функции и т. д.
для всех координат.
Нижников М. С. Курсовой проект 2011
5. МЕТОД НЕЛИНЕЙНОЙ ОПТИМИЗАЦИИ ХУКА-ДЖИВСА
Исследующий поиск
В случае, если для какой-нибудь координаты значение в
исходной точке меньше, чем значения для обоих направлений
шага, то шаг по этой координате уменьшается. Когда шаги по
всем координатам hi станут меньше соответствующих
значений ei , алгоритм завершается и точка 1 признаётся точкой
минимума.
Нижников М. С. Курсовой проект 2011
6. МЕТОД НЕЛИНЕЙНОЙ ОПТИМИЗАЦИИ ХУКА-ДЖИВСА
Иллюстрация первого этапа для двух
координат
hi
Нижников М. С. Курсовой проект 2011
7. МЕТОД НЕЛИНЕЙНОЙ ОПТИМИЗАЦИИ ХУКА-ДЖИВСА
Исследующий поиск
Таким образом, проведя исследующий поиск по всем
координатам, мы получим новую точку, с наименьшим
значением функции в окрестности (обозначим ее 2). Теперь
можно осуществлять переход ко второй фазе алгоритма.
Нижников М. С. Курсовой проект 2011
8. МЕТОД НЕЛИНЕЙНОЙ ОПТИМИЗАЦИИ ХУКА-ДЖИВСА
Поиск по образцу
На этапе поиска по образцу откладывается точка 3 в
направлении от 1 к 2 на том же расстоянии. Её координаты
получаются по формуле x3 = x1 + 2( x2 − x1 ) ,. Затем в новой точке 3
проводится исследующий поиск, как на 1 фазе алгоритма, за
исключением того, что шаг на этой фазе не уменьшается.
Если на этой фазе, в результате исследующего поиска, удалось
получить точку 4, отличную от точки 3, то точку 2
переобозначим как 1, а 4 как 2 и повторим поиск по образцу. В
случае, если не удаётся найти точку 4, отличную от точки 3,
точку 2 переобозначаем как точку 1 и повторим 1-ю фазу
алгоритма — исследующий поиск.
Нижников М. С. Курсовой проект 2011
9. МЕТОД НЕЛИНЕЙНОЙ ОПТИМИЗАЦИИ ХУКА-ДЖИВСА
Иллюстрация второго этапа поиска
для двух координат
Нижников М. С. Курсовой проект 2011
11. МЕТОД НЕЛИНЕЙНОЙ ОПТИМИЗАЦИИ ХУКА-ДЖИВСА
Функция Розенброка
Функция Розенброка
( f ( x, y ) = (1 − x) 2 + 100( y − x 2 ) 2) —
невыпуклая функция,
используемая для оценки
производительности
алгоритмов оптимизации,
предложенная Ховардом
Розенброком (англ.) в 1960
году.
Нижников М. С. Курсовой проект 2011
12. МЕТОД НЕЛИНЕЙНОЙ ОПТИМИЗАЦИИ ХУКА-ДЖИВСА
Результаты поиска минимума
функции Розенброка методом Хука-
Дживса
Прямой поиск минимума
функции Розенброка с
точностью 10E-5, начиная
из точки [-1.2,2] (поиск
минимума заканчивается в
точке[0.991433,0.982924]),
и из точки [-0.3,1.1]
(поиск минимума
заканчивается в точке
[0.991190,0.982440])
Нижников М. С. Курсовой проект 2011
13. МЕТОД НЕЛИНЕЙНОЙ ОПТИМИЗАЦИИ ХУКА-ДЖИВСА
Заключение
• изучены некоторые методы нелинейной оптимизации
нулевого порядка
• детально изучен метод оптимизации Хука-Дживса
• с помощью алгоритма Хука-Дживса с заданной точностью
найден минимум функции Розенброка
Нижников М. С. Курсовой проект 2011
14. МЕТОД НЕЛИНЕЙНОЙ ОПТИМИЗАЦИИ ХУКА-ДЖИВСА
Использованные материалы
• Химельблау, Д. Прикладное нелинейное
программирование./Д, Химельблау М.: Мир, 1975.-536 с.
• Банди, Б. Методы оптимизации. Вводный курс: Пер с
англ./Б, Банди./ М.: Радио и связь, 1988. – 128 с.
• [Электрон. ресурс] MAPLE. Язык технических вычислений.
БГУ, факультет прикладной математики и
информатики, Serv314subfacultyКаф. МФ Электронные
ресурсыМетодика_MAPLE.rar
• [Электрон. ресурс] Электронный учебник по Maple,
http://detc.usu.ru
Нижников М. С. Курсовой проект 2011