Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016 Analiza porównawcza wybranych metod sztucznej inteligencji w komputerowych grach strategicznych Comparative analysis of artificial iteligece methods applied to strategy games Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016
Komputerowe gry strategiczne Początki Kartka i ołówek – gra turowa Aktualnie Komputerowe gry strategiczne Turowe lub czasu rzeczywistego (RTS) Rywalizacja dwóch lub więcej graczy W moim projekcie: Gra turowa Rozgrywka na siatce złożonej w kwadratów Gracz przeciwko SI
SI w grach - praktyka Stworzenie wrażenia realizmu Sterowanie NPC NPC ma swoją wiedze i nie może poza nią wykroczyć Wszelkie zdarzenia muszą być racjonalne Sterowanie NPC Ludzkie zachowania i cechy Symulacja rozmowy Nastawienie do gracza Cele, priorytety (działania strategiczne, taktyczne i operacyjne) Zachowanie Wrażenie inteligencji Algorytmy stadne
SI w grach - praktyka Komentowanie wydarzeń Wspomaganie decyzji gracza Proponowanie kilku sensownych rozwiązań spośród wielu Algorytmy grafowe Rozmieszczenie graczy, NPC, obiektów na planszy Wyszukiwanie najkrótszej drogi Definiowanie celów w oparciu o odległości Sztuczne sieci neuronowe Uczenie NPC w oparciu o rozwiązania używane przez gracza Szukanie optymalnych taktyk
Cele Wybór problemów do analizy Implementacja rozwiązań Propozycja własnych modyfikacji Porównanie rozwiązań, efektywności algorytmów Stworzenie prostej gry strategicznej
Sztuczna inteligencja Co postanowiłem poruszyć: Szukanie ścieżki (algorytmy ewolucyjne, operacje na grafach) Logika rozmyta i automaty stanów skończonych (cele i zachowania) Drzewa decyzyjne (wybór taktyki) Wspomaganie decyzji Sterowanie Czym się nie zajmę: Sztuczne sieci neuronowe Naśladowanie zachowań
Sztuczna inteligencja Co postanowiłem poruszyć: Szukanie ścieżki Przekształcanie siatki na graf (różne metody) Algorytm A* i jego modyfikacje Najkrótsza droga (różna wydajność) Logika rozmyta i Automaty stanów skończonych Cele i ocena stanu „agentów” Nasłuchiwanie, a komunikaty Drzewa decyzyjne Zastosowanie w wyborze optymalnej taktyki operacyjnej Ograniczony stan wiedzy Uwzględnienie w grafach ograniczonej wiedzy Algorytmy stadne Na przykładzie „agentów neutralnych”
Kryteria analizy rozwiązań Czas działania Wpływ na skomplikowanie gry Wpływ na realizm Niezawodność realizmu
Projekt gry 2 graczy Plansza – siatka odwzorowana na graf Obiekty: przeszkoda, zasoby, jednostki, budynki Warunek wygranej: zniszczenie budynku przeciwnika
Technologie Strona logiki: Algorytmy Strona Wizualna C# .Net 3.5 Unity 3d JavaScript
Bibliografia: SI w grach Perełki programowania gier. Vademecum profesjonalisty. Dante Treglia, Mark DeLoura. Tom 1. http://aigamedev.com/ Forum, artykuły, gotowe rozwiązania (ang.) http://www.gameai.com/ Lista dyskusyjna, zbiór publikacji (ang.)
Bibliografia: Unity 3d Unity 3D Game Development by Example Beginner's Guide - Ryan Creighton (ang.) Unity Game Development Essentials - Will Goldstone (ang.) unity3d.com/ Unity: Game Development Tool (ang.) unity3d.com/support/documentation/ScriptReference/index.html (ang.) unity3d.com/support/documentation/Manual/index.html (ang.)
Bibliografia: Algorytmy Grafy, drzewa, algorytmy genetyczne Algorytmy i struktury danych - Alfred V. Aho, John E. Hopcroft, Jeffrey D. Ullman P# http://zine.net.pl/blogs/mgrzeg/archive/2007/04/10/psharpintro.aspx Algorytmy stadne http://zsi.ii.us.edu.pl/~mboryczka/IntStad/ http://zsi.ii.us.edu.pl/~mboryczka/materialy.html
Wykres Ganta
Wykres Ganta – Zagadnienia SI