3. Перший алгоритм Гомори
Випливаючи загальній схемі методів відсікання, вирішимо (£, C) – задачу (11, 12, 14), що відповідає (£ц, C) – задачі (11–14). Нехай x(£, C) – її оптимальне рішення. Проаналізуємо координати x(£, C) на цілочисленність. Якщо всі координати вектора x(£, C) цілі, то x(£, C) = x(£ц, C). Якщо хоча б одна координата, нехай xi, буде нецілої, надійдемо в такий спосіб.
Позначимо через N сукупність небазисних змінних і на підставі останньої симплексної таблиці запишемо розкладання xi по небазисним змінним xi, jÎN
(16)
Тому що xi – неціла величина, позначимо найближче ціле число, що не перевершує xi, через [xi] і визначимо дробову частину: {xi}= xi - [xi]. Очевидно, (xi)>0.
Покажемо, що по i-і рядку симплексної таблиці (?, C) - задачі (у якій коштує неціла координата рішення) можна визначити додаткове лінійне обмеження, що володіє властивостями правильності.
Теорема. Нехай - припустиме рішення (£ц, C) – задачі, тоді співвідношення
, (17)
, - ціле,
визначають правильне відсікання.
Доказ.
Запишемо вираження (16) у вигляді:
Використовуючи для цього вираження формулу (17), одержимо:
або
На підставі припущень теореми про допустимість рішення
(£ц, C) – задачі xi – ціле. Величини [xio], - цілі по визначенню, отже, zi – теж ціле.
Отже, zi певне формулою (17), ціле. Доведемо що . Доказ будемо вести від противного. Нехай .-
Це значить, що . По визначенню дробової частини . За умовою теореми x – припустиме рішення (£ц, C) – задачі, тому . Отже,
Тоді повинне виконуватися:
Отже, із припущення заперечності zi, відразу ж одержуємо тобто zi – неціле. Оскільки раніше було показано, що zi, певне формулою (17), є цілим, те тим самим ми прийшли до протиріччя. Отже, припущення, що zi < 0, невірне. Теорема доведена.
Наслідок. Будь-яке оптимальне рішення x(£, C) (£, C) – задачі, що не є припустимим рішенням (£ц, C) – задачі, не задовольняє умові правильного відсікання (17).
Доказ. Нехай х (£, C) – оптимальне рішення (£, C) – задачі, xi0 – дробове.
Покажемо, що х (£, C) не задовольняє умові відсікання. Оскільки план оптимальний, всі небазисні змінні xi, для jÎN дорівнюють нулю. Тому . З огляду на це, підставимо xio у формулу (17):
zi(x (£, C))= – {xi0}+0<0,
що суперечить умові незаперечності zi. Наслідок доведений.
Очевидно, що кількість додаткових обмежень буде наростати в міру рішення допоміжних (£, C) – задач, оптимальні плани яких будуть містити нецілі координати, тобто виникає проблема розмірності.
Р. Гомори запропонував прийом, що дозволяє обмежити розміри розглянутих симплексних таблиць допоміжних задач величиною (n+2) (k+1), де n – кількість змінних (£, C) – задачі, k – число небазисних змінних її. Цей прийом ґрунтується на тім, що нас цікавить додаткове обмеження лише як спосіб відсікання нецілочисленного оптимального рішення допоміжної задачі, отриманої на даному кроці, і переходу до наступної задачі.
Послідовність (£, C) – задач позначимо індексом k=0,1,…,відповідному номеру ітерації в послідовному наближенні до рішення вихідної (£ц, C) – задачі, і позначимо (£k, C). При цьому (£0, C) – задача відповідає (£, C) – задачі (задачі без вимоги цілочисленності).
Змінну zi, що визначається додатковим лінійним обмеженням (7) і будується по деякої нецілочисленної координаті оптимального рішення (£k, C) – задачі (k =0, 1, 2,…)позначимо xn+k+l.
Щоб розмірність послідовності (£k, C) – задач не зростала, викреслимо із симплекс-таблиці змінну, по якій побудоване додаткове лінійне обмеження.
Після зроблених зауважень перейдемо безпосередньо до викладу обчислювальної схеми.
1. Вирішимо (£k, C) – задачу (спочатку k = 0) методом послідовного поліпшення плану.
Нехай у базис оптимального рішення ввійшли вектори As1,…,Asm... Параметри останньої симплексної таблиці позначимо через xij:
.
Якщо, всі базисні тридцятилітні оптимального рішення x(£k, C) (£k, C) – задачі цілі, то x(£k, C) = x(£ц, C). Якщо деяка координата xio оптимального рішення x(£k, C) неціла, то перейдемо до п. 2.
2. Якщо серед сукупності координат оптимального рішення x(£k, C) є єдина неціла координата, то додаткове лінійне обмеження (17) будується по цій координаті. Якщо нецілих координат в x(£k, C) більше однієї, то виберемо координату з найменшим номером. Нехай нею виявилася xi0. Складемо додаткове лінійне обмеження
(18)
(19)
3. Додамо умови (18, 19) до умов (£k, C) – задачі. Одержимо нову (£k+1, C) – задачу. Тому що оптимальне рішення x(£k, C) (£k, C) – задачі визначало одну з вершин багатогранника умов, то воно може бути обране в якості первісного опорного рішення для знову отриманої задачі. А це означає, що останню симплексну таблицю (£k, C) – задачі можна взяти в якості вихідної для (£k+1, C) – задачі, доповнивши її умовою (18).
Отже, симплексна таблиця для (£k+1, C) – задачі виходить із останньої симплексної таблиці для (£k, C) – задачі шляхом облямівки (i+1) – й рядком з елементами:
де – небазисні змінні (£k, C) задачі.
Одержимо нову задачу, змінними якої є . Умови цієї задачі дозволені відносно xsl,…,xsmзмінних і нова змінної xn+k+1, а лінійна форма виражена через небазисні змінні (£k, C) – задачі. Тому що ми займаємося максимізацією F(x) і рішення х* для (£k, C) – задачі оптимально, те всі Di > 0. Тому процес переходу до нового рішення (£k+1, C) – задачі не може бути здійснений по методу уточнення плану. У той же час і тому вектор А0 симплексної таблиці не є опорним рішенням для (£k+1, C) – задачі, тому що рішенням називається вектор, всі координати якого ненегативні й задовольняють умові приналежності області £k+l. Тому назвемо отриманий вектор псевдо рішенням задачі (£k+1, C) і перейдемо до подальшого перетворення симплекса-таблиці.
Позначимо через k номер псевдо рішення (£k, C) – задачі; тоді напрямним рядком є i+k+ 1-я рядок, k =0, 1, 2,…... Тому на кожному етапі перетворення таблиці вектор Ai+k+i буде виводитися з таблиці. Можна довести, що через кінцеве число кроків або буде знайдене цілочисленне рішення, або буде виявлена її нерозв'язність, а тим самим нерозв'язність (£ц, C) – задачі.
Якщо рішення (£k, C) – задачі завершується побудовою оптимального цілочисленного рішення x*, те m, перших його компонентів визначають рішення цілочисленної задачі; якщо серед координат х* є дробові, те один із дробових компонентів (раніше певним правилом) породжує додаткове обмеження й процес рішення повинен бути продовжений з новим рядком, що облямовує. Рядок, використовуваний раніше для облямівки, викреслюється й більше для побудови розширених задач не відновлюється.
Процедуру рішення (£k, C) – задачі (k=0, 1,…)і аналізу отриманого рішення назвемо великою ітерацією. Номер великої ітерації збігається з номером розв'язуваної (£k, C) – задачі.
Результатом великої ітерації є перехід до нового (£k+1, C) – задачі або закінчення рішення задачі.
Уведемо: 1) осередок i, у якій будемо запам'ятовувати номер рядка, на підставі якої будується чергове додаткове лінійне обмеження, 2) лічильник r, що відповідає номеру проведеної великої ітерації. Позначимо x*(£r, C) оптимальне рішення (£r, C) – задачі. Помітимо, що позначення (£r, C) – задача, еквівалентне (£r, C), уведено в блок-схемі для зручності запису.
При деяких умовах вдається довести теорему про кінцівку першого алгоритму Гомори, що ми приведемо без доказу.
Теорема. Нехай множина оптимальних планів задачі (£0, C) обмежено й виконуються наступні умови:
1) сi – цілі коефіцієнти цільової функції F(x) (i =1,2,…,n),рядок цільової функції в симплексній таблиці враховується при виборі рядка для побудови правильного відсікання;
2) справедливо одне із двох тверджень: або цільова функція обмежена знизу на Сo, або задача (£ц, C) має хоча б один план х'.
Тоді перший алгоритм Гомори вимагає кінцевого числа більших ітерацій.
4 9 0 1 0 3 Р5 0 8 4 -2 0 0 1 4 F 0 -5 -6 0 0 0 Таблиця № 1 – Вихідна симплекс-таблиця Знаходження оптимального розвязку ЗЛП за допмогою с-м включає слідуючі етапи: 1. За вихідною с-т знаходять опорне рішення Кожній с-т відповідає своє опорне рішення. Воно може бути представлене у вигляди вектора Х Розмірніст вектора дорівнює кількості змі ...
... . Механізм переривань забезпечує ефективна взаємодія пристроїв уведення-висновку з мікропроцесором. Переривання цікавлять нас тому, що обробка переривань - це прерогатива програмування на мові асемблера. У високорівневих мовах відсутні засоби роботи з перериваннями на машинному рівні. Переривання звичайно викликаються зовнішніми пристроями. Переривання сигналізує мікропроцесору, щоб він призупинив ...
... рішень, зв’язаних із регулюванням витрат і з питань інвестиційної діяльності підприємства. Отже, управлінський облік це формування інформації для управління витратами з метою підвищення ефективності функціонування підприємства. Причому, відповідно до Закону «Про бухгалтерський облік і фінансову звітність в Україні», підприємства вправі самостійно обирати систему і форми ведення управлінського ...
... ‚ є гіпотезою про закон розподілу. Гіпотеза про те‚ що середні розміри деталей‚ які виготовляються на однотипних‚ паралельно працюючих станках‚ приблизно однакові‚ є гіпотезою про параметри розподілу. Зроблений на основі статистичних даних висновок про те‚ що між кількома генеральними сукупностями або між емпіричним і теоретичним розподілом істотних відмінностей немає‚ називають нульовою ( ...
0 комментариев