- •Глава 4. Линейное программирование
- •4.1. Постановка задачи
- •В общем случае модель задачи лп имеет вид
- •4.2. Примеры задач линейного программирования
- •Задача составления рациона или как экономно питаться
- •4.2.2. Задача оптимального планирования
- •4.2.3. Сбалансированная транспортная задача
- •4.2.4. Общая распределительная задача
- •4.2.5. Задача планирования работы оборудования
- •4.2.6. Игра двух лиц с нулевой суммой как задача линейного программирования
- •4.2.7. Резюме
- •4.3. Формы записи задач линейного программирования и способы приведения к ним
- •4.3.1. Каноническая форма задач лп
- •4.3.2. Стандартная форма задачи лп
- •4.4. Упрощение модели
- •4.5. Основные понятия лп. Свойства задач лп
- •4.6. Геометрия задач лп
- •4.7. Выделение вершин допустимого множества
- •4.8. Методы решения задач лп
- •4.9. Симплекс-метод
- •4.9.1. Харатеристика метода
- •4.9.2. Переход от одного базисного решения к другому
- •4.9.3. Признак оптимальности. Основные этапы симплекс-метода
- •4.9.4. Построение начального базисного решения
- •4.9.5. Связь между параметрами последовательных итераций
- •4.9.6. Алгоритм симплекс-метода
- •4.9.7. Примеры
- •4.9.8. Учет двусторонних ограничений
- •4.10. Модифицированный алгоритм
- •4.11. Двойственность задач лп
- •4.11.1. Запись двойственной задачи в симметричном случае
- •4.11.2. Интерпретация двойственной задачи
- •4.11.3. Запись двойственной задачи в общем случае
- •4.11.4. Теоремы двойственности
- •4.11.5. Двойственный симплекс-метод
- •4.12. Параметрический анализ
- •4.12.1. Параметрирование вектора ограничениий
- •4.12.2. Параметрирование коэффициентов линейной формы
- •4.13. Задания для самостоятельной работы
Линейное программирование
Глава 4. Линейное программирование
4.1. Постановка задачи
Задача, модель которой содержит только линейные функции искомых переменных, называется задачей линейного программирования (ЛП).
В общем случае модель задачи лп имеет вид
(4.1)
при ограничениях:
(4.2)
(4.3)
где L – критерий (целевая функция), называемый также линейной формой;
n - количество переменных;
Ci – параметры (коэффициенты) критерия, не все Ci =0;
(4.2) - функциональные условия (ограничения);
–параметры условий (могут быть любыми действительными числами, но одновременно все не могут равняться нулю при i=const). Во многих случаях они имеют смысл удельных величин (расхода или затрат на единицу переменной, содержания в единице переменной и т. п.).
bi – параметры (свободные члены), отражающие возможности по ресурсам, допустимые или требуемые значения показателей и т.п. (могут быть любыми действительными числами).
На часть или все переменные накладывается условие неотрицательности (4.3).
Задача состоит в определении таких значений переменных, удовлетворяющих условиям (4.2) и (4.3), которые доставляют в зависимости от контекста максимум или минимум линейной форме.
4.2. Примеры задач линейного программирования
На первый взгляд линейные модели могут показаться малопригодными для описания реальных задач принятия решений. Однако это неверно. Большое число задач из области экономики, бизнеса, финансов, планирования, организации, управления и др. представимы как задачи ЛП. В качестве примеров рассмотрим несколько типичных ситуаций.
Задача составления рациона или как экономно питаться
При правильном питании человек должен потреблять в день определенное количество питательных веществ и витаминов. Содержание их в продуктах известно. Известна также цена продуктов. Задача состоит в том, чтобы составить самый дешевый набор продуктов (рацион), обеспечивающий заданное качество питания.
Обозначим:
хi – количествоi-го продукта в рационе,
aij – содержание i-го питательного вещества в единице j-го продукта,
bi – потребность в ингредиенте (норма).
Чтобы не загромождать модель большим числом данных, ограничимся тремя ингредиентами, но для общности возьмем разные варианты задания нормы. Все исходные данные удобно представить в таблице (табл. 4.1).
Таблица 4.1
Ингредиенты |
Продукты |
Норма | ||||
1 |
2 |
3 |
4 |
min |
max | |
Жиры |
a11 |
a12 |
a13 |
a14 |
|
b1 |
Белки |
a21 |
a22 |
a23 |
a24 |
b2 |
|
Витамины |
a31 |
a32 |
a33 |
a34 |
b`3 |
b``3 |
Цена |
C1 |
C2 |
C3 |
C4 |
|
|
Как следует из условий задачи, в качестве критерия, по которому определяется лучший вариант рациона, нужно взять суммарные затраты на продукты. Ограничения должны отражать требования по количеству ингредиентов в рационе: левая часть – фактическое поступление с продуктами, правая – норму, а отношение между ними определяется видом задания нормы (не меньше или не больше). Неотрицательность переменных очевидна из их физического смысла. В итоге приходим к следующей модели:
при условиях:
Построение модели завершено.