- •Теория принятия решений
- •Часть 2 нелинейное программирование, теория игр, многокритериальные задачи принятия решений
- •Введение
- •4. Нелинейное программирование
- •4.1. Характеристика задач
- •4.2. Условия оптимальности
- •4.3. Квадратичное программирование
- •4.4. Сепарабельное программирование
- •4.5. Задачи дробно-линейного программирования
- •4.6. Методы спуска
- •4.7. Методы одномерной минимизации
- •4.7.3. Метод деления интервала пополам
- •4.7.4. Метод золотого сечения
- •4.7.6. Метод первого порядка
- •4.8. Многомерный поиск безусловного минимума
- •4.8.1. Метод Гаусса – Зейделя (покоординатного спуска)
- •4.8.2. Метод Хука – Дживса (метод конфигураций)
- •4.8.3. Симплексный метод
- •4.8.4. Градиентные методы
- •4.8.6. Методы сопряженных направлений
- •4.8.7. Методы случайного поиска
- •Алгоритм с возвратом при неудачном шаге
- •Алгоритм с обратным шагом
- •Алгоритм наилучшей пробы
- •Алгоритм статистического градиента
- •4.8.8. Генетические алгоритмы
- •Исходная популяция
- •Результаты работы оператора скрещивания
- •Популяция первого поколения
- •4.9. Методы условной оптимизации
- •4.9.2. Метод проектирования градиента
- •4.9.3. Метод штрафных функций
- •Минимизация по методу Ньютона
- •4.9.4. Метод барьерных функций
- •Результаты поиска алгоритмом барьерных функций
- •4.9.5. Другие методы условной оптимизации
- •5. Методы теории игр в управлении
- •5.1. Теория игр в контексте теории принятия решений
- •5.2. Матричные игры с нулевой суммой
- •Использование линейной оптимизации при решении матричных игр. Пусть игра не имеет оптимального решения в чистых стратегиях, т.Е. Седловая точка отсутствует .
- •5.3. Игры с природой
- •5.4. Критерии, используемые для принятия решений
- •В играх с природой. Критерии, основанные
- •На известных вероятностях стратегий природы
- •Иногда неопределенность ситуации удается в некоторой степени ослабить с помощью нахождения вероятностей состояний на базе данных статистических наблюдений.
- •5.5. Оценка необходимости эксперимента
- •6. Многокритериальные задачи принятия решений
- •6.1. Основы многокритериальный оптимизации
- •6.2. Принцип оптимальности Парето.
- •6.3. Принцип равновесия по Нэшу
- •6.4. Конфликты, переговоры и компромиссы
- •6.5. Краткий обзор методов решения задачи векторной оптимизации
- •Значения компонентов вектор-функции
- •1. Оптимальность по Парето
- •Исходные данные для задачи оптимизации по Парето
- •Эффективность операции
- •2. Принятие решений в условиях неопределенности
- •Исходные данные для задачи принятия решения в условиях неопределенности
- •3. Многокритериальная оптимизация
- •Заключение
- •Библиографический список
- •Оглавление
- •Теория принятия решений
4.7.6. Метод первого порядка
Метод первого порядка применим к дифференцируемым функциям в случаях, когда первая производная может вычисляться с высокой точностью.
Рассматриваемый метод средней точки алгоритмически является самым простым из методов одномерной оптимизации на заданном интервале. Он заключается в определении средней точки интервала c = (a + b)/2 и вычислении в ней производной.
Если f '(c) < 0, полагают а = с, при f '(c) > 0, принимают b = с. Условие окончания поиска учитывает точность по координате и по производной функции 1:
((b – a) < ) (| f '(c) | < 1).
Эффективность метода зависит от трудоемкости вычисления производной. Задаваемая точность 1 не должна быть выше точности вычисления производной. С ростом трудоемкости и снижением точности вычислений производной следует отдавать предпочтение прямым методам.
4.7.7. Методы второго порядка
Методы второго порядка применимы к дважды дифференцируемым функциям. При этом предъявляются высокие требования к точности вычисления производных. Наиболее удачными считаются задачи, в которых известно аналитическое выражение первой производной, а еще лучше – и второй.
Здесь приводится только один из наиболее часто используемых методов – метод Ньютона – Рафсона.
Он основан на линейной аппроксимации первой производной минимизируемой функции f в окрестности текущей точки xk:
В стационарной точке аппроксимации, которая принимается за очередное приближение xk+1, производная равна нулю:
.
Отсюда следует рекуррентная формула для построения последовательности приближений к искомому минимуму:
. (4.41)
Очевидно, что применение формулы (4.41) возможно только при условии, что для каждого k. Поиск завершается по условию достижения точности, заданной величиной первой производной | f '(xk) | < 1 или расстоянием между двумя точками |xk+1 – xk| < . Возможно одновременное использование этих условий.
В общем случае процедура (4.41) не гарантирует сходимости к стационарной точке. Если начальная точка достаточно близка к стационарной, то метод сходится. При сходимости обеспечивается высокая скорость приближения к минимуму. На рис. 4.15 приведен случай сходимости метода. Очередному приближению соответствует точка пересечения оси x аппроксимирующей прямой. Как очевидно, последовательность точек x0, x1, x2,… приближается к минимуму x* .
Для некоторых функций результат поиска зависит от выбора начальной точки. Например, при начальной точке, взятой правее максимуму производной так, как показано на рис. 4.16, метод расходится.
Рис. 4.15. Сходимость метода |
Рис. 4.16. Расходимость метода |
4.8. Многомерный поиск безусловного минимума
4.8.1. Метод Гаусса – Зейделя (покоординатного спуска)
Процедура поиска сводится к решению последовательности задач одномерной минимизации по каждой переменной. Пусть выбрана начальная точка
.
Зафиксируем все переменные, кроме первой, на начальных значениях и решаем задачу
любым из одномерных методов. Фиксируем х1 на полученном в решении значении x1' и делаем свободной переменную х2. Приходим к очередной одномерной задаче
.
Аналогично строятся и решаются последующие одномерные задачи, последняя из которых имеет вид
.
Эти n задач составляют один цикл. Его результатом является точка x1. Она принимается за начальную точку для следующего аналогичного цикла. Поиск заканчивается, когда расстояние между двумя последовательными точками становится меньше заданной величины:
.
Работу метода иллюстрирует рис. 4.17, на котором показана траектория поиска минимума функции f = (2 – x1)4+2(x1 – 2x2)2.
М
x2
Из этого примера также следует, что метод неэффективен в условиях «оврага». Если функция не дифференцируема в отдельных точках, поиск может остановиться, не достигнув окрестности минимума. Рисунок 4.20 демонстрирует такой случай: точка останова А далека от искомого минимума.
Рис. 4.18. Достижение минимума за один цикл |
Рис. 4.19. Достижение минимума за несколько циклов |
Рис. 4.20. Точка останова А далеко от минимума |
Из анализа траекторий поиска в приведенных примерах можно заключить, что эффективность поиска повысится, если к описанным однотипным циклам добавить движение в направлении, проходящем через точки х(k) и х(k+1). Это движение называют ускоряющим шагом. Он используется в методе, рассматриваемом ниже.