Лінійне програмування: відмінності між версіями
[неперевірена версія] | [неперевірена версія] |
Вилучено вміст Додано вміст
Teodret (обговорення | внесок) Немає опису редагування |
Немає опису редагування |
||
Рядок 1:
{{
[[File:Linear optimization in a 2-dimensional polytope.svg|thumb|Графічне представлення простої лінійної програми з двома змінними і шістьма нерівностями. Множина допустимих розв'язків зображена світло червоним і утворює багатогранник, 2-вимірний політоп. Цільова функція представлена червоною лінією і стрілкою. Червона лінія це [[множина рівня]] цільової функції і стрілка позначає в якому напрямку ми оптимізуємо]]
'''Лінійне програмування''' або '''лінійна оптимізація''' ('''LP''', {{lang-en|Linear Programming}}) — метод досягнення найліпшого виходу (такого як найбільший прибуток або найменша вартість) у [[математична модель|математичній моделі]] чиї вимоги представлені через лінійні відношення. Лінійне програмування є особливим випадком математичного програмування ([[оптимізація (математика)|математичної оптимізації]]).
Більш формально, лінійне програмування є технікою для [[математика (оптимізація)|оптимізації]] [[лінійна функція|лінійної]] [[цільова функція|цільової функції]], що [[Обмеження (математика)|обмежена]] [[Лінійне рівняння|лінійними рівняннями]] і лінійними нерівностями. Її [[Допустимий розв'язок|допустима множина]] є [[Опуклий політоп|опуклим політопом]], який є множиною визначеною як перетин скінченної кількості [[півпростір]]ів, кожен з яких визначає лінійна нерівність. Її цільова функція є [[дійсне число|дійсно]]-значима [[Афінне перетворення|афінна функція]] визначена на цьому багатограннику. [[Алгоритм]] лінійного програмування знаходить точку на багатограннику де ця функція набуває найбільшого чи найменшого значення якщо така точка існує.
Лінійну програму можна виразити в [[канонічна форма|канонічній формі]]:
:{|
|-
| '''максимізувати''' || <math>\mathbf{c}^\mathrm{T} \mathbf{x}</math>
|-
|-
| '''і також''' || <math>\mathbf{x} \ge \mathbf{0}</math>
|}
де '''x''' представляє вектор змінних (треба визначити), '''c''' і '''b''' це [[Векторний простір|вектори]] (відомих) коефіцієнтів, ''A'' це (відома) [[Матриця (математика)|матриця]] коефіцієнтів і <math>(\cdot)^\mathrm{T}</math> це [[транспонована матриця]]. Вираз, який необхідно максимізувати або мінімізувати називають ''цільова функція'' (тут '''c'''<sup>T</sup>'''x'''). Нерівності ''A'''''x''' ≤ '''b''' і '''x''' ≥ '''0''' є обмеженнями, які визначають опуклий політоп над яким оптимізують цільову функцію.
Лінійне програмування можна застосувати у різноманітних галузях науки. Його використовують в економіці і бізнесі, але можна використати і в інженерних задачах. Серед галузей які використовують лінійне програмування можна згадати перевезення, енергетику, телекомунікації і виробництво. Воно довело свою корисність у моделюванні різних типів проблем у плануванні, [[Маршрутизація|маршрутизації]], [[Задача про призначення|призначенні задач]] і дизайні.
== Див. також ==
{{Портал|Математика}}
* [[Задача
* [[Цілочислові задачі лінійного програмування]]
== Посилання ==
* [http://sourceforge.net/projects/lipside/ Linear Program Solver (LiPS)] — [[розв'язувач]] задач лінійного цілочисельного программирования.
{{Math-stub}}
{{Без джерел|дата=травень 2009}}
[[Категорія:Теорія оптимізації]]
|