![](/user_photo/2706_HbeT2.jpg)
- •Элементы линейнОй и нелинейнОй
- •Оптимизации
- •Москва, 2005
- •Введение
- •1. Производственная задача или задача планирования
- •2. Типы задач линейного программирования и их преобразование
- •3. Геометрическая трактовка основной задачи
- •4. Методы решения задач линейного программирования
- •4.1. Графический метод
- •4.2. Табличный симплекс-метод решения задачи линейного
- •4.2.1. Метод единичных векторов
- •4.2.2. Расширенная задача и метод искусственного базиса
- •5. Двойственные задачи линейного программирования
- •5.1.Прямая и двойственная задача
- •5.2. Геометрическая интерпретация двойственной задачи. Леммы и теоремы двойственности
- •5.3. Нахождение решений двойственных задач
- •5.4. Параметрическая устойчивость задачи линейного программирования и физическая трактовка двойственной задачи
- •6. Транспортная задача линейного программирования
- •6.1. Математическая постановка задачи
- •6.2. Нахождение опорного плана транспортной задачи
- •6.3. Оценка опорного плана транспортной задачи на оптимальность
- •7. Элементы теории игр
- •7.1. Предмет теории игр
- •7.2. Терминология и классификация игр
- •7.4. Смешанные стратегии
- •7.5. Геометрический метод решения игр
- •II. Нелинейное программирование
- •1. Задачи нелинейного программирования
- •2. Геометрическая интерпретация задач
- •3. Некоторые проблемы решения задач нелинейного
- •4. Решение задач условной оптимизации методом Лагранжа
- •5. Градиентные методы решения задач динамического
- •5.1. Метод наискорейшего спуска
- •5.2. Метод штрафных функций
- •5.3. Симплекс-метод поиска глобального экстремума
- •Контрольные вопросы к курсу «Методы оптимизации»
5. Градиентные методы решения задач динамического
программирования
Градиентные методы относятся к прямым методам нахождения экстремума. Кроме того, они применяются как при наличии ограничения, так и при их отсутствии. Все градиентные методы – итерационные. Процесс нахождения решения задачи с помощью градиентных методов состоит в том, что, начиная с некоторой точки Х(к), осуществляется последовательный переход к некоторым другим точкам до тех пор, пока не выявляется приемлемое решение исходной задачи.
Очевидно, что при таком подходе важны следующие обстоятельства :
- выбор первоначальной точки отсчета;
- направление, в котором следует перемещаться в ходе реализации
последовательного перемещения по опорным точкам;
- скорость перемещения исследуемой точки в заданном направлении;
- результат будет иметь приближенное значение с наперед заданной
точностью.
Кроме того, к этому процессу добавляется наличие и вид области допустимых решений, т.е. каким образом итерационный процесс должен учитывать наличие или отсутствие ОДР. В связи с этим градиентные методы могут быть подразделены на две группы.
К первой группе относятся методы, при использовании которых исследуемые точки не выходят за пределы ОДР. Наиболее распространенным из таких методов при наличии ограничений является метод Франка-Вульфа.
Ко второй группе относятся методы, при использовании которых исследуемые точки могут как принадлежать, так и не принадлежать (временно) ОДР. Однако в результате итерационного процесса в конечном итоге находится точка ОДР, определяющая приемлемое решение. Из таких методов наиболее часто используется метод штрафных функций или метод Эрроу-Гурвица.
При
нахождении решения ЗНП градиентными
методами итерационный процесс осуществляют
до того момента, пока градиент функции
в очередной точке Х(к+1)
не станет равным нулю или же пока
,
где ε
– достаточно малое положительное число,
характеризующее точность полученного
решения.
Общим
в рассматриваемых методах является
понятие о градиенте функции. Если имеется
функция
и каждой переменной, входящей в данную
функцию, дано приращение Δх=dx
(т.е. приращение аргумента всегда равно
его дифференциалу), то очевидно, что
функция также будет иметь приращение,
определяемое из равенства:
.
Пользуясь правилами векторной алгебры, запишем:
,
где
вектор-строка
носит название градиента функции z.
Градиент функции – вектор-строка, элементы которой состоят из частных производных функции, т.е. тангенсов углов касательных, проведенных к поверхности отклика в плоскости, параллельной данной оси.
Интегрально это обобщенная величина направления, по которому функция изменяется наиболее динамично.
5.1. Метод наискорейшего спуска
Название
метода можно было бы понимать буквально,
если бы речь шла о минимизации функции
цели. Тем не менее по традиции такое
название используется и при решении
задачи на максимум. Метод в основном
применяется для нахождения глобального
экстремума в условиях отсутствия
ограничений. Идея данного метода
основана на том, что градиент функции
указывает направление ее наиболее
быстрого возрастания в
окрестности той точки, в которой он
вычислен. Поэтому, если из некоторой
текущей точки
перемещаться в направлении вектора
,
то функция f
будет возрастать, по крайней мере, в
некоторой окрестности
.
Следовательно, можно записать такую
рекуррентную формулу
,
(29)
где
- шаг итерации. Его выбор представляет
самостоятельную задачу. Но достаточно
часто его назначают в пределах
и затем уточняют.
Метод реализуется по следующей схеме:
1) задают первоначальную точку отсчета (для успешного решения задачи
начальная точка должна быть максимально приближена к предполагае-
мому экстремуму);
2) находят частные производные функционала (значения частных
производных в начальной точке);
3) находят значение функции в начальной точке;
4) по параметрам начальной точки вычисляют градиент функции;
5) по формуле (29) находят параметры новой точки;
6)
если удовлетворяются условия уравнения
,
то
процесс прекращают, в противном случае возвращаются к пункту 2.
З а д а ч а 28. Найти максимальное значение функции
при
точности
вычислений
.
Р е ш е н и е. Найдем градиент функции:
;
Возьмем
в качестве первого приближения ,
т.е.
.
Тогда значение функции
,
а вектор-строка градиента функции равен
.
Выберем шаг итерации
и рассчитаем параметры следующей точки
:
,
.
Вычислим значение функции цели в новой точке и определим степень приближения:
.
Так
как заданная точность не достигнута,
продолжим итерационный процесс. Градиент
функции в новой точке будет определяться
вектор-строкой .
Рассчитаем параметры следующей точки:
,
.
Значение функции цели в исследуемой точке и степень приближения равны:
,
.
Продолжим
вычисления. В точке
градиент функции будет иметь следующий
вектор-строку:
.
Рассчитываем параметры третьей точки
итерации:
,
.
Функция цели в третьей точке примет значение
.
Соответственно полученная точность:
.
Тогда в пределах заданной точности ответ следующий:
,
.
Если
точность недостаточна, процесс итерации
следует продолжить. Теоретическое
решение данной задачи : ,
.
В градиентных методах успех решения и достигаемая точность существенно зависит от двух основных факторов:
- параметров начальной точки движения (она должна быть максимально приближена к предполагаемому экстремуму);
- величины множителя λ.
Если нарушается требование по начальной точке движения, то в этом случае метод может увести процесс итерации от ожидаемого экстремума и задача вообще не будет решена. Если же наблюдается несоответствие по второму требованию, т.е. λ будет слишком велико, то задача также может не иметь решения, так как зона нахождения экстремума «не замечается». Однако стремление иметь λ как можно меньше существенно увеличивает объем расчетного процесса.