Опишіть алгоритм методу гілок та меж.



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

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

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

  • Коли в умовно-оптимальному плані є дробові значення, то вибирають одну з нецілочислових змінних і визначають її цілу частину .
  • Записують два обмеження, що відтинають нецілочислові розв’язки:

,

.

  • Кожну з одержаних нерівностей приєднують до обмежень початкової задачі. В результаті отримують дві нові цілочислові задачі лінійного програмування.
  • У будь-якій послідовності розв’язують обидві задачі. У разі, коли отримано цілочисловий розв’язок хоча б однієї із задач, значення цільової функції цієї задачі зіставляють з початковим значенням. Якщо різниця не більша від заданого числа e, то процес розв’язування може бути закінчено. У разі, коли цілочисловий розв’язок одержано в обох задачах, то з розв’язком початкової зіставляється той, який дає краще значення цільової функції. Якщо ж в обох задачах одержано нецілочислові розв’язки, то для дальшого гілкування вибирають ту задачу, для якої здобуто краще значення цільової функції і здійснюють перехід до кроку 2.

Сформулюйте задачу динамічного програмування.

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

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

,

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

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

Розв’язування задачі динамічного програмування полягає в знаходженні такого управління процесом у цілому, яке максимізує загальну ефективність: (max ).

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

і уможливлює досягнення максимальної ефективності:


Дата добавления: 2018-02-18; просмотров: 1305; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!