generated by TTT-TomasTeachingTools on 2023-07-25, 15:39:24

study plan table

0102030405060708091011121314151617181920212223242526272829303132
1, #Diskrétní matematika
B4B01DMA
doc. Mgr. Petr Habala, Ph.D.
Z, 2P+2S, 5 cr., Z,ZK
Lineární algebra
B0B01LAG
doc. RNDr. Jiří Velebil, Ph.D.
Z, 4P+2S, 8 cr., Z,ZK
Řešení problémů a hry
B4B33RPH
prof. Ing. Tomáš Svoboda, Ph.D.
Z, 2P+3C, 6 cr., KZ
Procedurální programování (pro OI)
B0B36PRP
prof. Ing. Jan Faigl, Ph.D.
Z, 2P+2C, 6 cr., Z,ZK
Volitelny predmet
V5
NA
NA, NA, 5 cr., NA
2, #Logika a grafy
B0B01LGR
prof. RNDr. Marie Demlová, CSc.
Z,L, 3P+2S, 5 cr., Z,ZK
Matematická analýza 1
B0B01MA1
prof. RNDr. Josef Tkadlec, CSc.
Z,L, 4P+2S, 7 cr., Z,ZK
Architektura počítačů
B4B35APO
Ing. Pavel Píša, Ph.D.; Ing. Richard Šusta, Ph.D.
L, 2P+2L, 6 cr., Z,ZK
Programování v JAVA
B0B36PJV
doc. Ing. Jiří Vokřínek, Ph.D.
L, 2P+3C+7D, 6 cr., Z,ZK
Počítačové sítě
B4B38PSI
doc. Ing. Jiří Novák, Ph.D.
L, 2P+2L, 4 cr., Z,ZK
Volitelny predmet
V2
NA
NA, NA, 2 cr., NA
3, #Matematická analýza 2
B0B01MA2
doc. RNDr. Jaroslav Tišer, CSc.
L,Z, 4P+2S, 7 cr., Z,ZK
Pravděpodobnost a statistika
B0B01PST
prof. Mgr. Petr Hájek, DrSc.
Z,L, 4P+2S, 7 cr., Z,ZK
Algoritmizace
B4B33ALG
RNDr. Marko Genyk-Berezovskyj
Z, 2P+2C, 6 cr., Z,ZK
Operační systémy
B4B35OSY
Ing. Michal Sojka, Ph.D.
Z, 2P+2C, 4 cr., Z,ZK
Numerické metody
B4B01NUM
prof. Ing. Mirko Navara, DrSc.
Z, 2P+2C, 6 cr., Z,ZK
Matematika pro kybernetiku
A3M01MKI
prof. RNDr. Jan Hamhalter, CSc.
Z, 4P+2S, 8 cr., Z,ZK
4, #Databázové systémy
B0B36DBS
Ing. Martin Řimnáč, Ph.D.
L, 2P+2C+4D, 6 cr., Z,ZK
Paralelní a distribuované výpočty
B4B36PDV
doc. Ing. Michal Jakob, Ph.D.
L, 2P+2C, 6 cr., Z,ZK
Funkcionální programování
B4B36FUP
prof. Dr. Michal Pěchouček, MSc.
L, 2P+2C, 6 cr., Z,ZK
Základy umělé inteligence
B4B36ZUI
prof. Dr. Michal Pěchouček, MSc.
L, 2P+2C, 6 cr., Z,ZK
Teorie informace a kódování
A0B01TIK
prof. RNDr. Jan Hamhalter, CSc.
L, 4P+2S, 8 cr., Z,ZK
5, #Samostatný projekt
B4BPROJ6
Ing. Pošík Petr Ph.D.; Ing. Sloup Jaroslav ; Ing. Šebek Jiří
Z,L, 0+2, 6 cr., Z
Optimalizace
B0B33OPT
doc. Ing. Tomáš Werner, Ph.D.
Z,L, 4P+2C, 7 cr., Z,ZK
Jazyky, automaty a gramatiky
B4B01JAG
prof. RNDr. Marie Demlová, CSc.
Z, 2P+2S, 6 cr., Z,ZK
Rozpoznávání a strojové učení
B4B33RPZ
prof. Ing. Jiří Matas, Ph.D.
Z, 2P+2C, 6 cr., Z,ZK
Teorie grafů
XP01TGR
prof. RNDr. Marie Demlová, CSc.
Z, 2P+1S, 4 cr., ZK
6, #Bakalářská práce - Bachelor thesis
BBAP20
prof. Ing. Roman Čmejla, CSc.; prof. Ing. Jan Faigl, Ph.D.; prof. Ing. Miroslav Husák, CSc.; doc. Ing. Jiří Vokřínek, Ph.D.; prof. Ing. Stanislav Zvánovec, Ph.D.
L,Z, 12S, 20 cr., Z
Pokročilá analýza
A0B01PAN
prof. RNDr. Jan Hamhalter, CSc.
L, 2P+2S, 6 cr., Z,ZK
compulsory courses of the programmebranch coursesbranch elective courseselectives
0102030405060708091011121314151617181920212223242526272829303132

Stats

Compulsory courses (P): B4B01DMA B0B01LAG B4B33RPH B0B36PRP B0B01LGR B0B01MA1 B4B35APO B0B36PJV B4B38PSI B0B01MA2 B0B01PST B4B33ALG B4B35OSY B0B36DBS B4B36PDV B4BPROJ6 B0B33OPT BBAP20
ECTS: 122 (in 18 courses)
Branch/specialization courses (PO): B4B01NUM B4B36FUP B4B36ZUI B4B01JAG B4B33RPZ
ECTS: 30 (in 5 courses)

Problems, warnings

Department 13000

B4BPROJ6:lectures probably incomplete, it contains only NA
labs probably incomplete, it contains only NA
literature probably incomplete, it contains only NA
BBAP20:homepage_url probably incomplete, it contains only NA

Department 13101

A0B01PAN:Course is not yet offically approved! B0B01LAG:labs probably incomplete, it contains only NA
A0B01TIK:Course is not yet offically approved! B0B01PST: Course language not specified.

Department 13133

Department 13135

B4B35APO:Course is not yet offically approved! labs probably incomplete, it contains only NA

Department 13136

B4B36PDV:labs probably incomplete, it contains only NA
B4B36ZUI:labs probably incomplete, it contains only NA
B4B36FUP:labs probably incomplete, it contains only NA

Department 13138

Department NA

Courses by department

13000:2:B4BPROJ6, BBAP20
13101:12:B4B01DMA, B0B01MA2, B0B01LGR, B0B01MA1, A0B01PAN, B0B01LAG, XP01TGR, A0B01TIK, B0B01PST, B4B01NUM, B4B01JAG, A3M01MKI
13133:4:B0B33OPT, B4B33ALG, B4B33RPH, B4B33RPZ
13135:2:B4B35OSY, B4B35APO
13136:6:B4B36PDV, B4B36ZUI, B0B36PJV, B0B36PRP, B4B36FUP, B0B36DBS
13138:1:B4B38PSI
NA:2:V2, V5

Course home pages

B4B01DMA: https://math.fel.cvut.cz/cz/lide/habala/teaching/dma.html
B0B01LAG: https://moodle.fel.cvut.cz/courses/B0B01LAG
B4B33RPH: https://cw.fel.cvut.cz/wiki/courses/B4B33RPH
B0B36PRP: https://cw.felk.cvut.cz/wiki/courses/b0b36prp
V5: NA
B0B01LGR: https://cw.fel.cvut.cz/b222/courses/b0b01lgr/
B0B01MA1: https://moodle.fel.cvut.cz/courses/B0B01MA1
B4B35APO: https://cw.felk.cvut.cz/wiki/courses/b35apo/
B0B36PJV: https://cw.fel.cvut.cz/wiki/courses/b0b36pjv
B4B38PSI: https://moodle.fel.cvut.cz/courses/B4B38PSI
V2: NA
B0B01MA2: https://moodle.fel.cvut.cz/courses/B0B01MA2
B0B01PST: https://math.fel.cvut.cz/en/people/heliskat/01pst2.html
B4B33ALG: https://cw.fel.cvut.cz/wiki/courses/B4B33ALG
B4B35OSY: https://osy.pages.fel.cvut.cz/
B4B01NUM: https://moodle.fel.cvut.cz/courses/B4B01NUM
A3M01MKI: http://math.feld.cvut.cz/veronika/vyuka/b3b01kat.htm
B0B36DBS: https://cw.fel.cvut.cz/wiki/courses/b0b36dbs/
B4B36PDV: https://cw.fel.cvut.cz/wiki/courses/b4b36pdv/start
B4B36FUP: https://cw.fel.cvut.cz/wiki/courses/fup/start
B4B36ZUI: https://cw.fel.cvut.cz/wiki/courses/b4b36zui/start
A0B01TIK: http://math.feld.cvut.cz/gollova/tik.html
B4BPROJ6: https://cw.fel.cvut.cz/wiki/courses/b4bproj6/start
B0B33OPT: https://cw.fel.cvut.cz/b231/courses/B0B33OPT
B4B01JAG: https://moodle.fel.cvut.cz/courses/B4B01JAG
B4B33RPZ: https://cw.fel.cvut.cz/wiki/courses/B4B33RPZ
XP01TGR: https://moodle.fel.cvut.cz/courses/XP01TGR
BBAP20: NA
A0B01PAN: http://math.feld.cvut.cz/veronika/vyuka/a0b01pan.htm

Pre-requisities

B4B01DMA: High-school mathematics and ability to think.
B0B01LAG: NA
B4B33RPH: none
B0B36PRP: The main topics for the course exam are: expressions, control structures, program structuring, procedures and functions, parameter passing mechanism, value and reference calls; Abstract data type; C program translation and language data types; structured data types, arrays, files, pointers, pointers, and arrays.
V5: NA
B0B01LGR: None.
B0B01MA1: See web page.
B4B35APO: NA
B0B36PJV: Basic knowledge of algorithms and programming.
B4B38PSI: NA
V2: NA
B0B01MA2: https://moodle.fel.cvut.cz/course/view.php?id=6317
B0B01PST: NA
B4B33ALG: Programming 1
B4B35OSY: C programming computer architecture
B4B01NUM: Linear Algebra, Calculus.
A3M01MKI: NA
B0B36DBS: math (function, projection, cartesian product) JAVA
B4B36PDV: NA
B4B36FUP: NA
B4B36ZUI: NA
A0B01TIK: Probability, statistics, and information theory (A0B01PSI), Discrete mathematics (A4B01DMA) For more information see http://math.feld.cvut.cz/gollova/tik.html
B4BPROJ6: NA
B0B33OPT: Linear algebra. Calculus, including intro to multivariate calculus. Recommended are numerical algorithms and probability and statistics.
B4B01JAG: None
B4B33RPZ: Knowledge of linear algebra, mathematical analysis and probability and statistics.
XP01TGR: No.
BBAP20: NA
A0B01PAN: NA

Updated in KOS

V5:NA
V2:NA
BBAP20:2021-03-28T16:09:46.0
B4B01NUM:2020-01-07T15:54:35.0
B4B35APO:2020-01-03T14:52:35.0
B0B33OPT:2019-11-14T17:31:09.0
A0B01TIK:2019-11-04T12:28:52.0
A0B01PAN:2019-11-04T12:27:53.0
B4B38PSI:2019-10-21T14:17:12.0
XP01TGR:2019-09-27T09:27:26.0
B0B01MA2:2019-09-20T09:54:51.0
B0B01LAG:2019-09-20T09:44:29.0
B0B01LGR:2019-09-19T18:52:48.0
A3M01MKI:2019-09-13T14:40:19.0
B4B33ALG:2019-09-06T15:15:19.0
B4B33RPH:2019-09-06T15:15:08.0
B4B33RPZ:2019-09-06T15:14:57.0
B0B01MA1:2019-08-21T23:41:46.0
B4B01JAG:2019-08-21T23:41:05.0
B0B01PST:2019-08-21T23:40:43.0
B4B01DMA:2019-08-21T23:24:16.0
B4B36ZUI:2019-08-19T16:32:00.0
B4B36PDV:2019-08-19T16:31:48.0
B4B36FUP:2019-08-19T16:31:42.0
B0B36PRP:2019-08-19T16:30:59.0
B0B36PJV:2019-08-19T16:30:53.0
B0B36DBS:2019-08-19T16:30:47.0
B4B35OSY:2019-08-12T11:36:31.0
B4BPROJ6:2019-02-18T14:40:20.0

Courses

Diskrétní matematika

code: B4B01DMA
hours: 2P+2S
ECTS: 5
homepage: https://math.fel.cvut.cz/cz/lide/habala/teaching/dma.html
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4680906.html, http://www.fel.cvut.cz/cz/education/bk/predmety/46/80/p4680906.html
lecturer(s): doc. Mgr. Habala Petr Ph.D.
Dept: 13101
annotation: V průběhu kursu se studenti seznámí s částí významných témat zahrnovaných tradičně do oboru diskrétní matematika, zejména jde o dělitelnost a počítání modulo, diofantické rovnice, binární relace, indukci, mohutnost množin a rekurentní rovnice. Druhým cílem kursu je naučit studenty jazyk matematiky, pasivně i aktivně, a představit jim matematiku jako vědu
prerequisities: High-school mathematics and ability to think.
lectures:
1. Dělitelnost, Eukleidův algoritmus.
2. Počítání modulo, prostory Zn zbytkových tříd. 
3. Diofantické rovnice, kongruenční rovnice a soustavy. 
4. Binární relace a jejich základní vlastnosti.
5. Speciální relace: částečné uspořádání a ekvivalence.
6. Zobrazení. Mohutnost množin, spočetné a nespočetné množiny.
7. Matematická indukce a její využití.
8. Posloupnosti a součty, asymptotický růst.
9. Lineární rekurentní (rekursivní) rovnice.
10. Výpočet časové náročnosti rekursivních algoritmů, Master theorem.
11. Princip inkluze a exkluze.
labs/seminars:
1. Dělitelnost, Eukleidův algoritmus.
2. Počítání modulo, prostory Zn zbytkových tříd. 
3. Diofantické rovnice, kongruenční rovnice a soustavy. 
4. Binární relace a jejich základní vlastnosti.
5. Speciální relace: částečné uspořádání a ekvivalence.
6. Zobrazení. Mohutnost množin, spočetné a nespočetné množiny.
7. Matematická indukce a její využití.
8. Posloupnosti a součty, asymptotický růst.
9. Lineární rekurentní (rekursivní) rovnice.
11. Výpočet časové náročnosti rekursivních algoritmů, Master theorem.
12. Princip inkluze a exkluze.
literature:
[1] P. Habala: Diskétní matematika, on-line.

Lineární algebra

code: B0B01LAG
hours: 4P+2S
ECTS: 8
homepage: https://moodle.fel.cvut.cz/courses/B0B01LAG
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4680606.html, http://www.fel.cvut.cz/cz/education/bk/predmety/46/80/p4680606.html
lecturer(s): doc. RNDr. Velebil Jiří Ph.D.
Dept: 13101
annotation: Tento kurs pokrývá úvodní partie lineární algebry. Nejprve se studují základní pojmy související s prostorem a lineární transformací (lineární závislost a nezávislost vektorů, báze, souřadnice, atd.). Pak se přejde k otázkám maticového počtu (determinanty, inverzní matice, matice lineárního zobrazení, vlastní čísla a vlastní vektory, diagonalizace matice, atd.). Aplikace zahrnují řešení soustav lineárních rovnic, geometrii trojdimenzionálního prostoru (včetně skalárního a vektorového součinu) a SVD rozklad matice
prerequisities: NA
lectures:
1.  Úvod, polynomy.
2.  Lineární prostory, lineární závislost a nezávislost.
3.  Báze, dimenze, souřadnice vektoru v bázi.
4. Matice, operace s maticemi, determinanty. Inverzní matice.
5. Soustavy lineárních rovnic, Frobeniova věta.
6.  Popis všech řešení homogenní i nehomogenní soustavy lineárních rovnic.
7. Lineární zobrazení. Matice lineárního zobrazení.
8. Volné vektory. Skalární a vektorový součin ve 3D.
9. Aplikace skalárního a vektorového součinu v bodovém prostoru dimenze 3.
10. Lineární prostor se skalárním součinem, Gramův-Schmidtův ortogonalizační proces, věta o projekci. 
11. Vlastní čísla a vlastní vektory matice a lineárního zobrazení.
12. Podobnost matic, matice podobná diagonální matici, zobecněné vlastní vektory.
13. SVD rozklad matice, pseudoinverze.
14. Rezerva.


labs/seminars:
NA
literature:
Velebil, J.: Abstraktní a konkrétní lineární algebra,
http://math.feld.cvut.cz/velebil/akla.html

Další možné materiály (pozor: značení je většinou jiné než na přednášce)
[1] Pták, P.: Introduction to Linear Algebra. ČVUT, Praha, 2005.
[2] Krajník, E.: Základy maticového počtu. ČVUT Praha, 2006.
[3] Olšák, P.: Úvod do algebry, zejména lineární, skriptum FEL ČVUT, Praha 2007.

stránky předmětu:
http://math.feld.cvut.cz/velebil/teaching/b0b01lag.html

Řešení problémů a hry

code: B4B33RPH
hours: 2P+3C
ECTS: 6
homepage: https://cw.fel.cvut.cz/wiki/courses/B4B33RPH
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4683706.html, http://www.fel.cvut.cz/cz/education/bk/predmety/46/83/p4683706.html
lecturer(s): Ing. Pošík Petr Ph.D.; prof. Ing. Svoboda Tomáš Ph.D.
Dept: 13133
annotation: Předmět si klade za cíl naučit studenty přemýšlet o řešení algoritmických a programovacích problémů inženýrským způsobem. To zahrnuje především rozmyšlení úlohy, dekompozice, definování rozhraní, způsob testování jednotlivých mezikroků, ověření a testování úspěšnosti celé úlohy. Práce na zajímavých projektech by měla přirozeným způsobem přivést studenty k otázkám, které by si studenti měli pokládat v teoretických předmětech. Studenti by se měli na těžké předměty těšit, protože se pořádně dozví, proč jim to nefungovalo. Primárním cílem není aby studenti vypracovali úlohy bezchybně, ale aby se naučili klást důležité otázky. Předmět rovněž uvede studenty do objektově orientovaného programování s důrazem na čitelnost a robustnost kódu. Přednášky mají tři hlavní bloky: i) vybraná témata z programovacích technik a návrhu algoritmů - nutný základ pro implementaci úloh, včetně testovacích technik; ii) vysvětlení jednotlivých úloh; iii) motivační přednášky - vybraná témata především z oblasti počítačových věd.
prerequisities: none
lectures:
1. Úvod. Představení první úlohy.
2. Jak se tvoří program, vybrané kapitoly pro první úlohu.
3. Objekt jako základní stavební prvek programu.
4. Podmínky a funkce.
5. Představení druhé úlohy.
6. Složené datové typy, iterátory
7. Elegantní ukončení programu, ošetření vyjímek.
8. Testování programu, unittesty.
9. Představení třetí úlohy.
10. Jak psát čistý kód. 
11. Motivační přednáška I
12. Motivační přednáška II
13. Motivační přednáška III
14. Závěr.
labs/seminars:
Studenti budou pracovat na několika programovacích úlohách, samostatně i v týmech. Jednotlivé části kódu budou průběžně odevzdávány a diskutovány s učiteli. Množina úloh se bude průběžně doplňovat a obměňovat. Příklady úloh: Spam filtr. Jednoduchá detekce zpráv na základě výskytu podezřelých slov. K dispozici trénovací i testovací množina. Reversi, dvouhráčové hry. Hledání cesty pro mobilního robota. Jednoduché bludiště, scéna obsahující jednoduché geometrické objekty. úkolem je nalézt cestu pro robota z bodů A do bodů B. Kritérium optimality může být různé. Vězňovo dilema, klasický problém z teorie her se širokou aplikovalností.
literature:
1. Peter Wentworth, Jeffrey Elkner, Allen B. Downey, and Chris Meyers. How to Think Like a Computer Scientist. 3rd edition, 2012, http://openbookproject.net/thinkcs/python/english3e/ český překlad Jaroslav Kubias, http://howto.py.cz
2. Mark Pilgrim. Dive intoPython 3. Český překlad Petr Přikryl, http://diveintopython3.py.cz
3. Doporučená tématická četba k jednotlivým úlohám.

Procedurální programování (pro OI)

code: B0B36PRP
hours: 2P+2C
ECTS: 6
homepage: https://cw.felk.cvut.cz/wiki/courses/b0b36prp
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4702606.html, http://www.fel.cvut.cz/cz/education/bk/predmety/47/02/p4702606.html
lecturer(s): prof. Ing. Faigl Jan Ph.D.
Dept: 13136
annotation: Náplň předmětu je koncipována s důrazem na osvojení si základních principů a paradigmat strukturovaného procedurálního programování a datové abstrakce tak, aby studenti uvažovali o používání výpočetních prostředků algoritmicky a dovedli tak efektivně využít programových prostředků pro zpracování dat a řešení výpočetních úloh. V předmětu je kladen důraz na osvojení si programovacích návyků pro vytváření čitelných a znovu použitelných programů. Zároveň je snahou vybudovat u studentů nadhled nad fungováním programu, datového modelu, přístupem a správou paměti. Z tohoto důvodu bude při výuce využit programovací jazyk C, který poskytuje přímou vazbou mezi programem a alokovaným paměťovým prostorem programu. Studenti se v předmětu seznámí nejen s překladem zdrojových kódů a linkováním aplikace, ale také s laděním a profilováním programu. Přednášky budou založeny na prezentaci základních programových konstrukcí a demonstraci motivačních programů dávající do souvislosti dílčí konstrukty s praktickým zápisem poukazující na čitelnost a strukturu zdrojových kódů, reálnou výpočetní náročnost a s tím související nástroje pro profilování a ladění. V závěru semestru budou stručně představeny základní vlastnosti objektově orientovaného programování
prerequisities: The main topics for the course exam are: expressions, control structures, program structuring, procedures and functions, parameter passing mechanism, value and reference calls; Abstract data type; C program translation and language data types; structured data types, arrays, files, pointers, pointers, and arrays.
lectures:
1.1. Základy programovaní v C, charakteristika jazyka, model kompilace, syntax jazyka, struktura programu a struktura funkce
2. Datové typy - reprezentace v paměti, deklarace, operátory, výrazy a řídicí struktury
3. Příkazy, standardní vstup a výstup. 
4. Ukazatele, dynamická alokace paměti
5. Pole a řetězce, vícerozměrná pole; 
6. Funkce, volání hodnotou a odkazem - zásobník
7. Struktury a uniony, výčtové typy a jejich vnitřní reprezentace
8. Práce se soubory - binární a textové soubory, sekvenční a přímý přístup do souboru
9. Preprocesor, projekt, knihovny, makra a preprocesor a standardní knihovny, moduly, projekty (makefile, podmíněný překlad)
10. Spojové struktury
11. Abstraktní datový typ - fronta, zásobník
12. Stromové struktury - binární strom
13. Základní rozdíly C a C++
14. Rezerva
labs/seminars:
Praktická cvičení jsou zaměřena na získání a procvičování programovacích návyků tak, aby studenti byli schopni samostatně vytvářet čitelné kód. Odevzdávané úlohy budou automaticky ověřovány a bude testována robustnost ošetření vstupních hodnot. V průběhu semestru studenti získávají body za odevzdané úlohy a programovací písemky. Bodové hodnocení úlohy se skládá z bodů za správnost a efektivitu kódu, dále pak z bodů zohledňující kvalitu zdrojových kódů, jejich čitelnost a znovu použitelnost.
literature:
Herout, P.: Učebnice jazyka C. III. vyd. Kopp, Č.Budějovice, 2016. ISBN: 80-85824-21-9

Herout, P.: Učebnice jazyka C - 2 díl, Kopp, Č.Budějovice, 978-80-7232-367-8, 2002.

Kochan: Programming in C (4th Edition), 2014 ISBN 978-0321776419

Cormen, Leiserson, Rivest, and Stein: Introduction to Algorithms (3rd Edition), 2009, ISBN 978-0262033848

King: C Programming: A Modern Approach (2nd Edition), 2008, ISBN 860-1406428577

Volitelny predmet

code: V5
hours: NA
ECTS: 5
homepage: NA
CTU/FEE URLs: NA, NA
lecturer(s): NA
Dept: NA
annotation: NA
prerequisities: NA
lectures:
NA
labs/seminars:
NA
literature:
NA

Logika a grafy

code: B0B01LGR
hours: 3P+2S
ECTS: 5
homepage: https://cw.fel.cvut.cz/b222/courses/b0b01lgr/
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4680706.html, http://www.fel.cvut.cz/cz/education/bk/predmety/46/80/p4680706.html
lecturer(s): prof. RNDr. Demlová Marie CSc.; Dr. Mgr. Gollová Alena
Dept: 13101
annotation: Tento předmět se zabývá základy matematické logiky a teorie grafů. Je zavedena syntax a sémantika výrokové logiky a predikátové logiky prvního řádu. Důraz je kladen na pochopení pojmu sémantického důsledku, na vztah mezi formulí a jejím modelem. Dále jsou zavedeny některé základní pojmy teorie grafů a popsány algoritmy k řešení některých základních úloh z teorie grafů.
prerequisities: None.
lectures:
Výroková logika (cca 4 týdny):
1. Formální jazyk. Jazyk výrokové logiky.
2. Odvozování důsledků (dedukce).
3. Význam a sémantický důsledek.
4. Reserva: pokročilá témata.

Predikátová logika (cca 4 týdny):
1. Jazyk predikátové logiky.
2. Význam a sémantický důsledek v predikátové logice.
3. Dedukce v predikátové logice.
4. Reserva: pokročilá témata.

Teorie grafů: (cca 5 týdnů):
1. Základní pojmy teorie grafů.
2. Kostry.
3. Silná souvislost.
4. Kreslení jedním tahem.
5. Barvení.
labs/seminars:
Řešení teoretických i algoritmických úloh z logiky a teorie grafů.
Upevňování a rozšiřování znalostí a dovedností z přednášek.
literature:
[1] M. Huth, M. Ryan: Logic in Computer Science: Modelling and Reasoning about Systems,  Cambridge University Press, 2004.
[2] J. A. Bondy, U. S. R. Murty: Graph theory with applications. Elsevier Science Ltd/North-Holland, 1976.

V češtině:
[3] M. Demlová, B. Pondělíček: Matematická logika. ČVUT Praha, 1997.
[4] J. Demel: Grafy a jejich aplikace, Academia 2002, druhé vydání 2015.
[5] P. Kovář: Teorie grafů, online, 2019.

Matematická analýza 1

code: B0B01MA1
hours: 4P+2S
ECTS: 7
homepage: https://moodle.fel.cvut.cz/courses/B0B01MA1
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4680306.html, http://www.fel.cvut.cz/cz/education/bk/predmety/46/80/p4680306.html
lecturer(s): Mgr. Křepela Martin Ph.D.; prof. RNDr. Tkadlec Josef CSc.
Dept: 13101
annotation: Cílem kurzu je seznámit studenty se základy diferenciálního a integrálního počtu funkce jedné proměnné
prerequisities: See web page.
lectures:
1. Reálná čísla. Elementární funkce.
2. Limita a spojitost funkce.
3. Derivace funkce, její vlastnosti a aplikace.
4. Věty o střední hodnotě. L'Hospitalovo pravidlo, Taylorův polynom.
5. Extrémy a průběh funkcí.
6. Primitivní funkce, základní metody výpočtu.
7. Integrace racionálních a dalších typů funkcí.
8. Riemannův integrál. Newtonova-Leibnizova formule.
9. Nevlastní integrál. Aplikace integrálu.
10. Posloupnost a její limita.
11. Číselné řady a kritéria jejich konvergence.
12. Úvod do diferenciálních rovnic.
13. Další témata z matematické analýzy.
labs/seminars:
1. Reálná čísla. Elementární funkce.
2. Limita a spojitost funkce.
3. Derivace funkce, její vlastnosti a aplikace.
4. Věty o střední hodnotě. L'Hospitalovo pravidlo, Taylorův polynom.
5. Extrémy a průběh funkcí.
6. Primitivní funkce, základní metody výpočtu.
7. Integrace racionálních a dalších typů funkcí.
8. Riemannův integrál. Newtonova-Leibnizova formule.
9. Nevlastní integrál. Aplikace integrálu.
10. Posloupnost a její limita.
11. Číselné řady a kritéria jejich konvergence.
12. Úvod do diferenciálních rovnic.
13. Další témata z matematické analýzy.
literature:
[1] J. Tkadlec: Diferenciální a integrální počet funkcí jedné proměnné. ČVUT Praha, 2004, 2011.
[2] L. Průcha: Řady, ČVUT Praha, 2005. 
[3] J. Tkadlec: Diferenciální rovnice. Laplaceova transformace. ČVUT Praha, 2005.

Architektura počítačů

code: B4B35APO
hours: 2P+2L
ECTS: 6
homepage: https://cw.felk.cvut.cz/wiki/courses/b35apo/
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet5099306.html, http://www.fel.cvut.cz/cz/education/bk/predmety/50/99/p5099306.html
lecturer(s): Ing. Píša Pavel Ph.D.; Ing. Šusta Richard Ph.D.
Dept: 13135
annotation: Předmět studenty seznámí s architekturou soudobých počítačových systémů, především se základními stavebními prvky, jejich funkcí a vzájemným propojením. Předmět přistupuje k výkladu od popisu hardware a klade důraz na porozumění součinnosti programovací jazyk - assembler - hardware. Po úvodním přehledu funkčních bloků počítače je podrobněji popsána stavba procesoru, paměťový a vstupně výstupní subsystém až po přehledové seznámení s různými síťovými topologiemi a sběrnicemi. Během výkladu je brán zřetel na provázanost hardwarových a softwarových komponent, především nejnižších vrstev operačních systémů, ovladačů zařízení a virtualizačních technik. Obecné principy jsou rozvedeny na příkladech několika standardních procesorových architektur. Cvičení jsou v první části zaměřena na detailní seznámení s činností procesoru. Od programování na úrovni procesoru pak postupují k přímé obsluze portů a hardware s využitím programovacího jazyka C.
prerequisities: NA
lectures:
1.      Architektura počítače, struktura, organizace a podsystémy. Reprezentace, zobrazení a přenos informace (především čísel, IEEE-754) v počítači. 
2.      Procesor - ALU, von Neumannova architektura, formát instrukcí, jednocyklový procesor, řadič a řízení 
3.      Paměť - hierarchický koncept, technologie pamětí,  vyrovnávací paměti - cache, konzistence dat,  disková úložiště, zabezpečení dat a RAID
4.      Paměť - virtuální paměť, správa paměti, MMU  
5.      Zřetězené vykonávaní instrukcí, hazardy, vyvažování stupňů zřetězení a časování; Superzřetězení 
6.      Vstupní a výstupní podsystém počítače, sběrnice, dvoubodové spoje, sítě, PCI a PCI express sběrnice, souvislý režim, HyperTransport, Quickpath Interconnect
7.      Vstupní a výstupní podsystém počítače z pohledu software 
8.      Technické a organizační prostředky - vnější události, výjimky, reálný čas, přímý přístup do paměti, autonomní kanál 
9.      Sítě procesorů a počítačů, topologie sítí, komunikace - sítě typu LAN, MAN, WAN, sítě řídicích počítačů 
10.      Předávání parametrů funkcím a virtuálním instrukcím operačního systému. Zásobníkové rámce, registrová okna, přepínání režimů a realizace systémových volání. 
11.      Klasické registrově orientované architektury s komplexní instrukční sadou. Ukázka realizace MMU, cache, sběrnice. 
12.      Procesorová rodina INTEL x86, Od 8086 k EMT64. Hlavní zaměření na 32-bit a 64-bit režimy s krátkým vysvětlením komplikací způsobených nutností zachování kompatability s 16-bit 8086 a 80286 segmentového přístupu a proč ho současné OS používají v co nejvíce minimalizované formě. Příklad SIMD instrukcí (MMX, SSE). 
13.      Přehled vývoje architektury a koncepcí CPU (RISC/CISC) - procesory ARM, ColdFire, SPARC a PowerPC a procesory pro vestavné aplikace 
14.      Mnohaúrovňová organizace počítače, virtuální stroje. Konvenční architektura a implementačně závislá mikroarchitektura. Přenositelný bytecode a virtuální programovací prostředí (Java, C#/.Net). Virtualizační techniky (např XEN, VMWARE) a paravirtualizace. 
labs/seminars:
NA
literature:
[1] Hennessy, J. L., and D. A. Patterson. Computer Architecture: A Quantitative Approach, 4rd ed. Morgan Kaufman, 2006. ISBN: 0123704901.
[2] Patterson, D. A., and J. L. Hennessy. Computer Organization and Design: The Hardware/Software Interface, 4rd ed. Morgan Kaufman, 2011. ISBN: 0123747503.

Programování v JAVA

code: B0B36PJV
hours: 2P+3C+7D
ECTS: 6
homepage: https://cw.fel.cvut.cz/wiki/courses/b0b36pjv
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet5010706.html, http://www.fel.cvut.cz/cz/education/bk/predmety/50/10/p5010706.html
lecturer(s): doc. Ing. Vokřínek Jiří Ph.D.
Dept: 13136
annotation: Předmět navazuje na základy algoritmizace a programování z prvního semestru a uvádí studenty do prostředí Java. Předmět je vybudován na znalosti objektové koncepce jazyka Java. Součástí seznámení s koncepcí jazyka Java jsou výjimky, zpracování událostí a budování grafického rozhraní. Budou představeny základní knihovní metody, práce se soubory a použití generických typů. Důležitým tématem jsou modely vícevláknových aplikací a jejich implementaci. Praktická cvičení praktických dovedností a znalostí Java formou řešení dílčích úloh a semestralní práce, které budou odevzdávány průběžně prostřednictvím systému pro správu zdrojových souborů. Bodové hodnocení úlohy se skládá z bodů za správnost a efektivitu kódu, dále pak z bodů zohledňující kvalitu zdrojových kódů, jejich čitelnost a znovu použitelnost.
prerequisities: Basic knowledge of algorithms and programming.
lectures:
1. Koncepce, historie jazyka a jeho vývoj - Java Virtual Machine, instalace vývojového prostředí, překlad a interpretace, syntaxe, primitiva a základní konstrukty.
2. Objektově orientované programování v programovacím jazyku Java, třídy, rozhraní a objekty;  struktura programu, kompilace a spuštění, předávání parametrů, aplikace a aplety.
3. Řízení běhu programu, základní datové typy, proměnné, operátory, výjimky.
4. Pole, řetězce, základní datové kolekce a iterátory.
5. Principy objektového přístupu, třídy a dědičnost, řízení přístupu, hierarchie tříd, dědění, kompozice, abstraktní třídy, polymorfismus.
6. Datové kolekce a generické datové typy.
7. Práce se soubory, datové proudy, modely I/O operací.
8. Síťování - způsoby a modely komunikace, síťová API v programovacím jazyku Java, protokoly UDP, TCP a HTTP. Aplikace klient / server.
9. Paralelní programování - vlákna a modely vícevláknových aplikací, synchronizační primitiva.
10. Příklad vícevláknové aplikace a komunikace mezi vlákny; rozhraní JNI.
11. Grafické uživatelské rozhraní, události a listenery, Java 2D/3D, knihovny AWT a Swing.
12. Ovládání uživatelských rozhraní, multimediální rozhraní.
13. Distribuované programování - serializace,  propojování modulů (middleware) a vzdálené volání funkcí, rozhraní Java RMI a další, např. ICE.
14. Kódovací konvence a styly, nástroje pro řízení překladu, logování; rezerva.
labs/seminars:
1. Vývojové prostředí a odevzdávání úloh.
2. Překlad a spuštění programu, dokumentace (javadoc), základy Java kódovací konvence a stylu.
3. Nástroje pro sestavení programu (ant, maven), základní dostupné třídy v Java Class Library.
4. Proměnné, výrazy, předávání parametrů programu a spuštění programu.
5. Řízení běhu programu, řetězce, cykly, prioritní fronta
6. Zadání semestrální práce 
7. Třídy, objekty a dědičnost; struktura programu, incializace objektů a správa paměti
8. Polymorphismus
9. Generické datové typy
10. Načítání a ukládání souborů
11. Síťování
12. Vícevláknové aplikace
13. Grafické uživatelské rozhraní
14. Serializace a distribuované programování
literature:
Doporučená literatura:
1. Herout, P.: Učebnice jazyka Java, Kopp, Č. Budějovice, 2000, s. 350.
2. Herout, P.: Učebnice jazyka Java II, Kopp, Č. Budějovice, 2001, s. 350.
3. Eckel, B.: Thinking in Java, Prentice Hall, 2006, s. 1150.

Počítačové sítě

code: B4B38PSI
hours: 2P+2L
ECTS: 4
homepage: https://moodle.fel.cvut.cz/courses/B4B38PSI
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4666906.html, http://www.fel.cvut.cz/cz/education/bk/predmety/46/66/p4666906.html
lecturer(s): doc. Ing. Novák Jiří Ph.D.
Dept: 13138
annotation: Cílem předmětu je seznámit studenty se základními principy komunikace v heterogenních počítačových sítích. Jsou popsána základní fyzická média, topologie, metody řízení přístupu, ARQ algoritmy, představeny základní modely datových přenosů a vysvětleny základy kódování a šifrování. Dále se studenti seznámí s nejrozšířenějšími technologiemi lokálních počítačových sítí, základy protokolů Internetu a metodami a protokoly pro správu a monitoring sítí
prerequisities: NA
lectures:
1. Úvod, definice základních pojmů, model ISO/OSI, funkce vrstev
2. Metalické, optické a bezdrátové fyzické médium, vlastnosti, parametry
3. Entropie informačního zdroje, zdrojové kódování, kapacita komunikačního kanálu
4. Modely komunikačních kanálů (AWGN, BSC, ...), modulace, komunikace v rozprostřeném spektru
5. Typy datových přenosů, metody sdílení kapacity kanálu, fyzické a logické topologie
6. Metody řízení přístupu ke sdílenému médiu a jejich vlastnosti, adresace
7. ARQ metody, kódy pro detekci a opravy chyb
8. Utajování informace, symetrické a asymetrické šifry, distribuce klíčů, certifikáty, digitální podpis
9. Propojování distribuovaných systémů, směrování, metody řízení datového toku, QoS
10. Technologie LAN (IEEE802.3), spanning tree, VLAN, PoE
11. Technologie WLAN (IEEE802.11), DCF, PCF, virtuální odposlech
12. Protokolový zásobník TCP/IP, IP protokol, ARP, DHCP, ICMP, NAT, DNS
13. Transportní protokoly UDP, TCP, RTP, řízení datového toku, congestion control
14. Správa počítačových sítí, SNMP, RMON
labs/seminars:
1. Měření s číslicovým osciloskopem
2. Zabezpečení datových přenosů pomocí CRC
3. Metalické vedení
4. Optická vlákna
5. Bezdrátové sítě

Semestrální projekt zaměřený na praktickou implementaci síťových aplikací. 
literature:
Tanenbaum, A. S., Wethetral, D.J.: Computer Networks, Prentice Hall 2010, ISBN-13: 978-0132126953

Volitelny predmet

code: V2
hours: NA
ECTS: 2
homepage: NA
CTU/FEE URLs: NA, NA
lecturer(s): NA
Dept: NA
annotation: NA
prerequisities: NA
lectures:
NA
labs/seminars:
NA
literature:
NA

Matematická analýza 2

code: B0B01MA2
hours: 4P+2S
ECTS: 7
homepage: https://moodle.fel.cvut.cz/courses/B0B01MA2
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4680806.html, http://www.fel.cvut.cz/cz/education/bk/predmety/46/80/p4680806.html
lecturer(s): prof. Mgr. Hájek Petr DrSc.; doc. RNDr. Tišer Jaroslav CSc.
Dept: 13101
annotation: Tento předmět pokrývá úvod do diferenciálního a integrálního počtu funkcí více proměnných spolu se základními integrálními větami o křivkovém a plošném integrálu. V další části se probírají řady funkční a mocninné s přihlédnutím na Taylorovy a Fourierovy řady
prerequisities: https://moodle.fel.cvut.cz/course/view.php?id=6317
lectures:
1. Základní kritéria konvergence řad.
2. Funkční řady, Weierstrasseovo kritérium. Mocninné řady.
3. Taylorovy rozvoje a Fourierovy řady.
4. Funkce více proměnných, limita, spojitost.
5. Směrové a parciální derivace, diferenciál a gradient.
6. Derivace složené funkce, derivace vyšších řádů.
7. Jakobiho matice. Lokální extrémy.
8. Vázané extrémy, Lagrangeova metoda.
9. Dvojný a trojný integrál, Fubiniho věta a věta o substituci.
10. Křivkový integrál funkce, křivkový integrál pole, aplikace.
11. Plošný integrál funkce a pole a jeho aplikace.
12. Gaussova, Greenova, Stokesova věta.
13. Potenciál vektorového pole.
labs/seminars:
1. Základní kritéria konvergence řad.
2. Funkční řady, Weierstrasseovo kritérium. Mocninné řady.
3. Taylorovy rozvoje a Fourierovy řady.
4. Funkce více proměnných, limita, spojitost.
5. Směrové a parciální derivace, diferenciál a gradient.
6. Derivace složené funkce, derivace vyšších řádů.
7. Jakobiho matice. Lokální extrémy.
8. Vázané extrémy, Lagrangeova metoda.
9. Dvojný a trojný integrál, Fubiniho věta a věta o substituci.
10. Křivkový integrál funkce, křivkový integrál pole, aplikace.
11. Plošný integrál funkce a pole a jeho aplikace.
12. Gaussova, Greenova, Stokesova věta.
13. Potenciál vektorového pole.
literature:
[1] Hamhalter J. Tišer J.: Diferenciální počet funkcí více proměnných, ČVUT 2005. 
[2] Hamhalter J., Tišer J.: Integrální počet funkcí více proměnných, ČVUT 2005.

Pravděpodobnost a statistika

code: B0B01PST
hours: 4P+2S
ECTS: 7
homepage: https://math.fel.cvut.cz/en/people/heliskat/01pst2.html
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4681506.html, http://www.fel.cvut.cz/cz/education/bk/predmety/46/81/p4681506.html
lecturer(s): doc. RNDr. Helisová Kateřina Ph.D.
Dept: 13101
annotation: Předmět seznamuje se základy teorie pravděpodobnosti a matematické statistiky. Zahrnuje popisy pravděpodobnosti, náhodných veličin, jejich rozdělení, charakteristik a operací s náhodnými veličinami. Jsou vyloženy výběrové statistiky, bodové a intervalové odhady, základní testy hypotéz a metoda nejmenších čtverců. Základní pojmy a výsledky teorie Markovových řetězců.
prerequisities: NA
lectures:
 1. Základní pojmy teorie pravděpodobnosti. Kolmogorovův model pravděpodobnosti. Nezávislost, podmíněná pravděpodobnost, Bayesův vzorec.
 2. Náhodné veličiny a způsoby jejich popisu. Náhodný vektor. Distribuční funkce.
 3. Kvantilová funkce. Směs náhodných veličin.
 4. Charakteristiky náhodných veličin a jejich vlastnosti. Operace s náhodnými veličinami. Základní typy rozdělení.
 5. Charakteristiky náhodných vektorů. Kovariance, korelace. Čebyševova nerovnost. Zákon velkých čísel. Centrální limitní věta.
 6. Základní pojmy statistiky. Výběrový průměr, výběrový rozptyl. Intervalové odhady střední hodnoty a rozptylu. 
 7. Metoda momentů, metoda maximální věrohodnosti. EM algoritmus.
 8. Testování hypotéz o střední hodnotě a rozptylu. 
 9. Testy dobré shody.
10. Testy korelace, neparametrické testy.
11. Diskrétní náhodné procesy. Stacionární procesy. Markovovy řetězce.
12. Klasifikace stavů Markovových řetězců. 
13. Asymptotické vlastnosti Markovových řetězců. Přehled a ukázky aplikací.
labs/seminars:
 1. Příklady na elementární pravděpodobnost.
 2. Kolmogorovův model pravděpodobnosti. Nezávislost, podmíněná pravděpodobnost, Bayesův vzorec.
 3. Směs náhodných veličin. 
 4. Střední hodnota. Operace s náhodnými veličinami. 
 5. Rozptyl. Náhodný vektor, sdružené rozdělení.
 6. Výběrový průměr, výběrový rozptyl. Čebyševova nerovnost. Centrální limitní věta.
 7. Intervalové odhady střední hodnoty a rozptylu.
 8. Metoda momentů, metoda maximální věrohodnosti.
 9. Testování hypotéz o střední hodnotě a rozptylu. 
10. Testy dobré shody. Testy korelace. Neparametrické testy.
11. Diskrétní náhodné procesy. Stacionární procesy. Markovovy řetězce.
12. Klasifikace stavů Markovových řetězců. 
13. Asymptotické vlastnosti Markovových řetězců.
literature:
[1] Navara, M.: Pravděpodobnost a matematická statistika. Skriptum FEL ČVUT, 1. vydání, Praha, 2007.
[2] Rogalewicz, V.: Pravděpodobnost a statistika pro inženýry. Skriptum FBMI ČVUT, 2. vydání, Praha, 2007.
[3] Zvára, K., Štěpán, J.: Pravděpodobnost a matematická statistika, 2. vydání, Matfyzpress, MFF UK, Praha, 2002.
[4] Nagy, I.: Pravděpodobnost a matematická statistika. Cvičení. Skriptum FD CVUT, Praha, 2002.

Algoritmizace

code: B4B33ALG
hours: 2P+2C
ECTS: 6
homepage: https://cw.fel.cvut.cz/wiki/courses/B4B33ALG
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4682306.html, http://www.fel.cvut.cz/cz/education/bk/predmety/46/82/p4682306.html
lecturer(s): RNDr. Genyk-Berezovskyj Marko
Dept: 13133
annotation: Cílem předmětu je schopnost samostatné implementeca různých variant zálkadních úloh informatiky. Hlavní témata jsou algoritmy řazení a vyhledávání a jim odpovídající datové struktury. Důraz je kladen na algoritmický aspekt úloh a efektivitu praktického řešení
prerequisities: Programming 1
lectures:
1. Řád růstu funkcí, asymptotická složitost algoritmu
2. Rekurze, složitost rekurentních algoritmů, mistrovská věta
3. Stromy, binární stromy, prohledávání s návratem 
4. Fronta, graf, průchod stromem/grafem do šířky/hloubky
5. Vyhledávani v poli, binární vyhledávací stromy 
6. AVL a B- stromy 
7. Řazení, Insert Sort, SelectionSort, Bubble Sort, QuickSort 
8. Řazení, Merge Sort, Halda, Heap Sort
9. Řazení, Radix sort, Counting Sort, Bucket Sort
10. Dynamické programování, struktura optimálního řešení, odstranění rekurze, optimální BVS 
11. Dynamické programování, nejdelší společná podposloupnost,  optimální násobení matic, problém batohu
12. Hashing, otevřené a zřetězené tabulky, double hashing
13. Hashing, srůstající tabulky, univerzální hashování, 
14. Řazení vícedimenzionálních dat, porovnání řadících algoritmů

labs/seminars:
1. Řád růstu funkcí, asymptotická složitost algoritmu
2. Rekurze, složitost rekurentních algoritmů, mistrovská věta
3. Stromy, binární stromy, prohledávání s návratem 
4. Fronta, graf, průchod stromem/grafem do šířky/hloubky
5. Vyhledávani v poli, binární vyhledávací stromy 
6. AVL a B- stromy 
7. Řazení, Insert Sort, SelectionSort, Bubble Sort, QuickSort 
8. Řazení, Merge Sort, Halda, Heap Sort
9. Řazení, Radix sort, Counting Sort, Bucket Sort
10. Hashing, otevřené a zřetězené tabulky, double hashing
11. Hashing, srůstající tabulky, univerzální hashování, 
12. Dynamické programování, struktura optimálního řešení, odstranění rekurze, optimální BVS 
13. Dynamické programování, nejdelší společná podposloupnost,  optimální násobení matic, problém batohu
14. Řazení vícedimenzionálních dat, porovnání řadících algoritmů
literature:
[1] T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein: Introduction to Algorithms, 3rd ed., MIT Press, 2009,

[2] S. Dasgupta, C.H. Papadimitriou, and U.V. Vazirani: Algorithms, Mcgraw-Hill Higher Education, 2006,

[3] Pavel Töpfer: Algoritmy a programovací techniky, Prometheus Praha 1995, 2. vydání 2007

[4] Robert Sedgewick: Algoritmy v C, části 1-4, SoftPress, Praha, 2003 


Operační systémy

code: B4B35OSY
hours: 2P+2C
ECTS: 4
homepage: https://osy.pages.fel.cvut.cz/
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4683606.html, http://www.fel.cvut.cz/cz/education/bk/predmety/46/83/p4683606.html
lecturer(s): Ing. Sojka Michal Ph.D.; RNDr. Štěpán Petr Ph.D.
Dept: 13135
annotation: Student se seznámí se základními koncepty a principy operačních systémů, jako jsou procesy a vlákna, jejich komunikace a plánování, synchronizační prostředky, virtuální paměť, správa periferií, souborové systémy či základní otázky bezpečnosti. Na přednáškách budou tato témata probrána teoreticky s odkazy na implementace převážně v OS Linux a Windows. Od začátku budou uvažovány platformy s vícejádrovými procesory. Na cvičeních budou studenti vypracovávat úlohy v jazyce C/C++ a budou pracovat s operačními systémy Linux a NOVA (mikrojádro)
prerequisities: C programming computer architecture
lectures:
1. Architektura počítače, historie a typy OS, komponenty OS.
2. Obsluha přerušení a vyjímek. Systémová volání.
3. Procesy, vlákna, přepínání kontextu, rozvrhování (plánování), lokální vs. globalní plánování, migrace vláken.
4. Synchronizace, časově závislé chyby, přístup ke sdíleným zdrojům (nepreemptivní sekce, semafory, mutexy, spinlocky, Java synchronize), uváznutí.
5. Meziprocesní komunikace (signály, roury, předávání zpráv)
6. Virtuální paměť, výpadky stránek, odkládání, copy-on-write, spouštění procesů, relokace, dynamické knihovny.
7. Správa paměti, paměťové alokátory (v jádře a uživatelském prostoru, halda).
8. Bezpečnost (security), trusted computing base, buffer overflow, ASLR, antiviry, šifrování.
9. Vstup/výstup, ukládání dat, síťová rozhraní, USB, HID, ovladače zařízení (Linux, Win).
10. Souborové systémy, žurnálování, integrita dat, disková vyrovnávací paměť.
11. Grafický subsystém, trame buffer, HW akcelerace, paralelní výpočty.
12.Virtualizace.
13. Mobilní OS, struktura OS Android a jeho aplikací, spolupráce s cloudovými službami
14. Duševní vlastnictví a jeho ochrana, open source softwarové licence, ekonomické aspekty využití open source
labs/seminars:
1. Úvod, shell, opakování programování v C, makefile praktický vstupní test
2. Základy používání shellu, skriptování.
3. Systémová volání - Linux (assembler, C)
4. Systémová volání - na mikrojádře NOVA
5. Synchronizace v C - úloha na vlákna a synchronizaci (Linux)
6. Úloha na IPC (roura mezi vlákny, obsluha signálů, Linux)
7. Zavedení ELF souboru do paměti a spuštění (NOVA)
8. Přepínání vláken (NOVA)
9. Semafor, preemptivní multitasking (NOVA)
10. Bezpečnost, buffer overflow exploit (Linux)
11. Alokace paměti (halda, Linux)
12. Implementace souborového systému (NOVA)
13. Odevzdání souborového systému, zápočet.
literature:
1. TANENBAUM, Andrew S a Albert S WOODHULL. Operating systems design and implementation. 3rd ed. Upper Saddle River: Prentice-Hall, c2006, xvii, 1054 s. ISBN 0131429388.
2. http://wiki.osdev.org/
3. http://hypervisor.org/

Numerické metody

code: B4B01NUM
hours: 2P+2C
ECTS: 6
homepage: https://moodle.fel.cvut.cz/courses/B4B01NUM
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4681806.html, http://www.fel.cvut.cz/cz/education/bk/predmety/46/81/p4681806.html
lecturer(s): prof. Ing. Navara Mirko DrSc.
Dept: 13101
annotation: Předmět seznamuje se základními numerickými metodami: interpolace a aproximace funkcí, numerické derivování a integrování, řešení transcendentních rovnic a soustav lineárních rovnic. Důraz je kladen na získání praktických zkušeností s používáním probíraných metod, odhady chyb výsledku a demonstraci jejich vlastností za pomoci programu Maple a počítačové grafiky.
prerequisities: Linear Algebra, Calculus.
lectures:
 1. Přehled problémů, kterými se zabývá numerická matematika.
 2. Vznik a šíření chyb v numerických výpočtech
 3. Aproximace funkcí, interpolace polynomy.
 4. Chyby při interpolaci polynomy. Odhad chyby
 5. Hermitův interpolační polynom. Spliny.
 6. Aproximace funkcí metodou nejmenších čtverců.
 7. Základní metody výpočtu kořenů funkcí.
 8. Metoda prosté iterace, věta o pevném bodě.
 9. Základní věta algebry, metody separace a výpočtu kořenů polynomů.
10. Řešení soustav lineárních rovnic.
11. Numerická derivace. Richardsonova extrapolace.
12. Numerická integrace. Odhad chyb a volba kroku.
13. Gaussova metoda, Rombergova metoda.
14. Rezerva.
labs/seminars:
 1. Instruktáž o práci v laboratoři a o systému Maple.
 2. Samostatná práce - seznámení se systémem Maple.
 3. Interpolace polynomy, chyba interpolace a její odhad.
 4. Samostatná práce na zápočtových úlohách.
 5. Samostatná práce na zápočtových úlohách.
 6. Metoda nejmenších čtverců.
 7. Samostatná práce na zápočtových úlohách.
 8. Řešení nelineárních rovnic, separace kořenů.
 9. Samostatná práce na zápočtových úlohách.
10. Řešení soustav lineárních rovnic.
11. Samostatná práce na zápočtových úlohách.
12. Numerická derivace.
13. Numerická integrace, úpravy zadání.
14. Samostatná práce a odevzdávání zápočtových úloh. Zápočet.
literature:
[1] Navara, M., Němeček, A.: Numerické metody, skriptum FEL ČVUT, Praha, 2008, ISBN 80-01-02689-2.
[2] Navara, M., Němeček, A.: Worksheety v Maple pro jednotlivá témata.  On-line na stránkách předmětu.
[3] Maple User Manuals and Programming Guides, Maplesoft, a division of Waterloo Maple Inc. (http://www.maplesoft.com/documentation_center/), pravěk až současnost, elektronické verze jsou také součástí helpu v instalaci programu.

Matematika pro kybernetiku

code: A3M01MKI
hours: 4P+2S
ECTS: 8
homepage: http://math.feld.cvut.cz/veronika/vyuka/b3b01kat.htm
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet12562104.html, http://www.fel.cvut.cz/cz/education/bk/predmety/12/56/p12562104.html
lecturer(s): prof. RNDr. Hamhalter Jan CSc.; doc. RNDr. Sobotíková Veronika CSc.
Dept: 13101
annotation: Cílem je vyložit základy komplexní analýzy a jejich aplikací . Technika komplexní analýzy se použije dále při výkladu integrálních transformací (Laplaceova transformace, Fourierova transformace, Z-transformace). Dalším tématem jsou náhodné procesy (stacionární, markovské, spektrální hustota).
prerequisities: NA
lectures:
1.	Komplexní rovina. Funkce komplexní proměnné. Elementární funkce.
2.	Cauchy-Riemannovy podmínky, holomorfnost.
3.	Křivkový integrál, Cauchyova věta a Cauchyův integrální vzorec.
4.	Rozvoj holomorfní funkce v mocninnou řadu. Laurentovy řady.
5.	Rozvoj funkce v Laurentovu řadu. Singularity.
6.	Reziduum. Reziduová věta a její aplikace.
7.	Fourierova transformace.
8.	Laplaceova transformace - výpočet inverze pomocí reziduí.
9.	Transformace Z a její aplikace.
10.     Spojité náhodné procesy a časové řady - autokovariance,   typy stacionarit.
11.	Základní příklady: Poissonův proces,  gaussovské procesy, Wierův proces, bílý šum.
12.	Spektrální hustota stacionárního procesu a její vyjádření pomocí Fourierovy 
        transformace.  Spektrální rozklad posloupnosti klouzavých součtů.
13.	Markovské řetězce se spojitým časem a nekonečnou množinou stavů.

labs/seminars:
1.	Komplexní rovina. Funkce komplexní proměnné. Elementární funkce.
2.	Cauchy-Riemannovy podmínky, holomorfnost.
3.	Křivkový integrál, Cauchyova věta a Cauchyův integrální vzorec.
4.	Rozvoj holomorfní funkce v mocninnou řadu. Laurentovy řady.
5.	Rozvoj funkce v Laurentovu řadu. Singularity.
6.	Reziduum. Reziduová věta a její aplikace.
7.	Fourierova transformace.
8.	Laplaceova transformace - výpočet inverze pomocí reziduí.
9.	Transformace Z a její aplikace.
10.     Spojité náhodné procesy a časové řady - autokovariance,   typy stacionarit.
11.	Základní příklady: Poissonův proces,  gaussovské procesy, Wierův proces, bílý šum.
12.	Spektrální hustota stacionárního procesu a její vyjádření pomocí Fourierovy 
        transformace.  Spektrální rozklad posloupnosti klouzavých součtů.
13.	Markovské řetězce se spojitým časem a nekonečnou množinou stavů.


literature:
1.  J. Hamhalter, J.Tišer:  Funkce komplexní proměnné, Skripta FEL ČVUT, 2017.
2.  H. A. Priestly:  Introduction to Complex Analysis, Oxford University Press, 2003.
3.  A. D. Wunsch:  Complex variables with Applications, Third Edition, Pearson 2005.
4.  L. Debnath:  Integral Transforms and their Applications, CRC Press, Inc., 1995
5.  J. L. Schiff:  The Laplace transform, Theory and Applications. Springer Verlag, 1996.
6.  J. Veit:  Integrální transformace, XIV, SNTL, Praha 1979.

 Elektronické materiály: 
1.  M. Bohata, J. Hamhalter:  Integrální transformace: http://math.feld.cvut.cz/bohata/kan/transformace.pdf
2.  M. Bohata, J. Hamhalter:  Sbírka úloh z komplexní analýyzy a integrálních transformací: http://math.feld.cvut.cz/bohata/kan/sbirka.pdf

Databázové systémy

code: B0B36DBS
hours: 2P+2C+4D
ECTS: 6
homepage: https://cw.fel.cvut.cz/wiki/courses/b0b36dbs/
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet5010606.html, http://www.fel.cvut.cz/cz/education/bk/predmety/50/10/p5010606.html
lecturer(s): Ing. Řimnáč Martin Ph.D.
Dept: 13136
annotation: Předmět je koncipován jako základní databázový kurz, v němž je důraz kladen zejména na schopnost samostatného návrhu datového modelu, zvládnutí jazyka SQL a schopnosti zvolit vhodný stupeň izolovanosti transakcí. Studenti se dále seznámí s nejběžněji používanými technikami indexace, architekturou databázových systémů a jejich správou. Své poznatky si ověří při vypracování samostatné úlohy, která bude kontrolována v průběhu semestru ve dvou kontrolních bodech
prerequisities: math (function, projection, cartesian product) JAVA
lectures:
1. Základy modelování dat, E-R diagramy, relační model 
2. Proces tvorby datového modelu
3. Dotazování v relačních databázích, základy jazyka SQL 
4. Pokročilé dotazy, agregační funkce, vnořené dotazy ppt, pdf
5. Integritní omezení, referenční integrita, normální formy. 
6. Transakce, jejich serializovatelnost, zamykání, stupně izolovanosti, uváznutí transkací
7. Indexy, efektivní implementace stromových struktur v databázích 
8. Cursor, view, uložené procedury, triggery
9. Objektově-relační mapování, JPA 2.0
10. Pokročilé techniky JPA 2.0
11.  GIS, prostorové indexační techniky 
12. Datové sklady pdf
13. Zotavení z chyb,  replikace dat, vysoká dostupnost, load balancing,
14. Moderní trendy databázových systémů
labs/seminars:
1. Motivace, seznámení s programovým vybavením, nabídka témat indiv. prací
2. Datové modelování, konceptuální a logický model
3. Návrh datového modelu, schválení tématu indiv. práce
4. SQL I.
5. SQL II.
6. SQL, CRUD, Kontrolní bod 1 (datový model)
7. Transakce, indexy
8. Pokročilé databázové techniky (pohledy, uložené procedury, triggery)
9. Přípojení k DB serveru: JDBC, JPA 2 - entity a manipulace s jimi, relace mezi entitami, JPQL
10.-11. Implementace semestrální práce
12. GIS ukázka, Datový sklad ukázka
13. Implementace semestrální práce
14. Odevzdání aplikace, zápočet
literature:
Pokorný J., Valenta M.: Databázové systémy, Nakladatelství ČVUT, Praha, 2013, ISBN 978-80-01-05212-9

Paralelní a distribuované výpočty

code: B4B36PDV
hours: 2P+2C
ECTS: 6
homepage: https://cw.fel.cvut.cz/wiki/courses/b4b36pdv/start
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4702806.html, http://www.fel.cvut.cz/cz/education/bk/predmety/47/02/p4702806.html
lecturer(s): doc. Ing. Jakob Michal Ph.D.
Dept: 13136
annotation: Cílem předmětu je studenty seznámit se základy programování paraleních a distribuovaných systémů. Studenti se naučí základním modelům a architekturám paralelních a distibuovaných výpočtů, seznámí se s technickými prostředky pro jejich programování a s vybranými základními paralleními a distribuovanými algoritmy
prerequisities: NA
lectures:
1.	Platformy a modely pro paralelní programování.
2.	Masivně paralelní architektury (GPU, Xeon Phi, atd.)
3.	Principy návrhu paralelních algoritmů.
4.	Programování se sdíleným paměťovým prostorem.
5.	Programování s MPI.
6.	Základní paralelní řadící algoritmy.
7.	Základní paralelní maticové algoritmy.
8.	Modely a architektury distribuovaných výpočtů. 
9.	Čas v distribuovaných systémech: fyzické a logické hodiny, kauzalita.
10.	Problém atomického commitu, distribuované zajištění výlučného přístupu.
11.	Detekce chyb a prevence uváznutí výpočtu, distribuované ukončení výpočtu.
12.	Problém konsensu, dosažení distribuované shody.
13.	Map-reduce výpočetní model a jeho implementace.
14.	Rezerva.
labs/seminars:
NA
literature:
1.	Ananth Grama, Anshul Gupta, George Karypis, Vipin Kumar: Introduction to Parallel Computing, Second Edition, Addison Wesley, 2003.
2.	Distributed Systems: Principles and Paradigms (2nd Edition), Prentice Hall of India, 2007.

Funkcionální programování

code: B4B36FUP
hours: 2P+2C
ECTS: 6
homepage: https://cw.fel.cvut.cz/wiki/courses/fup/start
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4703006.html, http://www.fel.cvut.cz/cz/education/bk/predmety/47/03/p4703006.html
lecturer(s): prof. Dr. Pěchouček Michal MSc.
Dept: 13136
annotation: Předmět podává úvod do technik funkcionálního programování, výhod a nevýhod funkcionálního přístupu, a nejběžnějších použití těchto technik v praxi. Tyto jazyky jsou deklarativní v tom smyslu, že programátor symbolicky popíše problém, který má být řešen, místo výčtu konkrétní posloupnosti akcí, které má počítač provést. Tento přístup umožnuje soustředit se na jádro problému a implementovat i velmi komplikované algoritmy kompaktně. Funkcionální programování má nesporné výhody pro paralelizaci a formální verifikaci algoritmů a nejužitečnější koncepty funkcionálního programování stále více pronikají i do standardních programovacích jazyků. Díky důrazu na operace se symboly a namísto čísel, funkcionální programování také nalezlo významné aplikace v umělé inteligenci, např. v agentových systémech či v symbolickém strojovém učení
prerequisities: NA
lectures:
1.  Úvod do deklarativních programovacích jazyků. Srovnání s
klasickými imperativními jazyky. Hlavní principy a praktické aplikace
funkcionálního programování.
2.  LISP: základní jazykové idiomy, atomy, seznamy, rekurze
3.  LISP: lambda abstrakce, vestavěné funkce, pokročilé datové struktury
4.  LISP: vestavěné funkce vyšších řádů
5.  LISP: nekonečné datové struktury, uzávěry (closures)
6.  Úvod do Lambda kalkulu, vztah k funkcionálnímu programování
7.  Ekvivalence funkcionálního programování s Turingovím strojem
8.  Typy ve funkcionálních jazycích, jejich smysl a důsledky na
vyjadřovací sílu jazyka, typovaný Lambda kalkulus
9.  Haskell: typy, vzory, vestavěné funkce, lambda abstrakce
10. Haskell: líné vyhodnocování, částečná aplikace funkce
11. Haskell: monády
12. Automatické optimalizace ve funkcionálním programování, formální
verifikace funkcionálních programů
13. Funkcionální programování a paralelní výpočty
14. Funkcionální rysy v populárních programovacích jazycích a nástrojích
labs/seminars:
NA
literature:
Hudak, Paul, and Joseph H. Fasel. "A gentle introduction to Haskell." ACM Sigplan Notices 27.5 (1992): 1-52.

Harvey, Brian, and Matthew Wright. Simply Scheme: introducing computer science. Mit Press, 1999.

Základy umělé inteligence

code: B4B36ZUI
hours: 2P+2C
ECTS: 6
homepage: https://cw.fel.cvut.cz/wiki/courses/b4b36zui/start
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4702906.html, http://www.fel.cvut.cz/cz/education/bk/predmety/47/02/p4702906.html
lecturer(s): doc. Mgr. Bošanský Branislav Ph.D.; prof. Dr. Pěchouček Michal MSc.
Dept: 13136
annotation: Cílem předmětu je seznámit studenty se základy symbolické umělé inteligence. V předmětu budou vysvětleny algoritmy informovaného a neinformovaného prohledávání stavového prostoru, netradiční metody reprezentace a řešení problémů a dvouhráčových her, reprezentace znalostí pomocí formální logiky, metody automatického uvažování a úvod do markovského rozhodování
prerequisities: NA
lectures:
1.	Úvod do umělé inteligence, řešení problémů pomocí prohledávání stavového prostoru
2.	Algoritmy neinformované prohledávání stavového prostoru
3.	Informované algoritmy prohledávání stavového prostoru - algoritmus A*.
4.	Pokročilé a netradiční metody prohledávání stavového prostoru.
5.	Řešení problémů pomocí algoritmů založených na splňování omezujících podmínek (CSP)
6.	Herní stromy a algoritmy pro řešení dvouhráčových her.
7.	Reprezentace plánovacích problémů
8.	Logika a reprezentace znalostí.
9.	Reprezentace znalostí ve FOL, dokazovací nástroje.
10.	Úvod do reprezentace nepřesné znalosti 
11.	Markovské modely nepřesného uvažování.
12.	Markovské rozhodovací procesy.
13.	Úvod do evolučních technik a genetických algoritmů
labs/seminars:
NA
literature:
Artificial Intelligence: A Modern Approach, Stuart Jonathan Russell, Peter Norvig, Prentice Hall, 2010

Teorie informace a kódování

code: A0B01TIK
hours: 4P+2S
ECTS: 8
homepage: http://math.feld.cvut.cz/gollova/tik.html
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet1830406.html, http://www.fel.cvut.cz/cz/education/bk/predmety/18/30/p1830406.html
lecturer(s): Dr. Mgr. Gollová Alena ; prof. RNDr. Hamhalter Jan CSc.
Dept: 13101
annotation: Předmět seznamuje studenty s matematickými základy zpracování digitální informace. Jsou vyloženy metody efektivního kódování (Lempel-Ziv) a možnosti přenosu informace informačním kanálem (Shannonova věta). Dále jsou uvedeny základy schémat pro sdílení utajené informace (secret sharing schemes). V druhé části je věnována pozornost kódům pro detekci a opravu chyb. V neposlední řadě slouží kurs jako panoráma rozličných matematických partií používaných v teorii informace (teorie pravděpodobnosti, náhodné procesy, ergodická teorie, algebra).
prerequisities: Probability, statistics, and information theory (A0B01PSI), Discrete mathematics (A4B01DMA) For more information see http://math.feld.cvut.cz/gollova/tik.html
lectures:
1) Entropie, informační divergence, vzájemná informace. Podmíněná entropie a podmíněná informace.
2) Rychlost entropie pro stacionární a ergodické zdroje informace.
3) Univerzální zdrojové kódování. Lempelovy-Zivovy kód.
4) Informační kanál, základní typy kanálů.
5) Kapacita kanálu. Blahutův-Arimotův algoritmus.
6) Shannonova věta o kapacitě kanálu. 
7) Úvod do schémat pro sdílení tajemství.
8) Algebraické struktury používané při detekci a opravě chyb. Okruh Z_n, lineární prostory nad tělesem Z_p.
9) Lineární kódy - generující a kontrolní matice. Hammingovy kódy.
10) Polynomy nad Z_p a faktorové okruhy polynomů.
11) Cyklické kódy - generující a kontrolní polynom.
12) Galoisova tělesa, primitivní prvek, charakteristika tělesa.
13) Kořeny cyklických kódů, BCH kódy.
14) Rezerva.
labs/seminars:
1) Entropie, informační divergence, vzájemná informace. Podmíněná entropie a podmíněná informace.
2) Rychlost entropie pro stacionární a ergodické zdroje informace.
3) Univerzální zdrojové kódování. Lempelovy-Zivovy kód.
4) Informační kanál, základní typy kanálů.
5) Kapacita kanálu. Blahutův-Arimotův algoritmus.
6) Shannonova věta o kapacitě kanálu. 
7) Úvod do schémat pro sdílení tajemství.
8) Algebraické struktury používané při detekci a opravě chyb. Okruh Z_n, lineární prostory nad tělesem Z_p.
9) Lineární kódy - generující a kontrolní matice. Hammingovy kódy.
10) Polynomy nad Z_p a faktorové okruhy polynomů.
11) Cyklické kódy - generující a kontrolní polynom.
12) Galoisova tělesa, primitivní prvek, charakteristika tělesa.
13) Kořeny cyklických kódů, BCH kódy.
14) Rezerva.
literature:
[1] Cover, T.M., Thomas, J.A.: Elements of Information Theory. Wiley, 2006.
[2] Yeung, R.W.: Information Theory and Network Coding. Springer, 2008.
[3] Adámek, J.: Kódování. SNTL, Praha, 1989.
[4] Vajda, I.: Teorie informace. Vydavatelství ČVUT, 2004.

Samostatný projekt

code: B4BPROJ6
hours: 0+2
ECTS: 6
homepage: https://cw.fel.cvut.cz/wiki/courses/b4bproj6/start
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4726206.html, http://www.fel.cvut.cz/cz/education/bk/predmety/47/26/p4726206.html
lecturer(s): Ing. Pošík Petr Ph.D.; Ing. Sloup Jaroslav ; Ing. Šebek Jiří
Dept: 13000
annotation: Samostatná práce na problému-projektu pod vedením školitele. V rámci tohoto předmětu je obvyklé řešit dílčí problém bakalářské práce. Proto doporučujeme zvolit si téma bakalářské práce nejpozději počátkem 5. semestru a jeho včasný výběr nepodcenit. Další podrobnější informace o předmětu (včetně podmínek pro udělení zápočtu) najdete na webové stránce https://cw.fel.cvut.cz/wiki/courses/b4bproj6/start
prerequisities: NA
lectures:
NA
labs/seminars:
NA
literature:
NA

Optimalizace

code: B0B33OPT
hours: 4P+2C
ECTS: 7
homepage: https://cw.fel.cvut.cz/b231/courses/B0B33OPT
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4674306.html, http://www.fel.cvut.cz/cz/education/bk/predmety/46/74/p4674306.html
lecturer(s): doc. Ing. Werner Tomáš Ph.D.
Dept: 13133
annotation: Kurs seznamuje se základy matematické optimalizace, přesněji optimalizace v reálných vektorových prostorech konečné dimenze. Teorie je ilustrována množstvím příkladů. Důraz je kladen na praktickou schopnost optimalizační problémy formulovat, analyzovat a posoudit jejich složitost
prerequisities: Linear algebra. Calculus, including intro to multivariate calculus. Recommended are numerical algorithms and probability and statistics.
lectures:
1. Obecná formulace úloh spojité optimalizace.
2. Přeurčené lineární soustavy, metoda nejmenších čtverců.
3. Minimalizace kvadratických funkcí bez omezení.
4. Použití SVD v optimalizaci.
5. Algoritmy na volné lokální extrémy (gradientní, Newtonova, Newtonova-Gaussova,
 Levenbergova-Marquardtova metoda).
6. Lineární programování.
7. Simplexová metoda.
8. Konvexní množiny a mnohostěny. Konvexní funkce. 
9. Úvod do konvexní optimalizace.
10. Lagrangeův formalismus, KKT podmínky.
11. Lagrangeova dualita. Dualita v LP.
12. Příklady nekonvexních úloh.
13. Úvod do vícekriteriální optimalizace.
labs/seminars:
Ve cvičení se jednak procvičuje teorie na společně řešených příkladech, jednak studenti za domácí úkoly řeší  optimalizační úlohy v jazyce Matlab.
literature:
Základní:
Elektronická skripta Tomáš Werner: Optimalizace (viz www stránka předmětu)

Dále vybrané části z těchto knih:
Lieven Vandenberghe, Stephen P. Boyd: Introduction to Applied Linear Algebra: Vectors, Matrices, and Least Squares, Cambridge University Press, 2018.
Stephen Boyd and Lieven Vandenberghe: Convex Optimization, Cambridge University Press, 2004.

Jazyky, automaty a gramatiky

code: B4B01JAG
hours: 2P+2S
ECTS: 6
homepage: https://moodle.fel.cvut.cz/courses/B4B01JAG
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4681606.html, http://www.fel.cvut.cz/cz/education/bk/predmety/46/81/p4681606.html
lecturer(s): prof. RNDr. Demlová Marie CSc.
Dept: 13101
annotation: Základní pojmy teorie konečných automatů a gramatik: deterministické a nedeterministické konečné automaty,.charakterizace třídy jazyků přijímaných konečným automatem a jejich popis regulárním výrazem. Gramatiky a jazyky generované danými gramatikami s důrazem na bezkontextové gramatiky. Pojem zásobníkového automatu a jeho vztah k bezkontextovým gramatikám. Na závěr se studenti seznámí s pojmem Turingova stroje a s tím, že existují algoritmicky nerozhodnutelné problémy
prerequisities: None
lectures:
1. Abeceda, slova nad abecedou, zřetězení slov, jazyk.
2. Deterministický konečný automat a jeho stavový diagram. Jazyk přijímaný konečným automatem. Regulární jazyky.
3. Lemma o vkládání a Nerodova věta. Redukce konečného automatu.
4. Nedeterministické konečné automaty. Podmnožinová konstrukce. Uzavřenost třídy jazyků přijímaných konečným automatem na sjednocení, zřetězení a Kleeneho operaci.
5. Regulární výrazy. Vztah regulárních jazyků a regulárních výrazů ? Kleeneho věta.
6. Algoritmická složitost úloh souvisejících s regulárními jazyky. Pojem gramatiky.
7. Chomského hierarchie tříd jazyků generovaných gramatikou. Regulární gramatiky a regulární jazyky. Bezkontextové gramatiky a bezkontextové jazyky.
8. Lemma o vkládání. Redukce bezkontextové gramatiky.
9. Zásobníkové automaty a jazyky přijímané zásobníkovými automaty prázdným zásobníkem a koncovým stavem.
10. Vlastnosti třídy bezkontextových jazyků. 
11. Deterministické zásobníkové automaty a jejich vlastnosti. Třída deterministických jazyků a třída bezprefixových jazyků.
12. Seznámení sTuringovými stroji.
13. Krátké seznámení s nerozhodnutelnými jazyky a algoritmicky neřešitelnými úlohami.
labs/seminars:
1. Abeceda, slova nad abecedou, zřetězení slov, jazyk.
2. Deterministický konečný automat a jeho stavový diagram. Jazyk přijímaný konečným automatem. Regulární jazyky.
3. Lemma o vkládání a Nerodova věta. Redukce konečného automatu.
4. Nedeterministické konečné automaty. Podmnožinová konstrukce. Uzavřenost třídy jazyků přijímaných konečným automatem na sjednocení, zřetězení a Kleeneho operaci.
5. Regulární výrazy. Vztah regulárních jazyků a regulárních výrazů ? Kleeneho věta.
6. Algoritmická složitost úloh souvisejících s regulárními jazyky. Pojem gramatiky.
7. Chomského hierarchie tříd jazyků generovaných gramatikou. Regulární gramatiky a regulární jazyky. Bezkontextové gramatiky a bezkontextové jazyky.
8. Lemma o vkládání. Redukce bezkontextové gramatiky.
9. Zásobníkové automaty a jazyky přijímané zásobníkovými automaty prázdným zásobníkem a koncovým stavem.
10. Vlastnosti třídy bezkontextových jazyků. 
11. Deterministické zásobníkové automaty a jejich vlastnosti. Třída deterministických jazyků a třída bezprefixových jazyků.
12. Seznámení sTuringovými stroji.
literature:
1] J. E. Hopcroft, R. Motwani, J. D. Ullman: Introduction to Automata Theory, Languages, and Computation, 3rd Edition, Addison-Wesley, 2006.

Rozpoznávání a strojové učení

code: B4B33RPZ
hours: 2P+2C
ECTS: 6
homepage: https://cw.fel.cvut.cz/wiki/courses/B4B33RPZ
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4683806.html, http://www.fel.cvut.cz/cz/education/bk/predmety/46/83/p4683806.html
lecturer(s): Mgr. Drbohlav Ondřej Ph.D.; prof. Ing. Matas Jiří Ph.D.
Dept: 13133
annotation: Základní úlohou rozpoznávání je nalezení strategie rozhodování minimalizující ztrátu plynoucí z chybných rozhodnutí. Potřebná znalost o (typicky statistickém) vztahu příznaků, t.j. pozorovatelných vlastností objektů a skrytých parametrů objektů z dané třídy je získána učením. Jsou představeny základní formulace úlohy rozpoznávání a principy učení. Návrh, učení a vlastnosti základních typů klasifikátorů (perceptron, support vector machines, adaboost a neuronové sítě) jsou rozebrány do hloubky
prerequisities: Knowledge of linear algebra, mathematical analysis and probability and statistics.
lectures:
1. Úvod. Formulace úloh řešených v rozpoznávání. Mapa předmětu. Pojmy.
2. Bayesovská úloha rozhodování.
3. Nebayesovské úlohy (Neyman-Pearson, Minimax, Wald, Linnik).
4. Odhady parametrů pravděpodobnostních modelů. Metoda maximální věrohodnosti.
5. Logistická regrese.
6. Učení klasifikátoru.Lineární klasifikátor. Perceptron.
7. Učení jako kvadratický optimalizační problém. Klasifikátor typu SVM.
8. Učení metodou Adaboost.
9. Neuronové sítě. Učení metodou backpropagation. 
10. Metoda nejližších sousedů. Neparametricé odhady hustoty.
11. Shlukování metodou k-means
12. Rozhodovací stromy.
13. Princial compont analysi. Fisherův linární diskriminant.
14. Rezerva. Druhý průchod látkou.
labs/seminars:
Studenti řeší několik rozpoznávacích úloh, např. rozpoznání ručně psaných znaků, identifikaci obličeje či detekci spamu pomocí jak klasických metod, tak pomocí učících se klasifikátorů.
1.Úvodní cvičení. Instalace STPR toolboxu, práce s Matlabem, jednoduchý příklad
2.Bayesovská úloha rozhodování.
3.Nebayesovské úlohy - úloha Neyman-Pearson
4.Nebayesovské úlohy - Minimaxní úloha
5.Maximálně věrohodný odhad
6.Neparametrické odhady  Parzenova okénka
7.Lineární klasifikátor - Perceptron
8.AdaBoost
9.Support Vector Machines I
10.Support Vector Machines II
11.EM algoritmus I
12.EM algoritmus II
13.Odevzdávání a kontrola úloh
14.Odevzdávání a kontrola úloh
literature:
1. Duda, Hart, Stork: Pattern Classification, John Willey and Sons, 2nd edition, New York,2001.
2. Schlesinger, Hlavac: Ten Lectures on Statistical and Structural Pattern Recognition, 2002 (Deset přednášek z teorie statistického a strukturního rozpoznávání, 1997).

Teorie grafů

code: XP01TGR
hours: 2P+1S
ECTS: 4
homepage: https://moodle.fel.cvut.cz/courses/XP01TGR
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet11506804.html, http://www.fel.cvut.cz/cz/education/bk/predmety/11/50/p11506804.html
lecturer(s): prof. RNDr. Demlová Marie CSc.
Dept: 13101
annotation: Základní pojmy teorie grafů. Stromy, jejich charakterizace, minimální kostra. Silně souvislé komponenty, prohledávání a kořenové stromy. Nejkratší cesty, Floydův alagoritmus, algebraické souvislosti. Eulerovské grafy a jejich aplikace. Hamiltonovské grafy, Chvátalova věta. Toky v transportních sítích, Ford- Fulkersonova věta. Přípustné toky a přípustné cirkulace. Párování v obecných grafech, párování v bipartitních grafech. Vrcholové pokrytí a nezávislé množiny. Kliky v grafu a barevnost grafu. Rovinné grafy. Grafy a vektorové prostory. Obsah přednášek je upravován podle potřeb studentů.
prerequisities: No.
lectures:
1. Základní pojmy a vlastnosti neorientovaných grafů.
2. Vrcholová a hranová souvislost, artikulace, mosty.
3. Základní pojmy a vlastnosti orientovaných grafů.
4. Tranzitivní uzávěr a tranzitivní redukce orientovaných grafů, minimálně silně souvislé grafy.
5. Hamiltonovské grafy (neorientované, orientované), Chvátalova věta.
6. Toky v sítích. Ford Fulkersonova věta. Myšlenky rychlých algoritmů pro toky v sítích.
7. Přípustné toky a otázky týkající se jejich existence.
8. Párování v obecných grafech a párovnáni v bipartitních grafech.
9. Nezávislé množiny, kliky, vrcholové pokrytí.
10. Hranové pokrytí., Obarvení s důrazem na vrcholové obarvení.
11. Grafy a vektorové prostory. Prostor kružnic a prosto řezů.
12. Dva pohledy na duální grafy; přes rovinné grafy a přes dualitu prostoru řezů a kružnic.
labs/seminars:
Cvičení jsou vedeny formou domácí práce s možností konzultací.
literature:
1. Reinhard Diestel: Graph Theory. Springer-Verlag, New York, 1997.
Jiří Demel: Grafy a jejich aplikace, Academia, Praha, 2015
    M.N.S. Swamy, K. Thulasiraman: Graphs, Networks, and Algorithms, Part 1, Graph Theory, John Wiley & Sons, New York, 1981 

Bakalářská práce - Bachelor thesis

code: BBAP20
hours: 12S
ECTS: 20
homepage: NA
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet4726306.html, http://www.fel.cvut.cz/cz/education/bk/predmety/47/26/p4726306.html
lecturer(s): NA
Dept: 13000
annotation: Samostatná závěrečná práce bakalářského studia komplexního charakteru. Téma práce si student vybere z nabídky témat souvisejících se studovaným programem, které vypisují katedry FEL v KOSu. Práce bude obhajována před komisí pro státní závěrečné zkoušky
prerequisities: NA
lectures:
přednášky nejsou
labs/seminars:
určují vedoucí práce
literature:
určují vedoucí práce

Pokročilá analýza

code: A0B01PAN
hours: 2P+2S
ECTS: 6
homepage: http://math.feld.cvut.cz/veronika/vyuka/a0b01pan.htm
CTU/FEE URLs: http://bilakniha.cvut.cz/cs/predmet1830206.html, http://www.fel.cvut.cz/cz/education/bk/predmety/18/30/p1830206.html
lecturer(s): prof. RNDr. Hamhalter Jan CSc.; doc. RNDr. Sobotíková Veronika CSc.
Dept: 13101
annotation: Předmět je úvodem do teorie míry a integrace a základů funkcionální analýzy. V první části je vyložena teorie Lebesgueova integrálu. Další partie jsou věnovány základním pojmům teorie Banachových a Hilbertových prostorů a jejich spojitosti s harmonickou analýzou. Poslední část se zabývá spektrální teorii operátorů a jejími aplikacemi v maticové analýze.
prerequisities: NA
lectures:
1. Algebry a okruhy podmnožin. Měřitelné funkce. Míra na sigma-algebře.
2. Abstraktní Lebesgueův integrál a střední hodnota náhodné veličiny.
3. Lebesgueova míra  v R^n (konstrukce z vnější míry). Lebesgueův integrál.
4. Konvergenční věty.
5. Součinová míra.  Fubiniho věta.
6. Integrace v R^n - věta o substituci.
7. Normovaný prostor. Úplnost. Omezené operátory na normovaném prostoru.
8. Prostor se skalárním součinem. Hilbertův prostor. Projekční věta.
9. Prostor L^2(R) jako Hilbertův prostor. Hustota diferencovatelných funkcí s kompaktním nosičem. Fourierova transformace v L^2(R). Plancherelova  věta.
10. Spektra  operátorů na Hilbertově prostoru. Základní třídy operátorů na Hilbertově prostoru: samoadjungovaný, pozitivní, unitární operátor, projekce. 
11. Diagonalizace normálního operátoru a matice.
12. Rozklady matic a operátorů - spektrální, polární, SVD.
13. Funkce operátoru a matice.
14. Rezerva.
labs/seminars:
1. Algebry a okruhy podmnožin. Měřitelné funkce. Míra na sigma-algebře.
2. Abstraktní Lebesgueův integrál a střední hodnota náhodné veličiny.
3. Lebesgueova míra  v R^n (konstrukce z vnější míry). Lebesgueův integrál.
4. Konvergenční věty.
5. Součinová míra.  Fubiniho věta.
6. Integrace v R^n - věta o substituci.
7. Normovaný prostor. Úplnost. Omezené operátory na normovaném prostoru.
8. Prostor se skalárním součinem. Hilbertův prostor. Projekční věta.
9. Prostor L^2(R) jako Hilbertův prostor. Hustota diferencovatelných funkcí s kompaktním nosičem. Fourierova transformace v L^2(R). Plancherelova  věta.
10. Spektra  operátorů na Hilbertově prostoru. Základní třídy operátorů na Hilbertově prostoru: samoadjungovaný, pozitivní, unitární operátor, projekce. 
11. Diagonalizace normálního operátoru a matice.
12. Rozklady matic a operátorů - spektrální, polární, SVD.
13. Funkce operátoru a matice.
14. Rezerva.
literature:
[1] Rudin, W.: Analýza v reálném a komplexním oboru, Academia, 1977
[2] Kreyszig, E.: Introductory functional analysis with applications, Wiley 1989
[3] Lukeš, L.: Jemný úvod do funkcionální analýzy, Karolinum, 2005
[4] Meyer, C.D.: Matrix analysis and applied linear algebra, SIAM 2001.


generated by TTT-TomasTeachingTools on 2023-07-25, 15:39:24