Podstawy Sztucznej Inteligencji
- Kurs: Podstawy Sztucznej Inteligencji (WFAIS.IF-G210.0)
- Prowadzący:
- dr Katarzyna Grzesiak-Kopeć (wykład)
- dr inż. Krzysztof Kutt (laboratorium)
Laboratoria
Nr | Poniedziałki | Wtorki | Materiały |
---|---|---|---|
1. | 04.10.2021 | 05.10.2021 | Wprowadzenie do SI |
2. | 11.10.2021 | 12.10.2021 | Środowisko i sterowanie |
3. | 18.10.2021 | 19.10.2021 | |
4. | 25.10.2021 | 26.10.2021 | Szukanie ścieżek |
5. | 08.11.2021 | 09.11.2021 | |
6. | 15.11.2021 | 16.11.2021 | Drzewa zachowań |
7. | 22.11.2021 | 23.11.2021 | |
8. | 29.11.2021 | 30.11.2021 | Śródsemestralne prezentacje projektów |
9. | 06.12.2021 | 07.12.2021 | Modele regułowe |
10. | 13.12.2021 | 14.12.2021 | |
11. | 20.12.2021 | 21.12.2021 | MiniMax |
12. | 03.01.2022 | 04.01.2022 | |
13. | 10.01.2022 | 11.01.2022 [offline] | Algorytmy genetyczne |
14. | 17.01.2022 | 18.01.2022 | |
15. | 24.01.2022 | 25.01.2022 | Finalne prezentacje projektów |
Zasady zaliczenia
- 100 EXP stanowi 100% łącznej liczby punktów (MAX) z laboratorium. Składają się na to:
- 6x9 EXP - zdobywane podczas laboratoriów (szczegóły przy każdym z laboratoriów)
- Pracujemy samodzielnie albo w parach
- Z każdego laboratorium należy zdobyć min. 1 EXP
- Zadania prezentujemy w czasie laboratorium, albo dosyłamy na maila prowadzącego do 23:59 w dniu w którym odbyło się drugie spotkanie z danego tematu
- W przypadku spóźnienia, punktacja za zadanie wynosi: x*(0.5^n), gdzie n to liczba rozpoczętych tygodni spóźnienia, a x to uzyskana liczba EXP
- 46 EXP - projekt zaliczeniowy
- Cel: Implementacja AI w grze
- Grupy 2-4 osobowe (nie muszą być w obrębie jednej grupy laboratoryjnej)
- Dowolne środowisko, dowolny gatunek
- Własna gra (np. z poprzedniego semestru), bot do istniejącej gry, …
Kilka inspiracji:- Gra sportowa (piłka nożna jest lepsza niż pong)
- RPG (nacisk na ciekawych NPC?)
- RTS (własna prosta gra vs. bot do StarCrafta?)
- Strzelanka (bot do Quake’a?)
- Konieczne:
- Algorytm ustalania ogólnej strategii działania
- Metoda wyboru aktualnej decyzji
- Algorytmy poruszania się (w celu realizacji aktualnej decyzji)
- Oceniane:
- Śródsemestralna prezentacja:
- 10 EXP Przygotowany “szablon” algorytmu - może to być tylko zbiór mockupów (np. funkcja losująca zwracająca zawsze wartość 42), ale działający i pokazujący pomysł
- Finalna prezentacja:
- 12 EXP Dobór algorytmów do zadania (oceniane przez prowadzącego)
- 12 EXP Implementacja (oceniane przez prowadzącego)
- 12 EXP Finalny efekt (złudzenie inteligencji dla gracza/obserwatora) (oceniane przez grupę)
- Dozwolone są dwie nieusprawiedliwione nieobecności.
- Każda kolejna nieobecność skutkuje odjęciem 10 EXP.
- Skala ocen:
- >= 90 EXP – bdb
- >= 80 EXP – db+
- >= 70 EXP – db
- >= 60 EXP – dst+
- >= 50 EXP – dst
- < 50 EXP – ndst
Dowiedz się więcej!
Wiedza
- Red Blob Games – różne algorytmy przedstawione w prosty sposób, bardzo przydatne źródło
- Daniel Shiffman - The Nature of Code (2012)
- O symulowaniu rzeczywistości (dla nas interesujące są m.in. fragmenty o symulacji naturalnego poruszania się)
- Całość dostępna online: https://natureofcode.com/book/
- Kod w Processing: oryginalny, wersja p5.js
- Mat Buckland - Programming Game AI by Example (2004)
p5.js
- Processing - język programowania do “graficznych” zastosowań (również do nauki programowania)
- p5.js - processing w JavaScript:
- WWW: https://p5js.org/
- Dokumentacja: https://p5js.org/reference/
- Edytor online: https://editor.p5js.org/