09.04.01 – Computer Science and Knowledge Discovery

Graduates will be able to use modern information and communication technologies (applied software packages, local and global computer networks) for acquiring, processing and analyzing various types of information.

Language of instructions: English
Degree acquired: Master's
Program code: 09.04.01
Graduating Faculty Faculty of Computer Science and Technology
Number of students: 10-15
Program: 120 ECTS credits, full-time Master’s Degree (2 years)
Eligibility: Candidates must hold previous degree in IT or engineering area
Academic year includes: 2 semesters beginning on 1st September and 1st February
Holidays: Winter holidays - 2 weeks (January); Summer holidays - 2 months (July, August)
Application deadline: May
Master’s Thesis defense: June

 Program presentation

About the program 

The program offers students profound training in the fields of mathematical modelling, data processing and analysis, and software development. We also focus our subjects on the most recent trends in artificial intelligence and machine learning, signal and image processing, parallel and distributed computing, intelligent and embedded systems, pattern recognition and biometric technologies. The structure of the program consists of advanced professional studies, elective courses and Master’s Thesis.

Graduates of the master's program will acquire professional skills for designing software and hardware, distributed systems, and applying computer tools for educational purposes. Graduates will acquire knowledge in information security, data mining algorithms and standards, system theory, data and visual analytics. The program is also accompanied by economic and humanitarian disciplines for broad education in English and successful future career.

Here you can find the description of the master's program in Russian.

International Academic Mobility



Main Disciplines

  • Biometric Technologies

The course is aimed at studying biometric dynamic and static characteristics of humans. We consider all stages of image processing in biometric problems: data acquisition, face image preprocessing, feature extraction from images. We draw special attention to efficient algorithms of reducing feature space dimension using features oriented to image processing as two-dimensional data. The course also involves algorithm implementation using vector-matrix techniques in MATLAB. We discuss the main principles of constructing, simulating, and testing human recognition systems based on face images. Various simulation models are also widely discussed.

  • Information Security

The course includes all issues of determining, reaching, and supporting confidentiality as well as the following properties of information or its processing tools: integrity, availability, non-repudiation, accountability, authenticity, and reliability. The discipline helps students to master the main concepts and problems of information security and offers a number of important modern techniques of information security. The course is aimed at forming skills for working with existing products and developing information security software.

  • Advanced Data Analysis and Machine Learning

The course provides deep training in the field of big data analysis and extracting knowledge from raw data. We handle various machine learning tasks: classification, cluster-analysis, mining association rules, data visualization. Students will also acquire skills of using different data analysis tools including distributed data analysis: RapidMiner, Weka, R, Apache Spark.

  • Parallel Computing

Students acquire new knowledge for a possible career in the field of parallel programming. We provide principles for constructing parallel computational systems and consider mathematical models of parallel algorithms and programs for analyzing the efficiency of parallel computing. The course considers low-level possibilities of modern operating systems for providing parallelism.

  • Advanced Mathematical Methods

The course consists of selected topics from linear and multilinear algebra and numerical linear algebra that are important for applications in different branches of mathematics and physics, primarily in vector analysis, differential geometry, and numerical methods of ordinary and partial differential equations. Besides we discuss some natural applications of linear algebra such as recurrence relation and linear differential equations with constant coefficients.

  • Mathematical Modelling of Linear and Non-linear Systems

The discipline familiarizes students with the basics of mathematical modeling and synthesis of linear and non-linear systems at the input/output mapping. We study different forms of models classified as multidimensional polynomials, regression models, and neural networks. The comparative analysis of mathematical models is performed. The discipline also covers methods and algorithms of model design by solving the problems of system operator approximation in the root mean square metric using the input and output signal sets. Various neural network synthesis in MATLAB is represented. Modeling and synthesis of nonlinear transformers, filters, and compensators are represented.

The discipline is also aimed at studying nonlinear behavior of dynamical systems. It discovers the main properties of nonlinear processes during the design and use of a complex technical system. The discipline considers nonlinear dynamics and modern tools of dynamical analysis given through graphical programming environments. Students study mathematical representation of nonlinear systems and processes and their computer simulation through numerical integration.

  • Computer Tools in Education

 The discipline is devoted to studying software packages for numerical and symbol computing. We consider three different packages: numerical computations are represented in GNU Octave and R, symbol computations are represented in SageMath. All packages are distributed free of charge and are available for downloading. Special attention is paid to data types in embedded programming languages and visualization techniques, i.e. plotting graphs and diagrams.

  • Algorithmic Mathematics

Algorithmic mathematics (computer algebra, symbolic or algebraic computations) deals with algorithms and software for handling mathematical expressions and other mathematical objects.

This course familiarizes students with basic polynomial methods and algorithms over infinite and finite fields, Groebner bases, and algebraic varieties.

The course allows students to get acquainted with theoretical fundamentals of basic methods and algorithms of polynomial factorization including Berlekamp’s algorithm, algorithms for solving polynomial equations including those based on Groebner bases and Buchberger’s algorithm. 

  • Data and Visual Analytics

Visual analytics is an advanced form of data analysis where analytical reasoning is followed by adoption of the highly interactive visualization techniques. This course introduces students to the concepts and tasks of visual analytics and examines several important data analysis and visualization techniques. It provides hands-on experience with both existing products and in the development of custom visual analytics software.

  • Basics of System Theory

The discipline is oriented to mastering a number of areas of mathematics and system analysis used in engineering applications and academic research. The course encompasses all stages of complex system design beginning with information transform to digital form and its statistical processing and ending with system model design and its parameter optimization. 

  • Languages for Hardware Design and Verification

The discipline is aimed at studying tools for joint representation and debugging of software-hardware systems using SystemVerilog including special data types, object-oriented programming and quasi-stochastic representation of such systems.

  • Intelligent Systems

The discipline provides a study of the basics of designing intelligent agents including movement, obstacle avoidance and pathfinding to tactical analysis and decision-making. The discipline also covers the use of algorithms based on decision trees, state machines, and elements of fuzzy logic. We consider applications of decision-tree training methods, the simplest neural networks and implementation of reinforcement training. The discipline also includes fundamentals of multiagent systems, specifics of designing intelligent agent environment, knowledge management, and natural language processing. This course discusses applications of the algorithms in a virtual environment (video game). 

  • Distributed Systems and Technologies

The discipline studies a wide range of issues connected with the main principles, concepts, and technologies of distributed systems: connection, processes, identity, synchronization, integrity, and replication, fault protection, and security. The knowledge provided by this discipline can be used for constructing and managing distributed systems.

The discipline includes practical training classes. Unsupervised work of students suggests studying the recommended sources of literature and preparation for classes.

The final certification is based on graded examination results.

  • Digital Signal Processing

The course includes basic methods and algorithms of digital signal processing using computer simulation in MATLAB. The discipline includes discrete signals and their transforms, linear discrete systems and their characteristics, discrete Fourier transform (DFT) and its applications, design and analysis of FIR and IIR filters, quantization effects in digital systems, spectral analysis of signals, multirate signal processing, adaptive filters, wavelet transform.

The course familiarizes students with theoretical fundamentals of basic methods and algorithms of digital signal processing, the technology of computer simulation of these methods and algorithms in MATLAB. The discipline helps to study embedded software packages (FDATool, FVTool, SPTool, WAVETool). 

  • Computational Systems

The discipline is devoted to the techniques and tools of parallel and distributed academic research using modern software and hardware tools. Students also acquire skills of working with high-performance computational systems.

  • Commercialization of Academic Results and Developments

Commercialization of academic research results and developments is the process of their involvement in economic (commercial) use in different segments of national and global markets. In this situation we need to perform project evaluation and substantiation of economic efficiency of projects oriented to the production of high-technology production and advancement of new technologies.

  •  Mathematical Foundations of Computer Science

This discipline can be viewed as a continuation of the disciplines “Discrete mathematics” and “Mathematical logic and algorithm theory”. The purpose of the discipline is to advance mathematical background of students, master the main models and techniques of computer mathematics. The discipline consists of the following parts: basics of universal algebra, discrete analysis, discrete functional schemes, applied logic, proof theory. 

  • Algorithm Design and Optimization

The discipline can be viewed as a relative of the discipline “Mathematical foundations of computer science” and it is an integral part of education in the field of computer science and information technologies. The purpose of the discipline is to advance the mathematical background of students and master the main techniques of designing, analysis, and optimization of algorithms. The discipline consists of the following parts: methods and strategies of algorithm design, algorithm complexity, sort algorithms and search algorithms, numerical algorithms, graph algorithms, general complexity theory of algorithms.  

  • Software Development Technology

The discipline provides knowledge and skill acquisition in the field of modern technologies of group development of software. We consider different models of the life cycle of software development, their advantages and drawbacks, capability maturity model-integrated (CMMI) and its key areas, team software process (TSP) and personal software process (PSP) developed in SEI University. We provide an overview of modern standards, methodologies, and documented processes and development environments: Rational Unified Process (RUP), Microsoft Solutions Framework (MSF), and TeamFoundation Server (TFS), agile development methodologies. We consider the issues of designing a project process, distribution of project roles, work planning and work tracking, quality monitoring and risk management.

  • Information Technologies in Academic Research and Project Activity

The discipline is oriented to acquiring skills of applying high-performance computer engineering and information technologies for academic research and practical tasks from different knowledge domains.

Students should be able to master new software packages and technologies for computational systems with different architecture, perform analysis of information technologies and select those that are the most efficient for handling practical and academic tasks formulated within the scope of industrial and/or pre-graduation practice. These tasks can be used for research and graduation project.



Dmitry M. Klionskiy
Head of the Master’s Program
Deputy Dean for International Affairs, PhD, Associate Professor
Discipline: Digital Signal Processing


Mikhail S. Kupriyanov
Head of the Department of Computer Science and Engineering
Head of the Education Department, Dr. of Sci., Prof.
Discipline: Digital Signal Processing


Dmitry I. Kaplun
Deputy Head of the Department of Automation and Control Processes, PhD, Ass. Prof.
Discipline: Basics of System Theory


Kirill V. Krinkin
Head of the Department of Software Engineering and Computer Applications, PhD, Ass. Prof.
Discipline: Intelligent Systems












Daria A. Uverskaia

International Student Recruitment & Support Manager

Dmitry M. Klionskiy

Head of the Master’s Program

Deputy Dean for International Affairs, PhD, Associate Professor

Mikhail Kupriyanov

Head of the Department of Computer Science and Engineering

Head of the Education Department, Dr. of Sci., Prof.

Contact Information

Mon.-Fri.: 10:00-17:00 (admission 10:00-16:30)
197376, Russian Federation, St. Petersburg, Professora Popova str., 5, building 3, 4th floor (room 3418)
+7 (812) 234-35-53
Apply here
Other programs