
- •Теория принятия решений
- •1. Элементы теории игр
- •1.1 Основные понятия
- •1.2 Матричные игры
- •1.3 Принцип минимакса. Седловые точки
- •1.4 Смешанные стратегии
- •1.5 Пример полного решения матричной игры
- •1.6 Задания по теории игр
- •2. Задача о назначениях
- •2.1 Содержательная постановка
- •2.2 Математическая модель
- •2.3 Венгерский метод для задачи о назначениях
- •2.4 Алгоритм венгерского метода
- •2.5 Пример решения задачи о назначениях венгерским методом
- •2.6 Задания по задаче о назначениях
- •3. Задача о коммивояжере
- •3.1 Постановка задачи
- •3.2 Математическая модель
- •3.3 Метод ветвей и границ
- •3.4 Метод ветвей и границ для решения задачи коммивояжера
- •3.5 Пример решения задачи коммивояжера
- •3.6 Задания по задаче о коммивояжере
- •4. Динамическое программирование
- •4.1 Построение модели дп
- •4.2 Построение вычислительной схемы дп
- •4.3 Несколько замечаний к методу дп
- •4.4 Задача о распределении ресурсов
- •4.5 Пример решения задачи о распределении ресурсов
- •4.6 Задания по задаче о распределении ресурсов
- •4.7 Задача о замене оборудования
- •4.8 Пример решения задачи о замене оборудования
- •4.9 Задания по задаче о замене оборудования
- •Библиографический список
Федеральное агентство по образованию
Государственное образовательное учреждение высшего профессионального образования
«Омский государственный технический университет»
Теория принятия решений
Сборник заданий
для практических занятий
Омск 2006
Составители: А.В. Зыкина, О.Н. Канева
Кафедра «Автоматизированные системы обработки информации и управления»
Для студентов специальности 230102 и направления 230100
Печатается по решению редакционно-издательского совета ОмГТУ
Учебно-методическое пособие предназначено для обеспечения заданиями практических занятий по дисциплине «Теория принятия решений». Кроме того, это пособие можно использовать в качестве установочного материала студентам, использующим дистанционные технологии обучения. В сборнике кроме заданий по темам соответствующих занятий приведены краткие теоретические результаты, рекомендации к их освоению и примеры решения типовых задач.
Первый раздел – элементы теории игр. Здесь рассмотрены основные понятия теории, более подробно излагается матричная игра, кроме того, для решения матричной игры необходимо знание симплекс-метода (для повторения симплекс-метода можно обратиться к методичке [4]).
Второй раздел посвящен задаче о назначениях: приводится математическая модель, вводятся необходимые для решения задачи понятия, излагается алгоритм венгерского метода для решения задачи.
В третьем разделе изложена задача о коммивояжере: приводится математическая модель, вводятся необходимые для решения задачи понятия, приводится алгоритм метода ветвей и границ для решения задачи коммивояжера.
Четвертый раздел содержит классический подход к решению непрерывной задачи динамического программирования. Рассматриваются две содержательные задачи динамического программирования: задача о распределении ресурсов и задача о замене оборудования.
1. Элементы теории игр
1.1 Основные понятия
Теория игр – это особый раздел исследования операций, в котором изучаются математические модели принятия оптимальных решений в условиях конфликта. Под конфликтом обычно понимают любое явление, применительно к которому имеет смысл говорить, кто и как в этом явлении участвует, каковы его возможные исходы, кто в этих исходах заинтересован и в чем состоит эта заинтересованность. Важно отметить, что приведенная формулировка весьма универсальна и охватывает не только конфликты между участниками так называемых салонных игр (шахматы, шашки, карточные игры и т.д.), но и экономические столкновения интересов различных фирм в условиях конкуренции, а также военные конфликты.
В зависимости от числа сторон, участвующих в конфликте, различают игры многих лиц и игры двух лиц (парные игры). Мы будем рассматривать только парные игры. Конфликтующие стороны назовем игроками и обозначим их цифрами I и II (это могут быть и команды).
Игра состоит из последовательности ходов. Стратегией игрока называют систему правил, определяющих его выбор варианта действия при каждом ходе. В большинстве игр игрок принимает решение о своем очередном ходе перед самым этим ходом или на несколько ходов вперед. Иначе и не может быть, поскольку в таких играх, как шахматы, число возможных ходов в большинстве позиций очень велико, и это не дает возможности игрокам заранее спланировать все свои действия от начала до конца. Однако с теоретической точки зрения ничто не мешает нам предполагать, что уже до начала игры каждый игрок решил, как он будет играть в любой позиции. Таким образом, мы предполагаем, что каждый игрок выбирает стратегию еще до начала игры.
Множества стратегий
игроков I
и II
будем обозначать буквами X
и Y
соответственно. Пусть игрок I
выбрал стратегию
,
а игрок II
– стратегию
.
Комбинация этих стратегий (x,y)
называется ситуацией. Некоторые
комбинации стратегий могут оказаться
несовместимыми, и в этом случае говорят
о невозможной ситуации.
Пример 1.1. Игра «Крестики-нолики».
Имеется поле размером
3
3,
клетки поля пронумерованы числами
1,…,9. Игрок I
делает ход первым, ставя крестик в одну
из свободных клеток. Игрок II
играет ноликами. Максимальное число
ходов в одной партии – 9 (5 ходов игрока
I
и 4 хода игрока II).
Таким образом, любую стратегию x
игрока I
можно закодировать набором
,
где
,
,
– номер клетки, занятой крестиком при
i-м
ходе. Аналогично любая стратегия y
игрока II
есть набор
.
Пусть x =53489, y =1762. Тогда ситуация (x,y) определяет ничейный исход (показано на рис. 1,a). Если же x =53489, а y =1742, то ситуация (x,y) невозможна: игрок II не может своим третьим ходом поставить нолик в клетку 4, так как она уже занята крестиком (рис 1,б).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
а)
б)
Рис. 1
По количеству возможных стратегий игроков игры делятся на конечные и бесконечные.
Заинтересованность
игроков в исходах игры проявляется в
том, что каждый из них предпочитает одни
ситуации другим. Чаще всего отношение
предпочтения задается с помощью функций
выигрыша, определенных на множестве
ситуаций. Обозначим через
(x,y)
– выигрыш игрока I
в ситуации (x,y).
Таким образом,
(x,y)
– это тот выигрыш (количество очков,
сумма денег и т. д.), на который может
рассчитывать игрок I,
если он выберет стратегию
,
а его соперник – стратегию
.
Аналогично определяется функция выигрыша
(x,y)
игрока II.
Далее мы будем рассматривать игры с нулевой суммой, когда (x,y)+ (x,y)=0, то есть (x,y) =- (x,y) для любых и . В таких играх выигрыш одного игрока одновременно является проигрышем другого, и мы можем рассматривать его как платеж проигравшего победителю.