- •Донецкий университет экономики и права
- •Экономико-математические методы и модели: оптимизационные методы и модели
- •Содержание
- •Введение
- •Тема 1 концептуальные аспекты математического моделирования экономики
- •1.1. Понятие модели. Классификация моделей
- •Тема 2 оптимизационные экономико-математические модели
- •2.1. Понятие оптимизационной модели
- •2.2. Примеры постановки оптимизационных задач
- •Вопросы для самоконтроля по темам 1, 2
- •Вопросы для самостоятельного изучения по темам 1, 2
- •Тема 3 задачи линейного программирования и методы их решения
- •3.1. Графический метод решения задач линейного программирования
- •3.2. Симплекс-метод решения задач линейного программирования
- •3.3. Метод искусственного базиса
- •3.4. Специальные случаи решения задач линейного программирования
- •Вопросы для самоконтроля по теме 3
- •Тема 4 теория двойственности и анализ линейных моделей оптимизационных задач
- •4.1. Понятие и экономический смысл двойственной задачи
- •4.2. Двойственный симплекс-метод
- •Вопросы для самоконтроля по теме 4
- •Вопросы для самостоятельного изучения по теме 4
- •Тема 5 целочисленное программирование
- •5.1. Понятие задачи целочисленного программирования
- •5.2. Метод отсекающих плоскостей (Гомори)
- •Вопросы для самоконтроля по теме 5
- •Вопросы для самостоятельного изучения по теме 5
- •Тема 6 нелинейное программирование
- •Вопросы для самостоятельного изучения по теме 6
- •Задания для индивидуальной работы студента
- •Задание 1
- •Задание 2
- •Задание 3
- •Задание 4
- •Питання до екзамену
- •Литература
- •Відповідальний за випуск: завідувач кафедри вищої математики та інформаційних технологій к.Ф-м.Н., доцент л.М. Харламова
- •83048, М. Донецьк, вул. Університетська, 77
Вопросы для самоконтроля по теме 4
-
Каким образом составить двойственную задачу к задаче линейного программирования?
-
Какие ограничения называются нормальными?
-
В чем суть первой теоремы двойственности?
-
Как определить решение двойственной задачи?
-
Что показывает решение двойственной задачи?
-
Как связано решение прямой задачи и двойственной?
-
В чем суть двойственного симплекс-метода?
-
Как выбирается переменная, покидающая базис, и переменная, входящая в базис, при решении задачи двойственным симплекс-методом?
-
Какие задачи можно решить двойственным симплекс-методом?
Вопросы для самостоятельного изучения по теме 4
-
В чем суть второй теоремы двойственности (теоремы о дополняющей нежесткости)?
-
Какая задача называется нормальной?
-
Как определить возможные диапазоны изменений коэффициентов целевой функции при небазисной переменной?
-
Как определить возможные диапазоны изменений коэффициентов целевой функции при базисной переменной?
-
Как определить возможные диапазоны изменений правых частей несвязующих ограничений?
-
Как определить возможные диапазоны изменений правых частей связующих ограничений, при которых остаются справедливыми текущие теневые цены?
-
Как определить, изменится ли оптимальное решение при изменении колонки коэффициентов при небазисной переменной?
-
Как определить изменится ли оптимальное решение при появлении возможности выпуска нового вида продукции?
Тема 5 целочисленное программирование
5.1. Понятие задачи целочисленного программирования
Задача линейного программирования, у которой все переменные могут принимать только целые значения, называется полностью целочисленной задачей.
Задача, у которой некоторые переменные могут принимать только целые значения, называется частично-целочисленной задачей.
Задача, у которой некоторые переменные могут принимать значения только 0 или 1, называется задачей с булевыми переменными.
Задача целочисленного программирования, которая получается путем отмены ограничений на целочисленность или ограничений типа «0 или 1», называется линейно-ослабленной задачей.
Утверждение 1. Решение задачи целочисленного программирования всегда не лучше, чем решение линейно-ослабленной задачи. Для задачи на максимум , а для задачи на минимум: .
Утверждение 2. Если ОДЗ линейно-ослабленной задачи является ограниченным множеством, то ОДЗ целочисленной задачи содержит конечное число точек.
Отсюда следует 3 подхода к решению целочисленных задач:
-
Путем прямого перебора и сравнения всех точек. Очевидно, что применение этого метода весьма ограничено. Во-первых, если ОДЗ линейно-ослабленной задачи является неограниченным множеством, то количество точек целочисленной задачи будет бесконечным, во-вторых, даже при конечном числе точек прямой перебор может оказаться очень длительной и неэффективной процедурой.
-
Путем округления решения линейно-ослабленной задачи до целых. Из примера 5.1 видно, что этот метод тоже далеко не всегда применим, а решение задачи, полученное путем округления, может оказаться далеким от оптимального. Применяется этот метод, если переменные принимают достаточно большие значения, например, если получилось, что нужно выпускать 1003,4 единиц продукции, то округление до 1003 может быть вполне приемлемым.
-
Путем построения дополнительных ограничений в рамках имеющегося ОДЗ с целью отсечения нецелочисленных значений переменных. На этом подходе основано два метода решения задач целочисленного программирования, которые будут рассмотрены в п.п. 5.2 и 5.3: метод ветвей и границ и метод отсекающих плоскостей.
Пример 5.2. Рассмотрим задачу:
x1,2 – целые.
ОДЗ представляет собой 6 точек: (0;0), (0;1), (0;2), (0;3), (1;0), (1;1). Методом перебора легко получить, что оптимальное решение (0;3) и Z = 66 (рис. 5.1).
Р ис. 5.1. Решение графическим способом задачи примера 5.2
Оптимальное же решение линейно-ослабленной задачи будет (1 6/7; 0) и Z = 78.
Очевидно, что округление решения линейно-ослабленной задачи в меньшую сторону (1; 0) с Z = 42 – далеко от оптимального, округление же в большую сторону (2; 0), вообще является недопустимой точкой.