Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
DO_ak_matresh.doc
Скачиваний:
8
Добавлен:
24.11.2019
Размер:
2.08 Mб
Скачать

Тема 10. Поиск наилучших решений методами динамического программирования Лекция 10. Поиск наилучших решений методами динамического программирования

При поиске наилучших решений в оптимизационных задачах методами классического математического анализа предполагается следующее:

1. Этот анализ предназначен для непрерывных функций (переменных) и их производных. В действительности переменные могут быть дискретными (булевыми, целочисленными).

2. Обращение в нуль первой производной есть необходимое, но недостаточное условие наличия экстремума (существуют точки перегиба).

3. Отсутствие ограничений в виде неравенств. Во всех темах, где мы встречались с задачами оптимизации, ограничения обязательно присутствуют.

4. Требование единственной точки экстремума (обязательного условия выпуклости функций) может и не выполняться.

Преимущества динамического метода оптимизации Гамильто- на – Якоби – Беллмана перед методами классического математического анализа состоят в следующем.

1. Решаются оптимизационные задачи любого вида (функции выпуклые, вогнутые, с наличием нескольких экстремумов).

2. Наличие ограничений на переменные не усложняет, а упрощает определение экстремума, поскольку сокращается число анализируемых вариантов.

3. Метод пригоден и для непрерывных переменных, если заранее оговорить точность отыскиваемого решения.

4. Безусловность выполнения принципа оптимальности: оптимальное решение на каждом последующем шаге ищется относительно решения, найденного на предыдущем шаге.

5. Возможность получения не единственного оптимального решения, что позволяет лучше учесть особенности экономической ситуации.

6. Возможность использования метода для многомерных задач (например, при распределении множества ресурсов).

Метод Гамильтона – Якоби – Беллмана носит и другое название метода динамического программирования (МДП).

Приведем конкретный пример использования этого метода МДП.

Пример. Самолет загружается неделимыми предметами трех типов, каждый весом: P1 = 34, P2 = 28, P3 = 25 кг, и стоимостью, соответственно, С1 = 100, С2 = 70, С3 = 65 денежных единиц за предмет. Грузоподъемность самолета Pс=100 кг. Сколько предметов каждого типа Xj надо загрузить, чтобы суммарная стоимость перевозки была максимальной?

  1. Если самолет загружать только предметами первого типа (вариант, для которого n = 1), то максимальная стоимость груза составит:

C1X1 = f1(Pc) (1)

Естественно, что P1X1  Pс и тогда X1 Pc/ P1. Значит, для первого варианта (n = 1) максимальную стоимость груза можно будет записать, равной:

С1( Pс / P1) = f1(Pc) (2)

  1. При загрузке самолета предметами и первого X1, и второго типа X2 (вариант n = 2) в самолет нельзя взять больше, чем разницу (Pс  P2X2) предметов первого типа. Тогда стоимость предметов первого типа будет:

f1(Pс  P2X2) (3)

Отсюда максимальная стоимость груза для предметов первого и второго типа ( для варианта n = 2) составит значение:

f2(Pс) = max [f1(Pс  P2X2) + C2X2] (4)

При этом, значение: 0  X2  Pс / P2 (5)

  1. Для стоимости, при загрузке тремя типами груза (n = 3), получим формулу:

f3(Pс) = max [f2(Pс  P3X3) + C3X3] (6)

При этом, значение: 0  X3  Pс / P3 (7)

  1. Следовательно, для любого конечного значения n предметов можно записать:

fn(Pс) = max [fn-1(Pс  PnXn) + CnXn] (8)

При этом, значение: 0  Xn  Pс / Pn (9)

Обращаем ваше внимание на то, что число предметов можно интерпретировать, как число шагов по объектам любой природы. Это значит, что в рекуррентной формуле (8) заложен алгоритм решения любых распределительных задач. К их числу относятся: транспортные перевозки, планирование производственной программы, распределение и замена оборудования, производство и хранение продукции, поставки сырья, распределение нагрузки по генераторам электростанций и другие.

Полученные результаты по этому алгоритму для нашей задачи следует сопоставить с решением этой же задачи для линейной целевой функции:

Z =  PjXj  max (10)

Ограничение относится только к грузоподъемности самолета:

34X1 + 28X2 + 25X3  100 (11)

Решение задачи (10) – (11) дает следующее: Для нецелочисленных переменных значение Z = 294,12 денежных единиц. Оптимальные значения переменных X1 = 2,941; X2 = 0; X3 = 0.

Для целочисленных переменных значение Z = 270 денежных единиц. Оптимальные значения переменных X1 = 2; X2 = 1; X3 = 0. Причем, в запасе остается еще 4 кг груза.

Метод Гамильтона – Якоби – Беллмана имеет глубокие математические обоснования [9]. Различают два понятия: программа управления и синтез. Программа управления отождествляется с принятием решений на перспективу и возможной потери свойств оптимальности. Синтез – отслеживание и принятие оперативных решений без потери свойств оптимальности. Синтез обеспечивает определение оптимального управления экономикой в каждый момент времени для любого состояния экономики и для любых начальных условий.

Для непрерывных переменных метод Гамильтона – Якоби  Беллмана позволяет отыскивать оптимальные решения путем решения задачи Коши для системы обыкновенных дифференциальных уравнений. Весь вычислительный процесс при этом опирается на теорему о достаточных условиях оптимальности.

Для дискретных переменных (и многошаговых процедурах) используются рекуррентные функциональные уравнения типа (8). Приведем следующий пример решения оптимизационной задачи и покажем ее преимущества для качества информационных ресурсов.

Пример. Управление ресурсами для экономического развития четырех заводов.

Каждому из четырех заводов (n = 4) запланирован прирост продукции в количестве gi (x) в зависимости от суммы выделенного капитала . Требуется распределить общую сумму выделенного капитала между заводами так, чтобы общий прирост выпуска продукции был максимальным.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]