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|
|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)|
|Master’s Thesis defense:||June|
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
- Ilmenau University of Technology
- Leibniz University of Hannover
- Lappeenranta University of Technology
- Aalto University
- Technical University of Sofia
- Technical University of Liberec
- 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
Mikhail S. Kupriyanov
Dmitry I. Kaplun
Kirill V. Krinkin
|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|
|International students' group|