Detail předmětu

Jazyky pro umělou inteligenci

FSI-VJUAk. rok: 2011/2012

Předmět je věnován následujícím tématům: Principy funkcionálního a logického programování. Jazyk Lisp: základní vlastnosti, datové typy, programové struktury, vyhodnocování symbolických výrazů, funkce a makra. Jazyk Prolog: základní pojmy, datové typy, klauzule, unifikace termů, řízení výpočtu, vestavěné predikáty. Příklady řešení problémů umělé inteligence v Lispu a Prologu.

Jazyk výuky

čeština

Počet kreditů

5

Výsledky učení předmětu

Studenti získají znalost stylů funkcionálního a logického programování a budou schopni aplikovat Lisp a Prolog na řešení problémů umělé inteligence.

Prerekvizity

Matematická logika, základy umělé inteligence a expertních systémů.

Plánované vzdělávací činnosti a výukové metody

Metody vyučování závisejí na způsobu výuky a jsou popsány článkem 7 Studijního a zkušebního řádu VUT.

Způsob a kritéria hodnocení

Požadavky pro zápočet: aktivní účast ve cvičeních, zpracování dvou projektů (v Lispu a v Prologu).
Zkouška: písemný test (příklady a otázky), ústní zkouška.

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

Kontrolována je účast ve cvičeních. Zameškaná výuka může být nahrazena vypracováním zadaných úloh.

Základní literatura

Koschmann, T. The Common Lisp Companion. New York, John Wiley & Sons 1990.
Bratko, I. Prolog Programming for Artificial Intelligence. Pearson Education 2011.
Luger, G.F. Artificial Intelligence. Structures and strategies for Complex Problem Solving. Harlow, Addison-Wesley 2008.

Doporučená literatura

Kolář, J. Jazyky pro umělou inteligenci. Skripta. Praha, ČVUT 1994.
Molnár, L., Návrat, P. Programovanie v jazyku Lisp. Bratislava, Alfa 1988.
Polák, J. Prolog. Praha, Grada 1992.
Seibel, P. Practical Common Lisp. Apress, 2005. http://www.gigamonkeys.com/book/
Merrit, D. Building Expert Systems in Prolog. Berlin, Springer-Verlag 1989. http://www.amzi.com/ExpertSystemsInProlog/index.htm

Zařazení předmětu ve studijních plánech

  • Program M2I-P magisterský navazující

    obor M-AIŘ , 1. ročník, letní semestr, volitelný (nepovinný)
    obor M-AIŘ , 2. ročník, letní semestr, povinný

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

1. Funkcionální programování. Jazyk Lisp - struktura programu, typy dat.
2. Základní funkce, definice funkcí, mechanismus vyhodnocování.
3. Funkce pro zpracování seznamů a čísel, predikáty, vyhodnocovací funkce.
4. Iterace, mapovací funkcionály, definice a vyhodnocení maker.
5. Modifikace struktur, reprezentace atomů, vstup a výstup, správa paměti.
6. Příklady aplikací jazyka Lisp na řešení problémů umělé inteligence.
7. Logické programování. Jazyk Prolog - struktura programu, datové objekty.
8. Deklarativní a procedurální sémantika programu, zpracování seznamů a čísel.
9. Operátorová notace, typové a meta-logické predikáty, rozklad a vytváření termů.
10. Řez, negace, práce s databází.
11. Vstup a výstup, navracení a predikát repeat.
12. Tvorba expertních systémů v Prologu.
13. Příklady aplikací jazyka Prolog na řešení dalších problémů umělé inteligence.

Cvičení s počítačovou podporou

26 hod., povinná

Vyučující / Lektor

Osnova

1. Seznámení s implementacemi jazyka Lisp.
2. Definice funkcí pro zpracování seznamů.
3. Koncová rekurze, iterace, definice maker.
4. Strategie prohledávání stavového prostoru.
5. Reprezentace znalostí, strojové učení.
6. Implementace expertního systému v Lispu.
7. Seznámení s implementacemi jazyka Prolog.
8. Úlohy na zpracování seznamů a čísel.
9. Strategie prohledávání.
10. Plánovací úlohy.
11. Reprezentace znalostí, strojové učení.
12. Implementace expertního systému v Prologu.
13. Vyhodnocení semestrálních projektů.