Riadok 75: Riadok 75:
 
8. Segmentácia a matematická morfológia (segmentácia šedotónového a farebného obrazu: prahovanie – globálne, lokálne a optimálne; k-means, mean shift, split and merge, segmentácia narastaním oblastí, segmentácia na princípe povodí; morfologické operácie binárneho a šedotónového obrazu: dilatácia, erózia, otvorenie, zatvorenie, top-hat, hit and miss, podmienená dilatácia, použitie pri spracovaní obrazu).
 
8. Segmentácia a matematická morfológia (segmentácia šedotónového a farebného obrazu: prahovanie – globálne, lokálne a optimálne; k-means, mean shift, split and merge, segmentácia narastaním oblastí, segmentácia na princípe povodí; morfologické operácie binárneho a šedotónového obrazu: dilatácia, erózia, otvorenie, zatvorenie, top-hat, hit and miss, podmienená dilatácia, použitie pri spracovaní obrazu).
  
'''2-AIN-204/10 a 2-MPG-125/15 Rozpoznávanie obrazcov a Počítačové videnie''' - M. Ftáčnik a Zuzana Berger Haladová
+
'''2-AIN-204/10, 2-MPG-125/15 Rozpoznávanie obrazcov a Počítačové videnie''' - M. Ftáčnik a Zuzana Berger Haladová
  
 
9. Príznaky (Výber a selekcia príznakov, globálne príznaky tvaru, farby, lokálne príznaky – SIFT, detektor a deskriptor, hľadanie škvŕn/Laplacian of Gaussians, príznaky textúry- štatistické momenty, Gaborove filtre)
 
9. Príznaky (Výber a selekcia príznakov, globálne príznaky tvaru, farby, lokálne príznaky – SIFT, detektor a deskriptor, hľadanie škvŕn/Laplacian of Gaussians, príznaky textúry- štatistické momenty, Gaborove filtre)
Riadok 99: Riadok 99:
 
4. Teória rozhodovania - jednoduché rozhodovanie (funkcia utility jedno a multi-atribútová, striktná, stochastická dominancia, stav, lotéria,),  zložité rozhodovanie (Markov decision problém, Belmanova rovnica). Rozhodovacie stromy.
 
4. Teória rozhodovania - jednoduché rozhodovanie (funkcia utility jedno a multi-atribútová, striktná, stochastická dominancia, stav, lotéria,),  zložité rozhodovanie (Markov decision problém, Belmanova rovnica). Rozhodovacie stromy.
  
'''2-AIN-132/15 Neurónové siete''' - I. Farkaš a '''2-INF-150/15 Strojové učenie''' - P. Petrovič, T. Vinař  - Jedna skupina
+
'''2-AIN-132/15, 2-INF-150/15 Neurónové siete a Strojové učenie''' - I. Farkaš, P. Petrovič, T. Vinař  - Jedna skupina
  
 
5. Strojové učenie s učiteľom. Viacvrstvové perceptróny (MLP): učenie pomocou spätného šírenia chyby, zovšeobecnenie, validácia modelu, využitie v úlohách. Rekurentné neurónové siete (RNN): spôsoby zahrnutia časového kontextu, architektúry a typy úloh vhodných pre RNN, a spôsoby trénovania, príklad využitia.
 
5. Strojové učenie s učiteľom. Viacvrstvové perceptróny (MLP): učenie pomocou spätného šírenia chyby, zovšeobecnenie, validácia modelu, využitie v úlohách. Rekurentné neurónové siete (RNN): spôsoby zahrnutia časového kontextu, architektúry a typy úloh vhodných pre RNN, a spôsoby trénovania, príklad využitia.
Riadok 126: Riadok 126:
 
Študent si ťahá dve otázky bloku zamerania náhodne z rôznych predmetov.
 
Študent si ťahá dve otázky bloku zamerania náhodne z rôznych predmetov.
  
'''2-AIN-118/14 Programovanie v operačných systémoch''' – J. Šiška a '''2-AIN-111/15 Webové technológie a metodológie''' - M. Homola - Jedna skupina
+
'''2-AIN-118/14, 2-AIN-111/15 Programovanie v operačných systémoch a Webové technológie a metodológie''' – J. Šiška, M. Homola - Jedna skupina
  
 
1. Procesy a vlákna: spúštanie, synchronizácia a komunikácia. Popíšte proces zavedenia nového procesu/spustenia vlákna, rozdiel medzi dynamickým a statickým linkovaním. Popíšte mechanizmy na synchronizáciu a komunikáciu (prenos dát) medzi procesmi/vláknami dostupné v súčasných operačných systémoch, porovnajte ich výhody a nevýhody, prípadne vhodnosť na riešenie konkrétnych problémov/situácií.
 
1. Procesy a vlákna: spúštanie, synchronizácia a komunikácia. Popíšte proces zavedenia nového procesu/spustenia vlákna, rozdiel medzi dynamickým a statickým linkovaním. Popíšte mechanizmy na synchronizáciu a komunikáciu (prenos dát) medzi procesmi/vláknami dostupné v súčasných operačných systémoch, porovnajte ich výhody a nevýhody, prípadne vhodnosť na riešenie konkrétnych problémov/situácií.

Verzia zo dňa a času 14:16, 9. apríl 2021

9.2.9. Sylaby štátnych záverečných skúšok
magisterského študijného programu
Aplikovaná informatika
a
Aplikovaná informatika (konverzný program)

Garant: Prof. RNDr. Roman Ďurikovič, PhD.
             durikovic @ fmph.uniba.sk


Štátnicový predmet 2-AIN-990 Obhajoba diplomovej práce

  1. Hodnotenie A
  2. Hodnotenie B
  3. Hodnotenie C
  4. Hodnotenie D
  5. Hodnotenie E môže získať samostatná práca spĺňajúca viac ako 2/3 zadaných cieľov v prihláške s pôvodnými správnymi výsledkami.
  6. Hodnotenie Fx ostatné práce nezaraditeľné do lepšieho hodnotenia; plagiatorstvo (s návrhom na vylúčenie zo štúdia); zjavne odfláknutá niektorá casť práce, implementácie alebo prezentácie; práca nespĺňajúca viac ako 2/3 zadaných cieľov v prihláške.

Práca nebude akceptovaná na obhajobu ak nebude spĺňať nasledujúce základné požiadavky: a, zmluva nebude obsahovať všetky potrebné podpisy. b, nebude dodržaná štruktúra práce a obsah jednotlivých častí c, práca bude kompilátom sekundárnych zdrojov bez vlastného výskumu a analýz. d, v práci nebudú uvedené referencie na použité zdroje, čiže vyskytne sa v nej plagiátorstvo alebo zneužitie Internetu e, autor/ka nedodrží uvedené požiadavky na formu f, jazyková úroveň práce nebude zodpovedať úrovni absolventa magisterského štúdia.

Štátnicový predmet 2-AIN-950 Metódy aplikovanej informatiky

Študent si ťahá jednu otázku náhodne.

2-AIN-109/15 Programovanie paralelných a distribuovaných systémov Gruska D.

1. Základné rozdelenie architektúr paralelných počítačov (Asynchrónna „shared memory“ architektúra, distribuovaná architektúra, synchrónna architektúra, stručný popis, porovnanie medzi nimi)

2. Progress a safety podmienky (formulácia safety a progress podmienky neformálne a formálne, ukážky pre rôzne úlohy paralelného a distribuovaného programovania)

3. Úloha triedenia pre paralelné architektúry (príklady riešení, zložitosť a procesorová náročnosť pre rôzne typy architektúr, dôkaz správnosti - safety a progress podmienka pre jedno riešenie)

4. Problém večerajúcich filozofov (formulácia problému, safety a progress podmienka, načrtnutie riešenia pre distribuovanú architektúru)

5. Komunikácia cez chybný kanál (formulácia problému, safety a progress podmienka, načrtnutie riešenia, optimalizácia - Alternating Bit Protocol)

2-AIN-206/15 Matematické modelovanie a počítačová animácia fyzikálnych procesov Ďurikovič R.

6. Časticové systémy, rovnice pohybu prvého rádu, integračné metódy na výpočet rýchlosti a pozície, stavový vektor systému, vonkajšie sily, obmedzujúce podmienky – constraints, sily odozvy, kolízie častica - rovina.

7. Animácie pohybu a orientácie, interpolačný spline na animáciu pohybu, reparametrizácia splinu podľa dĺžky krivky, quaternion a orientácia, interpolácie dvoch a viacerých quaternionov.

8. Detekcie kolízie, nutná a postačujúca podmienka kedy nie sú dve telesá v kolízii, deliaca rovina, broad phase (hierachycká mriežka), mid phase (hierarchie obálok, Voronoiove oblasti v kolízii, vysvetlujte na príklade kolízie gula x kapsula, dekompozícia telesa na konvexné časti), narrow phase (Minkowskeho priestor a blízkosť konvexných telies).

9. Numerické riešenie diferenciálnych rovníc, Eulerova metóda, MidPoint metóda, Runge-Kuta metóda, podmienka stability na voľbu časového kroku, sily odozvy (response forces).

10. Dynamika tuhých telies, definícia problému, rovnice pohybu (4 ODE), rýchlosť, zrýchlenie, uhľová rýchlosť a uhľové zrýchlenie, matica hybnosti (matica inercie).

2AIN-BS1 - Blok S1: Počítačová grafika a videnie

Študent si ťahá dve otázky bloku zamerania náhodne z rôznych predmetov.

2-AIN-128/15 Grafika v reálnom čase a výpočty na GPU - A. Mihálik

1. Zobrazovací kanál. Grafická pipeline moderného hardvéru, framebuffer, buffer objekty, používané súradnicové priestory, druhy shader programov, druhy optimalizačných techník (view frustum, occlusion, backface culling), príklad shader programov.

2. Tiene, typy tieňov (mäkké, tvrdé, statické, dynamické), typy a popis algoritmov (projekčné, tieňové objemy, tieňové mapy (shadow mapping)), spôsoby implementácie jednotlivých algoritmov, artefakty a ich odstraňovanie, príklad shader programov pre tieňové mapy. Artefakty spôsobené diskretizáciou. Tiene vo Phongovom modeli.

2-AIN-127/15 Pokročilá počítačová grafika - R. Ďurikovič

3. Kanál metódy sledovania lúča a porovnanie s Radiosity metódou. (definícia lúča, definícia tieňového lúča, popis metódy sledovania lúča, generovanie lúča, pochod po lúči (ray traversal), prienik lúča s trojuholníkom, stromová štruktúra lúčov (ray tree) a jej použitie na výpočet lokálnej farby, problém presnosti priesečníkov). Metóda sledovania lúča na GPU, urýchľovacie techniky.

4. Fyzikálny osvetlovací model a výpočet farieb renderovacou rovnicou. (definícia radiancie, definícia BRDF a jej vlastnosti, fyzikálne BRDF Cook-Tarrance, definícia priestorového uhlu, napíšte renderovaciu rovnicu a vysvetlite jej členy)

5. Lokálne osvetľovacie modely. (tieňovanie, Phongov a Blinn-Phongov osvetlovací model, zložky (ambientna, difúzna, zrkadlová), textúrovanie a druhy textúr, mapovanie a filtrácia textúr, popísať princípy environment, bump, normal mapovania, textúrovací a tangenciálny priestor, príklad shader programov na GPU.

2-AIN-112/15 Pokročilé spracovanie obrazu - Z. Černeková

6. Snímanie obrazu s jednou kamerou (geometria jednoduchej perspektívnej kamery, projektívna rovnica, kalibrácia kamery, vonkajšie a vnútorné parametre, rekonštrukcia vzoru z jeho obrazu)

7. Techniky predspracovania obrazu (filtrovanie obrazu v priestorovej doméne: lineárne a nelineárne filtre, priemerovanie, gaussovská filtrácia, mediánová filtrácia, bilaterálna filtrácia; detekcia hrán na základe prvej a druhej derivácie: gradientné operátory, zero-crossing a Marr-Hildrethovej operátor, fixné a adaptívne okolie bodu; filtrovanie vo frekvenčnej doméne: Fourierova transformácia - definícia 1D, 2D, spojitý a diskrétny prípad, vlastnosti FT, použitie pri spracovaní obrazu, FFT).

8. Segmentácia a matematická morfológia (segmentácia šedotónového a farebného obrazu: prahovanie – globálne, lokálne a optimálne; k-means, mean shift, split and merge, segmentácia narastaním oblastí, segmentácia na princípe povodí; morfologické operácie binárneho a šedotónového obrazu: dilatácia, erózia, otvorenie, zatvorenie, top-hat, hit and miss, podmienená dilatácia, použitie pri spracovaní obrazu).

2-AIN-204/10, 2-MPG-125/15 Rozpoznávanie obrazcov a Počítačové videnie - M. Ftáčnik a Zuzana Berger Haladová

9. Príznaky (Výber a selekcia príznakov, globálne príznaky tvaru, farby, lokálne príznaky – SIFT, detektor a deskriptor, hľadanie škvŕn/Laplacian of Gaussians, príznaky textúry- štatistické momenty, Gaborove filtre)

10. Techniky počítačového videnia (Porovnávanie so vzorom/Template Matching), párovanie lokálnych príznakov, metóda vizuálnych slov/Bag of Visual Words, detekcia a rozpoznávanie tvárí, algoritmus Viola-Jones, analýza významných oblastí obrazu/Saliency)

11. Rozpoznávanie lineárne separabilných a neseparabilných tried (Lineárne diskriminačné metódy, SVM, kernelový trik, Bayesovo pravidlo, rozhodovacie stromy, k-means ako metóda neriadeného učenia, učenie pri jednotlivých metódach, trénovacia a testovacia množina)

12. Neurónové siete (Konvolučné neurónové siete, spätná propagácia/Backpropagation, stochastická gradientná optimalizácia/Stochastic Gradient Descent, cenová funkcia, analýza natrénovaných filtrov/vrstiev siete, hyperparametre)


2AIN-BS2 - Blok S2: Umelá inteligencia

Študent si ťahá dve otázky bloku zamerania náhodne z rôznych predmetov.

2-AIN-137/15 Umelá inteligencia - M. Markošová

1. Pojem agent, jednoduchý agent, agent a jednoduché plánovanie pohybu v stavovom priestore (informované a neinformované prehľadávanie), hry (minimax).

2. Logické agenty, reprezentácia znalostí logickým formalizmom, metódy inferencie pre prvorádovú logiku: forward a backward chaining, rezolvenčný algoritmus (konjuktívny normálny tvar, substitúcia, unifikácia, rezolvenčné pravidlo, a rezolvencia) .

3. Bayesovské siete a bayesovské vyvodzovanie, klasické časové rady, časové rady s neurčitosťou a bayesovské siete, využitie bayesovských sietí v UI. Metódy analýzy trendu a periodicity v časových radoch (MA, double MA...)

4. Teória rozhodovania - jednoduché rozhodovanie (funkcia utility jedno a multi-atribútová, striktná, stochastická dominancia, stav, lotéria,), zložité rozhodovanie (Markov decision problém, Belmanova rovnica). Rozhodovacie stromy.

2-AIN-132/15, 2-INF-150/15 Neurónové siete a Strojové učenie - I. Farkaš, P. Petrovič, T. Vinař - Jedna skupina

5. Strojové učenie s učiteľom. Viacvrstvové perceptróny (MLP): učenie pomocou spätného šírenia chyby, zovšeobecnenie, validácia modelu, využitie v úlohách. Rekurentné neurónové siete (RNN): spôsoby zahrnutia časového kontextu, architektúry a typy úloh vhodných pre RNN, a spôsoby trénovania, príklad využitia.

6. Strojové učenie bez učiteľa. Zhlukovanie. Model samoorganizujúcej sa mapy (SOM), princíp algoritmu učenia: vektorová kvantizácia, topografické zobrazenie príznakov, redukcia dimenzie dát, príklad využitia.

7. Matematická teória strojového učenia. Výchylka a rozptyl. Preučenie a podučenie. PAC učenie a ohraničenia pre konečné a nekonečné množiny hypotéz. VC dimenzia.

2-AIN-246/15 Multiagentové systémy – A. Lúčny

8. Popíšte spôsob implementácie multiagentového systému ako middleware. Použite priamu komunikáciu a popíšte procesy v multiagentovom systéme, kde jeden agent pravidelne posiela druhému teplotu vody v bazéne a druhý ju zobrazuje na informačnú tabuľu.

9. Vysvetlite princíp subsumpcie na multiagentovom systéme s nepriamou komunikáciou, kde jeden agent posiela príkaz na dopredný pohyb do motora ľavého kolesa, druhý posiela príkaz na dopredný pohyb do motora pravého kolesa a kde pridáte tretieho agenta, ktorý dostáva detekciu nárazu a pomocou supresie zariadi otočenie robota.

2-AIN-144/15 Reprezentácia znalostí a inferencia - M. Homola

10. Ontológie a deskripčné logiky: Čo je to ontológia? Definujte základnú syntax a rozhodovacie problémy pre deskripčnú logiku ALC. Tablový algoritmus pre deskripčnú logiku ALC.

11. Nemonotónne usudzovanie a ASP. Vysvetlite a zadefinujte nemonotónne usudzovanie. Definujte normálny logický program (NLP), interpretáciu, a stabilný model. Nájdite všetky stabilné modely programu P = {b :- not a. a :- not b. c :- a,b.}

2-AIN-272/15 Spracovanie digitálneho signálu - M. Nagy

12. Fourierova transformácia (FT), spôsob výpočtu diskrétnej FT (DFT), rýchla DFT (FFT), vlastnosti DFT. Power spectral density (PSD), periodogram, korelogram, parametrické metódy (moving average - MA, auto regressive - AR, multiple signal classification - MUSIC)

2AIN-BS3 - Blok S3: Programovanie a tvorba informačných systémov

Študent si ťahá dve otázky bloku zamerania náhodne z rôznych predmetov.

2-AIN-118/14, 2-AIN-111/15 Programovanie v operačných systémoch a Webové technológie a metodológie – J. Šiška, M. Homola - Jedna skupina

1. Procesy a vlákna: spúštanie, synchronizácia a komunikácia. Popíšte proces zavedenia nového procesu/spustenia vlákna, rozdiel medzi dynamickým a statickým linkovaním. Popíšte mechanizmy na synchronizáciu a komunikáciu (prenos dát) medzi procesmi/vláknami dostupné v súčasných operačných systémoch, porovnajte ich výhody a nevýhody, prípadne vhodnosť na riešenie konkrétnych problémov/situácií.

2. Služby operačného systému: práca so súborovým systémom, sieťou a HW, správa pamäte. Popíšte základné služby operačných systémov a prístup k nim (systémové volania, správa pamäte), rozdiel medzi privilegovaným a neprivilegovaným kódom (userspace, kernelspace), ovládače.

3. Vysvetlite pojem použiteľnosť (usability). Uveďte 5-bodovú definíciu použiteľnosti podľa Jacoba Nielsena. Vysvetlite metodiku user-centered design, a rolu prototypov, tzv. persón a testovania v tejto metodike.

2-AIN-2139/14 Kompilátory a interpretre - Ľ. Salanci

4. Princípy fungovania kompilátora a interpretra: - objasnite princípy fungovania lexikálnej analýzy, syntaktickej analýzy, generovania kódu - na ukážke vysvetlite rozdiel medzi interpretáciou a kompiláciou - porovnajte jazyky Java, Python, C++ z pohľadu kompilátorov a interpretrov

5. Spracovanie programových konštrukcií: - objasnite algoritmy pre spracovania programových konštrukcií kompilátorom a interpretrom - na ukážte ilustrujte reprezentáciu krátkeho programu pomocou syntaktického stromu - porovnajte náročnosť spracovania programových konštrukcií v jazykoch Java, Python, C++

6. Spracovanie výrazov s operátormi rôznej priority: - vysvetlite algoritmus pre vyhodnotenie výrazov podľa priority operátorov - na ukážte ilustrujte generovanie syntaktického stromu pre jednoduchý výraz - porovnajte problémy spracovania výrazov v jazykoch Java, Python, C++

7. Virtuálne mašiny: - vysvetlite princíp fungovania virtuálnej mašiny - na ukážke ilustrujte generovanie kódu pre vašu virtuálnu mašinu - porovnajte jazyky Java, Python, C++ z pohľadu rýchlosti bežiaceho kódu

8. Premenné, parametre, volanie podprogramov: - objasnite algoritmy a údajové štruktúry pre kompilovanie podprogramov s premennými - na ukážke ilustrujte alokáciu pamäte pre lokálne, globálne premenné a parametre - porovnajte možnosti jazykov Java, Python, C++ z pohľadu menných priestorov

2-AIN-116/14 Funkcionálne programovanie - P. Borovanský

9. Lambda kalkul - popíšte syntax, sémantiku (interpretáciu), typovanie a vlastnosti tejto teórie. Typovaný lambda kalkul - vlastnosti teórie, vysvetlite algoritmy pre type-checking a type-inference.

10. Churchove čísla - vysvetlite význam, konštrukciu a základné aritmetické operácie s nimi. Monadické programovanie - uveďte princípy a príklad použitia list, maybe a state monád.

2-AIN-133/15 Extrémne programovanie - F. Gyarfaš

11. Agilný verzus vodopádový vývoj softvérových projektov. Agilný vývojový cyklus. Princípy unit testingu, testami riadeného programovania, refaktorizácie. Dôvody refaktorizácie a jej riziká.

12. Zdedený kód: definícia, podmienky pre prácu s ním, obaľovanie testami, využívanie techník ako seam, sprout, wrap, príklad na niektorú z techník.

2-AIN-131/14 Pokročilé programovanie v JAVE (JavaEE) - P. Petrovič

13. Vysvetlite aký je rozdiel medzi webovým a aplikačným serverom, čo je servlet a ako funguje, čo sú session-scoped beans a application-scoped beans a uveďte a vysvetlite príklad aplikácie, kde by ste ich účelne využili. Na príklade vysvetlite nejakú technológiu, ktorá umožňuje prepojenie týchto objektov s výstupom renderovaným na webovej stránke.

14. Vysvetlite rozdiel medzi prístupom k dátam pomocou JDBC a pomocou ORM. Ako sa ORM realizuje v Java EE? Uveďte príklady anotácií, ktoré sa pri ORM v Java EE používajú - ktoré z nich umožňujú automatické aktualizovanie viacerých tabuliek v relácii? Pokúste sa vysvetliť rozdiel medzi SQL a JPQL.

2-INF-145/15 Tvorba internetových aplikácií - R. Ostertág

15. Popíšte návrhový vzor MVC. Popíšte nejaký MVC framework podľa vášho výberu a vysvetlite ako je v danom frameworku vzor MVC implementovaný.

16. Popíšte výhody oddelenia obsahu od prezentácie. Aké možnosti oddelenia ponúka štandardne CSS, a aké ponúka napr. nejaký template engine (Smarty, alebo iný)? Popíšte tiež oddelenie obsahu od funkcionality, ktoré umožňuje knižnica JQuery.

17. Porovnajte objektovo orientované jazyky založené na triedach (napr. Java) a prototypoch (napr. Javascript).

2AIN-BS4 - Blok S4: Tvorba softvéru pre vzdelávanie

Študent si ťahá dve otázky bloku zamerania náhodne z rôznych predmetov.

2-AIN-117/15 Interaktívne programovanie - I. Kalaš

1. Rekurzívne dáta a výpočty - charakterizujte rekurzívne dátové štruktúry a rekurzívne funkcie na prácu s číslami a rekurzívnymi dátovými štruktúrami, ilustrujte na logovských zoznamoch a výpočtoch s nimi - vysvetlite, aké uplatnenie má rekurzívne programovanie pri tvorbe interaktívnych aplikácií (v kontexte vzdelávania)

2. Paralelné procesy - vysvetlite pojem paralelné procesy a spôsoby práce s paralelnými procesmi logovského typu (prípadne iného) - vysvetlite, ako používame paralelné procesy pri tvorbe interaktívnych aplikácií (v kontexte vzdelávania)

3. Násobné objekty (colonies of sprites, turtles... ) v interaktívnych aplikáciách (najmä v kontexte vzdelávania) - vysvetlite, prečo a ako pracujeme s násobnými objektmi v interaktívnych aplikáciách - popíšte spôsoby riadenia a komunikácie medzi objektmi, ilustrujte na príkladoch

4. Tvar korytnačky - charakterizujte rôzne spôsoby priradenia tvaru korytnačke, vysvetlite princíp animovaných grafických tvarov - vysvetlite princíp popisu tvaru pomocou programu, jeho výhody a využitie

5. Tvorba interaktívnych aplikácií - charakterizujte a na príkladoch ilustrujte, čo je interaktívna aplikácia (najmä v kontexte vzdelávania) - vysvetlite a ilustrujte, aké programovacie postupy a prvky používame pri tvorbe takýchto aplikácií, aby sme podporili interakciu aplikácie s jej používateľom

2-AIN-115/15 a 2-AIN-136/15 Softvér pre vzdelávanie a Tvorba edukačného softvéru - M. Tomcsányiová

6. Edukacný softvér a vzdelávanie - charakterizujte, ako môže používanie edukacného softvéru a digitálnych technológií zmenit vyucovanie a ucenie sa - vysvetlite rôzne obavy spojené s používaním digitálnych technológií a edukacného softvéru vo vyucovaní, navrhnite opatrenia na ich prevenciu, resp.minimalizáciu

7. Princípy tvorby edukacného softvéru - charakterizujte a ilustrujte vhodné grafické používatelské rozhrania (GUI) pre žiakov rôznych vekových kategórií - porovnajte GUI edukacných aplikácií pre desktopové a mobilné zariadenia

8. Výskum a výskumník pri vývoji edukacného softvéru - charakterizujte edukacný výskum a jeho stratégie výskum vývojom a akcný výskum - vysvetlite dôvody a formy spolupráce programátora s ucitelom a žiakmi pri vývoji edukacného softvéru

9. Klasifikácia a hodnotenie edukacného softvéru - charakterizujte rôzne spôsoby klasifikácie edukacného softvéru (podla vyucovacieho predmetu, podla vzdelávacej paradigmy, podla funkcie) a ilustrujte niektoré kategórie na príkladoch - vysvetlite rôzne spôsoby hodnotenia edukacného softvéru (z edukacného pohladu, z pohladu používatela, z hladiska technických požiadaviek)

10. Digitálne technológie pre osoby so špeciálnymi vzdelávacími potrebami - prezentujte klasifikáciu osôb so špeciálnymi vzdelávacími potrebami - charakterizujte potenciál digitálnych technológií a rôznych druhov asistenčných technológií pre osoby so špeciálnymi vzdelávacími potrebami

2-AIN-2139/14 Kompilátory a interpretre - Ľ. Salanci

11. Princípy fungovania kompilátora a interpretra: - objasnite princípy fungovania lexikálnej analýzy, syntaktickej analýzy, generovania kódu - na ukážke vysvetlite rozdiel medzi interpretáciou a kompiláciou - porovnajte jazyky Java, Python, C++ z pohľadu kompilátorov a interpretrov

12. Spracovanie programových konštrukcií: - objasnite algoritmy pre spracovania programových konštrukcií kompilátorom a interpretrom - na ukážte ilustrujte reprezentáciu krátkeho programu pomocou syntaktického stromu - porovnajte náročnosť spracovania programových konštrukcií v jazykoch Java, Python, C++

13. Spracovanie výrazov s operátormi rôznej priority: - vysvetlite algoritmus pre vyhodnotenie výrazov podľa priority operátorov - na ukážte ilustrujte generovanie syntaktického stromu pre jednoduchý výraz - porovnajte problémy spracovania výrazov v jazykoch Java, Python, C++

14. Virtuálne mašiny: - vysvetlite princíp fungovania virtuálnej mašiny - na ukážke ilustrujte generovanie kódu pre vašu virtuálnu mašinu - porovnajte jazyky Java, Python, C++ z pohľadu rýchlosti bežiaceho kódu

15. Premenné, parametre, volanie podprogramov: - objasnite algoritmy a údajové štruktúry pre kompilovanie podprogramov s premennými - na ukážke ilustrujte alokáciu pamäte pre lokálne, globálne premenné a parametre - porovnajte možnosti jazykov Java, Python, C++ z pohľadu menných priestorov

2-AIN-225/15 Tvorba multimédiálnych aplikácií a počítačových hier - Ľ. Salanci

16. Reprezentácia a zobrazovanie herného sveta: - objasnite, kde a akým spôsobom sa používajú objekty, polia, stromy a grafy v hrách - na ukážke ilustrujte algoritmy, ktoré sa používajú pri zobrazovaní objektov herného sveta - porovnajte niekoľko profesionálnych hier z hľadiska použitých reprezentácií

17. Pohyb objektov: - vysvetlite princípy testovania kolízií a využitia zjednodušených fyzikálnych modelov v hrách - na ukážke ilustrujte algoritmy pre pohyb, testovanie a riešenie kolízií objektov - uveďte možnosti ale aj nevýhody fyzikálnych simulácií v hrách

18. Cesty a dostupnosť cieľov: - vysvetlite princíp fungovania algoritmov pre hľadanie cesty: dijkstrov, A* - na ukážke ilustrujte niektorý z uvedených algoritmov - uveďte, v akých situáciách v hrách sa tieto algoritmy oplatí používať

19. Správanie herných objektov: - vysvetlite implementáciu správania objektov: pomocou automatov, grafmi - na konkrétnej ukážke porovnajte výhody a nevýhody jednotlivých prístupov - porovnajte niekoľko profesionálnych hier z hľadiska algoritmov správania sa objektov

20. Stratégia protihráčov: - vysvetlite princíp fungovania algoritmu MinMax + heuristického odhadu - ilustrujte na konkrétnej hre kroky výpočtu nasledujúceho ťahu - porovnajte rôzne typy hier z hľadiska výpočtovej náročnosti

2-AIN-224/15 Webové programovanie - R. Hrušecký

21. Manipulácia s objektmi webovej stránky - popíšte rôzne spôsoby zmeny objektu, resp. vlastností objektu (pomocou čistého JavaScriptu, resp. iných knižníc, napr. JQuery) - popíšte rozdiely v zmenách vlastností pomocou CSS a JavaScriptu na konkrétnych príkladoch, ich výhody/nevýhody, kedy je ktorý vhodnejšie použiť

22. Tvorba dynamických aplikácií na strane klienta - popíšte výhody a nevýhody vykresľovania pomocou HTML objektov, resp. objektu Canvas - uveďte príklady, kedy je vhodnejšie využiť HTML objekty, a kedy Canvas

23. Spôsoby komunikácie medzi klientom a serverom - popíšte rozdiely, výhody a nevýhody klasickej komunikácie klient-server a komunikácie na základe objektu XHR (XMLHttpRequest) - uveďte konkrétne príklady využitia takejto komunikácie

24. Ukladanie údajov na strane klienta - charakterizujte rôzne prístupy, rozdiely, výhody a nevýhody ukladania údajov na strane klienta - popíšte – v tomto kontexte – rozdiely medzi prehliadačmi, resp. medzi desktopovými a mobilnými zariadeniami - vysvetlite rozdiely rôznych prístupov z pohľadu bezpečnosti

25. Realtime komunikácia medzi prehliadačom a serverom - vysvetlite vzťah WebSocket, socket.io, a node.js - ilustrujte tieto vzťahy na konkrétnych príkladoch