
- •Введение
- •1 Ход работы
- •1.1 Базовые правила и описание задач
- •1.2 Описание машин
- •1.3 Протагонист и тролль
- •1.4 Реализация противостояния Bard-Clockwork Dragon
- •1.5 Реализация противостояния Bard-Balor
- •1.5 Стратегии с использованием метода Монте-Карло
- •1.6 Анализ логов
- •Заключение
- •Приложение а
- •Карта Барда
- •Приложение б
- •Карта Тролля
- •Приложение в
- •Карта Заводного дракона
- •Приложение г
- •Карта Балора
- •Приложение д
- •Лог партии Бард-Заводной дракон
- •Приложение е
- •Лог партии Бард-Тролль
- •Приложение ж
- •Лог партии Бард-Балор
Министерство науки и высшего образования Российской Федерации
Федеральное государственное бюджетное образовательное учреждение высшего образования
«ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ» (ТУСУР)
Кафедра комплексной информационной безопасности электронно-вычислительных систем (КИБЭВС)
ЗАДАЧА ВЫБОРА СУБОПТИМАЛЬНОЙ СТРАТЕГИИ В ИГРОВОЙ СИТУАЦИИ
Отчет по групповой работе №2
по дисциплине «Моделирование автоматизированных информационных систем»
Вариант 4
Выполнили студенты гр.:
_______
_______
_______
__.__.2024
Руководитель
преподаватель каф. КИБЭВС
_______ Е.А. Прозорова
__.__.2024
Томск 2024
Введение
Целью групповой работы является создание с использованием цветных сетей Петри игровой ситуации, разворачивающейся в соответствии с описанными правилами, а также в выборе стратегии поведения Протагониста, которая обеспечит наиболее высокую вероятность победы в игре.
1 Ход работы
1.1 Базовые правила и описание задач
В качестве датчиков случайных чисел, для определения успешности и количественного эффекта действий персонажей, используется пара костей – основная кость (d20), дополнительная кость (номинал зависит от карты персонажа). Игровая ситуация разворачивается с течением последовательно нумеруемых раундов. Реализация каждого раунда осуществляется в соответствии со следующей процедурой:
Применяются эффекты «Начало раунда» карт персонажей;
Выполняется «бросок» костей каждого из персонажей;
Определяется действие Антагониста (в соответствии с описанным в карте персонажа вероятностным автоматом);
Определяется действие Протагониста (выбор действие должен осуществляться автоматически, с опорой на любую информацию, известную до начала текущего раунда). При выборе действия, должны соблюдаться требования цены;
Применяются эффекты цены действий. Учитываются модификаторы действий для Инициативы, указанной на карточке персонажа.
В соответствии со значением Инициативы (больше – раньше) последовательно для каждого из персонажей сначала вычисляются, а затем применяются эффекты от действий персонажей. Если Инициатива персонажей (после применения модификаторов действий) равна, то первое действие остаётся за персонажем, значение на основной кости которого выше.
В конце раунда производится проверка на наличие победителя. Если оба персонажа оказались поражены в итоге раунда, то победителем считается персонаж с большей Инициативой (без учёта модификатор действия). Если значения Инициативы равны, то победителем считается Протагонист.
Согласно варианту №4, протагонист – Бард (Bard). Антагонисты – Тролль (Troll), Заводной дракон (Clockwork Dragon), Балор (Balor).
Характеристики всех перечисленных персонажей, описание их действий, эффектов, обозначений, а также вероятностные автоматы антагонистов представлены в приложениях А-Г.
1.2 Описание машин
На рисунках 1.1 и 1.2 представлена страница «Main Page», там изображены все исполняемые блоки, начальные характеристики персонажей, бросок кубиков (Roll Dices), определение победителя/проигравшего (Check Winner – Wins/Loses), а также лог матча (Log) и лог рауда (LOGRN).
Рисунок 1.1 – Страница «Main Page» (часть 1)
Рисунок 1.2 – Страница «Main Page» (часть 2)
1.3 Протагонист и тролль
На рисунке 1.3 представлена страница «Begin Round» противостояния Bard-Troll. На данной странице были описаны эффекты «Начало раунда» как для протагониста, так и для антагониста. Зеленым цветом выделен эффект для протагониста, а синим – для антагониста.
Рисунок 1.3 – Страница «Begin Round» Bard - Troll
На рисунке 1.4 представлена страница «Antagonist Acts», в которой происходит выбор действия антагониста в соответствии с вероятностным автоматом, который также описан и показан на данной странице.
Рисунок 1.4 – Страница «Antagonist Acts» для Troll
На рисунке 1.5 представлена страница «Protagonist Acts», в которой, в зависимости от прописанного условия, происходит выбор действия протагониста, а также есть возможность в каждом раунде выбирать действия вручную, чтобы найти лучшую стратегию для максимизации вероятности победы.
Рисунок 1.5 – Страница «Protagonist Acts» Bard - Troll
На рисунках 1.3.6 - 1.3.9 представлена страница «Apply Actions», на которой происходит применение выбранных действий (умений) с учетом их цены и всех возможных условий, а также фиксация характеристик протагониста и антагониста для следующего раунда при наличии HP (очков здоровья).
Рисунок 1.6 – Действия Антагониста (часть 1)
Рисунок 1.7 – Действия Антагониста (часть 2)
Рисунок 1.8 – Действия Протагониста (часть 1)
Рисунок 1.9 – Действия Протагониста (часть 2)
При отсутствии HP у протагониста/антагониста после перехода на страницу «Main Page» определяется победитель. Пример выигрыша протагониста представлен на рисунке 1.10, а пример проигрыша – на рисунке 1.11 с соответствующими логами по каждому раунду.
Рисунок 1.10 – Победа протагониста
Рисунок 1.11 – Поражение протагониста
После создания модели и её успешного тестирования на корректность работы, по заданию необходимо было создать тактику проведения сражения, которая обеспечит протагонисту наиболее высокую вероятность победы.
Для начала была протестирована вероятность победы при использовании протагонистом только P3 (The Musecoming).
На рисунке 1.12 представлена вероятность победы при использовании данной тактики. Лог данного эксперимента представлен в Приложение Е.
Рисунок 1.12 – Вероятность победы при использовании P1 и P3 Bard-Troll
Описание использованной стратегии представлено ниже:
if (#MP protogon > 4) then P3
else P1
Далее была использована стратегия:
if (#MP protogon > 4) then
(if (discrete (1,10)<9) then P3
else P1)
else P1
Отличие данной стратегии в использовании кубика, поэтому способность P3 будет использоваться реже.
На рисунке 1.13 представлена вероятность победы при использовании данной тактики.
Рисунок 1.13 – Вероятность победы Bard-Troll
Из выше представленных стратегий, можно сделать вывод, что в сражении Барда против Тролля вероятность побед больше при использовании его способности P3 (The Musecoming).