- •Глава 1. Предмет и задачи исследования операций.
- •§ 2. Основные понятия и принципы исследования операций
- •§ 3. Математические модели операций
- •Глава 2 разновидности задач исследования операций и подходов к их решению
- •§ 4. Прямые и обратные задачи исследования операций. Детерминированные задачи
- •§ 5. Проблема выбора решения в условиях неопределенности
- •§ 6. Многокритериальные задачи исследования операций. «Системный подход»
- •Глава 3 линейное программирование
- •§ 7. Задачи линейного программирования
- •§ 8. Основная задача линейного программирования
- •§ 9. Существование решения озлп в способы его нахождения
- •§ 10. Транспортная задача линейного программирования
- •Тогда задача сводится к задаче с правильным балансом, так как
- •Может встретиться также случай
- •§ 11. Задачи целочисленного программирования. Понятие о нелинейном программировании
- •Глава 4 динамическое программирование
- •§ 12. Метод динамического программирования
- •§ 13. Примеры решения задач динамического программирования
- •§ 14. Задача динамического программирования в общем виде. Принцип оптимальности
- •Глава 5 марковские случайные процессы
- •§ 15. Понятие о марковском процессе
- •§ 16. Потоки событий
- •§ 17. Уравнения Колмогорова для вероятностей состояний. Финальные вероятности состояний
- •Глава 6 теория массового обслуживания
- •§ 18. Задачи теории массового обслуживания. Классификация систем массового обслуживания
- •§ 19. Схема гибели и размножения. Формула Литтла
- •§ 20. Простейшие системы массового обслуживания и их характеристики
- •§ 21. Более сложные задачи теории массового обслуживания
- •Глава 7 статистическое моделирование случайных процессов (метод монте-карло)
- •§ 22. Идея, назначение и область применимости метода
- •§ 23. Единичный жребий и формы его организации
- •3. Какое значение приняла случайная величина X?
- •§ 24. Определение характеристик стационарного случайного процесса по одной реализации
- •Глава 8 игровые методы обоснования решений
- •§ 25. Предмет и задачи теории игр
- •§ 26. Антагонистические матричные игры
- •§ 27. Методы решения конечных игр
- •§ 28. Задачи теории статистических решений
§ 8. Основная задача линейного программирования
Любую задачу линейного программирования можно свести к стандартной форме, так называемой «основной задаче линейного программирования» (ОЗЛП), которая формулируется так: найти неотрицательные значения переменных х1, х2, ..., xn, которые удовлетворяли бы условиям-равенствам
(8.1)
и обращали бы в максимум линейную функцию этих переменных:
L = c1x1 + c2x2 + ... + cnxn =>max. (8.2)
Убедимся в этом. Uo-нерпых, случай, когда L надо обратить не в максимум, а и минимум, легко сводится к предыдущему, если попросту изменить знак L на обратный (максимизировать не L, а L' = — L). Кроме того, от любых условий-неравенств можно перейти к условиям-равенствам ценой введения некоторых новых «дополнительных» переменных. Покажем, как это делается, на конкретном примере.
Пусть требуется найти неотрицательные значения переменных х1, х2, х3, удовлетворяющие ограничениям-неравенствам
(8.3)
и обращающие в максимум линейную функцию от этих переменных:
L = 4х1 – х2 + 2х3 => max. (8.4)
Начнем
с того, что приведем условия (8.3) к
стандартной форме, так, чтобы знак
неравенства был
,
а справа стоял нуль. Получим:
(8.5)
А теперь обозначим левые части неравенств (8.5) соответственно через у1 и у2:
(8.6)
Из условий (8.5) и (8.6) видно, что новые переменные у1, у2 также должны быть неотрицательными.
Какая же теперь перед нами стоит задача? Найти неотрицательные значения переменных х1, х2, х3, y1, у2 такие, чтобы они удовлетворяли условиям-равенствам (8.6) и обращали в максимум линейную функцию этих переменных (то, что в L не входят дополнительные переменные у1, у2, неважно: можно считать, что они входят, но с нулевыми коэффициентами). Перед нами — основная задача линейного программирования (ОЗЛП). Переход к ней от первоначальной задачи с ограничениями-неравенствами (8.3) «куплен» ценой увеличения числа переменных на два (число неравенств).
Возможен
и обратный переход: от ОЗЛП к задаче с
ограничениями-неравенствами. Пусть
перед нами основная задача линейного
программирования с ограничениями-равенствами
(8.1). Предположим, что среди этих т
равенств линейно независимыми являются
r
т
1).
В линейной алгебре доказывается (см.,
например, [4]), что максимальное число
линейно независимых равенств, связывающих
п
переменных x1,
x2,
..., xn,
равно п,
так что вообще r
п.
В линейной алгебре также доказывается,
что систему из r
независимых равенств с п
переменными x1,
х2,
..., xn
всегда можно разрешить относительно
каких-то r
переменных (называемых «базисными») и
выразить их через остальные k
= п - r
переменных (называемых «свободными»).
Свободным переменным можно придавать
какие угодно значения, не нарушая условий
(8.1). Так вот, для того чтобы перейти от
условий-равенств (8.1) к условиям-неравенствам,
достаточно разрешить уравнения (8.1)
относительно каких-то r
базисных переменных, выразить их через
свободные, а затем вспомнить, что все
переменные должны быть неотрицательными,
и записать условия их не отрицательности
в виде ограничений-неравенств. А потом
«забыть» о базисных переменных и
манипулировать только свободными, число
которых будет k
= п - r.
При этом надо будет освободить от
базисных переменных также и функцию L,
подставив
в нее их выражения через свободные.
Таким образом, при переходе от ОЗЛП к
задаче с ограничениями-неравенствами
число переменных не увеличивается, а
уменьшается на число г независимых
условий-равенств в ОЗЛП. Примеров такого
перехода мы приводить не будем,
предоставляя пытливому читателю самому
убедиться в его возможности.
Итак, всякая задача линейного программирования может быть сведена к стандартной форме ОЗЛП. Мы не будем подробно останавливаться на способах решения этой задачи. Им посвящены специальные руководства (например, [4, 5]), они описаны во многих книгах по исследованию операций (например, [6, 7]). В следующем параграфе мы изложим только некоторые соображения общего характера относительно существования решения ОЗЛП и способов его нахождения. Никакими расчетными алгоритмами мы заниматься не будем, а отошлем интересующегося читателя к вышеупомянутым руководствам.
1) Равенства называются линейно независимыми, если никакое из них нельзя получить из других путем умножения на какие-то коэффициенты и суммирования, т. е. никакое из них не является следствием остальных.)
