- •Введение в математическую экономику
- •1. Предмет и задачи математической экономики
- •2. Математическое моделирование экономических систем
- •3. Примеры экономических задач оптимизации и управления
- •4. Общая схема принятия решений. Виды и параметры экономических задач оптимизации и управления
- •5. Оптимальное поведение и его формализация в экономико-математических моделях
- •Тема 1. Элементы финансовой математики
- •1.1. Сущность финансовой математики
- •1.2. Основные категории, используемые в финансово–экономических расчетах
- •1.3. Фактор времени в финансово–экономических расчетах
- •1.4. Наращение
- •1.5. Дисконтирование
- •1.6. Номинальная и эффективная ставка
- •1.7. Эквивалентность процентных ставок
- •1.8. Сущность инфляции
- •1.9. Учет инфляции при расчете наращивания
- •1.10. Кредитные расчеты. Равные процентные выплаты
- •1.11. Погашение долга равными суммами
- •1.12. Равные срочные выплаты
- •1.13. Потребительский кредит
- •Тема 2. Оценка инвестиционных процессов
- •2.1. Особенности инвестиционных процессов
- •2.2. Чистый приведенный доход
- •2.3. Срок окупаемости
- •2.4. Внутренняя норма доходности
- •2.5. Построение оптимального портфеля
- •2.6. Моделирование финансовых рисков
- •2.7. Принципы определения цены
- •2.8. Простейший и классический процессы риска
- •Тема 3. Основы актуарной математики
- •3.1. Предмет актуарной математики
- •3.2. Использование решающего правила Байеса
- •3.3. Задача о разорении. Вероятность разорения
- •3.4. Сложные пуассоновские процессы
- •3.5. Неравенство Лундберга
- •3.6. Определение вероятности окончательного разорения в экспоненциальном случае
- •3.7. Влияние перестрахования на вероятность разорения. Задача о разорении и перестрахование
- •Тема 4. Задачи оптимизации и управления в экономике
- •4.1. Основные понятия исследования операций
- •4.2. Классификация задач исследования операций
- •4.3. Построение экономико-математической модели
- •4.4. Линейное программирование
- •4.5. Геометрический метод решения задачи линейного программирования
- •4.6. Симплекс-метод решения задачи линейного программирования
- •4.7. Транспортная задача линейного программирования
- •4.8. Задача коммивояжера и метод ветвей и границ
- •2) Построение нижних и верхних оценок минимального значения целевой функции.
- •3) Отсеивание вариантов.
- •4.9. Нелинейное программирование. Метод множителей Лагранжа
- •4.10. Задача выпуклого программирования
- •4.11. Понятие о параметрическом и стохастическом программировании
- •4.12. Общая постановка задачи динамического программирования
- •4.13. Принцип оптимальности и уравнения Беллмана
- •4.14. Задача о распределении средств между предприятиями
- •4.15. Общая схема применения метода дп. Задача об оптимальном распределении ресурсов между отраслями на n лет
- •Тема 5. Математические модели экономических процессов
- •5.1. Линейные модели экономики
- •5.2. Модель Леонтьева «Затраты-выпуск»
- •5.3. Планирование производства в динамике (модель Неймана «расширяющейся» экономики)
- •5.4. Математическая теория потребления. Формализация предпочтения потребителя при выборе товаров
- •5.5. Функция полезности как критерий оценки товаров
- •5.6. Предельный анализ и понятие эластичности в теории потребления
- •5.7. Оптимизационная модель задачи потребительского выбора. Уравнение Слуцкого
- •5.8. Математическая теория конкурентного равновесия
- •5.9. Рыночный спрос и рыночное предложение. Условия совершенной конкуренции. Модель Вальраса
4.6. Симплекс-метод решения задачи линейного программирования
Основным методом решения задач линейного программирования является симплекс-метод. Геометрический смысл симплекс-метода состоит в последовательном переходе от одной вершины многогранника решений (называемой первоначальной вершиной) к соседней, в которой функция цели принимает лучшее (по крайней мере, не худшее) значение до тех пор, пока не будет найдено оптимальное решение – вершина, в которой достигается оптимальное значение функции цели.
Cимплекс-метод можно применять в том случае, когда задача программирования задана в каноническом виде. В дальнейшем, будем рассматривать задачи линейного программирования канонического вида, так как любая ЗЛП может быть сведена к решению канонической задачи.
Задача линейного программирования имеет канонический вид, если система ограничений задана множеством уравнений:
и каждое i-е уравнение содержит переменную такую, что коэффициент перед ним в этом уравнении равен 1, а во всех других уравнениях равен 0. Если при этом , то говорят о допустимом каноническом виде. Переменные называют базисными, остальные – свободными.
ЗЛП допустимого канонического вида может быть записана в допустимой симплекс-таблице следующего вида: левый крайний столбец содержит номера базисных переменных, верхняя строка – номера свободных переменных. В точке пересечения строки, соответствующей значению , и столбца, соответствующего , стоит коэффициент при свободной переменной в уравнении i, в котором выделена базисная переменная . Соответственно, справа записаны постоянные члены уравнений, внизу – коэффициенты целевой функции от свободных переменных, а в правом нижнем углу записано значение «-Q0».
Симплекс-таблица
|
|
… |
|
|
|
|
… |
|
|
… |
… |
|
… |
… |
|
|
… |
|
|
|
|
… |
|
|
Допустимому каноническому виду ЗЛП или соответствующей допустимой симплекс-таблице сопоставляется точка , , , . Координаты этой точки удовлетворяют n линейно-независимым условиям ЗЛП: m уравнениям и n-m неравенствам для свободных переменных. Эта точка является допустимым базисным решением и вершиной многогранника решений.
Допустимой симплекс-таблице соответствует точка минимума, если все коэффициенты целевой функции неотрицательны:
, …,
Тогда минимальное значение целевой функции равно
Если критерий не выполнен, то есть не все коэффициенты целевой функции неотрицательны, то следует перейти от одного допустимого решения к соседнему допустимому, то есть такому, в котором множества базисных и свободных переменных изменены на один элемент. Этот процесс называют симплекс-шагом или заменой базиса. Опишем последовательно его этапы.
1) Выбор разрешающего столбца: среди элементов последней строки таблицы выбирается любой , и соответствующий столбец называется разрешающим. В качестве рекомендуется выбирать минимальное .
2) Выбор разрешающей строки: если для всех элементов разрешающего столбца, то минимум не существует. Если это не так, то для всех положительных вычислим отношение . Строка i, для которой отношение минимально, называется разрешающей строкой , общий элемент разрешающего столбца и разрешающей строки называется разрешающим элементом.
3) Замена базиса при помощи разрешающего элемента . Если w – какое-либо значение в таблице, то через будем обозначать значение, стоящее в новой таблице на том же самом месте:
а)номера переменных из разрешающей строки и разрешающего столбца меняются местами, |
, , |
номера других переменных остаются на месте |
для всех , для всех ; |
б) разрешающий элемент заменяется на обратное значение: |
, |
остальные элементы разрешающего столбца и разрешающей строки делят на разрешающий элемент со знаком «-» для элементов разрешающего столбца и со знаком «+» для элементов разрешающей строки, то есть
элементы разрешающего столбца заменяются следующим образом: для всех , |
; |
и элементы разрешающей строки заменяются следующим образом: для всех , |
; |
в) элементы симплекс-таблицы, не принадлежащие разрешающей строке и разрешающему столбцу, пересчитываются следующим образом - из элемента вычитается произведение соответствующих элементов из разрешающей строки и разрешающего столбца, деленное на разрешающий элемент:
для всех и ,
для всех ,
для всех ,
.
Всегда должно получаться и . Может случиться, что , хотя . После пересчета всех элементов симплекс-таблицы проверяется критерий минимальности - все коэффициенты целевой функции должны быть неотрицательны.
Отметим, что переменным, индекс которых стоит в верхней строке, в базисном решении приписывается значение 0; это свободные переменные. Каждая из переменных, индекс которых стоит в левом столбце, приравнивается к числу, записанному в правом столбце той же самой строки; это базисные переменные.
Каждой задаче линейного программирования можно сопоставить точно одну двойственную ей задачу линейного программирования.