Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
otvety_na_emm (Восстановлен).docx
Скачиваний:
3
Добавлен:
22.12.2018
Размер:
286.27 Кб
Скачать

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

Алгоритм, запропонований Гоморі, передбачає застосування досить простого способу побудови правильного відтинання.

Нехай маємо задачу цілочислового програмування:

(6.5)

за умов:, (6.6)

, (6.7)

— цілі числа . (6.8)

Допустимо, що параметри — цілі числа. Не враховуючи умови цілочисловості, знаходимо розв’язок задачі (6.5)—(6.7) симплексним методом. Нехай розв’язок існує і міститься в симплексній таблиці. Розглянемо довільний оптимальний план задачі (6.5) —(6.7). Виразимо в цьому плані базисну змінну через вільні змінні: . (6.9) Виразимо коефіцієнти при змінних даного рівняння у вигляді суми їх цілої та дробової частин. Введемо позначення: — ціла частина числа b, — дробова частина числа b. Отримаємо: , (6.10)

або

. (6.11) Отже, рівняння (6.11) виконується для будь-якого допустимого плану задачі (6.5)—(6.7). Допустимо тепер, що розглянутий план є цілочисловим оптимальним планом задачі. Тоді ліва частина рівняння (6.11) складається лише з цілих чисел і є цілочисловим виразом. Отже, права його частина також є цілим числом і справджується рівність:

, (6.12) де N — деяке ціле число. Величина N не може бути від’ємною. Якщо б , то з рівняння (6.12) приходимо до нерівності:

. Звідки . Тобто це означало б, що дробова частина перевищує одиницю, що неможливо. У такий спосіб доведено, що число N є невід’ємним. Якщо від лівої частини рівняння (6.12) відняти деяке невід’ємне число, то приходимо до нерівності: ,(6.13) яка виконується за допущенням для будь-якого цілочислового плану задачі (6.5)—(6.7). У такий спосіб виявилося, що нерівність (6.13) є шуканим правильним відтинанням.

11. Як звести задачу лінійного програмування до канонічної форми?

Загальна задача лінійного програмування подається у вигляді:

(1.1)

за умов:

(1.2)

(1.3)

Отже, потрібно знайти значення змінних x1, x2, …, xn, які задовольняють умови (1.2) і (1.3), і цільова функція (1.1) набуває екстремального (максимального чи мінімального) значення.

Для довільної задачі математичного програмування були введені поняття допустимого та оптимального планів. Задачу (1.1)—(1.3) можна легко звести до канонічної форми, тобто до такого вигляду, коли в системі обмежень (1.2) всі bi (i = 1, 2, …, m) невід’ємні, а всі обмеження є рівностями. Якщо якесь bi від’ємне, то, помноживши i-те обмеження на (– 1), дістанемо у правій частині відповідної рівності додатне значення. Коли i-те обмеження має вигляд нерівності аi1х1 + аi2х2 + … + аinxn ≤ bi, то останню завжди можна звести до рівності, увівши додаткову змінну xn + 1: ai1x1 + ai2x2 + … + ain xn + xn + 1 = bi. Аналогічно обмеження виду аk1x1 + ak2x2 + … + aknxn ≥ bk зводять до рівності, віднімаючи від лівої частини додаткову змінну х+ 2, тобто: ak1x1 + ak2x2 + … + aknxn – xn + 2 = bkn+1 ≥ 0, хn+2 ≥ 0).

12. Як звести відкриту транспортну задачу на закриту?

Класична транспортна задача лінійного програмування формулюється так: деякий однорідний продукт, що знаходиться у m постачальників Аі в обсягах одиниць відповідно необхідно перевезти n споживачам в обсягах одиниць. При цьому виконується умова, що загальний наявний обсяг продукції у постачальників дорівнює загальному попиту всіх споживачів. Відомі вартості перевезень одиниці продукції від кожного Аі-го постачальника до кожного Вj-го споживача, що подані як елементи матриці виду:

Транспортну задачу називають закритою, якщо виконується умова

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

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