Professor, Faculty of Science - Computing Science
- Dipl.-Ing., Technical Mathematics, Graz University of Technology, Austria, 1989
- Ph.D., Computer Science, ETH Zurich, Switzerland, 1995
Algorithms, artificial intelligence, heuristic search, computer games, automated planning, knowledge engineering, machine learning, combinatorial game theory, computer Go.
Powerful modern heuristic search programs rely on 3+1 foundations: 1. a search algorithm, 2. the domain knowledge used for building evaluation functions and search control, and 3. simulation techniques that are used to explore many possible trajectories of possible action sequences. The fourth foundation is machine learning, which is used on a large-scale to acquire domain knowledge.
The high-level goal of our research is to develop new theoretical and practical approaches which advance the performance of heuristic search techniques.
I have worked for thirty years on these research topics, focusing on game tree search, domain-independent planning, and algorithms for combinatorial games. One notable success of my research group is the development of the open source games software framework Fuego. In 2009, Fuego was the first program to beat a top level professional in an even game on the 9x9 Go board. Games programs based on the Fuego framework have won many major international competitions, including the Computer Olympiad and the UEC Cup. In our work in the field of AI planning we have developed a series of internationally successful planning systems based on macro learning and on Monte Carlo random walks. My group has numerous publications in top quality venues and major conferences in the fields of computer games, planning and general AI.
The first of two courses on algorithm design and analysis, with emphasis on fundamentals of searching, sorting, and graph algorithms. Examples include divide and conquer, dynamic programming, greedy methods, backtracking, and local search methods, together with analysis techniques to estimate program efficiency. Prerequisites: CMPUT 175 or 275 and CMPUT 272; one of MATH 100, 113, 114, 117, 134, 144, 154, or SCI 100.
When making decisions in games, computers rely on three main ideas: search, knowledge and simulations. Knowledge can be created by machine learning techniques and encoded in deep neural networks. Search and simulations help to understand the short and long-term consequences of possible actions. This course leads from basic concepts to state-of-the-art decision-making algorithms. Prerequisite: any 300-level Computing Science course.