- •Двусторонние шпоры по файзу
- •Печатай прямо этот файл
- •Теория принятия решений [3, 4]
- •1. Классы задач принятия решений, системный анализ и характеристика его этапов.
- •2. Графы и показатели эффективности смо с простейшими потоками.
- •6. Замкнутые смо.
- •3. Принятие решений в условиях риска, неопределенности и конфликты.
- •4. Основы линейного программирования. Область применения. Постановка задачи
- •Каноническая форма задач лп
- •Стандартная форма задачи лп
- •Основные понятия лп. Свойства задач лп
- •Методы решения задач лп
- •Симплекс-метод. Характеристика метода
- •М одифицированный алгоритм симплекс-метода
- •Модели управления транспортными потоками.
- •Простейшая транспортная задача (т-задача)
- •Транспортная задача с ограниченными пропускными способностями (Td - задача)
- •Задачи с неоднородным грузом
- •Многоиндексные задачи
- •Транспортные задачи по критерию времени
- •6. Оптимизация транспортных потоков. Метод потенциалов
- •Построение начального плана перевозок
- •Правило северо-западного угла
- •Переход от одного плана перевозок к другому
- •Признак оптимальности
- •Алгоритм метода потенциалов
- •7. Методы управления проектом.
- •8. Двойственность задач оптимизации. Двойственность задач лп
- •Интерпретация двойственной задачи
- •Запись двойственной задачи в общем случае
- •Теоремы двойственности
- •Двойственный симплекс-метод
- •9. Декомпозиция задач планирования большой размерности.
- •Метод декомпозиции Данцига - Вулфа
- •10. Методы определения целочисленных решений.
- •Метод отсечений
- •Метод ветвей и границ
- •Аддитивный алгоритм
- •11. Основы динамического программирования. Достоинства и недостатки метода.
- •Работа метода дп
- •Функциональное уравнение дп
- •Многомерные задачи динамического программирования
- •Снижение размерности с помощью множителей Лагранжа
- •12. Оптимизация надежности технических систем, систем распределения ресурсов.
- •4.2.3. Сбалансированная транспортная задача
- •13. Классы задач нелинейного программирования и методы их решения. Х арактеристика задач
- •Условия оптимальности
- •Методы решения задач нп
- •14. Задачи нелинейного программирования, сводящиеся к линейным. Квадратичное программирование
- •Сепарабельное программирование (сп)
- •Задачи дробно-линейного программирования
- •15. Классификация и характеристика методов «спуска».
- •Методы одномерной минимизации. Метод деления шага пополам
- •Квадратичная аппроксимация
- •Метод деления интервала пополам
- •Метод золотого сечения
- •Метод Фибоначчи
- •Метод первого порядка
- •Методы второго порядка
- •Многомерный поиск безусловного минимума Метод Гаусса-Зейделя (покоординатного спуска)
- •Метод Хука-Дживса (метод конфигураций)
- •Симплексный метод
- •Градиентные методы
- •Метод Ньютона
- •М етоды сопряженных направлений
- •Методы условной оптимизации
- •Метод проектирования градиента
- •Метод штрафных функций
- •Метод барьерных функций
- •16. Методы случайного поиска и генетические алгоритмы.
- •8.8.7. Методы случайного поиска
- •Алгоритм с возвратом при неудачном шаге
- •Алгоритм с обратным шагом
- •Алгоритм наилучшей пробы
- •Алгоритм статистического градиента
- •8.8.8. Генетические алгоритмы
- •17. Особенности принятия решений при многих критериях.
- •18. Методы свертки и целевого программирования в принятии решений по многим критериям.
- •10.2.1.4. Линейная свертка
- •10.2.1.5. Максиминная свертка
- •10.2.1.7. Целевое программирование (цп)
- •19. Интерактивные методы принятия решений
Функциональное уравнение дп
Пронумеруем шаги в порядке проведения условной оптимизации с конца к началу. Эффективность i-го шага описывается функцией Zi(Si,Ui), где Si - состояние к i-му шагу (точнее - вектор параметров состояния), Ui - управление на i-м шаге (точнее - вектор управляемых переменных или решение).
Модель
задачи ДП включает целевую функцию
,
(1)
описание
допустимой области управлений D,
а также уравнение состояния
,
связывающее между собой два последовательных
состояния.
Формализация
вычислительной процедуры метода ДП
базируется на принципе оптимальности:
последующие
решения должны быть оптимальными
относительно состояния, сложившегося
в результате предшествующих, пусть и
не оптимальных, решений.
Для описания этого свойства введем
последовательность функций {fk(Sk)},
так, что каждая из них есть зависимость
экстремального значения критерия за k
оставшихся шагов от состояния на начало
k-го
шага:
.
(2)
Функции (2) зависят только от состояния и не могут зависеть от искомых переменных (управлений), так как по ним ищется экстремум.
=> Состояние - это то, от чего зависит экстремум критерия.
Предположим, что осталось k шагов (k³2)
Sk - > Uk - > zk(Sk, Uk) принимаем произвольное решение
k-1, Sk-1 - > (в соответствии с принципом оптимальности) fk-1(Sk-1)
.(3)
Она не является экстремальной для k шагов, так как Uk взято произвольно. Если воспользоваться уравнением состояния, то (3) примет вид
,(4)
Но экстремальное значение за k шагов по определению (2) есть fk(Sk). Таким образом, окончательно получаем
|
(5)
основное функциональное уравнение ДП (рекуррентное соотношение).
Для
k=1:
.
(6)
Процедура динамического программирования:
1. Имея описание и модель задачи, выделяем шаги и производим их нумерацию с конца.
2.
Определяем параметры состояния и вводим
последовательность функций {fk(Sk)},
,
в которой каждая функция
fk(Sk)
есть наилучшее
значение критерия за k оставшихся шагов
относительно состояния Sk.
3. На основе принципа оптимальности составляем функциональное уравнение ДП и отдельно выражение для f1.
4. Проводим условную оптимизацию, последовательно вычисляя f1, f2,...,fN. При этом на каждом шаге для всех возможных значений состояния Sk запоминаются значения Uk* и fk (в таблице или файле).
5.Исходя из заданного состояния SN^, проводим безусловную оптимизацию по схеме:
SN^®табл.N®UN*®у.с.®SN-1^®табл.N-1®UN-1*®у.с.®...®S1^®табл.1® U1*,
где у.с. - уравнение состояния. Значение fN(SN) из N-й таблицы есть оптимальное значение критерия задачи.
Достоинства метода ДП:
1. Задача содержит N переменных, которые могут принимать m значений. Поэтому порядок числа вариантов распределения определяется величиной mN. При расчете по рекуррентной формуле максимум ищется для m значений состояния, а поиск максимума путем просмотра всего диапазона переменной требует перебора от двух до m+1 вариантов, то есть в среднем ~m/2. Значит, один шаг включает расчет m2/2 вариантов, а вся задача в ДП - Nm2/2. Очевидно, что Nm2/2<<mN.
2. В случае изменения, например, количества распределяемого ресурса метод полного перебора и другие регулярные численные методы требуют решать задачу заново. В динамическом программировании, если новое значение не больше X, достаточно провести безусловную оптимизацию, взяв за исходное состояние новое значение ресурса.
3. При использовании любого метода оптимизации, кроме ДП, исключение одного из предприятий из системы распределения приведет к необходимости решать изменившуюся задачу как новую. В динамическом программировании, если этому предприятию был присвоен номер N, то есть оно было последним по ходу условной оптимизации, решение измененной задачи находится сразу: по заданному количеству распределяемого ресурса входим не в N-ю, а в (N-1)-ю таблицу и далее действуем в соответствии со схемой безусловной оптимизации.
Метод ДП дает весь ансамбль оптимальных решений, свойственных задаче.
4. Метод ДП не накладывает каких-либо специальных требований на вид и форму представления функций, составляющих критерий.
5. Отыскание глобального экстремума многомерной функции является очень сложной проблемой. ДП снижает размерность решаемых задач в N раз (по числу переменных), что значительно облегчает нахождение глобального экстремума.
6. Наложение специфических условий на переменные не «утяжеляет» решение задачи методом.
7. Трудоемкость вычислений и объем памяти для хранения результатов на одном шаге не зависят от числа шагов. Поэтому увеличение числа шагов приводит только к пропорциональному возрастанию времени решения задачи, тогда как для других методов с увеличением размерности задачи трудоемкость ее решения растет гораздо быстрее.
