Computer Science program of the Summer University provides original studying opportunities for students from around the world. The program covers various topics in Computer Science from purely theoretical to applied and practical. Theoretical side of the program includes both a detailed introduction to the theory of computations and more advanced topics in Artificial Intelligence and Statistical Diagnosis. Practical aspects of the program are tightly integrated with theoretical material. Participants of the program will have an opportunity to apply the new knowledge in their own programming experience, for example, in processing of natural languages, creating a distributed computing system or implementing a compiler for a programming language.
For students in the beginning of their studies the program provides a possibility to get an introduction into variety of different fields in Computer Science. On the other hand, even an experienced student can find a lot of new and interesting in the program.
The participants of the program are expected to have basic programming experience and basic knowledge of mathematics. Individual courses may have additional prerequisites specified in their descriptions.
Automata, Nets and Applications in Software Engineering (5 ECTS credits, 40 academic hours, HSE Moscow)
Dates: July, 03 - 22
The main practical goal of the course is to teach students the basics of automata and net theories with application in the fields of translators and distributed systems development. As the result, students will learn how to systematically design and implement translators, and they will develop their first compiler and distributed system. Automata and net theories have much application in other fields of computer science. We have chosen translators and distributed systems as they were always considered as the black art of programming. The students will see how beautiful theoretical constructions enable them to construct serious industrial software. The course will also prepare students for the OMG MDA software development methodology.
Introduction to Artificial Intelligence: Methods, Models, Algorithms (2 ECTS credits, 16 academic hours, HSE Moscow)
Dates: July, 17 - 29
Associate Professor:Faculty of Computer Science / Intelligent Technologies in System Analysis and Management: Joint Department with Federal Research Center of Computer Science and Control of Russian Academy of Sciences
This is an introductory course to Artificial Intelligence. We will present the basic AI concepts, such as knowledge representation models, state space search strategies, machine learning techniques, AI-planning methods etc. Programming skills are welcome, but not required, e.g. optional. It's up to you whether to do a programming project (either in Python or C++) or not.
Introduction to Theory of Statistical Diagnosis (2 ECTS credits, 16 academic hours, HSE Moscow)
The course will introduce the basic concepts of Statistical Diagnosis. This field of mathematical statistics deals with the following problems:
a) detecting changes in probabilistic characteristics of random processes (fields) in the off-line regime
b) detecting changes in probabilistic characteristics of random processes (fields) in the on-line regime.
These problems arise in many applications and are known in the literature as “change-point detection problems”. The goal of the course is to present to students the main ideas of non-parametric statistical diagnosis.
Introduction to Natural Language Processing (2 ECTS credits, 16 academic hours, HSE Moscow)
Dates: June, 20 - July, 1
This is an introductory course to natural language processing. We will present the basic NLP problems such as key phrases extraction, morphological and syntactical parsing. To spice things up we will pay attention to some novel approaches in latent topic detection and distributional semantics. The practical part of the course includes working with publicly available software NLTK, StanfordNLP, gensim for solving these problems. Programming skills are welcome, but not strongly required. We will give introductory knowledge of programming languages Python and R to help a student in doing their computations on their own. We will take into account individual skills and interests of the students.