Umělá inteligence
6. Umělá inteligence
Garantující pracoviště: Katedra teoretické informatiky a matematické logiky
Oborový garant: Prof. RNDr. Roman Barták, Ph.D.
Zaměření:
- – inteligentní agenti
- – strojové učení
- – robotika
Absolvent oboru Umělá inteligence dokáže aplikovat a dále rozvíjet různé techniky návrhu inteligentních systémů, jako je automatické řešení úloh, řízení autonomních agentů (jak virtuálních, tak fyzických), plánování, strojové učení a dolování dat. Je schopen analyzovat a formálně popsat komplexní rozhodovací problém, navrhnout vhodnou řešící techniku a tuto techniku také implementovat.
Povinné předměty
kód | Předmět | Kredity | ZS | LS | |
NTIN090 | Základy složitosti a vyčíslitelnosti | 5 | 2/1 Z+Zk | — | |
NTIN066 | Datové struktury I | 5 | 2/1 Z+Zk | — | |
NMAI060 | Pravděpodobnostní metody | 3 | 2/0 Zk | — | |
NAIL070 | Umělá inteligence II | 3 | — | 2/0 Zk | |
NSZZ023 | Diplomová práce I | 6 | 0/4 Z | 0/4 Z | |
NSZZ024 | Diplomová práce II | 9 | 0/6 Z | 0/6 Z | |
NSZZ025 | Diplomová práce III | 15 | 0/10 Z | 0/10 Z |
Povinně volitelné předměty
Je požadováno splnění povinně volitelných předmětů z následujícího seznamu v rozsahu alespoň 60 kreditů:
kód | Předmět | Kredity | ZS | LS | |
NAIL002 | Neuronové sítě | 9 | 4/2 Z+Zk | — | |
NAIL013 | Aplikace teorie neuronových sítí | 3 | — | 2/0 Zk | |
NAIL060 | Implementace neuronových sítí I | 6 | 2/2 Z+Zk | — | |
NAIL021 | Booleovské funkce a jejich aplikace | 3 | 2/0 Zk | — | |
NAIL022 | Metody logického programování | 3 | 2/0 Zk | — | |
NAIL025 | Evoluční algoritmy I | 6 | 2/2 Z+Zk | — | |
NAIL086 | Evoluční algoritmy II | 6 | — | 2/2 Z+Zk | |
NAIL028 | Úvod do robotiky | 6 | 2/2 Z+Zk | — | |
NAIL029 | Strojové učení | 3 | — | 2/0 Zk | |
NAIL004 | Seminář z umělé inteligence I | 3 | 0/2 Z | — | |
NAIL052 | Seminář z umělé inteligence II | 3 | — | 0/2 Z | |
NAIL061 | Seminář z mobilní robotiky | 3 | — | 0/2 Z | |
NAIL065 | Evoluční robotika | 5 | — | 2/1 Z+Zk | |
NAIL068 | Umělé bytosti | 6 | — | 2/2 Z+Zk | |
NAIL069 | Umělá inteligence I | 5 | 2/1 Z+Zk | — | |
NAIL071 | Plánování a rozvrhování | 3 | — | 2/0 Zk | |
NAIL073 | Robot I | 3 | 0/2 Z | — | |
NAIL074 | Robot II | 3 | — | 0/2 Z | |
NAIL076 | Logické programování I | 3 | 2/0 Zk | — | |
NAIL077 | Logické programování II | 3 | — | 2/0 Zk | |
NAIL078 | Lambda-kalkulus a funkcionální programování I | 5 | 2/1 Z+Zk | — | |
NAIL087 | Informatika a kognitivní vědy I | 6 | 3/1 Z+Zk | — | |
NAIL088 | Informatika a kognitivní vědy II | 6 | — | 3/1 Z+Zk | |
NAIL094 | Rozhodovací procedury a verifikace | 6 | — | 2/2 Z+Zk | |
NAIL101 | Pravděpodobnostní robotika | 6 | — | 2/2 Z+Zk | |
NAIL104 | Pravděpodobnostní grafické modely | 3 | 2/0 Zk | — | |
NAIL105 | Internet a klasifikační metody | 3 | — | 1/1 Z+Zk | |
NAIL106 | Multiagentní systémy | 6 | — | 2/2 Z+Zk | |
NAIL107 | Strojové učení v bioinformatice | 6 | — | 2/2 Z+Zk | |
NAIL108 | Mobilní robotika | 3 | — | 1/1 KZ | |
NAIL116 | Sociální sítě a jejich analýza | 6 | 2/2 Z+Zk | — | |
NDBI023 | Dobývání znalostí | 9 | — | 4/2 Z+Zk | |
NDBI031 | Statistické metody v systémech pro dobývání znalostí z dat | 3 | 1/1 Z+Zk | — | |
NMAI061 | Metody matematické statistiky | 5 | — | 2/1 Z+Zk | |
NMAI067 | Logika v informatice | 3 | 2/0 Zk | — | |
NOPT021 | Teorie her | 3 | 2/0 Zk | — | |
NOPT042 | Programování s omezujícími podmínkami | 6 | 2/2 Z+Zk | — | |
NPFL067 | Statistické metody zpracování přirozených jazyků I | 6 | 2/2 Z+Zk | — | |
NPFL068 | Statistické metody zpracování přirozených jazyků II | 6 | — | 2/2 Z+Zk | |
NPFL097 | Vybrané problémy ve strojovém učení | 3 | 0/2 Z | — | |
NPFL104 | Metody strojového učení | 5 | — | 1/2 Z+Zk | |
NPGR001 | Autonomní robotika | 5 | 2/2 Z+Zk | — | |
NPRG023 | Softwarový projekt | 9 | 0/6 Z | 0/6 Z | |
NPRG027 | Zápočet k projektu | 6 | 0/4 Z | 0/4 Z | |
NPRG037 | Programování mikrokontrolerů | 6 | 2/2 Z+Zk | — | |
NSWE001 | Vestavěné systémy a systémy reálného času | 6 | — | 2/2 Z+Zk | |
NSWI054 | Softwarové inženýrství pro spolehlivé systémy | 3 | — | 0/2 Z | |
NPFL114 | Hluboké učení | 7 | — | 3/2 Z+Zk |
Doporučené volitelné předměty
kód | Předmět | Kredity | ZS | LS | |
NAIL015 | Implementace neuronových sítí II | 6 | — | 2/2 Z+Zk | |
NAIL031 | Reprezentace booleovských funkcí | 3 | — | 2/0 Zk | |
NAIL079 | Lambda-kalkulus a funkcionální programování II | 5 | — | 2/1 Z+Zk | |
NAIL110 | Praktikum z robotiky | 6 | — | 1/3 KZ | |
NPFL038 | Základy rozpoznávání a generování mluvené řeči | 6 | 2/2 Z+Zk | — | |
NPFL054 | Úvod do strojového učení | 5 | 2/2 Z+Zk | — | |
NPFL079 | Algoritmy rozpoznávání mluvené řeči | 6 | — | 2/2 Z+Zk | |
NPFL087 | Statistický strojový překlad | 6 | — | 2/2 Z+Zk | |
NPFL103 | Vyhledávání informací | 6 | 2/2 Z+Zk | — | |
NPGR002 | Digitální zpracování obrazu | 5 | 3/0 Zk | — | |
NTIN084 | Bioinformatické algoritmy | 6 | 2/2 Z+Zk | — | |
NSWI103 | Řízení projektů Systémová dynamika I | 3 | 0/2 Z | — | |
NSWI104 | Řízení firem Systémová dynamika II | 3 | — | 0/2 Z |
Státní závěrečná zkouška
Ke dvěma povinným okruhům společným pro všechny obory si student vybere tři okruhy podle zvoleného zaměření. Minimálně dva okruhy musí být ze zvoleného zaměření (zaměření Inteligentní agenti má jeden z těchto okruhů povinný), třetí okruh je možné zvolit z jiného zaměření oboru. Celkem tedy každý student dostane pět otázek.
Zaměření: Inteligentní agenti
Zkušební okruhy
- 1. Reprezentace znalostí (povinný okruh pro zaměření Inteligentní agenti)
- 2. Řešení úloh a plánování
- 3. Neprocedurální programování
- 4. Multi-agentní systémy
- 5. Přírodou inspirované počítání
Zkušební požadavky
1. Reprezentace znalostí
Formální systémy, logika 1. řádu, jazyk, axiomy, odvozovací pravidla. Výroková logika, sémantika, tautologie a splnitelnost, dokazatelnost. Normální tvary formulí. Strojové dokazování vět, model checking, dopředné a zpětné řetězení, rezoluční metoda a unifikace.
Podmíněná nezávislost, Bayesovské sítě, výpočet v Bayesovské síti, naivní Bayesovský klasifikátor, rozhodovací grafy, markovské rozhodovací procesy, zpětnovazebné učení, částečně pozorovatelné markovské rozhodovací procesy, podmíněná markovská pole.
Doporučené předměty
kód | Předmět | Kredity | ZS | LS | |
NAIL062 | Výroková a predikátová logika | 6 | 2/2 Z+Zk | — | |
NMAI060 | Pravděpodobnostní metody | 3 | 2/0 Zk | — | |
NAIL069 | Umělá inteligence I | 5 | 2/1 Z+Zk | — | |
NAIL070 | Umělá inteligence II | 3 | — | 2/0 Zk | |
NAIL104 | Pravděpodobnostní grafické modely | 3 | 2/0 Zk | — |
2. Řešení úloh a plánování
Reprezentace znalostí: stavový prostor, produkční systémy, reprezentace pomocí logiky. Prohledávací algoritmy; stromové, grafové a lokální prohledávání, heuristiky. Řešení SAT problémů a splňování omezujících podmínek. Modelování problémů. Automatické plánování; plánovací doména a problém, plánovací operátory. Základní plánovací techniky a algoritmy; heuristiky; rozšíření plánovacích algoritmů. Plánování a rozvrhování.
Doporučené předměty
kód | Předmět | Kredity | ZS | LS | |
NAIL069 | Umělá inteligence I | 5 | 2/1 Z+Zk | — | |
NAIL071 | Plánování a rozvrhování | 3 | — | 2/0 Zk | |
NOPT042 | Programování s omezujícími podmínkami | 6 | 2/2 Z+Zk | — | |
NAIL094 | Rozhodovací procedury a verifikace | 6 | — | 2/2 Z+Zk |
3. Neprocedurální programování
Odlišnost procedurálního a neprocedurálního způsobu programování. Principy funkcionálního a logického programování. Lambda kalkulus, syntax, principy redukce. Churchova a Rosserova vlastnost a konsistence kalkulu. Věty o pevném bodu. Normální tvar objektů. Typovaný lambda kalkul. Substituce a unifikace. Hornovy klauzule, SLD-rezoluce a logické programy. Čistý Prolog, negace definovaná neúspěchem, obecné logické programy. Postačující podmínky ukončení výpočtu. Implementace Prologu. Logické programování s omezujícími podmínkami.
Doporučené předměty
kód | Předmět | Kredity | ZS | LS | |
NAIL076 | Logické programování I | 3 | 2/0 Zk | — | |
NAIL077 | Logické programování II | 3 | — | 2/0 Zk | |
NAIL078 | Lambda-kalkulus a funkcionální programování I | 5 | 2/1 Z+Zk | — | |
NAIL022 | Metody logického programování | 3 | 2/0 Zk | — | |
NOPT042 | Programování s omezujícími podmínkami | 6 | 2/2 Z+Zk | — |
4. Multi-agentní systémy
Architektura autonomního agenta; percepce, mechanismus výběru akcí, paměť; psychologické inspirace. Metody pro řízení agentů; symbolické a konekcionistické reaktivní plánování, hybridní přístupy. Problém hledání cesty; navigační pravidla, reprezentace terénu. Komunikace a znalosti v multiagentních systémech, ontologie, řečové akty, FIPA-ACL, protokoly. Distribuované řešení problémů, kooperace, Nashova ekvilibria, Paretova efektivita, alokace zdrojů, aukce. Etologické motivace, modely populační dynamiky. Metody pro učení agentů; zpětnovazební učení, základní formy učení zvířat. Metodologie návrhu, jazyky a prostředí multiagentních systémů.
Doporučené předměty
kód | Předmět | Kredity | ZS | LS | |
NAIL106 | Multiagentní systémy | 6 | — | 2/2 Z+Zk | |
NAIL068 | Umělé bytosti | 6 | — | 2/2 Z+Zk |
5. Přírodou inspirované počítání
Genetické algoritmy, genetické a evoluční programování. Teorie schémat, pravděpodobnostní modely jednoduchého genetického algoritmu. Evoluční strategie, diferenciální evoluce, koevoluce, otevřená evoluce. Rojové optimalizační algoritmy. Memetické algoritmy, hill climbing, simulované žíhání. Aplikace evolučních algoritmů (evoluce expertních systému, neuroevoluce, řešení kombinatorických úloh, vícekriteriální optimalizace).
Doporučené předměty
kód | Předmět | Kredity | ZS | LS | |
NAIL025 | Evoluční algoritmy I | 6 | 2/2 Z+Zk | — | |
NAIL086 | Evoluční algoritmy II | 6 | — | 2/2 Z+Zk | |
NAIL065 | Evoluční robotika | 5 | — | 2/1 Z+Zk |
Zaměření: Strojové učení
Zkušební okruhy
- 1. Strojové učení a jeho aplikace
- 2. Neuronové sítě
- 3. Dobývání znalostí
Zkušební požadavky
1. Strojové učení a jeho aplikace
Strojové učení; prohledávání prostoru verzí, učení s učitelem a bez učitele, pravděpodobnostní přístupy, zpětnovazební učení, teoretické aspekty strojového učení. Evoluční algoritmy; základní pojmy a teoretické poznatky, hypotéza o stavebních blocích, koevoluce, aplikace evolučních algoritmů. Strojové učení v počítačové lingvistice. Pravděpodobnostní algoritmy pro analýzu biologických sekvencí; hledávání motivů v DNA, strategie pro detekci genů a predikci struktury proteinů.
Doporučené předměty
kód | Předmět | Kredity | ZS | LS | |
NAIL029 | Strojové učení | 3 | — | 2/0 Zk | |
NPFL067 | Statistické metody zpracování přirozených jazyků I | 6 | 2/2 Z+Zk | — | |
NAIL025 | Evoluční algoritmy I | 6 | 2/2 Z+Zk | — | |
NAIL107 | Strojové učení v bioinformatice | 6 | — | 2/2 Z+Zk |
2. Neuronové sítě
Neurofyziologické minimum. Modely pro učení s učitelem, algoritmus zpětného šíření, strategie pro urychlení učení, regularizační techniky a generalizace. Asociativní paměti, Hebbovské učení a hledání suboptimálních řešení, stochastické modely. Umělé neuronové sítě založené na principu učení bez učitele. Modulární, hierarchické a hybridní modely neuronových sítí. Genetické algoritmy a jejich využití při učení umělých neuronových sítí.
Doporučené předměty
kód | Předmět | Kredity | ZS | LS | |
NAIL002 | Neuronové sítě | 9 | 4/2 Z+Zk | — | |
NAIL060 | Implementace neuronových sítí I | 6 | 2/2 Z+Zk | — | |
NAIL013 | Aplikace teorie neuronových sítí | 3 | — | 2/0 Zk | |
NAIL065 | Evoluční robotika | 5 | — | 2/1 Z+Zk |
3. Dobývání znalostí
Základní paradigmata dobývání znalostí. Příprava dat, výběr atributů a metody pro analýzu jejich relevance. Metody pro dobývání znalostí; asociační pravidla, přístupy založené na principu učení s učitelem a klastrová analýza. Metody pro extrakci charakteristických diskriminačních pravidel a měření jejich zajímavosti. Reprezentace, vyhodnocování a vizualizace získaných znalostí. Modely a evaluace vyhledávání informací. Využití technik pro dobývání znalostí a vyhledávání informací v praxi.
Doporučené předměty
kód | Předmět | Kredity | ZS | LS | |
NDBI023 | Dobývání znalostí | 9 | — | 4/2 Z+Zk | |
NPFL103 | Vyhledávání informací | 6 | 2/2 Z+Zk | — | |
NAIL105 | Internet a klasifikační metody | 3 | — | 1/1 Z+Zk | |
NAIL099 | Seminář strojového učení a modelování I | 2 | 0/1 Z | — |
Zaměření: Robotika
Zkušební okruhy
- 1. Lokalizace a mapování
- 2. Řídící systémy
- 3. Robotické systémy
- 4. Plánování a navigace
Zkušební požadavky
1. Lokalizace a mapování
Základní typy lokalizace. Pravděpodobnostní lokalizace, částicové filtry, metody Monte-Carlo. Reprezentace prostředí, reprezentace map, problém korespondence, mapování v dynamickém prostředí. Vztah lokalizace a mapování, SLAM.
Doporučené předměty
kód | Předmět | Kredity | ZS | LS | |
NAIL028 | Úvod do robotiky | 6 | 2/2 Z+Zk | — | |
NAIL101 | Pravděpodobnostní robotika | 6 | — | 2/2 Z+Zk | |
NAIL108 | Mobilní robotika | 3 | — | 1/1 KZ |
2. Řídící systémy
Řídící systém robota. Zpracování signálu, rozpoznávání, feature matching and tracking. Systémy pro modelování, virtuální robotika, simulátory. Distribuované algoritmy, systémy řízení pro multirobotické systémy, komunikace, synchronizace, koordinace. Softwarová realizace, programování pro specifické běhové prostředí, ladící prostředky a postupy.
Doporučené předměty
kód | Předmět | Kredity | ZS | LS | |
NAIL028 | Úvod do robotiky | 6 | 2/2 Z+Zk | — | |
NPGR001 | Autonomní robotika | 5 | 2/2 Z+Zk | — | |
NPGR002 | Digitální zpracování obrazu | 5 | 3/0 Zk | — | |
NSWI035 | Principy distribuovaných systémů | 3 | 2/0 Zk | — |
3. Robotické systémy
Základní kinematický a dynamický model, reverzní kinematika a dynamika. Nízkoúrovňový hardware a software, vestavěné systémy. Typy senzorů a aktuátorů, principy a typické oblasti použití. Vysokoúrovňové robotické systémy a jejich řízení: manipulátory, mobilní robotika, autonomní robotika.
Doporučené předměty
kód | Předmět | Kredity | ZS | LS | |
NAIL028 | Úvod do robotiky | 6 | 2/2 Z+Zk | — | |
NAIL108 | Mobilní robotika | 3 | — | 1/1 KZ | |
NSWE001 | Vestavěné systémy a systémy reálného času | 6 | — | 2/2 Z+Zk |
4. Plánování a navigace
Základní navigační postupy: dead-reckoning, odometrie, triangulace a trilaterace, inerciální navigace. Navigační a prohledávací algoritmy. Plánování akcí, formulace plánovacího problému, základní plánovací algoritmy, plánování s časem a zdroji.
Doporučené předměty
kód | Předmět | Kredity | ZS | LS | |
NAIL028 | Úvod do robotiky | 6 | 2/2 Z+Zk | — | |
NAIL108 | Mobilní robotika | 3 | — | 1/1 KZ | |
NAIL071 | Plánování a rozvrhování | 3 | — | 2/0 Zk |