Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МП_Част_2.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
3.81 Mб
Скачать
  1. Загальна постановка та форми запису задач лінійного програмування

Загальна задача лінійного програмування

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

В розгорнутому вигляді загальна задача лінійного програмування має такий вигляд.

Знайти найбільше (найменше) значення лінійної функції

(1.1)

за умови

, (1.2)

, (1.3)

, , (1.4)

де – задані сталі величини.

Функція (1.1) називається цільовою, оскільки метою (ціллю) задачі є знаходження її найбільшого (найменшого) значення.

Співвідношення (1.2) – (1.4) називаються обмеженнями задачі, оскільки накладають певні обмеження на можливі значення невідомих xj, .

Будь-який розв’язок системи обмежень (1.2) – (1.4) називається допустимим розв’язком (або планом).

Допустимий розв’язок X*= , для якого цільова функція задачі (1.1) приймає своє найбільше (найменше) значення, називається оптимальним розв’язком.

В загальній задачі частина обмежень може бути заданою у вигляді нерівностей типу (1.2), а решта обмежень – у вигляді строгих рівностей (1.3). Умови невід’ємності (1.4) можуть поширюватися не на всі змінні.

Зауваження. Якщо серед обмежень зустрічаються нерівності типу “≥”, то множенням обох частин нерівності на -1 вона обертається в нерівність типу “≤”: помножимо обидві частини нерівності на ‑1, дістанемо еквівалентну нерівність .

Запишемо загальну задачу лінійного програмування в компактному вигляді.

Знайти найбільше (найменше) значення лінійної функції

(1.5)

за умови

, (1.6)

(1.7)

, , . (1.8)

Стандартна (або симетрична) задача лінійного програмування –частинний випадок загальної, яка полягає в знаходженні найбільшого значення цільової функції (1.1) за умови і . В розгорнутому вигляді матимемо:

знайти

(1.9)

за умови

, (1.10)

. (1.11)

Стандартна задача лінійного програмування в компактному вигляді:

знайти

(1.12)

за умови

, (1.13)

, . (1.14)

Зауваження. З якої причини розглянута форма запису називається симетричною стане зрозумілим після розгляду взаємно-двоїстих задач лінійного програмування (розділ 2).

Канонічна задача – частинний випадок загальної, яка полягає в знаходженні найбільшого значення цільової функції (1.1) за умови і . В розгорнутому вигляді матимемо:

знайти

(1.15)

за умови

(1.16)

. (1.17)

Канонічна задача лінійного програмування в компактному вигляді:

знайти

(1.18)

за умови

, (1.19)

. (1.20)

Існують прості стандартні прийоми переходу від загальної або стандартної задачі лінійного програмування до канонічної.

  1. Для того, щоб від обмеження-нерівності типу

перейти до строгої рівності достатньо в ліву частину нерівності ввести додаткову невід’ємну невідому :

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

  1. Змінні, для яких не виконується умова невід’ємності, формально замінюються різницею двох невід’ємних змінних, що вводяться додатково:

.

  1. Задача знаходження найбільшого значення цільової функції еквівалентна задачі знаходження найменшого значення функції І навпаки, якщо найменше значення функції дорівнює і досягається в точці , то найбільше значення функції дорівнює і досягається в тій самій точці.

Приклад. Звести до канонічного вигляду задачу

.

В даному випадку

Змінюємо знак цільової функції

.

Вводимо додаткові змінні в задані нерівності для перетворення їх у строгі рівності

Змінна ввійшла в рівняння зі знаком “-“, оскільки ліва частина другої нерівності в заданій системі обмежень більше правої частини. І для того, щоб перетворити її на рівність, від лівої частини потрібно відняти деяку невід’ємну величину, конкретне значення якої є невідомим. Із аналогічних міркувань змінні та записані зі знаком “+“.

Оскільки для змінних не вимагається невід’ємність, замінюємо їх відповідно двома різницями: де .

Отже, в канонічній формі задана задача матиме вигляд:

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