Nazwa przedmiotu:
Metody sztucznej inteligencji
Koordynator przedmiotu:
prof. dr hab. inż. Włodzimierz Kasprzak
Status przedmiotu:
Fakultatywny ograniczonego wyboru
Poziom kształcenia:
Studia I stopnia
Program:
Elektronika i Telekomunikacja
Grupa przedmiotów:
przedmioty specjalności
Kod przedmiotu:
MSIZ
Semestr nominalny:
7 / rok ak. 2020/2021
Liczba punktów ECTS:
6
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
Liczba godzin kontaktowych - 25 h, w tym: a) uczestnictwo w zajęciach stacjonarnych - 5 h; b) uczestnictwo w konsultacjach (poprzez Skype) - 6 h; c) uczestnictwo w trzech sprawdzianach - 6 h; d) analiza dokonanej przez nauczyciela oceny trzech sprawdzianów - 3 h; e) analiza dokonanej przez nauczyciela oceny projektu wstępnego - 3 h; f) uczestnictwo w egzaminie - 2 h. Praca własna studenta - 140 h - w tym: a) samodzielne studiowanie materiałów wykładowych - 40 h; b) samodzielne studiowanie i rozwiązywanie zadań z materiałów do ćwiczeń - 40 h; c) wykonanie projektu - 40 h; d) przygotowanie się do egzaminu - 20 h.
Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
1
Język prowadzenia zajęć:
polski
Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
4
Formy zajęć i ich wymiar w semestrze:
  • Wykład30h
  • Ćwiczenia0h
  • Laboratorium0h
  • Projekt30h
  • Lekcje komputerowe0h
Wymagania wstępne:
Student powinien posiadać wiedzę z zakresu przedmiotów podstawowych - analiza matematyczna i matematyka dyskretna, oraz przedmiotów informatycznych z zakresu programowania oraz algorytmów i struktur danych.
Limit liczby studentów:
30
Cel przedmiotu:
Studenci poznają podstawy sztucznej inteligencji - reprezentację wiedzy i procedury wnioskowania w logice, algorytmy przeszukiwania przestrzeni stanów i uczenia wiedzy deterministycznej. Po ukończeniu przedmiotu studenci będą potrafili projektować systemy decyzyjne korzystające z narzędzi, implementujących powyższe metody i algorytmy, a także projektować własne narzędzia informatyczne o podobnym charakterze.
Treści kształcenia:
Wykład 1. Wprowadzenie. Inżynieria wiedzy – reprezentacja i wnioskowanie. Rozwiązywanie problemów poprzez przeszukiwanie i planowanie. Uczenie wiedzy deterministycznej - uczenie z nadzorem i ze wzmocnieniem. 2. Rachunek zdań. Język logiki. Składnia i semantyka rachunku zdań. System wnioskowania – zasady i reguły wnioskowania. Postacie normalne zdań. Procedura wnioskowania przez rezolucję. Procedury wnioskowania „w przód” i wstecz. Własności zmienne w czasie. 3. Logika predykatów. Składnia i semantyka logiki predykatów. Własności wnioskowania. Podstawienie i unifikacja formuł. Eliminacja kwantyfikatorów. Rachunek sytuacji. 4. Wnioskowanie w logice predykatów. Uogólniona reguła odrywania. Wnioskowanie „w przód” i „wstecz” w logice predykatów. Wnioskowanie przez rezolucję. System logicznego wnioskowania. Język PROLOG. 5. Wiedza regułowa i strukturalna. Inżynieria wiedzy. Ontologia – kategorie pojęć. System regułowy. Ramy. Sieci semantyczne. 6. Przeszukiwanie przestrzeni stanów. Schemat przeszukiwania. Strategie ślepego przeszukiwania. 7. Przeszukiwanie poinformowane. Funkcja oceny i strategia „najlepszy najpierw”. Funkcja heurystyczna. Strategia „najbliższy celowi najpierw”. Algorytm A*. Przeszukiwanie drzewa a przeszukiwanie grafu. 8. Losowość w przeszukiwaniu. Algorytm losowego próbkowania. Algorytm błądzenia przypadkowego. Algorytm wspinaczkowy. Symulowane wyżarzanie. Algorytmy ewolucyjne i genetyczne. 9. Gry dwuosobowe. Drzewo gry. Strategia minimaksowa. Przycinanie alfa-beta. Minimaks z obcinaniem. Funkcja oceny stanu gry. 10. Uczenie na podstawie obserwacji. Formy uczenia poprzez indukcję – uczenie klasyfikatora pojęć, grupowanie (tworzenie pojęć), aproksymacja funkcji. Uczenie jako przeszukiwanie przestrzeni hipotez – algorytm CAE. 11. Uczenie się klasyfikacji. Zadanie klasyfikacji. Tworzenie drzewa decyzyjnego. Kryterium wyboru testów. Uczenie funkcji decyzyjnych - maszyna liniowa, klasyfikator SVM. 12. Uczenie się aproksymacji. Zadanie aproksymacji. Regresja liniowa i wielomianowa. Metoda pamięciowa aproksymacji i klasyfikacji - kNN. 13. Sieci neuronowe MLP. Aproksymacja funkcji za pomocą sieci neuronowych. Definicja perceptronu wielowarstwowego MLP. Wpływ wag na jakość aproksymacji. Uczenie sieci MLP – wsteczna propagacja błędu. Ćwiczenia C1. Reprezentacja wiedzy w logice. C2. Wnioskowanie w logice i systemach regułowych. C3. Przeszukiwanie ślepe i poinformowane. C4. Losowość w przeszukiwaniu i gry z przeciwstawnymi celami. C5. Uczenie indukcyjne i uczenie się klasyfikacji. C6. Uczenie się aproksymacji funkcji. Projekt Ten rodzaj kształcenia polega na samodzielnym zaprojektowaniu i implementacji programu rozwiązującego wybrany problem wnioskowania, przeszukiwania lub uczenia z wykorzystaniem algorytmów poznanych podczas zajęć (wykładu i ćwiczeń) z tego przedmiotu.
Metody oceny:
Od każdego studenta wymaga się rozwiązania zadań w ramach trzech sprawdzianów, ocenianych w skali 0-5 p. każdy. Studenci realizują samodzielne projekty, obejmujący udokumentowany projekt wstępny, projekt i implementację programu wraz z dokumentacją końcową (oceniane łącznie w skali 0-35 p.). Końcowy egzamin obejmuje trzy zadania i oceniany jest w skali 0-50 p. Łączna maksymalna liczba punktów wynosi 100. Ocena pozytywna przyznawana jest po uzyskaniu ponad 50 punktów, w tym pozytywnego rozliczenia wykonanego projektu.
Egzamin:
tak
Literatura:
Literatura podstawowa 1. W. Kasprzak: MSI - studia inżynierskie. Materiały do wykładu i ćwiczeń. OKNO PW, 2011, 2014. 2. J. Arabas, P.Cichosz, A. Dydyński: ITO. Akademickie podręczniki multimedialne. Politechnika Warszawska, 2005. Literatura uzupełniająca 3. S. Russell, P. Norvig: Artificial Intelligence: A Modern Approach. Prentice Hall, 1995, 2002, 2010. 4. M. Flasiński: Wstęp do sztucznej inteligencji. Wydawnictwo Naukowe PWN, 2011. 5. W. Traczyk: Inżynieria wiedzy. Exit, Warszawa, 2010.
Witryna www przedmiotu:
https://inz.okno.pw.edu.pl/
Uwagi:
-

Efekty uczenia się

Profil ogólnoakademicki - wiedza

Charakterystyka MSI_W01
ma szczegółową wiedzę w dziedzinie inżynierii komputerowej; ma wiedzę w zakresie metodyki i technik programowania.
Weryfikacja: ocena projektu inżynierskiego, ocena zadań na sprawdzianach i na egzaminie.
Powiązane charakterystyki kierunkowe: K_W04, K_W19
Powiązane charakterystyki obszarowe: I.P6S_WG

Profil ogólnoakademicki - umiejętności

Charakterystyka MSI_U01
ma umiejętność samokształcenia się; potrafi formułować zagadnienia w postaci algorytmicznej i zapisywać algorytmy w językach programowania; potrafi wykorzystać poznane metody i modele matematyczne do analizy systemów automatycznego wnioskowania, przeszukiwania i uczenia się; umie posługiwać się regułami logiki matematycznej w zastosowaniu do systemów z bazą wiedzy, w tym systemów ekspertowych.
Weryfikacja: ocena sprawdzianów, projektu inżynierskiego i egzaminu.
Powiązane charakterystyki kierunkowe: K_U05, K_U15, K_U18, K_U20
Powiązane charakterystyki obszarowe: I.P6S_UU, III.P6S_UW.4.o, I.P6S_UW, III.P6S_UW.1.o

Profil ogólnoakademicki - kompetencje społeczne

Charakterystyka MSI_K01
potrafi odpowiednio określić priorytety służące realizacji określonego przez siebie lub innych zadania; potrafi myśleć i działać w sposób przedsiębiorczy.
Weryfikacja: w ramach konsultacji, zajęć stacjonarnych i oceny wykonania projektu inżynierskiego.
Powiązane charakterystyki kierunkowe: K_K04, K_K06
Powiązane charakterystyki obszarowe: I.P6S_KK, I.P6S_KO