- •Часть II
- •Глава 6
- •6.1. Понятие оптимального выбора
- •6.2. Задача оптимального выбора
- •6.3. Классификация задач и методов оптимального выбора
- •Глава 7
- •7.1. Выбор в условиях определенности
- •7.2. Задача управления запасами
- •7.3. Математическое программирование
- •7.4. Задача линейного программирования
- •7.5. Геометрический метод решения задачи линейного программирования
- •7.6. Симплексный метод решения задачи линейного программирования
- •Глава 8
- •8.1. Оптимальный выбор по многим критериям
- •8.2. Построение множества эффективных вариантов
- •1. Последовательное сравнение критериев по важности. Лпр упорядочивает все критерии по предпочтительности, допустим, и каждому критерию fk приписы
7.3. Математическое программирование
Задачи математического программирования возникли из потребностей решения практических проблем в области экономики, промышленности, техники, военного дела, связанных с построением наилучшей программы действий, и являются математическими моделями таких проблем выбора. Общая постановка задачи математического программирования представлена соот ношениями (7.3). К числу основных относятся следующие задачи математического программирования:
з
адача
линейного программирования
с линейным критерием и линейными
ограничениями
где
—
заданные постоянные; множество допустимых
решений Ха — выпуклый многогранник;
з
адача
квадратичного программирования
с квадратичным критерием
и линейными ограничениями, аналогичными
приведенным выше, где
— заданные постоянные; множество Ха
— выпуклый многогранник;
задача выпуклого программирования, где критерии и ограничения — нелинейные выпуклые функции векторного аргумента, в частности квадратичные функции; множество Ха — выпуклый многогранник;
задача дискретного программирования, где все переменные Хi принимают дискретные, в частности целочисленные, значения.
Существуют
и другие специализированные задачи
математического программирования
— динамическое программирование,
стохастическое программирование, задачи
с сепарабельными критериями оптимальности:
аддитивным
мультипликативным
Общий метод решения задачи линейного программирования разработал выдающийся математик и экономист, лауреат Нобелевской премии JT. В. Канторович (СССР, 1938). Теория выпуклого программирования опирается на теорему Куна — Таккера о существовании седловой точки функции Лагранжа. В основе ряда методов программирования лежит принцип оптималь ности Беллмана (США, 1957). Универсальные методы решения задач дискретного программирования отсутствуют. Для отдельных видов дискретных задач созданы специальные методы поиска экстремума целевых функций.
Одно из главных мест в решении задач математического программирования занимают вычислительные методы, использующие ЭВМ. Широкое распространение получили методы возможных направлений, метод штрафных функций и др. Вычислительные методы подразделяют на точные, которые гарантируют нахождение экстремума целевой функции у = f(х), и приближенные, приводящие к экстремуму целевой функции у = f(х) с заданной точностью. Методы можно также подразделить на конечные, дающие итоговый результат решения задачи за конечное число шагов, и асимптотические, состоящие из бесконечного числа шагов. В итеративных методах процесс поиска результата решения задачи разбивается на последовательно выполняемые циклические шаги (итерации).
7.4. Задача линейного программирования
Задачи линейного программирования
(7.4) относятся к числу наиболее простых
и хорошо изученных задач математического
программирования. Основная их особенность
состоит в том, что скалярный критерий
оптимальности
у = f(х)
является линейной функцией n
переменных x1, ..., хп,
составляющих в совокупности вариант
х = (x1, ..., хп)
решения задачи оптимального выбора,
а все ограничения
представляют
собой систему линейных уравнений и
неравенств. Рассмотрим в качестве
примера задачи оптимального планирования
производства, имеющие одинаковую
математическую постановку, но разное
содержание.
Пример
7.1. На предприятии выпускается
n различных видов
изделий и используется р разных видов
ресурсов. Обозначим: Хi
— количество выпускаемых изделий i-го
вида, Сi — цена i-го
вида изделий, aqi
— затраты
q-го
вида ресурсов на выпуск единицы i-го
вида изделий,
bq
— запасы
q-го
вида ресурсов. Вариантом планирования
производства является распределение
х = (x1, ...,хп) объемов
выпуска различных видов изделий,
определяет
общий доход от продажи выпущенной
продукции,
— общие затраты
q-го вида ресурсов. Требует ся
найти такие оптимальные объемы х1* =
,..., хn*) выпуска каждого
вида продукции, чтобы общий доход от ее
продажи был максимальным. ■
Пример
7.2. На
предприятии, выпускающем однородную
продукцию, применяется п различных
технологических способов производства.
Для выпуска изделий используются р
разных видов ресурсов: рабочая сила,
оборудование, сырье, электроэнергия
и т. п. Обозначим через Xi
— время работы по i-му
технологическому способу,
q
— количество изделий, выпускаемых
в единицу времени при работе по i-му
технологическому способу, aqi
— затраты
q-го
вида ресурсов в единицу времени при
работе по i-му технологическому
способу,
bq
— запасы
q-го
вида ресурсов. Вариантом планирования
производства является распределение
х =
(х1, ...
,хп)
времени работы по технологическим
способам,
определяет
общий объем выпускаемой продукции,
—
общие затраты
q-ro
вида ресурсов. Требуется найти такое
оптимальное распределение
времени
работы по каждому технологическому
способу, чтобы общий объем выпускаемой
продукции был максимальным. ■
Можно
усложнить постановку задачи оптимального
планирования, если ввести дополнительные
ограничения. Например, ограниченияна
объемы выпуска i-го вида
изделий
— минимальный и максимальный объемы
продукции, которые характеризуют план
выпуска и величину спроса на
соответствующее изделие.
Любая задача линейного программирования может быть приведена к следующей стандартной, или канонической, форме. Требуется максимизировать значение линейной функции
н
а
множестве всех неотрицательных решений
системы линейных алгебраических
уравнений
Хi
> 0 (i = 1, ..., n,
р < n):
Для
записи задачи линейного программирования
в стандартной форме могут понадобиться
дополнительные преобразования.
Нередко из содержательных соображений
может потребоваться минимизация
критерия оптимальности. Например, в
задаче оптимального планирования
производства необходимо минимизировать
расходы на выпуск определенных видов
продукции. В таком случае достаточно
заменить критерий оптимальности
/(х) на противоположный по знаку критерий
—f(х). Очевидно, что при
этом будет выполняться равенство
Отметим, что подобное сведение задачи
минимизации к задаче максимизации
справедливо
для произвольной
(необязательно линейной) целевой функции
и произвольного допустимого множества
Ха.
Если среди ограничений задачи присутствуют ограничения в
виде неравенств
,
то в этом случае, вводя дополнительные
неотрицательные переменные vq
> 0, ограничения можно записать как
равенства
. Аналогичным образом неравенства
вида
приводятся к равенствам
.
Заметим, что ограничения, заданные в
стандартной форме задачи как равенства,
всегда можно превратить в
ограничения-неравенства.
Из курса линейной алгебры известно, что неотрицательное решение системы алгебраических уравнений (7.5) существует не всегда и возможны следующие ситуации:
система несовместна, т. е. не имеет ни одного, в том числе неотрицательного, решения (число переменных n меньше числа уравнений р);
система совместна, т. е. имеет хотя бы одно решение (число переменных n больше числа уравнений р), но среди ее решений нет ни одного неотрицательного;
система имеет неотрицательные решения, но целевая функция f(х) не достигает максимума на множестве неотрицательных решений, так как она не ограничена сверху на этом множестве;
система имеет неотрицательные решения, среди которых существует такое (или такие), при котором функция f(х) достигает максимума на этом множестве решений.
Совместную систему r линейных уравнений с n переменными, среди коэффициентов которой хотя бы один отличен от нуля, при
всегда можно разрешить относительно
г переменных. Эти переменные называют
базисными, или
главными, а
остальные
переменных,
через которые выражаются базисные
переменные, —
свободными. В
таком случае критерий оптимальности
f(х) также можно выразить
через свободные переменные. Число
переменных уменьшается на r.
Все оставшиеся
s
переменных
удовлетворяют ограничениям-неравенствам.
Заметим, что выбор базисных и свободных
переменных в общем случае не является
однозначным. Поэтому неоднозначен и
переход от стандартной формы к форме
(7.4) записи задачи линейного программирования.
