Metody i kryteria oceniania: |
Na pomyślne zaliczenie przedmiotu składają się ćwiczenia (zaliczenie) oraz egzamin (ocena). Zaliczenie ćwiczeń jest warunkiem koniecznym i dostatecznym dla przystąpienia do egzaminu. Zaliczenie ćwiczeń jest czysto zero-jedynkowe, nie wiąże się ono z żadną dodatkową punktacją, która mogłaby dodatkowo wpłynąć na ostateczną ocenę z przedmiotu.
Istotnymi warunkami dla zaliczenia ćwiczeń jest regularna obecność na ćwiczeniach oraz zaliczenie (zero-jedynkowe) kolokwium, na którym studenci rozwiązują zadania na zastosowanie metod sztucznej inteligencji. Warunkiem dodatkowym lub alternatywnym może być rozwiązywanie prac domowych. Dalsze szczegóły ustalają osoby prowadzące poszczególne grupy ćwiczeniowe.
Uczęszczanie na wykład nie jest obowiązkowe, lecz wskazane dla pełnego zrozumienia materiału. Egzamin ma formę pisemną. Jest złożony z zadań na zastosowanie metod sztucznej inteligencji. Na egzaminie można korzystać z materiałów własnych, ale zadania trzeba rozwiązywać indywidualnie. W terminie poprawkowym egzamin może przyjąć postać egzaminu ustnego.
|
Zakres tematów: |
1. Inteligentne poszukiwanie rozwiązań w przestrzeni stanów (heurystyki zachłanne, algorytm A* etc.) oraz metody iteracyjnego poprawiania działające na przestrzeni rozwiązań (symulowane wyżarzanie, strategie ewolucyjne etc.), ze szczególnym uwzględnieniem problemów optymalizacyjnych z więzami.
2. Strategie w grach dwuosobowych, algorytm minimax, odcięcia alfa-beta, algorytm MCTS (Monte Carlo Tree Search), gry z ograniczoną informacją, dyskusja na temat tego, jak powyższe strategie można implementować w komputerowych realizacjach gier i czy gry to jedyne zastosowania tych metod.
3. Logiczna reprezentacja problemu i wiedzy z nim związanej, rachunek zdań, badanie spełnialności, logika I rzędu, metoda rezolucji, algorytmy forward- i backward-chaining w bazach wiedzy (z uwzględnieniem metod heurystycznych w realizacjach algorytmu backward-chaining), zastosowania logiki w planowaniu (w tym również sprowadzanie zadań planowania do problemu spełnialności), komunikacji w systemach wielo-agentowych, a także w systemach doradczych.
4. Związki uczenia maszynowego z uczeniem indukcyjnym, metody symboliczne (np. wyznaczanie reguł i drzew decyzyjnych z danych) oraz analityczne (np. sztuczne sieci neuronowe), uczenie bez nauczyciela (w tym przykłady związane z analizą skupień i mapami samo-organizującymi się), z nauczycielem i ze wzmocnieniem, zadania uczenia maszynowego jako problemy optymalizacyjne (np. znajdowanie minimalnych drzew decyzyjnych przy użyciu heurystyk oraz uczenie się sztucznych sieci neuronowych technikami iteracyjnego poprawiania rozwiązań, takimi jak propagacja wsteczna błędu i metody ewolucyjne). Także dyskusja o tym, że dziedziny uczenia maszynowego i sztucznej inteligencji nie są ze sobą tożsame, choć wiele mogą od siebie skorzystać (np. w grach etc.).
5. Wybrane podejścia do modelowania niepewności, w tym podstawy modeli probabilistycznych (np. model Naive Bayes, podstawy sieci Bayesowskich, przykłady użycia prawdopodobieństw i entropii w uczeniu maszynowym bazującym na nowoczesnych rozszerzeniach sztucznych sieci neuronowych), teoria i zastosowania logiki rozmytej (np. zastosowania w robotyce) z uwzględnieniem heurystyk do wyznaczania modeli rozmytych z danych, teoria i zastosowania zbiorów przybliżonych (np. zastosowania w analizie danych), wybrane elementy logik wielowartościowych, modalnych, temporalnych.
6. Otwarta dyskusja o obecnych trendach rozwoju i zastosowań sztucznej inteligencji w różnych dziedzinach praktycznych, z uwzględnieniem aspektów współpracy i interakcji pomiędzy ludźmi i systemami inteligentnymi.
|
Metody dydaktyczne: |
Wykład prowadzony na podstawie skryptu / slajdów, z częstym odnoszeniem się do przykładów praktycznych, a także z zachęcaniem słuchaczy do częstych dyskusji w trakcie. Ćwiczenia prowadzone na podstawie skryptu, z naciskiem na aktywność podczas zajęć. Ćwiczenia bazują na opanowaniu materiału poprzez przykłady ilustracyjne i rozwiązywanie zadań, np. zadania związane z projektowaniem heurystyk dla problemów optymalizacyjnych, projektowaniem modeli z zakresu uczenia maszynowego reprezentujących różne zależności w danych wejściowych, z matematycznymi podstawami logik klasycznych i niestandardowych (np. własności operacji w logice rozmytej), wywodzeniem faktów metodami rezolucji, forward-chaining, backward-chaining etc.
|