- •Математические методы системного анализа и теория принятия решений Методическое пособие
- •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писок литературы
3. Нелинейное программирование
3.1. Общая задача нелинейного программирования Постановка задачи.
Если в задаче математического программирования целевая функция z ( x ) и (или) хотя бы одна из функций системы ограничений i ( x ) нелинейна, то такой раздел называется нелинейным программированием (НЛП). Методы НЛП получили широкое применение при расчете экономически выгодных партий запуска деталей в производство, при определении экономически выгодной партии поставки, распределении ограниченных ресурсов, размещении производительных сил и т.д.
В общем виде задача нелинейного программирования (ЗНЛП) состоит в определении максимального (минимального) значения функции
z=f (x1, x2, ... xn) (3.1)
при условии, что ее переменные удовлетворяют соотношениям
gi (x1, x2, ..., xn)=bi, i=1, 2, ..., k, (3.2)
gi (x1, x2, ..., xn)<=bi, i=k+1, k+2, ..., m.
Если f и g — линейные функции, то задача (3.1), (3.2) является задачей линейного программирования.
Соотношения (3.2) образуют систему ограничений и включают в себя условия не отрицательности переменных, если такие условия имеются. Условия не отрицательности могут быть заданы и непосредственно.
Примеры задач нелинейного программирования (экономические).
1. На развитие предприятий отрасли на планируемый год выделено 220 млн. руб. Эти средства могут быть распределены между тремя предприятиями. Каждый вариант распределения обеспечивает к концу года определенный доход отрасли. Учитывая возможные варианты распределения капитальных вложений между предприятиями и получаемый при этом доход, определить такой вариант распределения капиталовложений, при котором доход отрасли является максимальным.
2. Между n предприятиями отрасли необходимо распределить выпуск некоторой однородной продукции. Затраты, связанные с производством xi (i=1,..., n) единиц продукции на j-ом предприятии, зависят от объема производства и определяются функциями fj (xi). Зная, что продукции должно быть изготовлено не менее b единиц, составить такой план производства продукции предприятиями отрасли, при котором общие затраты, связанные с ее производством, минимальны.
3. В m отправления сосредоточена однородная продукция в количествах, равных a1, ..., аm единиц. Эту продукцию нужно перевезти в n пунктов назначения в объемах, равных b1, ..., bn единиц. Цены, связанные с перевозкой единицы продукции, зависят от объемов перевозимой продукции и определяются функциями fij (xij), где xij (i=1, ..., m; j=1, ..., n) — количество единиц продукции, перевозимой из i - го отправления в j - ый пункт назначения. Определить, сколько единиц продукции из i - го пункта отправления в j - ый пункт назначения следует доставить, чтобы вся продукция была перевезена в пункты назначения в необходимых объемах при минимальной общей стоимости перевозок.
Геометрическая интерпретация задачи нелинейного программирования.
В евклидовом пространстве Еn система ограничений (3.2) определяет область допустимых решений задачи (ОДР). В отличие от ЗЛП она не всегда является выпуклой.
Если определена ОДР, то нахождение решения задачи (3.1), (3.2) сводится к определению такой точки этой области, через которую проходит гиперповерхность наивысшего (наинизшего) уровня: f (x1, x2, ..., xn)=h. Указанная точка может находиться как на границе ОДР, так и внутри нее.
Класс ЗНЛП значительно шире класса задач линейного программирования. Основные результаты в нелинейном программировании получены при рассмотрении задач, в которых система ограничений линейная, а целевая функция нелинейная. Даже в таких задачах оптимальное решение может быть найдено только для узкого класса целевых функций. Рассмотрим частные случаи, когда целевая функция сепарабельная (является суммой n функций fj (xj)) или квадратичная.
Если в ЗЛП точки экстремума являются вершинами многогранников решений, то в задачах с нелинейной целевой функцией они могут лежать внутри области, на ребре (грани) или в вершине многогранника. Таким образом, с помощью методов линейного программирования, позволяющих осуществить переход из одной вершины многогранника в другую, можно получить оптимальное решение нелинейных задач при условии, что целевая функция удовлетворяет добавочным ограничениям.
Рассмотрение ЗНЛП начинают с классической задачи оптимизации. Задачи такого рода имеют место, если система (3.2) содержит только уравнения, отсутствуют условия не отрицательности и цело численности переменных, а функции gi (x1, x2, ..., xn) и f (x1, x2, ..., xn) непрерывны и имеют частные производные не ниже второго порядка. Классические методы оптимизации при этом являются теоретическим аппаратом, позволяющим в ряде случаев обосновать разработку соответствующего вычислительного метода.
Рассмотрим пример решения ЗНЛП с двумя переменными. Так же как и в линейном программировании, они могут быть решены графически.
П р и м е р 1. Найти минимальное и максимальное значения сепарабельной функции Z=(x1 4)2+(x26)2 при ограничениях
x1+x21,
2x1+3x212,
x10, x20.
Р е ш е н и е. Область допустимых решений представляет собой многоугольник АВСЕ (рис. 3.1). Если положить Z=Q (Q>0), то получим уравнение окружности (x14)2+(x26)2=0. С уменьшением (увеличением) Q (квадрата радиуса) значения функции Z соответственно уменьшаются (увеличиваются).
Проводя из точки М как из центра окружности различных радиусов, получаем: минимальное значение функция Z(D)=196/13 принимает в точке D (24/13; 36/13), в которой окружность касается области решений. Точка D не является угловой, ее координаты находят в результате решения системы уравнений, соответствующих прямым MD и CE.
Функция Z имеет два локальных максимума: в вершине А(1;0) функция Z(A)=45, в вершине E (6; 0) функция Z(E)=40. Так как Z(A)>Z(E), то вершина А — точка глобального максимума.
Процесс нахождения решения ЗНЛП (3.1), (3.2) с использованием ее геометрической интерпретации включает следующие этапы:
1. Находят ОДР задачи, определяемую соотношениями (3.2) (если она пуста, то задача не имеет решения).
2. Строят гиперповерхность F (x1, x2, ..., xn)=h.
3. Определяют гиперповерхность наивысшего (наинизшего) уровня или устанавливают неразрешимость задачи из-за неограниченности функции (3.1) сверху (снизу) на множестве допустимых решений.
4. Находят точку ОДР, через которую проходит гиперповерхность наивысшего (наинизшего) уровня, и определяют в ней значение функции (3.1).