Курсовая работа: Исследование методов оптимизации
Оптимизация подразумевает нахождение наилучшего варианта среди всех существующих. В любой практической оптимизационной задаче существует много совпадающих этапов. Наиболее важным этапом является моделирование рассматриваемой физической ситуации с целью получения математической функции, которую необходимо минимизировать, а также определения ограничений, если таковые существуют. Затем следует выбрать подходящую процедуру для осуществления минимизации. Эта процедура должна быть реализована на практике, что во многих реальных случаях вынуждает использовать ЭВМ для выполнения большого объема вычислений.
Универсальных методов, подходящих для поиска экстремума абсолютно любой функции не существует. Данная курсовая работа ставит себе целью исследовать метод оптимизации нулевого порядка – метод Нелдера-Мида, а также метод оптимизации первого порядка – градиентный метод с дроблением шага на примере конкретной функции. Таким образом, получив практические результаты, можно будет сравнить эффективность рассматриваемых методов, применяемых к исследуемой функции.
ПОСТАНОВКА ЗАДАЧИ ( Вариант задания 1)
Исследовать функцию типа :
Используемые методы минимизации :
1. Метод: Нелдера-Мида.
2. Метод: Градиентный с дроблением шага.
Необходимо :
1. Решить задачу минимизации , начав итерации из выбранной начальной точки x0=(1;1) заданными по варианту методами, необходимая точность решения . Привести таблицу результатов расчета типа: Итерация: - точка: значение: критерий: .
2. Рассчитать 3 линии уровня функции и изобразить их на графике.
3. Отобразить на графиках линий уровня для каждого из заданных методов траекторию движения по итерациям (траекторию спуска).
4. Выявить зависимость числа итераций N от заданной точности E, значения точности: , , , , , . Привести таблицу результатов как в п.1 для каждого значения E.
5. Сравнить эффективность рассмотренных в варианте методов по числу итераций N, построить графики N=F(E).
2. МАТЕМАТИЧЕСКОЕ ОПИСАНИЕ МЕТОДОВ ОПТИМИЗАЦИИ
2.1 Метод Нелдера-Мида
Вводится симплекс, координаты вершин которого заданы таблицей (одна из вершин в начале координат).
t – некоторое выбранное число.
Если n = 2, то при t = 1 имеем
Расположение симплекса показано на рисунке 2.1
Рисунок 2.1- Начальное расположение симплекса
Легко убедиться в том, что если координаты вершин симплекса задать в соответствии с матрицей Д0 , то расстояние между двумя любыми вершинами симплекса всегда будет равно выбранной константе t независимо от размерности задачи n .
Действительно, расстояние между любой вершиной xj , j= 2,3,.., n+1, и вершиной x1 равно
С другой стороны, расстояние между любой парой вершин , , , равно Зададим начальную точку процедуры поиска минимума вектором Перенесем исходный симплекс таким образом, чтобы вершина, находившаяся в начале координат, оказалась в точке . Получим матрицу