Studies with ANU/DPO and NICTA

ANU/RSISE and NICTA offer PhD scholarships. For students at undergraduate and honours level ANU/CECS offer summer scholarships for a short study in a specific project during the summer (December to February).

This document contains topics for medium-length projects suitable for honours students and as shorter variants for summer scholars, Erasmus Mundus and other similar projects, as well as PhD thesis projects which take 3 years to complete. The list of PhD topics is incomplete: it is best to discuss the possible PhD thesis topics with the individual researchers by first contacting them by email.

If you want to start PhD studies you have to follow the ANU application procedures and contact a potential supervisor to write a research plan.


Projects (Honours, Summer Scholar, Erasmus Mundus)


Bounded Look-Ahead Techniques for Planning in Hybrid Domains

Project Code: S_01
Supervisor: Dr. Patrik Haslum, DPO Group (ANU) & Managing Complexity (NICTA)

Characteristic of planning systems is that they develop a complete plan of action for achieving a specified goal, before that plan is considered for execution. Reactive systems, on the other hand, look only at the present state in order to select the next action to execute. In between these extremes are methods using bounded look-ahead, that is, developing a plan for a limited number of actions or a limited time into the future, and using this plan to make the choice of the next action to execute. In control engineering, this method is known as "model predictive" or "receding horizon" control, and it has been successfully applied to hybrid control problems (involving mixed discrete and continuous states).

The aim of this project is to apply the method of model predictive control to planning problems, in particular problems with such hybrid domains (involving metric time and resources) and where optimization of the cost of the plan carried out is a main concern. One of the main differences between control and planning is that while the objective of automatic control is typically to keep the controlled system stable or near a reference point, the objective in planning is to drive the controlled system to a specified goal state. Thus, one of the the main challenges of this project is taking into account the estimated cost of eventually achieving to the goal while optimizing a plan for the near future, particularly in the context of hybrid constraint optimization methods (such as LP/SAT, MILP and similar).

This project requires a good understanding of "formal stuff" (such as hybrid state/transition systems, admissible heuristics, etc.), though it's not particularly mathematical in nature. Programming skills are also likely to be required, though for the heaviest part of the implementation (optimization of hybrid constraint systems) there are probably systems/libraries available that can be used.

Contact: Dr. Patrik Haslum


Defining PDDL++

Project Code: S_02
Supervisor: Dr. Patrik Haslum, DPO Group (ANU) & Managing Complexity (NICTA)

In recent years, the Planning Domain Definition Language (PDDL) has become the de facto standard formalism for specifying AI planning problems. PDDL is highly expressive in principle (it can model the dynamics of any finite state transition system, and with recent extensions also some kinds of timed/hybrid transition systems), but viewed as modelling language it does leave a lot to be desired.

The aim of this project is to create a more convenient (easy to use) modelling language for planning problems, that can be efficiently compiled into PDDL, and to implement this compilation. Such a modelling language could borrow concepts or constructs from modern programming languages, for instance object orientation (inheritance and polymorphism) or templates, but also build on concepts from research in automated planning, for instance finite domain variable representations or generic types. The envisioned language is primarily intended for modelling finite and deterministic planning problems (so called "classical planning"), and the compilation to generate problems in the corresponding subset of PDDL, but could also be extended to capture problems with metric time and resources, "soft goals", or uncertainty (which would then be compiled into one of the extended PDDL fragments). The compilation could also be extended with more advanced forms of problem analysis and simplification.

This project requires good software design and programming skills (it is, after all, about creating something close to a programming language), and some familiarity with elementary logic is also very useful. Knowledge of AI planning and knowledge representation techniques is an advantage, but not strictly necessary.

Contact: Dr. Patrik Haslum


Building a General Game Player

Project Code: S_03
Supervisor: Dr. Sylvie Thiebaux, DPO Group (ANU) & Managing Complexity (NICTA)

General Game Playing is an initiative from Michael Genesereth at Stanford university, which promotes building programs that are capable of playing arbitrary games by looking at the description of their rules. This differs from usual game-playing programs such as Deep Blue which are dedicated to one particular game (namely chess in this case), but are unable to play any other game even if the rules are merely variants of those the system was designed for.

Another area of artificial intelligence, AI planning, has developed very efficient general tools to solve problems consisting in finding a sequence of actions (or moves) to reach a goal state. The most successful planners use search guided by heuristics that they automatically generate from the problem description. This is directly applicable to single-player games, such as Sokoban, the Freecell card game, or the old Rubik's Cube, but not to multi-player games.

The project consists in building a general game playing agent by extending a to-be-chosen AI planner and its automatic heuristic generation to solve a class of multi-player games of complete information, described in the Game Description Language (GDL). The player should be able to connect to the Stanford game manager, and will hopefully be able to enter the next General Game Playing Competition -- there is 10,000 USD prize to the winner!

This project will suit a student with an interest in artificial intelligence and a desire to learn about various aspects of games and planning, with good problem-solving skills and decent programming skills. Some knowledge of these topics and of elementary logic would be appreciated but is not necessary.

Contact: Dr. Sylvie Thiebaux


Diagnosis by SAT Algorithms

Project Code: S_04
Supervisors: Dr. Alban Grastien, DPO Group (ANU) & Managing Complexity (NICTA)
Dr. Anbulagan, DPO Group (ANU) & Managing Complexity (NICTA)

Recent works on diagnosis of discrete-event systems propose the use of satisfiability algorithms for efficient computation.

Diagnosis is determining what happens on a system (car, plane, telecommunication network, water supply network, etc.) from observations on this system. This is an important task for monitoring and maintenance of expensive or critical systems. The main difficulty is usually to manage complexity. Discrete-event systems is a modeling of dynamic systems based on discrete (i.e. not continuous) variables.

Satisfiability is the problem of determining if the variables of a given Boolean formula can be assigned in such a way as to make the specified formula evaluate to TRUE. This 50-years-old problem is still very active and attracts a lot of attention as many problems in Computer Science can be translated into SAT.

The possibilities of SAT solvers for diagnosis have not completely been investigated. Extensions of the recent results in order to improve both efficiency and expressiveness of this approach include:

References:

A. Grastien, Anbulagan, J. Rintanen and E. Kelareva, Diagnosis of discrete-event systems using satisfiability algorithms, Proceedings of the 22nd AAAI Conference on Artificial Intelligence (AAAI-07), AAAI Press, 2007

J. Rintanen and A. Grastien, Diagnosability testing with satisfiability algorithms, in M. Veloso, ed., Proceedings of the 20th International Joint Conference on Artificial Intelligence, pages 532-537, AAAI Press, 2007.

Contact: Dr. Alban Grastien


Modeling Mail Servers for Diagnosis and Diagnosability

Project Code: S_05
Supervisor: Dr. Alban Grastien, DPO Group (ANU) & Managing Complexity (NICTA)

A mail server is a system composed of several components interacting to send and receive e-mails. When a failure occurs (a mail was not received), it is very difficult to track the problem. The person responsible for maintaining the server has to search into Gigabytes of logs to determine what exactly happened. The task is very difficult as Basically, the difficulty comes from the incremental implementation of the servers.

This task requires time, expertise, and can be unsuccessful in some cases. We propose to use the diagnosis techniques to diagnose the server, and also to determine which level of verbosity is required for each software in the server (diagnosability). The system behaviour is described in a model and a reasoning is performed on the model to understand what happens on the system.

You will be involved in the first task (modelling of a mail server) to enable the second task (diagnosability and diagnosis). The former is not independent from the latter and you will have to understand the diagnosis techniques and test your modelling to improve or refine the modelling.

This project requires knowledge in Linux and networks (and ideally, in mail servers). Knowledge in AI techniques is an advantage but not necessary. It suits particularly for students who want to have a practical application.

Contact: Dr. Alban Grastien


Artificial Intelligence in Video Games

Project Code: S_06
Supervisor: Dr. Adi Botea, DPO Group (ANU) & Managing Complexity (NICTA)

Video games are an excellent testbed for artificial intelligence research. They model real-life features such as uncertainty and dynamic worlds, and are suitable for several AI areas such as planning, learning and heuristic search. Commercial games are a fast-growing multi-billion dollar industry. The contacts between industry and academia are more and more present, stimulated in part by the newly created AIIDE conference, meant to bridge the gaps between the two communities. We offer an opportunity to work on such an exciting application and possibly engage in a longer collaboration. Here are a few more concrete project ideas to begin with: We expect the applicants to have strong C++ programming skills and an interest in artificial intelligence. Links: Contact: Dr. Adi Botea

Factored Planning

Project Code: S_07
Supervisors: Dr. Adi Botea and Dr. Sylvie Thiebaux, DPO Group (ANU) & Managing Complexity (NICTA)

Planning is the problem of finding a sequence of actions that reach a goal starting from a given initial state. Factored planning is a relatively new family of decomposition approaches which are useful when a problem is too large to be solved as one piece and has an appropriate structure. We integrate this into the SuperCom project, where a large real-life system (e.g., the water network in a city) is monitored and automatically reconfigured to a normal state (using planning) when faults are detected.

There are many possible factored planning methods, and many ways of improving their performance. The project will consist in helping in the design and implementation (in JAVA) of one such method.

We expect the applicants to have good programming and problem-solving skills and an interest in artificial intelligence. Joining this project is an excellent opportunity to learn about planning and do exciting and rewarding work that will be used to solve real problems. Opportunities exits for further collaboration, for instance as an honours or PhD student.

Contact: Dr. Adi Botea


Immobile Robots: Integrating Diagnosis and Planning

Project Code: S_08
Supervisors: Dr. Adi Botea and Dr. Alban Grastien, DPO Group (ANU) & Managing Complexity (NICTA)

An immobile robot (immobot) is a real-life system (e.g., a power grid) enhanced with AI capabilities for self control and self configuration.

Diagnosis and planning are two techniques at the core of the AI component of an immobot. Diagnosis processes sensor data and makes inferences about the system status. When a fault is detected, planning tells how to automatically reconfigure the system back to a normal state.

The goal of the project is to design and implement a model that integrates planning and diagnosis.

The applicants should have good Java programming skills. The project can be extended into an honours and/or PhD program.

Contact: Dr. Adi Botea, Dr. Alban Grastien


Algorithms for Finding Complete Bipartite Subgraphs

Project Code: S_09
Supervisor: Dr. Jussi Rintanen, DPO Group (ANU) & Managing Complexity (NICTA)

Many applications require the representation of data or knowledge in the form of a binary relation or a graph, like "X knows Y" or "location X has a road connection to location Y".

If the number of nodes in a graph is high, like tens of thousands or millions, and the graph is dense, then representing all the edges explicitly one at a time leads to very inefficient processing of the data. By recognizing regularities in the graph and utilizing the regularity to represent the graph more compactly, big improvements in efficiency can be obtained. One regularity in many big and dense graphs is the presence of complete bipartite subgraphs N,M in which there is an edge between every node in N and every node in M. Each such subgraph could be represented simply by representing N and M, without enumerating all the |N| X |M| edges explicitly. Another regularity, complete subgraphs (cliques), can be compactly represented in terms of bipartite subgraphs too.

The goal of the research is to develop efficient algorithms for compressing the representation of graphs by identifying complete bipartite subgraphs in them. Finding the maximal bipartite subgraph of a graph is an NP-hard problem. Some polynomial time approximation algorithms with approximation guarantees exist, but it seems that they are not very practical for graphs consisting of tens of thousands or millions of nodes.

The work will proceed by implementing and comparing existing approximation algorithms with and without approximation guarantees, and developing improvements to the existing algorithms and identifying heuristics for improving them.

Contact: Dr. Jussi Rintanen


How to Beat the World's Best Satisfiability Solvers

Project Code: S_10
Supervisor: Dr. Jinbo Huang, DPO Group (ANU) & Managing Complexity (NICTA)

Satisfiability (SAT) is the problem of determining whether a Boolean formula can evaluate to true (i.e., be satisfied) under some assignment of truth values to its variables. For example, the formula ((X or (not Y)) and (X or Y or (not Z)) and ((not X) or (not Y) or (not Z))) can be satisfied by assigning false to all three variables.

Problems in many areas of AI and computer science can be reduced to SAT. Although SAT is NP-complete, problem instances arising from real-world applications often have special structure allowing them to be solved efficiently. Current SAT solvers are frequently able to solve instances with over a million variables.

This project will involve a review of the latest SAT technology, particularly a class of algorithms known as clause learning, followed by an attempt to advance the state of the art by proposing new algorithms or improvements to existing algorithms. On the practical side, the student will have access to an existing simple (yet competitive) SAT solver, written in C++, and will modify it and conduct experiments to explore the possibilities of improving its performance. The final product could be either an extension of the existing solver or an entirely new solver, which can then be entered into next year's International SAT Competition.

Contact: Dr. Jinbo Huang


Knowledge Compilation for Probabilistic Planning

Project Code: S_11
Supervisor: Dr. Jinbo Huang, DPO Group (ANU) & Managing Complexity (NICTA)

Probabilistic planning is concerned with domains where the agent wishes to achieve a goal with high probability when its initial state and/or action effects are probabilistic. It is possible to encode probability distributions, as well as the entire probabilistic planning domain, using propositional logic. One can then compile the logic into a special form that allows efficient inference. The key is that the compilation can often be very efficient as it exploits the structure of the planning domain.

This compilation-based approach has greatly improved the efficiency and scalability of probabilistic reasoning with Bayesian networks, which has much in common with probabilistic planning. We would therefore like to investigate the possibility of carrying this success over to probabilistic planning. The main challenge would be to design and implement new domain encoding methods, and new algorithms to work with these encodings, that can solve a given type of planning task (e.g., conformant planning, contingent planning, etc.). The compilation part will be accomplished using an existing state-of-the-art knowledge compiler. The new planner implemented can then be entered into the next International Planning Competition.

Contact: Dr. Jinbo Huang


Constraint-Based Planning

Project Code: S_12
Supervisor: Dr. Jussi Rintanen, DPO Group (ANU) & Managing Complexity (NICTA)

SAT and CSP are general framework for solving arbitrary problems that can be viewed as constraint satisfaction. Best algorithms for SAT/CSP are able to solve very challenging problems from application areas such as diagnosis, model-checking and planning. However, the use of generic SAT/CSP solvers has the drawback that the utilization of heuristics and reasoning techniques specific to application areas is very difficult. Therefore in some cases it is a more efficient to implement specialized constraint solvers for a problem representation specific to the application.

The goal of the project is to implement a very efficient planner based on SAT/CSP technology by integrating the constraint solver with the problem representation that is specific to planning problems. This way it is possible to utilize constraint reasoning techniques for planning more efficiently while still benefiting from powerful inferences sanctioned by techniques like constraint propagation and clause-learning.

Contact: Dr. Jussi Rintanen


Design of Floor Layouts for Residential and Industrial Buildings as Constraint Satisfaction

Project Code: S_13
Supervisor: Dr. Jussi Rintanen, DPO Group (ANU) & Managing Complexity (NICTA)

An important problem in the design of residential and other buildings as well as manufacturing plants is the layout of rooms and equipment. The objective when constructing the building is to minimize its construction costs while still providing for the required functionalities. Typically the design of floorplans for residential and office buildings is the job of an architect. The layouts of industrial plants are similarly the task of engineers who plan the production.

The purpose of this project is to cast the layout problem as a constraint satisfaction problem and demonstrate its utility as a fast prototyping method and possibly as a method for finding non-obvious designs a human designer might overlook. Finding better designs is an important factor in cost effectiveness of a building. Constraint Satisfaction provides a general and powerful framework for expressing and solving design problems.

Depending on the desired extent of the project, the work could initially restrict to the design of residential buildings. Constraints on the room layout express spatial relations between the locations of the rooms, between building features such as doors and windows, as well as typical pieces and setups of furniture. For example, a typical living room in a small apartment includes a couch, armchairs, a table and television, the placement of which has to satisfy certain constraints derived from their intended functions.

Contact: Dr. Jussi Rintanen


Chronicle Construction from FSM Model

Project Code: S_14
Supervisor: Dr. Alban Grastien, DPO Group (ANU) & Managing Complexity (NICTA)

Diagnosis is determining what happens on a system (car, plane, telecommunication network, water supply network, etc.) from observations on this system. This is an important task for monitoring and maintenance of expensive or critical systems.

Chronicles Recognition [Dousson, 2002] is a diagnosis technique that has been successfully applied to several domains including the diagnosis of telecommunication networks and the diagnosis of cardiac arrhytmia (see for instance [Fromont et al., 2003]). Basically, a chronicle is a list of temporally-constrainted events. A chronicle is recognised when an instance of each event is found in the flow of observations that satisfies the constraints. The chronicle are usually made ``by hand''.=20 Automatic generation of chronicles are challenging, although it has investigated for Petri-Nets-modelled system [Guerraz--Dousson, 2004] or cardiac arrythmias (through Machine Learning techniques).

In this project, we propose to automatically generate chronicles-like patterns from a finite-state-machine-based model. This task is difficult as it must avoid ambiguities and false recognitions. The work will be theoretical but also applied to the monitoring of mail servers.

References:

Elisa Fromont, Marie-Odile Cordier, Ren=E9 Quiniou, and Alfredo Hernandez: Kardio and Calicot: a comparison of two cardiac arrhythmia classifiers , AIME'03 Workshop: Qualitative and Model-based Reasoning in Biomedicine

Christophe Dousson : Extending and unifying chronicle representation with event counters, ECAI'02

Bruno Guerraz and Christophe Dousson Chronicles Construction Starting from the Fault Model of the System to Diagnose, DX'04

Contact: Dr. Alban Grastien


Planning in Networks

Project Code: S_15
Supervisor: Dr. Jussi Rintanen, DPO Group (ANU) & Managing Complexity (NICTA)

Many planning problems are about transportation networks, power distribution networks, water distribution networks or connections (a binary relation) between nodes in a network in general. Existing planning languages poorly support network-oriented planning, which motivates the introduction of expressive and efficient languages for expressing and solving such planning problems.

The project is an investigation of implementation techniques for network-oriented planning. The basis is a planning language which is based on a modal logic for expressing network properties. The goal is the development of an efficient planning system for this language by using heuristic search and the state space representation of the planning problem. The main goal of the project is an implemented planning system, but the topic provides ample possibilities for more theoretical/analytical excursions to more fundamental questions about network-oriented planning.

Contact: Dr. Jussi Rintanen


Project Code: S_16
Supervisor: Dr. Jussi Rintanen, DPO Group (ANU) & Managing Complexity (NICTA)

Contact: Dr. Jussi Rintanen


PhD Thesis Projects

Here are some topics for PhD thesis projects. If you are interested in doing a PhD in our group, you can choose any topic that matches our research interests.

Application-Specific Control of SAT Algorithms

Project Code: P_01
Supervisor: Dr. Jussi Rintanen, DPO Group (ANU) & Managing Complexity (NICTA)

The propositional satisfiability problem SAT has proved to be a flexible and efficient way of representing and solving a wide range of problems in AI and other areas of computer science. Best implementations of algorithms for SAT rely on powerful general-purpose inference rules and heuristics. The use of control knowledge and heuristics derived from a specific application is a new and very promising research area which may make SAT algorithms applicable to much more challenging problems and make them competitive with specialized algorithms on much wider classes of problems.

The goal of the PhD thesis is to cover all aspects of application-specific control of SAT solvers. This includes

The thesis research will have both strong analytic and practical components. Large part of the work is in deriving novel algorithmic techniques for SAT and understanding the behavior of SAT algorithms and the general SAT problem both analytically and empirically. An equally important part is understanding the behavior of SAT algorithms with respect to concrete real-world applications like model-checking and AI planning.

An ideal PhD candidate would have a strong theoretical background in computational logic and some of its spplications as well as strong practical skills in applying them to real world problems, and also strong programming skills.

Contact: Dr. Jussi Rintanen


Proof Systems and Proof Procedures for SAT and QBF

Project Code: P_02
Supervisor: Dr. Jussi Rintanen, DPO Group (ANU) & Managing Complexity (NICTA)

The satisfiability problem SAT of the classical propositional logic is a basis of many automated tools in computer-aided verification and related problems, including the planning problem in AI. Current best algorithms are based on conflict-directed clause learning CDCL which has been shown to be more powerful as a proof system than the restricted form of resolution on which the traditional Davis-Putnam-Logemann-Loveland procedure is based. CDCL is typically combined with a rapid-restart strategy for increased performance.

An important extension of the SAT problem, QBF, is a natural basis for solving many extended reasoning tasks for which SAT is not expressive enough. The algorithmic basis of QBF is similar to SAT but not as well understood.

For both SAT and QBF there currently exist no theory why the CDCL+restarts based solvers work so well.

The goal of the thesis is to investigate the proof systems and proof procedures for SAT and QBF and potentially develop new and more efficient ones for both. The focus of the work will be in QBF solving, but understanding the state of the art in both areas it will be necessary to first establish a better understanding of the functioning of algorithms for solving SAT as well. Specific questions to be asked and answered include the following.

An ideal candidate for this project has a deep interest in analytic questions about fundamental problems in computer science, including complexity theory and NP-hardness, proof systems and algorithms, and also strong practical skills in applying the analytic skills for solving challenging theoretical and practical problems.

Contact: Dr. Jussi Rintanen