Degree Plans - Artificial Intelligence
The specialization Artificial Intelligence integrates the formal foundations of computer science with their application to the solution of complex problems such as automated planning and scheduling, natural language processing, processing of visual, textual and multimedia data, machine learning, big data and data mining, autonomous robotics, and computer vision. The understanding of the mathematical and logical foundations of computer systems given by the specialization Articial Intelligence is directed towards the design of smart systems.
The specialization Artificial Intelligence has the following branches:
- –
Robotics
- – Machine Learning
- – Natural Language Processing
- – Machine Learning
Each branch runs according to the same rules, using the same set of obligatory and elective courses, and they have the common topic Foundations of Artificial Intelligence in the State Final Exam. Each branch then has its own additional topic in the State Final Exam.
Common obligatory courses in Computer Science
Common obligatory courses for all specializations are listed above in the section giving general information.
4.1 Obligatory Courses
Code | Subject | Credits | Winter | Summer | |
NAIL120 | Introduction to Artificial Intelligence | 5 | — | 2/2 C+Ex | |
NPRG005 | Non-procedural Programming | 5 | — | 2/2 C+Ex | |
NMAI055 | Mathematical Analysis 2 | 5 | 2/2 C+Ex | — |
4.2 Elective Courses
Elective courses – group 1
A prerequisite for taking either part of the State Final Exam is to have obtained at least 25 credits from courses in this group.
Code | Subject | Credits | Winter | Summer | |
NAIL028 | Introduction to Robotics | 5 | 2/2 C+Ex | — | |
NPGR002 | Digital Image Processing | 4 | 3/0 Ex | — | |
NPGR036 | Computer Vision | 5 | — | 2/2 C+Ex | |
NPFL054 | Introduction to Machine Learning with R | 5 | — | 2/2 C+Ex | |
NPFL129 | Introduction to Machine Learning with Python | 5 | 2/2 C+Ex | — | |
NPGR035 | Machine Learning in Computer Vision | 5 | 2/2 C+Ex | — | |
NAIL121 | Seminar on Data Mining | 4 | — | 1/2 MC | |
NDMI098 | Algorithmic Game Theory | 5 | 2/2 C+Ex | — | |
NPFL012 | Introduction to Computer Linguistics | 3 | 2/0 Ex | — | |
NPFL125 | Introduction to Language Technologies | 3 | 0/2 MC | — | |
NPFL124 | Natural Language Processing | 4 | — | 2/1 C+Ex | |
NPFL101 | Competing in Machine Translation | 3 | 0/2 C | — | |
NPFL123 | Dialogue Systems | 5 | — | 2/2 C+Ex | |
NAIL119 | Nature Inspired Algorithms | 5 | — | 2/2 C+Ex |
Elective courses – group 2
A prerequisite for taking either part of the State Final Exam is to have obtained at least 10 credits from courses in this group.
Code | Subject | Credits | Winter | Summer | |
NPRG041 | Programming in C++ | 5 | 2/2 C+Ex | — | |
NPRG013 | Programming in Java Language | 5 | 2/2 C+Ex | — | |
NPRG035 | Programming in C# Language | 5 | 2/2 C+Ex | — |
Elective courses – group 3
A prerequisite for taking either part of the State Final Exam is to have obtained at least 10 credits from courses in this group.
Code | Subject | Credits | Winter | Summer | |
NPRG051 | Advanced C++ Programming | 5 | — | 2/2 C+Ex | |
NPRG021 | Advanced Java Programming | 5 | — | 2/2 C+Ex | |
NPRG038 | Advanced C# Programming | 5 | — | 2/2 C+Ex | |
NPRG042 | Programming in Parallel Environment | 6 | — | 2/2 C+Ex | |
NPRG036 | Data Formats | 5 | — | 2/2 C+Ex | |
NMAI073 | Probability and Statistics 2 | 5 | 2/2 C+Ex | — | |
NDBI045 | Video Retrieval | 5 | — | 2/2 C+Ex | |
NOPT046 | Discrete and Continuous Optimization | 5 | — | 2/2 C+Ex | |
NPGR038 | Introduction to Computer Game Development | 5 | — | 2/2 C+Ex | |
NPRG037 | Microcontroller Programming | 5 | 2/2 C+Ex | — |
4.3 Recommended Course of Study
The recommended course of study gives all the obligatory courses, while only some elective courses and optional courses are listed. Students need to choose other such courses themselves. Obligatory courses are printed in boldface, elective courses in roman, and optional courses in italics.
First year
Common to all specializations – see under general information above.Second year
Code | Subject | Credits | Winter | Summer | |
NAIL062 | Propositional and Predicate Logic | 5 | 2/2 C+Ex | — | |
NTIN061 | Algorithms and Data Structures 2 | 5 | 2/2 C+Ex | — | |
NDMI011 | Combinatorics and Graph Theory 1 | 5 | 2/2 C+Ex | — | |
NMAI055 | Mathematical Analysis 2 | 5 | 2/2 C+Ex | — | |
NAIL028 | Introduction to Robotics | 5 | 2/2 C+Ex | — | |
NPRG041 | Programming in C++ | 5 | 2/2 C+Ex | — | |
NTIN071 | Automata and Grammars | 5 | — | 2/2 C+Ex | |
NMAI059 | Probability and Statistics 1 | 5 | — | 2/2 C+Ex | |
NPRG045 | Individual Software Project | 4 | — | 0/1 C | |
NPRG051 | Advanced C++ Programming | 5 | — | 2/2 C+Ex | |
NAIL120 | Introduction to Artificial Intelligence | 5 | — | 2/2 C+Ex | |
NPRG005 | Non-procedural Programming | 5 | — | 2/2 C+Ex | |
Elective courses | |||||
Optional courses |
Third year
Code | Subject | Credits | Winter | Summer | |
NDBI025 | Database Systems | 5 | 2/2 C+Ex | — | |
NPFL129 | Introduction to Machine Learning with Python | 5 | 2/2 C+Ex | — | |
NPRG013 | Programming in Java Language | 5 | 2/2 C+Ex | — | |
NPFL012 | Introduction to Computer Linguistics | 3 | 2/0 Ex | — | |
NPGR036 | Computer Vision | 5 | — | 2/2 C+Ex | |
NPFL054 | Introduction to Machine Learning with R | 5 | — | 2/2 C+Ex | |
NPFL124 | Natural Language Processing | 4 | — | 2/1 C+Ex | |
NPRG036 | Data Formats | 5 | — | 2/2 C+Ex | |
NAIL121 | Seminar on Data Mining | 4 | — | 1/2 MC | |
NSZZ031 | Bachelor Thesis | 6 | — | 0/4 C | |
Elective courses | |||||
Optional courses |
4.4 State Final Exam
The State Final Exam knowledge requirements common to all specializations are described in the first section of this chapter (General Information on Computer Science bachelor's degree plans). Students of the Artificial Intelligence specialization will be further tested according to the information below.The topic Foundations of Artificial Intelligence is required in all branches. Each branch then has its own additional topic in the State Final Exam.
Foundations of Artificial Intelligence
Solving problems by searching (algorithm A*); constraint satisfaction. Logical reasoning (forward and backward chaining, resolution, SAT); probabilistic reasoning (Bayesian networks); knowledge representation (situation calculus, Markovian models). Automated planning; Markov decision processes. Games and theory of games. Machine learning (decision trees, regression, reinforcement learning).
Relevant courses:
Code | Subject | Credits | Winter | Summer | |
NAIL120 | Introduction to Artificial Intelligence | 5 | — | 2/2 C+Ex |
Branch Robotics
Kinematics: motion and transformation, basic problem-solving. Control systems: architectures, implementation, specific run-time environments. Motion, sensorics: motion types, basic actuators and sensor types, closed loop control, input data processing. Localization and mapping: possibilities for determining position, map types, model situation solving, simultaneous localization and mapping. Image processing, computer vision: object searching and tracking.
Relevant courses:
Code | Subject | Credits | Winter | Summer | |
NAIL028 | Introduction to Robotics | 5 | 2/2 C+Ex | — | |
NPGR036 | Computer Vision | 5 | — | 2/2 C+Ex | |
NPRG037 | Microcontroller Programming | 5 | 2/2 C+Ex | — |
Branch Machine Learning
Supervised learning: classification and regression, error measure, model assessment (test data, cross validation, maximum likelihood), overfitting and regularization, the curse of dimensionality. Instance-based learning, linear and logistic regression, decision trees, pruning, ensemble learning (bagging, boosting, random forest), support vector machines, t-test, chi-squared test. Unsupervised learning, clustering.
Relevant courses:
Code | Subject | Credits | Winter | Summer | |
NPFL054 | Introduction to Machine Learning with R | 5 | — | 2/2 C+Ex | |
NPFL129 | Introduction to Machine Learning with Python | 5 | 2/2 C+Ex | — | |
NAIL121 | Seminar on Data Mining | 4 | — | 1/2 MC | |
NPGR035 | Machine Learning in Computer Vision | 5 | 2/2 C+Ex | — |
Branch Natural Language Processing
System of layers in language description, morphological and syntactic analysis. Fundamentals of probability theory and information theory. Statistical methods in natural language processing, language models. Machine learning, classification, regression. Estimation of generalization error, overfitting, regularization. Word embedding, fundamentals of deep learning. Applications in natural language processing, examples of evaluation measures.
Relevant courses:
Code | Subject | Credits | Winter | Summer | |
NPFL054 | Introduction to Machine Learning with R | 5 | — | 2/2 C+Ex | |
NPFL129 | Introduction to Machine Learning with Python | 5 | 2/2 C+Ex | — | |
NPFL012 | Introduction to Computer Linguistics | 3 | 2/0 Ex | — | |
NPFL124 | Natural Language Processing | 4 | — | 2/1 C+Ex |