- •Содержание
- •Введение
- •Тема 1. Экономико-математические методы и модели и их классификация
- •1.1. Социально-экономические системы, методы их исследования и моделирования
- •1.2.Этапы экономико-математического моделирования, классификация экономико-математических моделей и методов
- •Примеры описательных моделей
- •Тема 2. Балансовый метод в экономике
- •2.1. Общие понятия балансового метода, принципиальная схема межпродуктового баланса
- •2.2. Экономико-математическая модель межотраслевого баланса
- •2.3. Плановые расчеты на основе матричных моделей систем производства и распределения продукции
- •2.3.1. Методика расчета планового баланса по заданным валовым выпускам продукции Xiпл
- •2.3.2. Коэффициенты полных материальных затрат и методы их расчета
- •2.3.3. Методика расчета планового баланса по заданным плановым уровням конечной продукции Yiпл
- •2.4. Пример расчета планового баланса для трехотраслевой экономической системы
- •2.5. Использование балансового метода на предприятии
- •Тема 3. Математические методы сетевого планирования и управления
- •3.1. Основные понятия сетевой модели
- •Распределение (расслоение) вершин сетевого графика по рангам
- •3.2. Анализ сетевого графика и расчет его временных характеристик
- •3.2.1. Расчет временных характеристик событий
- •3.2.2. Расчет временных характеристик работ
- •3.3. Сетевое планирование в условиях неопределенности
- •Вероятностные оценки продолжительности работ
- •3.4. Оптимизация сетевой модели
- •Краткая характеристика метода оптимизации
- •Тема 4. Классификация задач математического программирования и область их эффективного применения в экономике
- •4.1. Математическая постановка и структура задачи оптимизации
- •4.2. Краткая классификация методов математического программирования
- •Тема 5. Линейное программирование
- •5.1. Предмет линейного программирования
- •5.2. Построение оптимизационных моделей для решения экономических задач
- •5.3. Общая задача линейного программирования. Основные определения
- •5.4. Графический метод решения задач линейного программирования
- •I этап. Графическая интерпретация области допустимых решений
- •II этап. Графическая интерпретация целевой функции
- •III этап. Нахождение оптимального решения
- •5.5. Примеры решения задач линейного программирования графическим методом
- •5.6. Понятие о симплекс-методе озлп
- •5.7. Каноническая форма задач линейного программирования
- •5.8. Базисные решения задачи линейного программирования
- •5.9. Алгоритм симплекс-метода озлп
- •5.10.Примеры решения задач линейного программирования симплекс-методом
- •Тема 6. Двойственность в линейном программировании
- •6.1.Понятие двойственности. Построение двойственных задач и их свойства
- •6.2. Основные теоремы двойственности и их экономическое содержание
- •Первая теорема двойственности
- •Вторая теорема двойственности (теорема о дополняющей нежесткости)
- •6.3.Экономическая интерпретация двойственной задачи Пример 1. Задача оптимального использования ресурсов.
- •6.4.Экономико-математический анализ полученных оптимальных решений
- •Свойство 1. Оценки как мера дефицитности ресурсов
- •Свойство 2. Оценки как мера влияния ограничений на функционал
- •Свойство 3. Оценки - инструмент определения эффективности отдельных вариантов (технологических способов) с позиций общего оптимума
- •Тема 7. Транспортная задача линейного программирования
- •7.1. Постановка транспортной задачи
- •Классическая постановка транспортной задачи
- •Модели транспортной задачи
- •7.2.Методы построения исходного плана
- •Метод северо-западного угла
- •Метод минимального элемента
- •7.3.Оптимизация исходного базисного плана перевозок. Метод потенциалов
- •Основные процедуры метода потенциалов
- •Алгоритм метода потенциалов
- •7.4. Пример решения транспортной задачи
- •7.5. Применение модели транспортной задачи при решении различных экономических задач
- •Тема 8. Модели и методы дискретного программирования
- •8.1. Постановка задачи дискретного программирования
- •Задача о назначении (проблема выбора, задача о женихах и невестах)
- •8.2.Краткая классификация математических моделей дискретного программирования
- •8.3.Методы решения задач дискретного программирования
- •8.3.1. Методы отсечения для решения полностью целочисленной задачи линейного программирования
- •8.3.2.Сущность метода ветвей и границ
- •Тема 9. Модели и методы динамического программирования
- •9.1. Моделирование процессов наилучшего распределения ресурсов методом динамического программирования
- •Итоговая таблица условно-оптимальных решений
- •Графики предельной и средней эффективности
- •Тема 10. О других моделях и методах математического программирования
- •10.1.Нелинейное программирование
- •10.2.Стохастическое программирование
- •Тема 11. Модели конфликтных ситуаций в теории игр
- •11.1.Основные понятия теории игр
- •11.2.Решение игры в чистых стратегиях
- •11.3.Решение игры без седловой точки
- •Графический способ решения матричной игры
- •11.4. Пример решения экономической задачи методами теории игр
- •Тема 12. Модели управления запасами
- •12.1. Основные понятия
- •12.2. Статические модели управления запасами Уилсона
- •12.2.1. Статическая модель без дефицита
- •12.2.2. Статическая модель с дефицитом
- •12.3. Модели со случайным спросом
- •Тема 13. Модели массового обслуживания
- •Литература
8.3.Методы решения задач дискретного программирования
Во всех случаях решение задачи, казалось бы, может быть найдено обычными методами с отброшенными условиями целочисленности и с последующими округлениями нецелых переменных в ответе. Однако такое округление может привести к решению, далекому от оптимального. Рассмотрим, например, геометрическую интерпретацию задачи дискретного линейного программирования (рис. 1).
Рис. 1.
Оптимальным решением нецелочисленной задачи служит точка А*нц. Как следует из рис. 1, точка В ближе всего к точке А*нц в смысле округления. Но целой точкой, находящейся ближе всего к разрешающей линии уровня max Zнц, является точка D*ц. Таким образом, попытка решить задачу с отброшенным условием целочисленности и последующим округлением полученного оптимального плана до ближайших целых значений не всегда состоятельна. С практической точки зрения подобный подход допустим в тех случаях, когда значения переменных, образующих оптимальное решение исходной задачи, достаточно велики и погрешностями округления можно пренебречь.
В первом приближении методы целочисленной оптимизации можно разделить на две основные группы: точные и приближенные. К точным относятся методы отсечения и комбинаторные (метод ветвей и границ). Это универсальные методы дискретной оптимизации. Кроме универсальных, имеется много специальных точных методов, учитывающих специфику задачи.
Среди приближенных методов наметились два направления:
1) разработка детерминированных эвристических алгоритмов, учитывающих специфику задачи;
2) использование случайного поиска в сочетании с локальной оптимизацией.
8.3.1. Методы отсечения для решения полностью целочисленной задачи линейного программирования
Общая идея решения задачи дискретного программирования методами отсечения состоит в следующем. Исходная задача решается сначала без учета ограничений целочисленности. Если полученный оптимальный план удовлетворяет условиям целочисленности, то задача решена. В противном случае к ограничениям исходной задачи добавляется новое.
Затем задача решается с учетом нового ограничения. В случае необходимости добавляется еще одно ограничение и т.д. Геометрически добавление каждого нового ограничения отвечает проведению поверхности, которая отсекает от области допустимых решений некоторую его часть с оптимальной точкой с нецелыми координатами, но не затрагивает ни одной из целочисленных точек этого многогранника.
На основе этой идеи американский математик Р. Гомори предложил ряд сходящихся алгоритмов решения задач дискретного линейного программирования. Ему удалось обосновать правила построения дополнительных ограничений и доказать конечность алгоритмов.
Для лучшего понимания идеи методов отсечения обратимся к наглядной иллюстрации случая n=2 (рис. 2).
Рис. 2.
Ограничения задачи определяют на плоскости х1Ох2 некоторый многоугольник М, в вершине х*(1)нц которого, если не учитывать условия целочисленности, достигается максимум целевой функции.
Внутри этого многоугольника имеется конечное множество точек, которым соответствуют решения с целочисленными значениями переменных (на рисунке они обозначены кружочками). На рисунке показаны три прямые l1, l2, l3, соответствующие трем дополнительным линейным ограничениям. Каждая из прямых отсекает часть области допустимых решений. Так, после отсечения части области прямой оптимальной оказывается вершина х*(2)нц , затем х*(3)нц , и, наконец, оптимальной становится целочисленная вершина х*нц . Основное в алгоритме - составление дополнительного ограничения, т.е. отсекающей гиперплоскости, которая называется правильным отсечением. Правильное отсечение должно удовлетворять следующим условиям:
1) быть линейным;
2) отсекать найденное оптимальное нецелочисленное решение исходной задачи;
3) не отсекать ни одной из целочисленных точек исходной задачи.