|
|
Main menu for Browse IS/STAG
Course info
KKY / APK
:
Course description
Department/Unit / Abbreviation
|
KKY
/
APK
|
Academic Year
|
2023/2024
|
Academic Year
|
2023/2024
|
Title
|
Algorithms and Programming in Cybernetic
|
Form of course completion
|
Exam
|
Form of course completion
|
Exam
|
Accredited / Credits
|
Yes,
5
Cred.
|
Type of completion
|
Combined
|
Type of completion
|
Combined
|
Time requirements
|
Lecture
2
[Hours/Week]
Tutorial
2
[Hours/Week]
|
Course credit prior to examination
|
Yes
|
Course credit prior to examination
|
Yes
|
Automatic acceptance of credit before examination
|
Yes in the case of a previous evaluation 4 nebo nic.
|
Included in study average
|
YES
|
Language of instruction
|
Czech
|
Occ/max
|
|
|
|
Automatic acceptance of credit before examination
|
Yes in the case of a previous evaluation 4 nebo nic.
|
Summer semester
|
0 / -
|
0 / -
|
0 / -
|
Included in study average
|
YES
|
Winter semester
|
27 / -
|
4 / -
|
4 / -
|
Repeated registration
|
NO
|
Repeated registration
|
NO
|
Timetable
|
Yes
|
Semester taught
|
Winter semester
|
Semester taught
|
Winter semester
|
Minimum (B + C) students
|
10
|
Optional course |
Yes
|
Optional course
|
Yes
|
Language of instruction
|
Czech
|
Internship duration
|
0
|
No. of hours of on-premise lessons |
|
Evaluation scale |
1|2|3|4 |
Periodicity |
každý rok
|
Evaluation scale for credit before examination |
S|N |
Periodicita upřesnění |
|
Fundamental theoretical course |
No
|
Fundamental course |
Yes
|
Fundamental theoretical course |
No
|
Evaluation scale |
1|2|3|4 |
Evaluation scale for credit before examination |
S|N |
Substituted course
|
None
|
Preclusive courses
|
N/A
|
Prerequisite courses
|
N/A
|
Informally recommended courses
|
N/A
|
Courses depending on this Course
|
N/A
|
Histogram of students' grades over the years:
Graphic PNG
,
XLS
|
Course objectives:
|
The purpose of the course is introduce students to a basic problems analysis and basic algorithms for problem solving. An introduction to python language. Data structures optimization. Numerical algorithms for cybernetics and its efficient implementations, parallel programming.
|
Requirements on student
|
Credit: term assignment, mastering of the curriculum.
Exam: Oral and writen examination on the subject is requested.
|
Content
|
1.-4.: Problem analysis, decomposition, algorithmization. Programming language as a tool for problem solving, Python programming language.
5.-7.: Standard and advanced data structures (vector, matrix, sparse matrix, graph), data structures optimization - principle of locality, a proper choice of data types.
8.-10.: Numerical algorithms and their implementation (notion of numerical algorithm stability, artificial stabilization, convolution, filtration, numerical optimization). Standard libraries of linear algebra (BLAS, LAPACK)
11.-13.: Parallel programming (parallelization, vectorization and their differences, compiler specific features, automatic parallelization, automatic vectorization), heterogeneous and distributed systems, multi-core and many-core architectures with shared memory, parallel constructs (parallel for, tasks, pipelines).
|
Activities
|
|
Fields of study
|
Studentům je k dispozici kurz v Google Classroom se všemi podstatnými informacemi a materiály.
|
Guarantors and lecturers
|
|
Literature
|
-
Basic:
Racek, Stanislav; Ježek, Karel. Paralelní programování. Plzeň : ZČU, 1994. ISBN 80-7082-128-0.
-
Basic:
Herout, Pavel. Učebnice jazyka C. 1. díl. České Budějovice : Kopp, 2004. ISBN 80-7232-220-6.
-
Basic:
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.
-
Recommended:
Cormen, Thomas H. Introduction to algorithms. Cambridge : MIT Press, 2001. ISBN 0-262-03293-7.
-
Recommended:
Knuth, Donald E. The art of computer programming. Vol. 1, fundamental algorithms. Massachusetts : Addison-Wesley, 1973. ISBN 0-201-03809-9.
-
Recommended:
Herout, Pavel. Učebnice jazyka C. 2. díl. České Budějovice : Kopp, 2004. ISBN 80-7232-221-4.
-
Recommended:
Virius, Miroslav. Základy algoritmizace. Praha : ČVUT, 1995. ISBN 80-01-01346-4.
-
On-line library catalogues
|
Time requirements
|
All forms of study
|
Activities
|
Time requirements for activity [h]
|
Undergraduate study programme term essay (20-40)
|
40
|
Practical training (number of hours)
|
26
|
Contact hours
|
26
|
Preparation for an examination (30-60)
|
38
|
Total
|
130
|
|
Prerequisites
|
Knowledge - students are expected to possess the following knowledge before the course commences to finish it successfully: |
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 |
Skills - students are expected to possess the following skills before the course commences to finish it successfully: |
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 |
Competences - students are expected to possess the following competences before the course commences to finish it successfully: |
N/A |
|
Learning outcomes
|
Knowledge - knowledge resulting from the course: |
charakterizovat datové struktury pro daný problém |
popsat datové a řídící struktury programovacího jazyka |
popsat základní problémy numerických algoritmů |
vysvětlit problematiku analýzy, dekompozice a algoritmizace zadaného problému |
Skills - skills resulting from the course: |
implementovat základní numerické algoritmy |
navrhnout algoritmus řešící daný problém/úlohu |
optimalizovat datové struktury s ohledem na specifika architektury počítače |
provést analýzu daného problému a dekomponovat ho na dílčí úlohy |
Competences - competences resulting from the course: |
N/A |
|
Assessment methods
|
Knowledge - knowledge achieved by taking this course are verified by the following means: |
Oral exam |
Written exam |
Test |
Skills - skills achieved by taking this course are verified by the following means: |
Continuous assessment |
Project |
Skills demonstration during practicum |
Competences - competence achieved by taking this course are verified by the following means: |
Written exam |
|
Teaching methods
|
Knowledge - the following training methods are used to achieve the required knowledge: |
Lecture |
Practicum |
Lecture supplemented with a discussion |
Skills - the following training methods are used to achieve the required skills: |
Individual study |
Practicum |
Task-based study method |
Competences - the following training methods are used to achieve the required competences: |
Individual study |
Lecture supplemented with a discussion |
Students' portfolio |
|
|
|
|