Detail předmětu
Funkcionální programování a jazyk Lisp
FSI-VFL Ak. rok: 2018/2019 Letní semestr
Předmět je věnován následujícím tématům: Principy funkcionálního programování. Jazyk Lisp: základní vlastnosti, datové typy, programové struktury, vyhodnocování symbolických výrazů, funkce a makra. Příklady řešení problémů umělé inteligence v Lispu.
Jazyk výuky
čeština
Počet kreditů
2
Garant předmětu
Zajišťuje ústav
Výsledky učení předmětu
Studenti získají znalost stylu funkcionálního programování a budou schopni aplikovat Lisp na řešení problémů umělé inteligence.
Prerekvizity
Základy umělé inteligence a expertních systémů.
Plánované vzdělávací činnosti a výukové metody
Předmět je vyučován formou cvičení zaměřených na praktické používání jazyka Lisp.
Způsob a kritéria hodnocení
Požadavky pro zápočet: aktivní účast ve cvičeních, zpracování projektu v Lispu.
Učební cíle
Cílem předmětu je seznámit studenty s neimperativními přístupy k řešení problémů a prohloubit jejich znalosti principů metod umělé inteligence.
Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky
Účast ve cvičeních je povinná. Zameškaná výuka může být nahrazena vypracováním zadaných úloh.
Použití předmětu ve studijních plánech
Program M2I-P: Strojní inženýrství, magisterský navazující
obor M-AIŘ: Aplikovaná informatika a řízení, volitelný (nepovinný)
Typ (způsob) výuky
Cvičení s počítačovou podporou
26 hod., povinná
Vyučující / Lektor
Osnova
1. Úvod do funkcionálního programování, jazyky Hope a Haskell.
2. Jazyky Miranda a F#.
3. Seznámení s implementacemi jazyka Lisp, základní funkce, definice funkcí.
4. Funkce pro zpracování seznamů a čísel, predikátové a vyhodnocovací funkce.
5. Definice rekurzívních funkcí.
6. Koncová rekurze a iterace.
7. Lambda výrazy, mapovací funkcionály, definice maker.
8. Modifikace struktur, reprezentace atomů.
9. Vstupní a výstupní funkce.
10. Strategie prohledávání stavového prostoru.
11. Reprezentace znalostí, strojové učení.
12. Implementace expertního systému.
13. Vyhodnocení semestrálních projektů.