===== Praktická robotika (zima 2023/24) ===== /* **17.10.2022 Novinka:** //Z důvodu služební cesty přednášejícího se přednášky 18. 10. 2022 a 25. 10. 2022 ruší.// \\ \\ \\ **21.9.2020 Novinka:** //Přednáška 22. 9. 2020 není.// \\ **21.9.2020 Novinka:** //Cvičení 22. 9. 2020 probíhá ve standardní čas vzdálenou formou na platformě MS Teams. Všichni zapsaní studenti obdrželi pozvánku. Pokud se tak nestalo, kontaktujte prosím některého ze cvičících.//\\ \\ \\ */ === Přednášky === Úterý 9:15-10:45, CIIRC, posluchárna JP:B-335, přednášející: * Ing. Libor Přeučil, CSc. * RNDr. Miroslav Kulich, Ph.D., ---- === Cvičení === Úterý 11:00-13:15 CIIRC, laboratoř JP:B-315 (Jugoslávských partyzánů, CIIRC), cvičící: * Ing. Viktor Kozák, * Ing. David Zahrádka, * RNDr. Miroslav Kulich, Ph.D., ---- === Anotace === Cílem kurzu je zprostředkovat studentům praktické dovednosti v oblasti řízení robotu ve složité úloze, tj. od řešení problémů návrhu architektury robotu, zpracování senzorických dat, přes navigaci a vytváření modelu prostředí až po plánování a inteligentní rozhodování. Důraz je kladen na cvičení, kde studenti budou řešit komplexní úlohu na reálném hardware mobilního robotu a budou mít dostatek prostoru pro implementaci a experimenty tak, aby bylo zřejmé, proč základní algoritmy ne vždy fungují a proč je vhodné použít sofistikovanější metody. ---- === Organizace předmětu === Hlavní náplní kurzu jsou cvičení, na kterých studenti ve dvoučlenných týmech řeší úlohu prozkoumání neznámého prostředí mobilním robotem (viz [[zadani|zadání]]). Tato úloha vyžaduje realizaci několika dílčích podúloh, které budou studenti na cvičeních postupně řešit. Na konci semestru pak proběhne demonstrace funkčnosti implementovaných řešení. Na přednáškách budou jednotlivé podúlohy definovány a prezentována některá z metod pro jejich řešení. Bez znalosti látky probírané na přednáškách bude tedy velmi obtížné úlohu řešit. ---- === Obsah přednášek === ^ Týden ^ Téma ^ Materiály ^ | 1.| Zadání úlohy, organizace předmětu, pravidla pro udělení zápočtu |{{courses:a0m33par:par_lesson1.pdf|slidy}} | | 2.| Plánování na binární mřížce – A*, Dijkstra, vyhlazování, Minkowskiho suma | {{courses:a0m33par:par_lesson2.pdf|slidy}} | | 3.| Řízení robotu – Vector Field Histogram Plus | {{courses:a0m33par:par_lesson3.pdf|slidy}} | | 4.| Mapování – mřížky obsazenosti, floodfill, lokalizace s využitím histogramů | {{courses:a0m33par:par_lesson4.pdf|slidy}}| | 5.| Explorace | {{courses:a0m33par:par_lesson5.pdf|slidy}}| | 6.| Praktické zkušenosti navigace mobilního robotu, robotické soutěže | | ---- === Obsah cvičení === ^ Týden ^ Téma ^ | 1.| Seznámení se s robotem TurtleBot a jeho komponentami, porozumění senzorickým datům (vizualizace), reaktivní řízení (wall following) | | 2.| ::: | | 3.| Realizace podúloh řízení a plánování | | 4.| ::: | | 5.| ::: | | 6.| ::: | | 7.| Kontrolní den, zadání podúlohy mapování | | 8.| Relizace podúlohy mapovaní | | 9.| ::: | | 10.| ::: | | 11.| Kontrolní den, Realizace explorace, integrace | | 12.| Realizace explorace, integrace | | 13.| ::: | | 14.| Finální demonstrace | ---- === Organizace cvičení === Viz na samostatné [[cviceni|stránce]]. ---- === Hodnocení předmětu === Předmět je zakončen klasifikovaným zápočtem. Výsledná známka bude udělena na základě těchto kritérií: - **Aktivita a znalost na cvičení.** Cvičící budou hodnotit aktivitu a samostatnost studentů při práci na úlohách a jejich znalost látky probírané na přednáškách. - **Prezentace** implementovaného klienta cvičícímu. - **Funkčnost klienta** při závěrečné prezentaci na reálném robotu. - **Porozumění** vlastnímu kódu a principům vámi implementovaných metod. ---- === Pravidla použití nástrojů AI === V tomto kurzu je obecně povoleno používat nástroje UI, pokud není uvedeno jinak. Buďte však upřímní a otevření. Pokud tyto nástroje používáte, uveďte které části vaší práce byly vytvořeny s jejich pomocí (a jak). Naším cílem je vás něco naučit, proto byste měli rozumět každé části odevzdaného kódu a dokázat program napsat i sami bez pomoci AI.