- •Математические методы системного анализа и теория принятия решений Методическое пособие
- •1. Теория принятия решений 4
- •2. Линейное программирование 9
- •3. Нелинейное программирование 42
- •4. Игровые методы обоснования решений 51
- •5. Задачи распознавания образов 62
- •Предисловие
- •1. Теория принятия решений
- •1.1. Задачи, связанные с принятием решений Проблема оптимальности.
- •Основные понятия и принципы исследования операций.
- •Примеры задач исследования операций.
- •1.2. Математические модели операций Искусство моделирования.
- •1.3. Разновидности задач исследования операций и подходов к их решению Прямые и обратные задачи исследования операций.
- •Пример выбора решения при определенности: линейное программирование.
- •Проблема выбора решений в условиях неопределенности.
- •Выбор решения по многим критериям.
- •«Системный подход».
- •2. Линейное программирование
- •2.1. Краткое представление о математическом программировании Предмет математического программирования.
- •Краткая классификация методов математического программирования.
- •2.2. Примеры экономических задач линейного программирования Понятие линейного программирования.
- •Задача о наилучшем использовании ресурсов.
- •Задача о выборе оптимальных технологий.
- •Задача о смесях.
- •Задача о раскрое материалов.
- •Транспортная задача.
- •2.3. Линейные векторные пространства Основные понятия линейного векторного пространства.
- •Решение систем линейных уравнений методом Гаусса.
- •Реализация метода исключения неизвестных в среде Excel.
- •Различные схемы реализации метода Гаусса.
- •Опорные решения системы линейных уравнений.
- •2.4. Формы записи задачи линейного программирования Основные виды записи злп.
- •Каноническая форма представления задачи линейного программирования.
- •Переход к канонической форме.
- •2.5. Геометрическая интерпретация задачи линейного программирования Определение выпуклой области.
- •Геометрическая интерпретация.
- •2.6. Свойства решений задачи линейного программирования Свойства основной задачи линейного программирования.
- •Графический метод решения задачи линейного программирования.
- •2.7. Симплексный метод Идея симплекс-метода.
- •Теоретические обоснования симплекс-метода.
- •Переход к нехудшему опорному плану.
- •Зацикливание.
- •Алгоритм симплекс-метода.
- •2.8. Двойственность в линейном программировании Прямая и двойственная задача.
- •Связь между решениями прямой и двойственной задач.
- •Геометрическая интерпретация двойственных задач.
- •2.9. Метод искусственного базиса Идея и реализация метода искусственного базиса.
- •3. Нелинейное программирование
- •3.1. Общая задача нелинейного программирования Постановка задачи.
- •Примеры задач нелинейного программирования (экономические).
- •Геометрическая интерпретация задачи нелинейного программирования.
- •3.2. Выпуклое программирование Постановка задачи выпуклого программирования.
- •3.3. Классические методы оптимизации Метод прямого перебора.
- •Классический метод дифференциальных исчислений.
- •3.4. Метод множителей лагранжа
- •3.5. Градиентные методы решения задач нелинейного программирования Общая идея методов.
- •Метод Франка-Вулфа.
- •Метод штрафных функций.
- •4. Игровые методы обоснования решений
- •4.1. Предмет и задачи теории игр Основные понятия.
- •Классификация выборов решений.
- •Антагонистические матричные игры.
- •Чистые и смешанные стратегии и их свойства.
- •4.2. Методы решения конечных игр Упрощение матричной игры.
- •Решение матричной игры размерностью 22.
- •Графическое решение матричной игры.
- •Сведение задач теории игр к задачам линейного программирования.
- •4.3. Задачи теории статистических решений Игры с природой.
- •Критерии принятия решений.
- •5. Задачи распознавания образов
- •5.1. Общая постановка задачи распознавания образов и их классификация Проблема распознавания.
- •Обсуждение задачи опознавания.
- •Язык распознавания образов.
- •Априорные предположения — это записанные специальным образом, накопленные знания специалистов.
- •Общая постановка задачи.
- •Геометрическая интерпретация задачи распознавания.
- •Классификация задач распознавания.
- •5.2. Подготовка и анализ исходных данных Общая схема решения задачи.
- •Общая схема постановки и решения задачи Анализ данных с целью выбора постановки и метода решения
- •5.3. Методы опознавания образов Основные этапы процесса опознавания образов.
- •Методы создания системы признаков.
- •Признаковое пространство.
- •Сокращение размерности исходного описания.
- •Методы построения решающего правила.
- •5.4. Меры и метрики Понятие о сходстве.
- •Меры сходства и метрики.
- •Примеры функций мер сходства.
- •5.5. Детерминированно-статистический подход к познаванию образов Основные этапы детерминированно-статистического подхода.
- •Получение исходного описания.
- •Создание системы признаков.
- •Сокращение размерности исходного описания.
- •Нахождение решающего правила (метод эталонов).
- •Коррекция решающего правила.
- •5.6. Детерминированный метод построения решающего правила (метод эталонов) Идея метода эталонов.
- •Минимизация числа эталонов.
- •Габаритные эталоны.
- •Применение метода эталонов к частично пересекающимся образам.
- •Дополнительная минимизация числа признаков.
- •Квадратичный дискриминантный анализ.
- •Распознавание с отказами.
- •5.8. Алгоритм голотип-1 Назначение
- •Постановка задачи
- •Метод решения задачи.
- •Условия применимости.
- •Условия применимости.
- •5.10. Алгоритм направление опробования Назначение
- •Постановка задачи.
- •Метод решения задачи.
- •Условия применимости.
- •Транспортная задача Математическая постановка.
- •Постановка задачи.
- •Теоретическое введение.
- •Методы нахождения опорного плана транспортной задачи.
- •Определение оптимального плана транспортной задачи.
- •Заключение.
- •Целочисленное программирование Постановки задач, приводящие к требованию целочисленности.
- •Постановка задачи.
- •Методы отсечения.
- •Алгоритм Гомори.
- •Первый алгоритм р. Гомори решения полностью целочисленных задач.
- •Приближенные методы.
- •Заключение.
- •Параметрическое программирование Введение.
- •Формулировка задачи.
- •Теоретическая часть.
- •Общая постановка задачи.
- •Решение задачи.
- •Геометрическая интерпретация задачи.
- •Общая постановка задачи.
- •Решение задачи.
- •Геометрическая интерпретация задачи
- •Постановка задачи.
- •Решение.
- •Геометрическое решение.
- •Решение задачи симплекс-методом.
- •Результат.
- •Некооперативные игры n лиц с ненулевой суммой Введение.
- •Теоретическая часть.
- •Постановка и решение задачи.
- •Заключение.
- •Cписок литературы
2.4. Формы записи задачи линейного программирования Основные виды записи злп.
Общей задачей линейного программирования (ОЗЛП) называют задачу
(2.10)
при ограничениях:
, (2.11)
, (2.12)
, (2.13)
, (2.14)
xj — произвольные , (2.15)
где cj , Aij , bi — заданные действительные числа; (2.10) — целевая функция; (2.11)—(2.15) — ограничения; x = ( x1 , ..., xn ) — план задачи.
Задачу линейного программирования можно представить в 3-х различных видах: развернутом, матричном и векторном.
Приведенная выше ОЗЛП записана в развернутой или индексной форме. В этой же форме задачу можно представить и несколько иначе:
(2.16)
при линейных ограничениях:
(2.17)
, (2.18)
xj — произвольные ,
здесь cj , Aij , bi — заданные действительные числа; (2.16) целевая функция; (2.17) — ограничения; (2.18) — условие неотрицательности части переменных; x = ( x1, ... , xn ) — план задачи.
Рассмотрим теперь матричную форму записи ЗЛП. Введем следующие обозначения:
; ,
, ,
где C — матрица-строка; A — матрица системы уравнений; X — матрица-столбец переменных; A0 — матрица-столбец свободных членов.
Тогда наша задача примет вид:
; (2.19)
, X 0 , (2.20)
или
mаx (min) Z = C X , A X {, =, }A0 , X 0 . (2.21)
Полезной является также векторная форма ЗЛП. Для столбцов матрицы A введем обозначения:
, , ..., , ..., .
Тогда задача (2.10)—(2.15) в векторной форме записи примет вид:
mаx (min) Z = CX ; (2.22)
A1x1 + ... + Ajxj + Anxn = A0 , X 0 , (2.23)
где CX скалярное произведение векторов C = ( c1; ...;cn ) и X = (x1 , ... , xn).
Каноническая форма представления задачи линейного программирования.
В ряде случаев для реализации определенных алгоритмов линейного программирования (например, симплекс-метода) необходимо представить задачу в канонической форме.
Канонической формой записи ЗЛП называют задачу
; (2.24)
, (2.25)
. (2.26)
Существуют 5 основных признаков представления задачи линейного программирования в канонической форме:
1) минимизация целевой функции (2.24);
2) запись системы ограничений в виде строгих равенств (2.25);
3) условие неотрицательности на все переменные (2.26);
4) наличие в системе ограничений исходного базиса;
5) неотрицательность всех свободных членов в системе ограничений.
Переход к канонической форме.
Наиболее широко используемые методы решений ЗЛП применяются лишь к задачам, уже записанным в канонической форме. Поэтому приходится переходить от любой формы ЗЛП к ее каноническому виду, причем нужно быть уверенным, что эти формы эквивалентны.
При необходимости задачу максимизации можно заменить задачей минимизации, и наоборот. Для функции одной переменной это утверждение очевидно. В самом деле, если x* — точка минимума функции y = f ( x ), то для функции y = – f ( x ) она является точкой максимума, так как графики функций f ( x ) и – f ( x ) симметричны относительно оси абсцисс (рис. 2.1).
рис. 2.1
Итак,
min f ( x* ) = – mаx ( – f ( x* )).
То же самое имеет место и в случае функции n переменных:
min f ( x1* , ..., xn* ) = – mаx ( – f ( x1* , ..., xn* )).
Таким образом, если в исходной ЗЛП целевая функция максимизируется,
т. е. , (2.27)
то выполнив замену Z1=–Z, получаем новое выражение
(2.28)
и эквивалентную ЗЛП.
Как следует из примеров задач линейного программирования, в них большинство ограничений задается неравенствами. Для перехода к канонической форме необходимо заменить все неравенства на строгие равенства.
Пусть исходная ЗЛП имеет вид
, (2.29)
, (2.30)
, (2.31)
. (2.32)
Преобразуем ее к каноническому виду. Введем m дополнительных (балансовых) неотрицательных переменных xn+i 0 ( i = ). Для того чтобы неравенства типа (2.30) преобразовать в равенства, к их левым частям прибавим дополнительные переменные xn+i (i = ), после чего система неравенств (2.30) примет вид
. (2.33)
Для того чтобы неравенства типа (2.31) преобразовать в равенства, из их левых частей вычтем дополнительные переменные xn+i ( i = ) . Получим
. (2.34)
Систему уравнений (2.33), (2.34) с условием неотрицательности дополнительных переменных называют эквивалентной системе неравенств (2.30), (2.31).
Дополнительные переменные xn+i ( i = ) в целевую функцию вводятся с коэффициентами, равными нулю. Получим задачу:
; (2.35)
, (2.36)
, (2.37)
. (2.38)
Задача (2.35)—(2.38) имеет каноническую форму. Задачи (2.29)—(2.32) и (2.35)—(2.38) тесно связаны между собой.
Т е о р е м а 1. Каждому допустимому решению задачи (2.29)—(2.32) соответствует вполне определенное допустимое решение задачи (2.35)—(2.38), где xn+i 0 (i = ), и наоборот, каждому допустимому решению задачи (2.35)—(2.38) соответствует допустимое решение решению задачи (2.29)—(2.32).
Д о к а з а т е л ь с т в о. Пусть — допустимое решение задачи (2.29)—(2.32). Для условий (2.30) обозначим
, (2.39)
для условий (2.31) —
. (2.40)
Из условий (2.39) и (2.40) следуют условия (2.36)—(2.38). Отсюда x0 = есть определенное допустимое решение задачи (2.35)—(2.38).
Аналогично доказывается обратное утверждение. Теорема доказана.
Так как дополнительные переменные входят в целевую функцию (2.35) с коэффициентами, равными нулю, то значения целевых функций (2.29) и (2.35) при соответствующих допустимых решениях и одинаковы. Отсюда следует, что целевые функции (2.29) и (2.35) на множестве соответствующих допустимых решений достигают экстремального значения одновременно. Оптимальному решению задачи (2.29)— (2.32) соответствует оптимальное решение задачи (2.35)—(2.38), т. е. исходная задача и ее каноническая форма эквивалентны.
Отметим экономический смысл дополнительных переменных. Они в каждой задаче прямо связаны с ее экономическим содержанием.
Например, для задачи о наилучшем использовании ресурсов
, (2.41)
т. е. дополнительная переменная показывает величину неиспользованного ресурса. Для задачи о смесях
, (2.42)
т. е. дополнительная переменная показывает потребление соответствующего питательного вещества в оптимальном плане сверх нормы.
В ряде производственно-экономических ситуаций не на все переменные налагаются условия неотрицательности. В подобных ситуациях, даже если ограничения представлены в виде равенств, задача не будет канонической. Для представления такой задачи в каноническом виде каждую из переменных xk , на которые не наложено условие неотрицательности, заменим разностью двух неотрицательных переменных и , т. е. , где . Очевидно, что при этом мы получим эквивалентную задачу.
И, наконец, рассмотрим два последних признака того, что ЗЛП представлена в каноническом виде. Это наличие в системе ограничений исходного базиса при неотрицательности всех свободных элементов данной системы; другими словами, наличие в системе ограничений выделенного исходного опорного решения.
Ï ð è ì å ð 1. Привести к канонической форме следующую задачу линейного программирования:
Р е ш е н и е .
1) Минимизируем целевую функцию задачи путем введения новой функции Z1 : .
2) В системе ограничений ЗЛП перейдем к строгим равенствам, для чего введем неотрицательные «балансовые» переменные x4 и x5 в левые части неравенств со знаками минус и плюс (в зависимости от знака неравенства). В результате ЗЛП запишется в следующем виде:
3) Перейдем к преобразованию условий неотрицательности. Данное условие не наложено только на одну переменную x1 (назовем ее произвольной). Исключим эту переменную из задачи, выполнив следующую замену переменных:
где .
При этом получаем следующее:
4) Выделяем в системе ограничений базис при неотрицательных свободных членах.
A'1 |
A"1 |
A2 |
A3 |
A4 |
A5 |
A0 |
|
1 |
-1 |
-1 |
0 |
-1 |
0 |
-2 |
*( -1 ) |
5 |
-5 |
2 |
0 |
0 |
1 |
15 |
|
3 |
-3 |
-1 |
-1 |
0 |
0 |
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A'1 |
A"1 |
A2 |
A3 |
A4 |
A5 |
A0 |
|
-1 |
1 |
1 |
0 |
1 |
0 |
2 |
|
5 |
-5 |
2 |
0 |
0 |
1 |
15 |
|
3 |
-3 |
-1 |
-1 |
0 |
0 |
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A'1 |
A"1 |
A2 |
A3 |
A4 |
A5 |
A0 |
A0/A'1 |
-1 |
1 |
1 |
0 |
1 |
0 |
2 |
|
5 |
-5 |
2 |
0 |
0 |
1 |
15 |
3 |
3 |
-3 |
-1 |
-1 |
0 |
0 |
3 |
1 |
|
|
|
|
|
|
min |
1 |
|
|
|
|
|
|
|
|
A'1 |
A"1 |
A2 |
A3 |
A4 |
A5 |
A0 |
|
0 |
0 |
0,666667 |
-0,33333 |
1 |
0 |
3 |
|
0 |
0 |
3,666667 |
1,666667 |
0 |
1 |
10 |
|
1 |
-1 |
-0,33333 |
-0,33333 |
0 |
0 |
1 |
|
Таким образом, получаем окончательно следующую каноническую форму для данной задачи линейного программирования: