Degree Plans - Artificial Intelligence

Coordinating Department: Department of Theoretical Computer Science and Mathematical Logic Specialization Coordinator: Prof. RNDr. Roman Barták, Ph.D.

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

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

CodeSubjectCreditsWinterSummer
NAIL120Introduction to Artificial Intelligence 52/2 C+Ex
NPRG005Non-procedural Programming 52/2 C+Ex
NMAI055Mathematical Analysis 2 52/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.

CodeSubjectCreditsWinterSummer
NAIL028Introduction to Robotics 52/2 C+Ex
NPGR002Digital Image Processing 43/0 Ex
NPGR036Computer Vision 52/2 C+Ex
NPFL054Introduction to Machine Learning with R 52/2 C+Ex
NPFL129Introduction to Machine Learning with Python 52/2 C+Ex
NPGR035Machine Learning in Computer Vision 52/2 C+Ex
NAIL121Seminar on Data Mining 41/2 MC
NDMI098Algorithmic Game Theory 52/2 C+Ex
NPFL012Introduction to Computer Linguistics 32/0 Ex
NPFL125Introduction to Language Technologies 30/2 MC
NPFL124Natural Language Processing 42/1 C+Ex
NPFL101Competing in Machine Translation 30/2 C
NPFL123Dialogue Systems 52/2 C+Ex
NAIL119Nature Inspired Algorithms 52/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.

CodeSubjectCreditsWinterSummer
NPRG041Programming in C++ 52/2 C+Ex
NPRG013Programming in Java Language 52/2 C+Ex
NPRG035Programming in C# Language 52/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.

CodeSubjectCreditsWinterSummer
NPRG051Advanced C++ Programming 52/2 C+Ex
NPRG021Advanced Java Programming 52/2 C+Ex
NPRG038Advanced C# Programming 52/2 C+Ex
NPRG042Programming in Parallel Environment 62/2 C+Ex
NPRG036Data Formats 52/2 C+Ex
NMAI073Probability and Statistics 2 52/2 C+Ex
NDBI045Video Retrieval 52/2 C+Ex
NOPT046Discrete and Continuous Optimization 52/2 C+Ex
NPGR038Introduction to Computer Game Development 52/2 C+Ex
NPRG037Microcontroller Programming 52/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

CodeSubjectCreditsWinterSummer
NAIL062Propositional and Predicate Logic 52/2 C+Ex
NTIN061Algorithms and Data Structures 2 52/2 C+Ex
NDMI011Combinatorics and Graph Theory 1 52/2 C+Ex
NMAI055Mathematical Analysis 2 52/2 C+Ex
NAIL028Introduction to Robotics 52/2 C+Ex
NPRG041Programming in C++ 52/2 C+Ex
NTIN071Automata and Grammars 52/2 C+Ex
NMAI059Probability and Statistics 1 52/2 C+Ex
NPRG045Individual Software Project 40/1 C
NPRG051Advanced C++ Programming 52/2 C+Ex
NAIL120Introduction to Artificial Intelligence 52/2 C+Ex
NPRG005Non-procedural Programming 52/2 C+Ex
 Elective courses    
 Optional courses    

Third year

CodeSubjectCreditsWinterSummer
NDBI025Database Systems 52/2 C+Ex
NPFL129Introduction to Machine Learning with Python 52/2 C+Ex
NPRG013Programming in Java Language 52/2 C+Ex
NPFL012Introduction to Computer Linguistics 32/0 Ex
NPGR036Computer Vision 52/2 C+Ex
NPFL054Introduction to Machine Learning with R 52/2 C+Ex
NPFL124Natural Language Processing 42/1 C+Ex
NPRG036Data Formats 52/2 C+Ex
NAIL121Seminar on Data Mining 41/2 MC
NSZZ031Bachelor Thesis 60/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:

CodeSubjectCreditsWinterSummer
NAIL120Introduction to Artificial Intelligence 52/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:

CodeSubjectCreditsWinterSummer
NAIL028Introduction to Robotics 52/2 C+Ex
NPGR036Computer Vision 52/2 C+Ex
NPRG037Microcontroller Programming 52/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:

CodeSubjectCreditsWinterSummer
NPFL054Introduction to Machine Learning with R 52/2 C+Ex
NPFL129Introduction to Machine Learning with Python 52/2 C+Ex
NAIL121Seminar on Data Mining 41/2 MC
NPGR035Machine Learning in Computer Vision 52/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:

CodeSubjectCreditsWinterSummer
NPFL054Introduction to Machine Learning with R 52/2 C+Ex
NPFL129Introduction to Machine Learning with Python 52/2 C+Ex
NPFL012Introduction to Computer Linguistics 32/0 Ex
NPFL124Natural Language Processing 42/1 C+Ex
 

Charles University, Faculty of Mathematics and Physics
Ke Karlovu 3, 121 16 Praha 2, Czech Republic
VAT ID: CZ00216208

HR Award at Charles University

4EU+ Alliance