wykonał Jarosław Orski promotor pracy: mgr Szymon Smaga

Slides:



Advertisements
Podobne prezentacje
Planowanie bezkolizyjnego ruchu w środowisku wielu robotów z wykorzystaniem gier niekooperacyjnych OWD
Advertisements

Zadanie z dekompozycji
Algorytm Dijkstry (przykład)
Inteligencja Obliczeniowa Perceptrony
SCR 2008/2009 – informatyka rok 5. Agenda Wizualizacja agentów (MarketSpace)
Skalowalny algorytm estymacji ruchu dla systemów rozproszonych
Szachy komputerowe. Ogólna idea silnika szachowego.
Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006
Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006
Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil
Analiza porównawcza wybranych metod sztucznej inteligencji w komputerowych grach strategicznych Comparative analysis of artificial iteligece methods applied.
Rozpoznawanie obrazów
Eliminacja powierzchni niewidocznych Wyznaczanie powierzchni widocznych Które powierzchnie, krawędzie i punkty są widoczne ze środka rzutowania (albo wzdłuż.
SPECJALNOŚĆ: Interaktywna Grafika Trójwymiarowa
Magda Kusiak Karol Walędzik prof. dr hab. Jacek Mańdziuk
Instytut Informatyki Teoretycznej i Stosowanej Polskiej Akademii Nauk Gliwice, ul. Bałtycka 5, Protokół TCP – kształtowanie.
Wyższa Szkoła Informatyki I Zarządzania W Bielsku-białej
Warszawska Wyższa Szkoła Informatyki Warszawa 2008
Modele baz danych - spojrzenie na poziom fizyczny
Autor: Maciej Piwowarczyk
Przegląd ważniejszych bibliotek używanych przy projekcie Quall.
Autor: Maciej Piwowarczyk
Temat: Symulacje komputerowe lotu helikoptera w języku Java
Temat: Symulacje komputerowe lotu helikoptera w języku Java
Temat: Symulacje komputerowe lotu helikoptera w języku Java
Temat: Symulacje komputerowe lotu helikoptera w języku Java
Temat: Symulacje komputerowe lotu helikoptera w języku Java
PROJEKT GRUPOWY SYSTEM ANTYKOLIZYJNY DLA ROBOTÓW PRZEMYSŁOWYCH Grupa: P. Bocian K. Czułkowski A. Hryniewicz opiekun: mgr inż. Piotr Fiertek.
Spis treści Możliwości biblioteki logiczno-fizycznej
Modelowanie zorientowane agentowo
C.d. wstępu do tematyki RUP
Gra Scrabble ® na urządzenie Nokia N800 Autor: Michał Filipowicz Promotor: dr inż. Jerzy Zaczek Konsultant: mgr inż. Krzysztof Rzecki.
Piotr Rybiński. 1. Wstęp 2. Opis systemu i narzędzi 3. Algorytm 4. Przykłady działania 5. Porównanie z rzeczywistym systemem rozwoju 6. Rozszerzenia systemu,
Algorytm mini-max.
Sztuczne Sieci Neuronowe
Multiagent Simulator Ogólny symulator multiagentowy do modelowania zachowań tłumu Piotr Jakubas Artur Kosztyła Koło Naukowe „Glider” Kraków,
Nauki ścisłe vs. złożoność świata przyrody
AI w grach komputerowych
Modelowanie elementów świata 3D przy użyciu biblioteki Managed Directx
Wykorzystanie mechanizmu delegata do emulacji struktury i zachowania widżetów w architekturze Model/Widok biblioteki Qt4 Wytłumaczyc temat: Ja: W bibliotekach.
Komputerowe wspomaganie pracy inżyniera
Promotor dr inż. Mariusz Gola Wykonał Rafał Bajno
Topologie sieci lokalnych.
Farseer Physics Engine. Farseer Physics Engine jest silnikiem fizycznym napisanym dla platformy.NET. Został on zainspirowany przez silnik Box2D znany.
Rozwiązanie zadań do zaliczenia I0G1S4 // indeks
Zarządzanie Projektami
Promotor: dr inż. Leszek Koszałka Autor: Markuszewski Kamil
SYSTEMY EKSPERTOWE I SZTUCZNA INTELIGENCJA
Architektura współczesnych gier video Adam Sawicki asawicki.infoasawicki.info
Grafika Komputerowa i wizualizacja
Działalność gospodarcza: przychody i koszty
Adaptacyjne Systemy Inteligentne Maciej Bielski, s4049.
4 lipca 2015 godz pok września 2015 godz pok. 212.
Warstwowe sieci jednokierunkowe – perceptrony wielowarstwowe
SZTUCZNA INTELIGENCJA
Grafika komputerowa.
Zarządzanie projektami
WYSZUKIWANIE I OPTYMALIZACJA TRAS DLA URZĄDZEŃ MOBILNYCH ANDROID W OPARCIU O SIEĆ/GRAF DOSTĘPNYCH DRÓG Piotr Dąbrowski, Tomasz Pyśk, Piotr Wojciechowski.
TOPOLOGIE SIECI. Topologia sieci- określa sposób połączenia urządzeń sieciowych ze sobą. Najbardziej znane topologie:  Topologia magistrali  Topologia.
Projekt i implementacja symulatora żaglówki z wykorzystaniem biblioteki DirectX Promotor: dr hab. prof. WWSI Grabowski Michał Dyplomant: Radosław Czebreszuk.
1.problem próbkowania (sampling problem) dobór charakterystycznych punktów powierzchni w celu uzyskania najlepszego efektu przy minimalizacji ilości danych.
Zastosowanie narzędzi pracujących w środowisku 3D do animacji postaci.
Topologie fizyczne i logiczne sieci
Sztuczne Sieci Neuronowe
Zarządzanie projektami
Podstawy Automatyki Człowiek- najlepsza inwestycja
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Systemy eksperckie i sztuczna inteligencja
Inteligencja Obliczeniowa Perceptrony
Modele baz danych - spojrzenie na poziom fizyczny
Zapis prezentacji:

wykonał Jarosław Orski promotor pracy: mgr Szymon Smaga “Analiza i implementacja wybranych algorytmów sztucznej inteligencji w grze komputerowej” wykonał Jarosław Orski promotor pracy: mgr Szymon Smaga

Agenda Cele pracy Założenia gry, wymagania dla AI Wybrane algorytmy i ich warianty A*, metody podziału przestrzeni poszukiwań FSM i NFA Implementacja Engine graficzny Implementacja algorytmów Możliwy rozwój projektu Prezentacja aplikacji

Cele Pracy Zbadanie i zaimplementowanie wybranych algorytmów AI w grze komputerowej Zbadanie współpracy platformy .NET i języka C# z otwartą bilblioteką OpenGL (Tao) Zbadanie wydajności C# jako narzędzia do tworzenia trójwymiarowych gier komputerowych

Założenia gry Pojedynek dwóch czołgów na wirtualnym polu walki Każdy posiada pewną prędkość poruszania się, ostrzału i poziom energii Trafienie przeciwnika zmniejsza poziom energii Jej poziom można odnowić wracając do bazy własnej W sytuacji awarynej można użyć dopalacza Zwycięża czołg, który pozbawi przeciwnika całej energii

Wymagania dla AI Poruszanie się po planszy gry Omijanie przeszkód Możliwość badania otoczenia Reakcja na zmianę warunków Podejmowanie decyzji na podstawie odbieranych sygnałów Wybrane algorytmy: A*, FSM

Wybrane algorytmy: A* Popularny algorytm wyszukiwania ścieżki Przeszukuje przestrzeń stanów i wybiera optymalny z uwagi na koszt ruchu Koszt całkowity = koszt dotychczasowy + estymacja kosztu do celu Szybkość działania, wybór stanu sąsiedniego, estymacja kosztu docelowego zależą od sposobu podziału przestrzeni

A*: siatka prostokątna Obszar gry podzielony równomiernie w kierunku x i y Sąsiad = węzeł o indeksie różnym o 1 Estymacja kosztu do celu metodą Manhattan + Naturalność podziału + Łatwość analizy i wykrywania błędów - Liczne stany nadmiarowe - Trudność doboru rozmiaru siatki - Konieczność oznaczenia stanów zabronionych

A*: punkty widoczności Węzły wyznaczone przez wypukłe wierzchołki przeszkód (+ margines na obrót obiektu) Sąsiad wyznaczony przez linię widoczności Estymacja kosztu docelowego przez różnicę współrzędnych + Zmniejszona ilość węzłów, krótszy czas przeszukiwania + Niezależność od wielkości obiektów - Trudniesze wyznaczenie sąsiednich węzłów - Trudniejsze pozycjonowanie węzłów - Trudniejsza analiza

Automat skończony Dokładniej: Automat o skończonej liczbie stanów Algorytm podejmowania decyzji na podstawie dostępnych informacji Zmiana stanu obiketu na podstwie docierającego sygnału i bieżącego stanu

FSM – automat deterministyczny Stałe przejście na podstawie danego sygnału + Zwarty zapis (w postaci tablicy) + Duża szybkość - Przewidywalność “zachowań” - Mała elastyczność (brak mechanizmów uczenia się)

NFA – automat niedeterministyczny Z danym sygnałem związane drzewo przejść Wybór danej gąłęzi losowy +Nieprzewidywalność “zachowań” - Złożony zapis - Trudniejsza analiza

Implementacja Silnik graficzny: Detekcja kolizji Oparty na OpenGL (Tao) i C# Ładowanie modeli w formacie 3DS Prosty system cząsteczkowy Podstawowy pomiar wydajności: fps Możliwość modyfikacji niektórych parametrów renderingu (przezroczystość, oświetlenie) w trakcie pracy aplikacji Detekcja kolizji Oparta na OBB

Implementacja AI Podsystem AI Możliwość wyboru trybu pracy (wariantu) zaimplementowanych algorytmów Wizualizacja pracy Sygnały przekazywane z wykorzystaniem mechanizmu zdarzeń

Sharp Tankz W pełni obiektowa (C#) Główne klasy: SharpGLEngine – silnik graficzny SharpAIEngine – implementacja AI Agent – obiekt widoczny na ekranie

Podsumowanie Cele osiągnięto A* jest skutecznym algorytmem w zadanych warunkach prawidłowo wyznacza optymalną drogę duża szybkość wyszukiwania (szczególnie dla podziału punktami widoczności) FSM sprawdzają się w kontroli agenta szybkość działania, różnorodnośc zachowań, nieprzewidywalność (NFA) C# dobrze współpracuje z OpenGL wystarczająca wydajność (ok. 200 fps, GF4200) brak problemów z kompatybilnością

Możliwości rozwoju projektu Rozwój systemu AI – algorytmy samouczące się (sieci neuronowe) Rozwój silnika graficznego – uszczegółowienie modeli, opracowanie tekstur, dodatkowe efekty Rozwój pozostałych podsystemów – dodanie obsługi dźwięku, gra wieloosobowa przez LAN Prezentacja: Sharp Tankz