Tak mi konečně skončil první semestr. Od minulého roku má FIT nový studijní obor MITAI, který je na rozdíl od předchozího studia specifikovaný asi 16 specializacemi. Ta moje se jmenuje NIDE – Inteligentní zařízení. Měl bych se naučit, jak navrhovat inteligentní senzory a zařízení, takže (I)Iot, roboty a podobně. A jak to vypadalo?
První semestr stál za to. Jelikož od bakalářky pracuji na robotech, zapsal jsem si předmět ROBa – robotiku. Jako druhý volitelný předmět jsem si vybral SIN – Inteligentní systémy, což je nepovinná prerekvizita jednoho z později povinných předmětů. K tomu TIN a šílenost jménem MSP, internship v RedHatu a korona. Výsledek? Nějakým zázrakem jsem všechno úspěšně dokončil, z práce mě nevyhodili (DÍKY!!!), z FITu taky ne (asi taky díky…) a já silně uvažuju o letní stáži někde na východním Slovensku, kde bych choval ovce :). Co se teda kde dělo?
TIN: Teoretická informatika
Jeden z nejobávanějších předmětů celého magisterského studia, který kosí řady studentů už téměř dvacet let. Co se týče látky, na začátku semestru se opakuje IFJ – regulární a bezkontextové jazyky, konečné a zásobníkové automaty. Později k nim přibudou Turingovy stroje a pak začne to pravé peklo ten pravý TIN :). Po Turingových strojích následuje kapitola o vyčíslitelnosti a mezích rozhodnutelnosti aneb „Co ještě vůbec můžeme spočítat?“ a celý kurz uzavírá modul o tom, jak složité je spočítat to, co spočítat umíme (AKA složitost algoritmů).
Předmět má standardní přednášky 2 hodiny týdně, k tomu občasná democvičení a klasická numerická cvičení. Extrémně doporučuji chodit na vše, jen s (demo)cvičeními nebo jen s přednáškou se TIN dát prostě nedá. K tomu byly v semestru 3 domácí úkoly (jeden s odevzdáním až po Novém roce) a 2 vnitrosemestrální testy. Tenhle rok byly k dispozici také baterie (neřešených) příkladů na procvičení, které jsou sice časově náročné, ale rozhodně pomůžou.
Tenhle rok poprvé (nebo podruhé?) vedl předmět doktor Češka (neplést s prof. Češkou, který vedl předmět předtím) a vnesl do něj hromadu novinek. Svým velmi živým a interaktivním stylem dokázal látku předat docela dobře (i když se docela často pletl) a kvůli tomu, že měl tendence se ptát publika, vás udržel ve střehu. Po pedagogické stránce se mu vyrovná snad leda prof. Meduna.
Po stránce obsahu vyházel dr. Češka z předmětu spoustu „nedůležitých“ věcí a celý kurz se soustředil hlavně na to, abychom všechno pochopili. Přišla také řada na pár nových pojmů, třeba na Myhill-Nerodovu větu. Další novinkou byly už zmiňované baterie příkladů na procvičení pro každou přednášku, které mi docela dost pomáhaly.
Na zkoušku jsem se učil skoro celé zimní prázdniny a další dva dny k tomu, dohromady to stačilo na 64 bodů a krásné D a to i bez toho, aniž bych viděl vyčíslitelnost, na kterou mi už nezbyly síly. Celkově je předmět hodně zajímavý (proto jsem mu dal tolik), ale náročný na abstraktní myšlení a správné formální vyjadřování. Všechno má ale svůj smysl a možná trochu překvapivě hodnotím tenhle předmět jako nejpřínosnější povinný předmět tohohle semestru.
MSP: Matematická statistika a pravděpodobnost
Krátce: děs, hrůza a utrpení.
Tenhle předmět tvoří prapodivný mix 3 naprosto nesouvisejících modulů: na začátku na nás čekal propašovaný a notně zhuštěný MAT, poté následuje samotné MSP, takže skutečná statistika a pravděpodobnost, a konec semestru uzavírá miniTIN s Markovskými řetězci a procesy. Jinak má předmět podobnou strukturu jako TIN – 2 hodiny přednášky, 2 hodiny cvičení a 3 vnitrosemestrální testy + domácí úkol.
První část předmětu byl jakýsi výcuc z MATu (teď už zrušený strašák) a upřímně… Nevím, co o tom říct. Trio přednášejících Češka-Holík-Lengál po celou dobu drželo naprosto vražedné tempo, kdy sotva stíhali číst slajdy, na nějaké vysvětlování nebyl čas. Smysl celého toho sprintu jsem doteď nepochopil a 7 bodů z prvního testu jsem dostal náhodou.
Prostřední část tvořilo to, čemu se tenhle předmět věnovat měl: statistika a pravděpodobnost. Prednášející z FSI, doc. Žák, nepřednáší nijak zle, i když mi jeho styl nesedl (a po prvním testu jsem ho už nemohl ani vidět). Mnohem větší problém byly testy. Už z minulého roku jsme tušili, že na druhý test bude brutálně málo času, ale měli jsme k dispozici zkušební zadání a věděli jsme, co čekat. Realita ale předčila všechna očekávání. Příklady nebyly těžké, ale časově naprosto nedatelné (neznám nikoho, kdo by vyřešil vše). Nejhorší ale byla reakce doc. Žáka. Ten odmítl uznat byť jen možnost, že test byl prostě příliš časově náročný a do poslední chvíle se tvářil, že ti blbí jsme my (poměrně hlasitě se o tom bavil i během závěrečné zkoušky s hlídači v mé učebně a nebylo úplně příjemné psát test s tím, když váš celý ročník garant pomlouvá sotva dva metry od vás :)).
Všechno ovšem zachraňovala skvělá Ing. Šramková, kterou jsem měl na cvičení. V těch 2 hodinách vždycky zvládla vše skvěle vysvětlit a ještě nám dávala k dispozici záznamy cvičení + naskenovaná pdfka. Nebýt jí, asi bych MSP nedal.
Poslední dva týdny předmětu poté opět nastoupit dr. Češka, kdy probíral Markovské procesy a řetězce. Látka to nebyla těžká ani nezajímavá (i když učební materiály – anglické slajdy – byly docela zlé, chyběly v nich informace atp.). Cvičení s Dr. Andryushenkem byla také super.
Na zkoušku jsem se učil cca dva dny, největší průser ale přišel až těsně před ní – zjistil jsem, že má milovaná kalkulačka zůstala doma na stole. Vrátit se pro ni bych nestihl, tak jsem si řekl, že si aspoň prohlédnu zadání. Když už jsem tam byl, tak jsem si řekl, že to aspoň zkusím a – světe div se – dal jsem to! Celkem z toho vyšlo 62 bodů a D a já jsem rád, že to už nikdy neuvidím :).
AVS: Architektury výpočetních systémů
Spolu se SUI, MSP a UPA další nový předmět pro MITAI a dle mého ten nejužitečnější. V předmětu je do detailu vysvětlený procesor, a to hlavně z pohledu vícejádrových systémů (na rozdíl od INP na bakaláři, kde se přednášel pouze jednojádrový). Podle mě nejdůležitější součást kurzu jsou ale techniky vektorizace a paralelizace pomocí OpenMP – díky tomu můžete svůj kód zrychlit třeba i stokrát!
Kromě dvou hodin přednášek jsou v předmětu i cvičení, kde si prakticky vyzkoušíte práci se superpočítači Salomon nebo Anselm. Přednáší sympatický docent Jaroš. Minulý rok měl tendence udržovat pozornost tak, že se během přednášek ptal na otázky a za správné odpovědi rozdával sušenky – letos to bohužel nešlo, ale i tak byly jeho přednášky moc dobré. Při učení na zkoušku jsem bohužel narazil na to, že ne všechno je ve slajdech a neminulo mě tedy projídění záznamů.
V předmětu jsou dále dva projekty – jeden na vektorizaci, jehož zadáním bylo vektorizovat část kódu pro AV1 dekodér. Bohužel se ukázalo, že celý referenční program je za a) odolný vůči zmršení vektorizací (i když je vektorizace udělaná blbě, na čase běhu se to neprojeví) a za b) natolik složitý, že pochopit ho prostě za těch 15 bodů nestálo. Druhý projekt na paralelizaci byl ovšem něco úplně jiného. Cílem bylo paralelizovat algoritmus marching cubes. Tenhle projekt jsem si opravdu užil, jelikož výstupy (renderované 3D modely) byly na první pohled viditelné a člověk hned věděl, jestli něco nerozbil.
Na zkoušku jsem se učil asi den a půl a z předmětu si odnáším 81 bodů a první B.
SUI – Strojové učení a umělá inteligence
Předmět částečně pokrývá a opakuje IZU z bakaláře – prohledávání stavového prostoru atp. Kromě toho ale přidává také slušnou porci neuronových sítí a různých klasifikátorů, prostě širší pohled na svět ML a AI.
Minulý rok prý vyučující předmět docela nezvládli, ale letos to byl naopak jeden z těch lepších předmětů. Na přednáškách se střídají doc. Burget, doktor Hradiš a inženýři Beneš a Šůstek. Přednes všech je (subjektivně) slušný a každý si našel minimálně jednoho, který mu opravdu vyhovoval.
Nejepší na předmětu byla ale koronová náhrada půlsemestrálky – domácí úkol, který vás vlastně provedl tím, jak si vyrobit binární klasifikátor s PyTorch. Prostě bomba. Jedinou drobnou chybkou bylo, že se úkol odevzdával dva dny předtím, než proběhla přednáška na dané téma, takže muselo probíhat docela hutné samostudium :). I tak to ale stálo za to. Kromě domácího úkolu měl předmět i projekt – naprogramovat umělou inteligenci pro Válku kostek. Jelikož já tenhle semestr dost přestřelil své síly a zbytek mého týmu taky nebyli žádní šprti, úkol jsme bastlili týden před odevzdáním – i tak jsme se ale umístili nad polovinou v turnaji všech odevzdaných provozuschopných řešení :).
Semestrální zkouška byla ze všech oblastí a hodnocená byla dost férově. Celkem jsem si z předmětu odnesl 66/D.
ROBa – Robotika (v angličtině)
Předmět učí doktor Rozman, pod kterým jsem dělal i svou bakalářku. Samotný název předmětu je asi dost sebevysvětlující. V kurzu se proberou základy teorie řízení robota, mapování, lokalizace a vůbec všechno, co robot potřebuje, aby mohl jezdit aspoň trošku smysluplně. Díky tomu, že na robotech pracuju, jsem si hodně věci paralelně zkoušel v praxi a musím říct, že i když je ta teorie docela nuda, v praxi se to použije a vše do sebe krásně zapadne.
Kvůli koroně měl předmět jen přednášk bez cvičení (což je velká škoda). Jinak přednášky jsou takový fiťácký standard, nic extra záživného, ale účel plní. Jednu přednášku měl i ing. Bambušek, který vysvětloval hlavní principy ROSu.
Semestrální a půlsemestrální zkouška se psala naráz a byla podobná těm z minulých let – jelikož jsou ale otázky poměrně obecné, tak pokrývají většinu kurzu a prostě se musíte naučit vše (tolik toho zase není, takže se to dá). Celkem si bez projektu odnáším 68/D, s projektem to bude možná i o 20 bodů víc – nebo taky ne, roboty jsem docela zanedbával a pracuju na nich až teď :). Být dr. Rozmanem, dám si tak 5 bodů za to, že jsem aspoň něco odevzdal :D.
SIN: Inteligentní systémy
Mnohem lepší jméno pro tenhle kurz by bylo „Průmyslové inteligentní systémy“, protože přesně tuhle oblast zachycuje. V kurzu se tedy probírá to, jak v reálném světě funguje počítačové řízení průmyslových procesů, chytrých budov atp. Okrajově jsou zmíněné i „konzumní“ IoT (ESP a na nich postavená řešení typu Sonoff), ale těžiště kurzu je v průmyslu a „serióznějším“ využití IoT (SCADA, PLC, inteligentní budovy, komplexy, dopravní infrastruktura).
Přednášky vede doc. Janoušek. Pár lidí si v minulosti stěžovalo na jeho „znuděný přednes“, mně ale přišel jeho styl přednášek jako snad nejpřínosnější (přednáší pomalu, ale člověk si stíhá dělat poznámky do té míry, že by si přednášku už ani znovu nemusel pouštět – kdyby si to poznámky dělal, žejo…). Učební materiály jsou bohužel docela zlé – slajdy sjou zvláštní směsicí screenshotů, češtiny a angličtiny.
Co se týče mých výsledků, kvůli špatným učebním materiálům jsem se spoléhal na to, že semestrální zkouška bude stejná, jako byla vždy. Nebyla a poprvé se mi stalo, že si budu muset zkoušku opakovat :). Na druhý pokus jsem ze semestrálky vykřesal 49 bodů a celkové C se 79 body.
Na příští semestr mě toho naštěstí čeká míň – jen 5 předmětů – takže se budu moct soustředit kromě školy i na nějaké své projekty a na práci.