![Page 1: Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814089550346895dac13da/html5/thumbnails/1.jpg)
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
![Page 2: Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814089550346895dac13da/html5/thumbnails/2.jpg)
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
![Page 3: Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814089550346895dac13da/html5/thumbnails/3.jpg)
SI w grach - praktyka
• Stworzenie wrażenia realizmu• 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
![Page 4: Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814089550346895dac13da/html5/thumbnails/4.jpg)
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
![Page 5: Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814089550346895dac13da/html5/thumbnails/5.jpg)
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
![Page 6: Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814089550346895dac13da/html5/thumbnails/6.jpg)
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ń
![Page 7: Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814089550346895dac13da/html5/thumbnails/7.jpg)
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”
![Page 8: Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814089550346895dac13da/html5/thumbnails/8.jpg)
Kryteria analizy rozwiązań
• Czas działania
• Wpływ na skomplikowanie gry
• Wpływ na realizm
• Niezawodność realizmu
![Page 9: Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814089550346895dac13da/html5/thumbnails/9.jpg)
Projekt gry
• 2 graczy
• Plansza – siatka odwzorowana na graf
• Obiekty: przeszkoda, zasoby, jednostki, budynki
• Warunek wygranej: zniszczenie budynku przeciwnika
![Page 10: Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814089550346895dac13da/html5/thumbnails/10.jpg)
Technologie
• Strona logiki: Algorytmy • C#
• .Net 3.5
• Strona Wizualna• Unity 3d
• C#
• JavaScript
![Page 11: Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814089550346895dac13da/html5/thumbnails/11.jpg)
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.)
![Page 12: Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814089550346895dac13da/html5/thumbnails/12.jpg)
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.)
![Page 13: Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814089550346895dac13da/html5/thumbnails/13.jpg)
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
![Page 14: Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814089550346895dac13da/html5/thumbnails/14.jpg)
Wykres Ganta
![Page 15: Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil 171016](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814089550346895dac13da/html5/thumbnails/15.jpg)
Wykres Ganta – Zagadnienia SI