Data mining, machine learning, algorithms, bioinformatics and computational neuroscience are some of the things researchers in this group are working on. For example, they are helping biologists research the development of stem cells and to determine the re-creation of cancer cells, but they also analyse patterns in the brain, work on machine learning and artificial intelligence related matters.
Researchers in this group are looking for ways to help programmers write better quality code. For example, they are looking into ways to find errors in code without having to actually run it—they are trying to mathematically prove the properties of the programme, which is relevant in critically important systems. Another research direction is researching different ways to write code and their problems and solutions—this may lead to the development of new and better programming languages.
The dawn of the age of the internet is positive, but also leads to worries that there is always somebody "eavesdropping". To help with that we need more and more clever ways to protect privacy and methods to safeguard data—this is an important challenge also for theoretical computer science. Researchers at UT have participated in developing the Estonian ID-card, E-voting and X-road solutions—all of which have helped put Estonia on the map as a cradle for IT innovation. But the application of cryptography is not only limited to single users. One of the current main research fields is privacy preserving data analyses, which would enable competing companies to work together while preserving confidential business data (i.e. analysing consumer behaviour patterns etc).
Members of the Software Engineering & Information Systems group work on creating and sustaining bulky software systems that correspond to the business needs of companies. In collaboration with universities in Europe and Asia, researchers are developing new methods and means to raise the effectiveness of business processes, but also to analyse the profitability of software systems—this in turn allows companies to evaluate the economic impact related to creating new systems. Additionally, researchers also work on ways to automatically find contradictory and excess data in databases so that the user will never have to insert the same data more than once.
Chair of Distributed Systems
What to do if the computational task to be solved is so large, computationally intensive and time-consuming that one CPU is not enough to solve it? How to create functioning distributed computing environments using modern cloud computing systems, mobile devices for data collection and processing? The Distributed Systems Research Group is exploring how to effectively parallelize algorithms and programs; how to implement cloud computing systems in computing; how modern IoT systems work as novel solutions (e.g. resource-efficient smart home, or smart office). Research and development is taking place also in the field of intelligent transport systems, pervasive systems as well as in the novel area of self-driving vehicles.
Machine learning and data mining on text data, machine translation from one natural language into another, summarization of a long text document, automatic analysis of grammatical correctness, word meanings and sentence structure -- these are just a few problems that the Natural Language Processing research group is working on. Our work includes theoretical research, like searching for the best possible approach to a yet unsolved problem, as well as practical solutions and collaboration projects with industry.