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

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ů.