
- •Н. В. Алексенко р. И. Воробьева
- •Оглавление
- •Введение
- •1. Основные методы решения задач линейного программирования
- •1.1. Введение в линейное программирование
- •1.1.1. Общая задача оптимизации
- •1.1.2. Задачи линейного программирования
- •1.1.3. Стандартная и каноническая задачи линейного программирования
- •1.2. Графический метод решения задачи линейного программирования
- •1.3. Симплекс-метод
- •1.3.1. Идея симплекс-метода
- •1.3.2. Алгоритм симплекс-метода
- •Алгоритм симплекс-метода
- •Алгоритм поиска первоначального опорного плана
- •1.4. Двойственность в линейном программировании
- •1.4.1. Постановка двойственной задачи
- •1.4.2. Теоремы двойственности
- •1.4.3. Двойственный симплекс-метод
- •1.4.4. Экономическая интерпретация задачи, двойственной задаче об использовании ресурсов
- •Исходная задача
- •Двойственная задача
- •1.5. Вопросы для самопроверки
- •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. Вопросы для самопроверки
- •4. Теория игр
- •4.1. Основные понятия
- •4.2. Решение игр 2 х 2 в смешанных стратегиях графическим способом
- •4.3. Решение игр 2 х n графическим способом
- •4.4. Решение игры n х 2 графическим способом
- •4.5. Сведение матричной игры m X n к задаче линейного программирования (решение любой матричной игры)
- •Функции дохода
- •6.2. Способы представления графов
- •6. 3. Некоторые задачи теории графов
- •6.3.1. Поиск кратчайшего пути в графе
- •Алгоритм поиска кратчайшего пути
- •6.3.2. Поиск кратчайшего гамильтонова цикла
- •6.4. Вопросы и задачи для самопроверки
- •7. Оптимизация сетевого графика
- •7. 1. Сетевая модель. Основные понятия
- •7.2. Основные требования к сетевому графику
- •7.3. Расчет временных параметров сетевого графика
- •7.3.1. Расчет параметров событий
- •Учитывая введенное в п.7.1 определение критического пути и введенные формулы (7.1–7.3), можно записать алгоритм нахождения критического пути.
- •7.3.2. Расчет параметров работ
- •7.3.3. Сетевое планирование в условиях неопределенности
- •7.4. Вопросы и задачи для самопроверки
- •8. Решение задач на компьютере
- •8.1. Решение задач с использованием системы Mathcad
- •8.2. Решение задач линейного программирования с помощью приложения Excel
- •Заключение
- •Библиографический список
- •Приложение
- •Алексенко Наталья Владимировна
- •Воробьева Раиса Ивановна
- •Математика
- •Основные задачи
- •Математического программирования
- •И реализация их на компьютере
- •644099, Омск, ул. Красногвардейская, 9
3.3. Графический метод решения задачи целочисленного программирования
Если
задача (3.1–3.4) содержит две переменных
,
она может быть решена графическим
методом.
В
координатной плоскости
находят область допустимых планов,
строят вектор
и линию уровня. Перемещая линию уровня
в направлении вектора
,
определяют точку «входа» (в задачах на
минимум) или точку «выхода» из области
допустимых планов.
В том случае, когда координаты этой точки нецелочисленные, на область допустимых планов наносят целочисленную решетку и находят на ней такие узлы (точки с целочисленными координатами), в которых значение целевой функции наиболее близко к экстремальному. Координаты такого узла и являются целочисленным решением.
Для решения задач целочисленного линейного программирования кроме метода отсечения Гомори часто используется метод ветвей и границ. Суть его заключается в упорядоченном переборе вариантов и рассмотрении лишь тех из них, которые оказываются по определенным признакам перспективными. Рассмотрение этого метода мы оставили за рамками этого пособия. Изложение этого метода можно найти, например, в источнике [5, с. 168].
3.4. Вопросы для самопроверки
Чем отличается задача целочисленного линейного программирования?
Что такое целая часть числа?
Что такое дробная часть числа?
Почему дробная часть любого числа неотрицательна?
Сформулируйте идею метода Гомори.
Как выбирается строка, по которой строится дополнительное ограничение?
Как составляется дополнительное ограничение?
Как графически решить задачу целочисленного программирования? Всегда ли это возможно?
4. Теория игр
4.1. Основные понятия
Теория игр изучает вопрос о выборе оптимального поведения в конфликтной ситуации. Под конфликтом обычно понимают явление, применительно к которому имеет смысл говорить, кто и как в этом явлении участвует, каковы его возможные исходы, кто в каких исходах заинтересован и в чем состоит эта заинтересованность. Поскольку в конфликтных ситуациях мы, как правило, не располагаем достаточными сведениями о том, что задумал противник, решения в теории игр принимаются в условиях неопределенности.
В зависимости от числа сторон, участвующих в конфликте, различаются игры многих лиц и игры двух лиц (парные игры). Парная игра называется игрой с нулевой суммой, если выигрыш одного игрока равен проигрышу другого.
Стратегией игрока называют систему правил, определяющих его выбор варианта действий при каждом ходе. Стратегия называется оптимальной, если при многократном повторении игры она обеспечивает игроку максимально возможный средний выигрыш (или минимально возможный средний проигрыш). Причем каждый выбор производится при полном незнании выбора другого игрока.
П
ример.
Игра «крестики
– нолики».
1. Пусть x = 53489, y =1762 – стратегии игроков А и В соответственно, тогда ситуация (x, y) определяет ничейный исход.
2. Если x = 53489, y = 1742, то (x, y) – невозможная ситуация.
3
.
Если x
= 15764, y
= 2938, то (x,
y)
– выигрышная для А
ситуация.
Пример.
Предприятие планирует к выпуску новое
изделие. Спрос на это изделие не может
быть точно определен, однако можно
предположить, что его величина
характеризуется тремя возможными
состояниями рынка. С учетом этих состояний
анализируются два возможных варианта
выпуска этого изделия. Каждый из этих
вариантов требует своих затрат и
обеспечивает различный экономический
эффект. Прибыль (тыс. руб.), которую
получает предприятие при каждом варианте
выпуска изделий и соответствующем
состоянии спроса определяется матрицей
Матрица Q называется платёжной матрицей, эта матрица является игровой моделью поставленной задачи.
Требуется найти вариант выпуска, обеспечивающий максимально возможную прибыль.
Решение. Введем два игрока: игрок А – предприятие, игрок В – рынок, от которого зависит спрос и который может навредить прибыли, т. е. налицо конфликтная ситуация.
Тогда задача игрока А выбрать такой способ действий, который бы обеспечил максимальную прибыль.
Стратегии
игрока А
будем обозначать
Они характеризуют вариант выпуска 1-й
или 2-й данного изделия и соответствуют
1-й и 2-й строкам матрицы Q.
Игрок В
выбирает одну из своих возможных
стратегий
,
им соответствуют столбцы матрицы Q.
Игрок В
платит игроку А
сумму, стоящую на пересечении
соответствующих стратегий.
Можно считать, что игрок В всегда платит игроку А. Если игрок А проиграл, то игрок В платит сумму со знаком «–». Задача игрока А – выиграть как можно больше, задача игрока В – проиграть как можно меньше. Игра может повторяться многократно, расчет производится после каждой игры.
Играем
за игрока А.
Игрок А
анализирует
стратегию
в наихудшем случае он выиграет 21,
следовательно, 21 – гарантированный
выигрыш игрока А
при выборе стратегии
аналогично 20 – гарантированный выигрыш
при выборе стратегии
.
Тогда 21
– максимальный
гарантированный выигрыш игрока А.
Очевидно,
,
где
–
элементы платежной матрицы Q.
В
общем случае для любой матрицы Q
обозначим
максимальный гарантированный выигрыш
–
,
тогда
,
где – элементы платежной матрицы Q.
Число
называется
нижней ценой игры, а
соответствующая стратегия,
максиминной.
В нашем примере
–
максиминная стратегия.
Играем
за игрока В.
21 –
гарантированный проигрыш игрока В
при выборе стратегии
,
т.е. в наихудшем случае он проиграет 21;
23 и 24 – гарантированные проигрыши при
стратегиях
и
соответственно. Следовательно,
21
– минимальный
гарантированный проигрыш
игрока В.
В
общем случае:
Число
– минимальный гарантированный проигрыш
игрока В, называется верхней
ценой игры,
а соответствующая стратегия
называется минимаксной.
В нашем примере
– минимаксная стратегия.
Справедлива следующая теорема: нижняя цена игры всегда не превосходит верхней цены, т. е.
Если
,
то число
будем называть ценой
игры. В этом случае игра называется
игрой с
седловой точкой.
В
нашем случае
,
т.е. мы имеем игру с седловой точкой.
Нетрудно заметить (из вида платежной матрицы Q), что в игре с седловой точкой, если игрок А придерживается своей максиминной стратегии, то для игрока В отклонение от его минимаксной стратегии невыгодно (больше проиграет). Итак, если игра содержит седловую точку, то решение игры известно: каждый из игроков должен все время повторять свою максиминную, минимаксную стратегию. В этом случае говорят, что игра решается в чистых стратегиях.
В
нашем примере цена игры
максиминной для игрока А
является стратегия
соответствующая
первому варианту выпуска изделия. Объем
выпуска соответствующий данному
варианту, обеспечивает прибыль в 21 тыс.
руб., при любом состоянии спроса;
минимаксной для игрока В
является стратегия
,
соответствующая первому состоянию
рынка, отклонение игрока В
от этой стратегии увеличит его проигрыш.
Если
платёжная матрица не имеет седловой
точки, т.е.
,
то поиск решения игры приводит к
применению сложной стратегии, состоящей
в случайном применении двух и более
стратегий с определёнными частотами.
Такая сложная стратегия называется
смешанной.