русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Структура корів за продуктивністю.


Дата додавання: 2014-04-05; переглядів: 1013.


1) Балансове рівняння щодо корів:

де — загальна кількість корів.

2) Частка корів продуктивністю 5000 кг:

3) Частка корів продуктивністю 4500 кг:

4) Частка корів продуктивністю 4000 кг:

5) Частка корів продуктивністю 3500 кг:

4. Забезпеченість корів кормами:

Невід'ємність змінних:

Щоб знайти розв'язок за цією моделлю, зробимо відповідну заміну й скористаємося симплексним методом:

Отже, маємо таку лінійну економіко-математичну модель:

за розглянутих далі умов.

1.

2.

3.

4.

5.

Задача 2.Розв'язати графічно задачу дробово-лінійного програмування:

за умов

Розв'язання. Побудуємо на площині область допустимих розв'язків задачі — трикутник АВС.

Цільова функція задачі являє собою пряму, яка обертатиметься навколо початку системи координат залежно від змінюваних параметрів , так, що точки А і С будуть точками максимуму і мінімуму функції. Виразимо із цільової функції:

Кутовий коефіцієнт цільової функції

Розглянемо похідну

Оскільки при будь-якому значенні Z вона від'ємна, то функція є спадною (зі зростанням Z кутовий коефіцієнт зменшується), а графік цільової функції обертатиметься навколо початку координат за годинниковою стрілкою. Отже, точка С є точкою максимуму, а точка А — мінімуму досліджуваної задачі.

Знайдемо координати цих точок.

Точка А:

Звідси

Точка А має координати (6/7; 24/7).

Точка С:

Звідси

Точка С має координати (9/2; 1).

Знайдемо значення цільової функції в цих точках:

Результати підтверджують, що оптимуми знайдено правильно: максимум досягається в точці С, а мінімум — у точці А.

 

Задача 3.Розв'язати задачу дробово-лінійного програмування симплексним методом:

за умов

Розв'язування. Зведемо початкову задачу до задачі лінійного програмування згідно з розглянутими раніше правилами.

Позначимо

Введемо нові змінні:

Дістанемо задачу лінійного програмування:

за умов

Розв'яжемо задачу симплексним методом. У перше та останнє обмеження введемо штучні змінні , та .

Маємо оптимальний розв'язок перетвореної задачі:

Знайдемо оптимальний розв'язок початкової задачі, враховуючи, що :

Отже,


 

ТЕМА 8.

ЗАДАЧІ НЕЛІНІЙНОГО ПРОГРАМУВАННЯ. ОСНОВНІ МЕТОДИ ЇХ
РОЗВ’ЯЗУВАННЯ ТА АНАЛІЗУ.

8.1. Економічно сутність і постановка задач НЛП.

Розв'язуючи задачі оптимального управління (планування), доводиться враховувати нелінійний характер взаємозв'язків між економічними показниками. У загальному вигляді нелінійна економіко-математична модель має вигляд:

за умов

де і - нелінійні функції.

 

Задачу нелінійного програмування намагаються звести до лінійного вигляду. Проте в такому разі можливі значні похибки. Нехай, наприклад, собівартість продукції у визначено як функцію , де — обсяги виробництва. Ввівши заміну , дістанемо лінійну залежність . За такої заміни похибки немає. А коли , то заміна цієї залежності деякою лінійною функцією призводить до значних похибок, що ілюструє рис. 6.3.

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

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

Для лінійних задач можна завжди знайти оптимальний розв'я зок універсальним методом — симплексним. При цьому немає проблеми з доведенням існування такого розв'язку. Адже в ре зультаті розв'язування задачі симплексним методом завжди діс таємо один із варіантів відповіді: 1) знайдено розв'язок; 2) задача суперечлива, тобто її розв'язку не існує; 3) цільова функція не обмежена, отже, розв'язку також немає.

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

Відомі точні методи розв'язування нелінійних задач, але при цьому постають труднощі обчислювального характеру. Навіть для сучасних ПЕОМ відповідні алгоритми є доволі трудомісткими.

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

Більшість наближених методів дають змогу знаходити локальний оптимум. Визначивши всі локальні оптимуми, методом порівняння можна знайти глобальний. Проте для практичних розрахунків такий метод не є ефективним. Часто наближені методи не «вловлюють» глобального оптимуму, зокрема тоді, коли глобальний оптимум лежить досить близько до локального. Якщо відрізок розіб'ємо на десять підвідрізків і глобальний оптимум потрапить у відрізок (див. рис. 6.4), а ліворуч від та праворуч від крива підніматиметься, то глобальний оптимум буде пропущеним. Звернемо увагу ще на один дуже важливий момент. У задачах лінійного програмування точка оптимуму завжди була граничною. Для нелінійних задач точка, яка є оптимальним планом, може бути граничною або такою, що міститься всередині допустимої області розв'язків (планів).

 

8.2. Класичний метод оптимізації задач МЛП та базі використання множників Лагранжа та їх економічна інтепритація.

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

Методи нелінійного програмування бувають пряміта непрямі. Прямими методами оптимальні розв'язки відшукують у напрямку найшвидшого збільшення (зменшення) цільової функції. Типовими для цієї групи методів є градієнтні. Непрямі методи полягають у зведенні задачі до такої, знаходження оптимуму якої вдається спростити. До них належать, насамперед, найбільш розроблені методи квадратичного та сепарабельного програмування.

Оптимізаційні задачі, на змінні яких не накладаються обмеження, розв'язують методами класичної математики. Оптимізацію з обмеженнями-рівностями виконують методами зведеногоградієнта, скажімо методом Якобі, та множників Лагранжа. У задачах оптимізації з обмеженнями-нерівностями досліджують необхідні та достатні умови існування екстремуму Куна—Танкера.

Розглянемо метод множників Лагранжа на прикладі такої за дачі нелінійного програмування:

(6.15)

за умов

(6.16)

 

де функції і диференційовані.

Ідея методу множників Лагранжа полягає в заміні даної задачі простішою: на знаходження екстремуму складнішої функції, але без обмежень. Ця функція називається функцією Лагранжа і подається у вигляді:

(6.17)

 

де — не визначені поки що величини, так звані множники Лагранжа.

Знайшовши частинні похідні функції L за всіма змінними і прирівнявши їх до нуля:

запишемо систему

(6.18)

 

що є, як правило, нелінійною.

Розв'язавши цю систему, знайдемо і — стаціонарні точки. Оскільки їх визначено з необхідної умовиекстремуму, то в них можливий максимум або мінімум. Іноді стаціонарна точка є точкою перегину (сідлова точка). Отже, для визначення достатніх умов екстремуму та діагностування його типу існує спеціальний алгоритм [15].

Розв'яжемо методом множників Лагранжа наведену далі задачу.

 

Задача 1. Акціонерне товариство з обмеженою відповідальністю відвело 1200 га ріллі під основні рослинницькі культури — озиму пшеницю та цукрові буряки.

Техніко-економічні показники вирішування цих культур від биває таблиця:

Показник Площа, га, відведена
під озиму пшеницю, під цукровий буряк,
Урожайність, т/га
Ціна, грн./т
Собівартість, грн./т

 

Знайти оптимальну площу посіву озимої пшениці та цукрових буряків.

Нехай — площа ріллі, відведена під сотні га озимої пшениці; — площа ріллі, відведена під цукрові буряки, сотні га.

Зауважимо, що собівартість однієї тони пшениці та цукрових буряків залежить від відповідної площі посіву.

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

за умов

Запишемо функцію Лагранжа:

Візьмемо частинні похідні і прирівняємо їх до нуля:

Із цієї системи визначимо сідлову точку. З першої та другої рівностей знайдемо вирази для і прирівняємо їх:

або

(6.19)

Із останнього рівняння цієї системи маємо:

Підставивши значення у (6.19), дістанемо:

або

Розв’язавши це квадратне рівняння, дістанемо

Відповідно дістанемо:

Тобто сідловими точками є такі:

Обчислимо значення цільової функції у цих точках:

Отже, цільова функція набуває максимального значення, якщо озима пшениця вирощується на площі 647 га, а цукровий буряк — на площі 553 га.

 

8.3. Опукле програмування. Необхідні та достатні умови існування сідлової точки. Теорема Куна-Такера.

Попит на продукцію, що виготовляється на двох видах обладнання, становить 120 одиниць. Собівартість, тис. грн., виробництва одиниці продукції на обладнанні кожної групи залежить від обсягу такого виробництва — відповідно і — та подається у вигляді для першої групи: ; для другої групи: .

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

 

Розв'язування. Математична модель задачі:

за умов

Згідно з методом множників Лагранжа складемо функцію Лагранжа:

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

Розв'язавши цю систему, знайдемо:

Отже, на першій групі обладнання необхідно випускати 66,5, а на другій 53,5 одиниць продукції. При цьому мінімальні витрати, тис. грн., становитимуть:

8.4. Задачі квадратного програмування і основні методи їх розв’язування.


 

ТЕМА 9.

ЗАДАЧІ ДИНАМІЧНОГО ПРОГРАМУВАННЯ

9.1. Економічна сутність динамічного програмування. Основні типи задач та моделі ДП.

Усі економічні процеси та явища є динамічними, оскільки функціонують і розвиваються не лише у просторі, а й у часі.

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

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

У такому разі однокрокову задачу можна подати у вигляді:

(6.20)

за умов

(6.21)

Нехай

Тоді дану задачу можна записати так:

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

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

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

.

Задачу для другого інтервалу подамо так:

за умов

Звідси для будь-якого j-гоінтервалу маємо:

за умов

Загальна задача набирає вигляду:

(6.22)

за умов

Таку задачу розв’язують спеціальними методами [4, 10] .

 

9.2. Задачі про заміну основного капіталу обладнання підприємства. Багатокроковий процес.

Динамічний процес розбивається на сукупність послідовних етапів, або кроків. Кожний крок оптимізується окремо, а рішення (розв'язок), згідно з яким система переходить із поточного стану до нового, вибирається з урахуванням його майбутніх наслідків і не завжди дає найбільший ефект на даному етапі. На останньому кроці приймається рішення (відшукується розв'язок), яке забезпечує максимальний ефект. З огляду на сказане, оптимізація методом динамічного програмування починається з кінця: насамперед планується останній крок. Спираючись на відому інформацію про закінчення передостаннього кроку, на підставі різних гіпотез щодо його закінчення, вибирають управління на останньому кроці. Таке управління називають умовно оптимальним, оскільки знаходять його за припущення, що попередній крок було здійснено згідно з однією з можливих гіпотез.

Нехай аналізується деякий керований процес, перебіг якого можна розбити на послідовні етапи (кроки), що задаються. Ефективність всього процесу Z є сумою ефективностей окремих кроків:

(адитивний критерій)

або

(мультиплікативний критерій).

З кожним кроком задачі пов'язане прийняття певного рішення, так званого крокового управління , що визначає як ефективність даного етапу, так і всієї операції в цілому.

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

Оптимальним розв’язком цієї задачі є управління , що складається із сукупності оптимальних покрокових управлінь

і забеспечує максимальну ефективність Z*

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

Отже, маємо алгоритм розв'язування задач динамічного програмування.

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

Розбиваємо динамічний процес (операцію) на кроки, що відповідають, як правило, часовим періодам планування або окремим об'єктам (підприємствам, видам продукції, устаткування і т. ін.), стосовно яких розробляються управлінські рішення.

3. Подаємо перелік управлінських рішень для кожного кроку і відповідні обмеження щодо них.

4. Визначаємо ефект, що його забезпечує управлінське рішення , на j- му кроці, якщо перед тим система була у стані S, як функцію ефективності:

5. Досліджуємо, як змінюється стан S системи під впливом управлінського на j- му кроці, переходячи до нового стану:

.

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

Цьому ефекту відповідає умовне оптимальне управління на j- му кроці . Зауважимо, що за аргумент функції беремо не s, а змінений стан системи, тобто .

7.Здійснюємо умовну оптимізацію останнього n-го кроку, розглядаючи множину станів s, що на один крок віддалені від кінцевого стану, і визначаємо умовний оптимальний ефект на n-му кроці:

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

8. Виконуємо умовну оптимізацію - го, - го і т. д., тобто всіх попередніх кроків за рекурентними залежностями п.6, і для кожного кроку знаходимо умовне оптимальне управління:

9. Здійснюємо безумовну оптимізацію управління у «зворотному» напрямі — від початкового стану до кінцевого. Для цього з урахуванням визначеного оптимального управління на першому кроці змінюємо стан системи згідно з п. 5. Далі для цього нового стану знаходимо оптимальне управління на другому кроці і діємо так до останнього кроку.

 

9.3. Метод рекурентних співвідношень. Використання принципу Беллмана і алгоритму Джонсона.

Фірма планує нарощувати виробничі потужності на чотирьох підприємствах, маючи для цього 4 млн грн. Для кожного з підприємств розроблено інвестиційні проекти, які відбивають прогнозовані сумарні витрати С та доходи D, пов'язані з реалізацією кожного проекту. Зміст цих проектів ілюструє таблиця:

 

Проєект Підприємство

 

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

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

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

Зауважимо, що в цьому разі нединамічний процес розглядаємо як динамічний, аби скористатися методами динамічного програ мування для знаходження оптимального розв'язку. Зв'язок між зазначеними кроками забезпечується обмеженнями на загальний обсяг виділених коштів — 4 млн грн.

Змінні задачі візьмемо так, щоб послідовно керувати процесом розподілу коштів:

— обсяг капіталовкладень, виділених на кроках 1—4;

— те саме на кроках 2—4;

— те саме на кроках 3 і 4;

— те саме на кроці 4.

— обсяги інвестицій на г'-му підприємстві .

— оптимальні обсяги інвестицій на і- му підприємстві.

Рекурентне співвідношення для зворотного прогону від кроку 4-го до 1-го (від четвертого підприємства до першого) подається у вигляді:

де — сумарна ефективність інвестицій з і- го кроку до останнього.

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

 

Етап 4.

Результати розрахунків подамо табицею:

 

Дохід Оптимальний розв’язок
     
     
   
 
 

 

Етап 3.

за умов

Результати розрахунків відбиває таблиця:

 

Дохід Оптимальний розв’язок
     
     
   
 
2 або 4
               

 

Розрахунки виконуються так. Нехай потрібно знайти .

Обчислюємо

.

Отже,

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

 

Етап 2.

за умов

Результати розрахунків подаємо таблицею:

Дохід Оптимальний розв’язок
       
     
   
 
 

Етап 1.

за умов

Виконуємо розрахунки лише для , подаючи їх у вигляді таблиці:

Дохід Оптимальний розв’язок
 

Знайдемо оптимальний план. Із таблиці першого кроку випливає, що , тобто для першого підприємства реалізується другий проект, який використовує 1 млн грн. інвестицій з ефективністю 3 млн грн. Отже, для другого, третього і четвертого підприємств залишається 4-1=3 млн грн. інвестицій. Із таблиці другого кроку маємо, що за умов максимальний ефект настає в разі реалізації для другого підприємства першого проекту ефективність становить 4 млн грн. Отже, , тобто для третього і чет вертого підприємств слід використати 2 млн грн. інвестицій. Із таблиці третього кроку за умов маємо, що . Отже, , а йому відповідають капітальні вкладення , ефективність яких 8 млн грн. Остаточно маємо: ефективність 4 млн грн. інвестицій становить 3+4 + 8=15 (млн грн.).

 

 


<== попередня лекція | наступна лекція ==>
Обмеження за ресурсами. | Від'ємні обернені зв'язки.


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн