The department is responsible for teaching compulsory computer science courses, namely Formal Automata and Grammars, Predicate and Propositional Logic, and Algorithms and Data Structures. We are also supervising students working on bachelor studies and small software projects in areas such as artificial intelligence (games, planning), data mining, robotics etc.
The department is responsible for study branches Theoretical Computer Science and Artificial Intelligence and we teach courses on these topics for other study branches as well. We teach the compulsory courses Introduction to Complexity and Computability and Data Structures that are joint for all CS study branches. We are supervising master thesis on topics such as knowledge representation and reasoning, planning, constraint satisfaction, machine learning and data mining, neural networks, nature-inspired computations, robotics, algorithms, data structures, etc.
The department is responsible for the doctoral program Theoretical Computer Science that includes also topics from Artificial Intelligence. The studies are organized in close co-operation with the Czech Academy of Sciences. We supervise doctoral students mainly in areas such as automated planning, constraint reasoning, Boolean functions, machine learning, neural networks, nature inspired computation, smart grids, parallel computations, etc. The prospective students should contact possible supervisors based on the topic of interest prior applying to the program.