Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
одз.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
616.45 Кб
Скачать

Зауваження

Із теореми 2 випливає такий висновок:

в процесі оптимального використання відходів трьох типів, перший тип відходів використовується не повністю, а відходи другого і третього типів повністю.

До змісту

До змісту

Тема 2:Динамічне програмування (дп) Основні поняття

Динамічне програмування (інакше – динамічне планування) – це метод знаходження оптимальних розв’язків в задачах з багатокроковою (багатоетапною) структурою.

Багато економічних процесів розчленовується на окремі кроки природнім чином. Це усі процеси планування і управління, які розвиваються у часі. Природнім кроком для них може бути рік, квартал, місяць, декада, тиждень, день і т.і.

Але метод ДП може застосовуватися при розв’язанні задач, де час зовсім не фігурує; поділ на кроки в таких задачах уводиться штучно.

Тому “динаміка” задач ДП полягає в методі розв’язання. В економічній практиці зустрічаються декілька типів задач,які за своєю постановкою або способом розв’язання відносяться до задач ДП.

Це задачі оптимального перспективного і поточного планування у часі.

Задача перспективного планування

Планується діяльність групи N промислових підприємств Пі (і=1,N) на період в t (t=1,T) господарських років. На початку періоду на розвиток системи підприємств виділяються деякі кошти (засоби, вкладення) К, які треба розподілити між підприємствами.

В процесі діяльності підприємства вкладені в нього засоби частково амортизуються.

Кожне підприємство за рік дає прибуток, який залежить від вкладених коштів, частина якого відраховується у фонд підприємства.

Виникає задача визначення обсягу коштів на початку кожного року, які потрібно виділити кожному підприємству, щоб сумарний чистий прибуток за Т років був максимальним. Це типова задача ДП. Тут процес прийняття рішення розбивається на Т кроків.

Управління процесом полягає в початковому розподілі і наступних перерозподілах коштів Ut = {Uti}, де Uti – обсяг коштів, які виділяються і – му підприємству на початку t – го року.

Для опису динаміки системи уводиться вектор стану Хt = {xti}, де xti - стан і-го підприємства на початок t-го року.

У свою чергу, стан кожного підприємства xti виявляється вектором, компонентами якого є трудові ресурси, основні фонди, фінансовий стан і т.д., тобто Хt = {xti}

Очевидно, що вектор управління – це функція стану системи на початок відповідного року: . Початковий стан системи Х0 може бути заданим.

Цільовою функцією буде сумарний прибуток об’єднання за Т років.

Якщо Zt – прибуток за t-рік , то отримуємо задачу

,

де  - область припустимих управлінь, або множина економічних можливостей, які визначаються на стан системи і вектор управління.

До змісту

До змісту

Особливості задач динамічного програмування

Можна виділити типові особливості багатокрокових задач.

1. Розглядається система, стан якої на кожному кроці визначається вектором . Подальша зміна її стану залежить лише від даного стану і не залежить від того, яким шляхом система перейшла до нього. Такі процеси називаються процесами без післядії.

2. На кожному кроці обирається один розв’язок Ut, під дією якого система переходить із попереднього стану в новий . Цей новий стан виявляється функцією стану на початок інтервалу і прийнятого на початку інтервалу рішення Ut, тобто .

3. Дія на кожному кроці пов’язана з певним виграшем (прибутком), або втратою (витратами), які залежать від стану на початок кроку (етапу) і прийнятого рішення.

4. На вектори стану і управління можуть бути накладені обмеження, об’єднання яких визначає область припустимих розв’язків .

5. потрібно знайти таке припустиме управління Ut для кожного кроку t, щоб стримати екстремальне значення цільової функції за всі Т кроків.

Будь-яку припустиму послідовність дій для кожного кроку, яка переводить систему з початкового стану в кінцевий, називають стратегією управління.

Припустима стратегія управління, для якої цільова функція досягає екстремального значення, називається оптимальною.

Будь-яку багатокрокову задачу можна розв’язувати по різному. Один із шляхів використовує ідею проведення оптимізації поетапно.

Ідея поступової покрокової оптимізації складає сутність методу ДП.

Оптимізація одного кроку, як правило, простіша ніж оптимізація всього процесу в цілому: задачу розбивають на ярд більш простих. На кожному кроці оптимізується задача малого розміру, причому покрокове управління обирається з урахуванням всіх його наслідків.

Зауважимо, що серед усіх кроків існує один, який може плануватися без огляду на майбутнє. Це останній крок. Його можна вивчити і спланувати самого по собі найкращим ( в розумінні обраного критерія) чином, оскільки за ним нема більше етапів.

Звідси отримуємо одну із специфічних особливостей динамічного програмування: всю обчислювальну процедуру програмування доцільно розгортати від кінця до початку.

Раніш усіх планується останній N-й крок, за ним (N-1) – ий і т.д.

При цьому оптимальне управління UN на N-му кроці здійснюється на основі припущень про очікувані результати попереднього етапу, тобто про значення XN-1. Для кожного можливого результату XN-1 на (N-1)-му етапі знаходимо оптимальне управління на N-му етапі.

Таку множину оптимальних управлінь, які залежать від можливих результатів попереднього етапу, називають умовно-оптимальним розв’язком .

Після завершення аналізу кінцевого етапу, розглядають аналогічну задачу для передостаннього етапу з вимогою, щоб цільова функція досягла екстремального значення на двох останніх етапах сумісно.

Це дає умовно-оптимальний розв’язок на передостанньому етапі і т.д.

Здійснивши такий пошук для усіх кроків, знайдемо послідовність умовно-оптимальних управлінь

.

Умовно- оптимальні управління дозволяють знайти не умовно, а дійсно оптимальне управління на кожному кроці.

Дійсно, нехай початковий стан х0 відомий. Тоді U1t(x0) – оптимальне управління для першого кроку. Одночасно знаходимо екстремальне значення цільової функції відносно всього процесу.

Якщо відома оптимальна дія для першого кроку, виявляємо до якого стану переходить система в результаті цієї дії, тобто знаходимо оптимальний стан системи х1t на початку другого етапу.

Далі обираємо з усіх можливих оптимальних управлінь , те, що відповідає і т.д.

Крокуючи вздовж умовно-оптимальних управлінь від початку до кінця, знаходимо просто оптимальні управління для всіх етапів.