Předmět: Algoritmy a programování v kybernetice

« Zpět
Název předmětu Algoritmy a programování v kybernetice
Kód předmětu KKY/APK
Organizační forma výuky Přednáška + Cvičení
Úroveň předmětu Bakalářský
Rok studia nespecifikován
Semestr Zimní
Počet ECTS kreditů 5
Vyučovací jazyk Čeština
Statut předmětu nespecifikováno
Způsob výuky Kontaktní
Studijní praxe Nejedná se o pracovní stáž
Doporučené volitelné součásti programu Není
Vyučující
  • Polreich Milan, Ing. Ph.D.
Obsah předmětu
1.-4.: Analýza, dekompozice a algoritmizace. Programování jako nástroj pro řešení problémů, úvod do jazyka Python. 5.-7.: Standardní datové struktury (matice, vektor, řídká matice, graf), optimalizace datových struktur s ohledem na specifika architektury počítače - lokalita struktur v paměti, vhodná volba datových typů. 8.-10.: Numerické algoritmy a jejich implementace (pojem stabilita numerického algoritmu, umělá stabilizace, konvoluce a filtrace, numerická optimalizace), standardní knihovny lineární algebry (BLAS, LAPACK). 11.-13.: Paralelní programování (paralelizace, vektorizace, jejich rozdíly, specifika kompilátorů, automatická vektorizace, paralelizace), heterogenní a distribuované systémy, vícejádrové a mnohojádrové architektury se sdílenou pamětí, paralelní konstrukty (paralelní for, tasky, pipelines).

Studijní aktivity a metody výuky
Přednáška s diskusí, Studium metodou řešení problémů, Samostudium studentů, Přednáška, Cvičení
  • Vypracování seminární práce v bakalářském studijním programu [5-40] - 40 hodin za semestr
  • Příprava na zkoušku [10-60] - 38 hodin za semestr
  • Kontaktní výuka - 26 hodin za semestr
  • Praktická výuka [vyjádření počtem hodin] - 26 hodin za semestr
Předpoklady
Odborné znalosti
disponovat základními znalosti jednoho programovacího jazyka
porozumět základním matematickým algoritmům
vysvětlit základní problematiku architektury počítače
Odborné dovednosti
aplikovat základní matematické znalosti (matematická analýza, linearní algebra)
číst a prozumět dokumentaci programovacího jazyka
vytvořit program dle zadání v jednom prgramovacím jazyce
Obecné způsobilosti
bc. studium: kriticky přistupuje ke zdrojům informací, informace tvořivě zpracovává a využívá při svém studiu a praxi,
Výsledky učení
Odborné znalosti
popsat základní problémy numerických algoritmů
popsat datové a řídící struktury programovacího jazyka
vysvětlit problematiku analýzy, dekompozice a algoritmizace zadaného problému
charakterizovat datové struktury pro daný problém
Odborné dovednosti
provést analýzu daného problému a dekomponovat ho na dílčí úlohy
implementovat základní numerické algoritmy
optimalizovat datové struktury s ohledem na specifika architektury počítače
navrhnout algoritmus řešící daný problém/úlohu
Obecné způsobilosti
bc. studium: srozumitelně a přesvědčivě sdělují odborníkům i laikům informace o povaze odborných problémů a vlastním názoru na jejich řešení,
Vyučovací metody
Odborné znalosti
Přednáška založená na výkladu,
Cvičení (praktické činnosti),
Přednáška s diskusí,
Odborné dovednosti
Cvičení (praktické činnosti),
Samostatná práce studentů,
Řešení problémů,
Obecné způsobilosti
Přednáška s diskusí,
Prezentace práce studentů,
Samostatná práce studentů,
Hodnotící metody
Odborné znalosti
Ústní zkouška,
Písemná zkouška,
Test,
Odborné dovednosti
Demonstrace dovedností (praktická činnost),
Výstupní projekt,
Průběžné hodnocení,
Obecné způsobilosti
Písemná zkouška,
Doporučená literatura
  • Cormen, Thomas H. Introduction to algorithms. Cambridge : MIT Press, 2001. ISBN 0-262-03293-7.
  • Herout, Pavel. Učebnice jazyka C. 1. díl. České Budějovice : Kopp, 2004. ISBN 80-7232-220-6.
  • Herout, Pavel. Učebnice jazyka C. 2. díl. České Budějovice : Kopp, 2004. ISBN 80-7232-221-4.
  • Knuth, Donald E. The art of computer programming. Vol. 1, fundamental algorithms. Massachusetts : Addison-Wesley, 1973. ISBN 0-201-03809-9.
  • Pecinovský, Rudolf; Virius, Miroslav. Učebnice programování - základy algoritmizace : Učebnice s příklady v turbo Pascalu a Borland C++. Praha : Grada, 1997. ISBN 80-7169-577-7.
  • Racek, Stanislav; Ježek, Karel. Paralelní programování. Plzeň : ZČU, 1994. ISBN 80-7082-128-0.
  • Virius, Miroslav. Základy algoritmizace. Praha : ČVUT, 1995. ISBN 80-01-01346-4.


Studijní plány, ve kterých se předmět nachází
Fakulta Studijní plán (Verze) Kategorie studijního oboru/specializace Doporučený ročník Doporučený semestr