Загальна постановка задачі. Деякі задачі лінійного програмування вимагають цілочислового розв’язку

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

з обмеженнями

Оптимальний розв’язок задачі, яку знайдено симплексним методом, часто не є цілочисловим. Його можна округлити до найближчого цілого числа. Але таке округлення може дати розв’язок, який не є найкращим серед цілочислових розв’язків або привести до розв’язку, що не задовольняє системі обмежень. Тому для знаходження цілочислових розв’язків необхідний особливий алгоритм. Такий алгоритм запропонував Гоморі.

Метод Гоморі

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

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

... ... ...
... ... ...
... ... ... ... ... ... ... ... ... ... ...
... ... ...
... ... ... ... ... ... ... ... ... ... ...
... ... ...

 

Нехай і хоча б одне з ( ) – дробові числа.

Позначимо через і цілі частини чисел і .

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

Позначимо через і цілі частини чисел і .

Дробовою частиною чисел і називається різниця та .

 

Приклад:

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

 

Зауваження:

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

2. Обмеження цілочисельності може бути накладене не на всі змінні, а лише на їх частину. У цьому випадку задача є частково цілочисловою.

Графічний метод

При наявності у задачі лінійного програмування двох змінних, а в системі обмежень – нерівностей, вона може бути розв’язана графічним методом.

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

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

 

НЕЛІНІЙНЕ ПРОГРАМУВАННЯ