Doctoral studies
Computer science, as a professional and scientific discipline, is characterized by an exceptionally broad range of applications and an extraordinary pace of development. One of the main pillars of this development is intensive global scientific activity, the results of which are quickly translated into practical applications. The challenging nature of the problems that arise in this field, the practical applicability of research results and the numerous opportunities for collaboration with researchers around the world make computer science one of the most attractive areas of scientific research. Doctoral studies in computer science are the best way for ambitious and enthusiastic students to become part of the international research community in this field.
Research in computer science has a long tradition at the Faculty of Mathematics. The Department of Computer Science and Informatics is committed to excellence in research in this field, as confirmed by the numerous publications of its members in leading international journals and at leading international conferences in several specific areas. Students who wish to develop into serious researchers in computer science and to collaborate in research with members of the Department can do so by enrolling in the doctoral programme in Computer Science at the Faculty of Mathematics. Below is information that may help students at the beginning of that path:
- Admission requirements
- Programme structure
- Courses in doctoral studies
- Research areas and groups
- Mentorship
The doctoral programme in Computer Science at the Faculty of Mathematics is carried out in accordance with the Regulations on Doctoral Studies of the Faculty of Mathematics (adopted on 3 July 2026, applicable to students enrolled from the academic year 2026/2027) and the Regulations on Doctoral Studies of the University of Belgrade (University of Belgrade Gazette Nos. 191/16, 212/19, 215/20, 217/20, 228/21, 230/21, 241/22 and 259/24; unofficial consolidated text, April 2025). Both documents are available in Serbian only. At Faculty level, enrolment, monitoring of students' progress and the procedure for doctoral dissertation topic submission, evaluation and defence are managed by the Committee for Doctoral Studies.
Admission requirements
The admission requirements, required documents, deadlines, interview and tuition fees are defined by the Regulations on Doctoral Studies of the Faculty of Mathematics and by the University of Belgrade Call for Applications for the current academic year. All information on admission, the guides for application, interview and enrolment, the forms and the text of the Call are available on the Faculty of Mathematics page Admission to doctoral studies (in Serbian). The guides are also available in English: Application Guide, Interview Guide and Enrolment Guide.
In addition to the general requirements (completed Bachelor's and Master's academic studies totalling at least 300 ECTS and an overall grade point average of at least 8 on the Serbian 6–10 scale), the special conditions of the Call for the Computer Science study programme prescribe the required number of ECTS credits in computer science and mathematics courses from previous studies and two letters of recommendation from computer science faculty members. All candidates take a qualifying interview, except candidates who meet the conditions for exemption laid down in the Call.
Questions regarding admission: upis-das@matf.bg.ac.rs.Programme structure
The doctoral programme in Computer Science lasts three years (six semesters, 180 ECTS). During the first three semesters, students prepare for research in their chosen research area by selecting appropriate courses. The studies are designed to give students maximum flexibility in choosing the content they will study. There are no compulsory courses: each student chooses their own courses in agreement with the course instructors.
Courses are selected from the List of courses below (the official programme page of the Faculty of Mathematics, Doctoral Studies – Computer Science, is available in Serbian). In addition, instead of a course from this list, students may in the first semester select one course from other accredited doctoral programmes of the Faculty of Mathematics.
The student must obtain the consent of the course instructor for each course they enrol in.
In choosing courses and planning their doctoral studies, the student is assisted by a study mentor, a faculty member of the Department whom the student proposes at enrolment. Before enrolling in the courses taken with the doctoral dissertation mentor, the student is also assigned a prospective mentor, with whom they go on to plan their research and prepare the topic submission. The roles of the study mentor, the prospective mentor and the doctoral dissertation mentor (doctoral supervisor), as well as the annual work plan approved by the Committee for Doctoral Studies, are governed by the Regulations on Doctoral Studies of the Faculty of Mathematics (Articles 23, 24 and 28) and described in the Department procedures. To make the selection of courses easier, for some research areas the research groups have recommended course packages. These packages are a good starting point that can be modified as needed and adapted to the needs and interests of the individual student.
At the end of the third semester, the student, in agreement with their prospective mentor, is expected to choose the research topic they will work on for the rest of their studies. During the remaining three semesters the student, in collaboration and consultation with their mentor, carries out research and works on their doctoral dissertation. The procedure for doctoral dissertation topic submission, evaluation and defence is laid down in the Regulations on Doctoral Studies of the Faculty of Mathematics (Articles 34–57), and the way the Department considers a topic submission is described in the Department procedures.
The detailed structure of the programme by year is given below. Weekly hours are given as hours of active teaching plus hours of independent research work.
Year 1
| No. | Course | Weekly hours (teaching + research) |
ECTS |
| Semester 1 | |||
| 1. | Elective course A1 (from the list) | 4 + 6 | 9 |
| 2. | Elective course A2 (from the list) | 4 + 6 | 9 |
| 3. | Elective course B (from the list or from another study programme) | 4 + 6 | 9 |
| 4. | Seminar paper 1 | 0 + 2 | 3 |
| Semester 2 | |||
| 1. | Elective course A3 (from the list) | 4 + 6 | 9 |
| 2. | Elective course A4 (from the list) | 4 + 6 | 9 |
| 3. | Elective course A5 (from the list) | 4 + 6 | 9 |
| 4. | Seminar paper 2 | 0 + 2 | 3 |
| Total for Year 1 | 64 | 60 | |
Year 2
| No. | Course | Weekly hours (teaching + research) |
ECTS |
| Semester 1 | |||
| 1. | Elective course A6 (from the list) | 4 + 6 | 9 |
| 2. | Preparation of the Dissertation Topic Proposal | 0 + 15 | 21 |
| Semester 2 | |||
| 1. | Doctoral Dissertation Research 1 | 0 + 0 | 30 |
| Total for Year 2 | 25 | 60 | |
Year 3
| No. | Course | Weekly hours (teaching + research) |
ECTS |
| Semester 1 | |||
| 1. | Doctoral Dissertation Research 2 | 0 + 0 | 30 |
| Semester 2 | |||
| 1. | Doctoral Dissertation Research 3 | 0 + 0 | 30 |
| Total for Year 3 | 0 | 60 | |
Courses in doctoral studies
List of courses
This section gives the list of courses accredited within the doctoral programme in Computer Science. All courses carry 9 ECTS and comprise four hours of active teaching per week as well as six hours of independent research work. The course descriptions (PDF) are in Serbian. The courses are listed in alphabetical order of their English names.
- Advanced Computer Architecture
- Algorithms in Bioinformatics
- Automated Theorem Proving
- Big Data Analytics
- Biochemistry for Computer Science Students
- Bioinformatics
- Blockchain and Decentralized Systems
- Compiler Construction – Advanced Concepts
- Computability Theory – Advanced Concepts
- Computational Complexity
- Computational Intelligence – Advanced Concepts
- Computer Networks – Advanced Concepts
- Constraint Programming
- Cryptography – Advanced Concepts
- Data Classification Methods
- Data Mining in Bioinformatics – Advanced Concepts
- Data Mining – Advanced Concepts
- Database Design – Advanced Concepts
- Database Theory
- Databases – Advanced Concepts
- Design and Analysis of Algorithms – Advanced Concepts
- Design and Implementation of Functional Programming Languages
- Digital Image Processing – Advanced Concepts
- Formal Methods – Advanced Concepts
- Genetic Algorithms
- Information Retrieval and Web Mining
- Interactive Theorem Proving
- Machine Learning in Bioinformatics
- Machine Learning in Computer Vision
- Machine Learning on Graphs
- Machine Learning Theory
- Machine Learning – Advanced Concepts
- Methods of Teaching Programming – Advanced Concepts
- Natural Language Processing
- Programming Languages – Advanced Concepts
- Reinforcement Learning
- Scripting Languages and Web Programming
- Selected Topics in Bioinformatics
- Selected Topics in Theoretical Computer Science
- Semantic Web
- Semantics of Programming Languages
- Software Development – Advanced Concepts
- Software Verification – Advanced Concepts
- Swarm Intelligence
- Symbolic Computation
- Text Algorithms – Advanced Concepts
Teaching staff
Courses in the doctoral programme are taught by all faculty members of the Department of Computer Science and Informatics holding the rank of Assistant Professor, Associate Professor or Full Professor. The current list is available on the Employees page.
More details about the teaching staff, their competences and the courses they are responsible for are given in the Book of Teaching Staff (PDF, in Serbian).Research areas and groups
During their studies, doctoral students join the work of the research groups of the Department according to their interests and, through collaboration with other researchers, professors and fellow students, take their first steps in the world of science. Already when applying to the Call, in the form "Scientific area, research group and study mentor", candidates indicate the research group and one or two faculty members of the Department with whom they would like to collaborate, so we recommend that candidates get in touch with a faculty member from the area that interests them before applying. The list and description of the research groups are available on the Research groups page.
Mentorship
During their doctoral studies, students have three kinds of mentor, at different stages. The study mentor is a faculty member of the Department who guides the student during the first two years: helps them choose courses, draws up the annual work plan with them and introduces them to research methodology. The student proposes the study mentor at enrolment and the Committee for Doctoral Studies appoints them. The prospective mentor is the faculty member with whom the student, once they have chosen a research area, plans their research, formulates the topic and prepares the doctoral dissertation topic submission. The Committee for Doctoral Studies appoints the prospective mentor before the student enrols in the courses taken with the dissertation mentor; this may, but need not, be the same person as the study mentor. The doctoral dissertation mentor (doctoral supervisor) is appointed by decision of the Teaching and Research Council when the topic is accepted, is as a rule the prospective mentor, and guides the student through the preparation and defence of the dissertation. The requirements a mentor must meet and the maximum number of students a mentor may have at the same time are prescribed by the Regulations on Doctoral Studies of the Faculty of Mathematics (Articles 24 and 31–33).
The following faculty members of the Department of Computer Science and Informatics may act as study mentors in the doctoral programme in Computer Science (list according to the form "Scientific area, research group and study mentor" for the academic year 2026/2027, in Serbian, with each faculty member's research group):
| Name | Rank | Research group |
| Milena Vujošević Janičić | Full Professor | Programming Languages and Tools Group; Automated Reasoning Group |
| Predrag Janičić | Full Professor | Automated Reasoning Group |
| Miroslav Marić | Full Professor | Computational Intelligence and Mathematical Optimization Group |
| Filip Marić | Full Professor | Automated Reasoning Group |
| Vladimir Filipović | Full Professor | Modeling and Optimization Group |
| Jelena Graovac | Associate Professor | Language Technologies Group; Data Mining Group |
| Aleksandar Kartelj | Associate Professor | Modeling and Optimization Group |
| Vesna Marinković | Associate Professor | Automated Reasoning Group |
| Stefan Mišković | Associate Professor | Computational Intelligence and Mathematical Optimization Group |
| Mladen Nikolić | Associate Professor | Machine Learning Group |
| Milan Banković | Assistant Professor | Automated Reasoning Group |
| Staša Vujičić Stanković | Assistant Professor | Language Technologies Group |
| Nina Radojičić Matić | Assistant Professor | Computational Intelligence and Mathematical Optimization Group |
| Mirko Spasić | Assistant Professor | Programming Languages and Tools Group |

