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

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

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

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

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

Метод Гоморі

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

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

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

Нехай Загальна постановка задачі. Деякі задачі лінійного програмування вимагають цілочислового розв’язку - student2.ru і хоча б одне з Загальна постановка задачі. Деякі задачі лінійного програмування вимагають цілочислового розв’язку - student2.ru ( Загальна постановка задачі. Деякі задачі лінійного програмування вимагають цілочислового розв’язку - student2.ru ) – дробові числа.

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

Цілою частиною числа Загальна постановка задачі. Деякі задачі лінійного програмування вимагають цілочислового розв’язку - student2.ru називається найбільше ціле число, яке не перевищує Загальна постановка задачі. Деякі задачі лінійного програмування вимагають цілочислового розв’язку - student2.ru .

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

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

Приклад:

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

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

Зауваження:

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

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

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

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

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

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

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

Наши рекомендации