Valid HTML 4.01!

Research projects

* ALAN: Designing an axiomatization language for autonomous agents and mobile robots.
2002 - 2006
Abstract: The aim of this project is the development of a theoretically founded, high-level axiomatization language for intelligent software agents and autonomous robots. The language ALAN is based on the theory of the Fluent Calculus, which we devised successfully during the last three years. In opposite to classical programming languages, where basic commands manipulate the internal state of the program only, the basic commands comprising a software agent or a program for robot navigation are actions which affect the external environment. Furthermore, autonomous agents and robots have to respond to specific situations in a flexible and intelligent way, such that the programmer only needs to provide a framework that allows for a certain range of freedom in response being autonomously determined according to the specific situation in an appropriate way. By that, programming becomes axiomatization, i.e., describing the problem instead of developing a detailed plan of incremental problem solving. The objectives of the axiomatization language ALAN (Axiomatization Language for Agents), which is to be developed during this project, are as follows. First, it will provide a method for specifying the effects of basic actions on the agent's specific environment. Next, the language will allow for programs that are highly non-deterministic and only specify the framework mentioned above. Using this concept, a software agent or a robot has to be able to autonomously choose an option of execution of the non-deterministic program that is appropriate with respect to the given theory on the effects of its actions. This requires a comprehensive theory of automatic logical inference on actions, as the Fluent Calculus already represents in a limited way. The extension of this theory as well as its application forming a foundation concerning syntax, semantic and implementation of ALAN, is the objective of our project.
Watch this movie (low resolution 75 MB MPEG1) (high resolution 238 MB MPEG2) demonstrating ALAN solving a complex delivery task in an office environment.
In this movie (low resolution 30 MB MPEG1) (high resolution 95 MB MPEG2) our mobile robot picks up an object for delivery.
This movie (low resolution 23 MB MPEG1) (high resolution 70 MB MPEG2) demonstrates obstacle avoidance and path planning of our mobile robot.

Student projects

* Stephan Schiffel Translation of Domain Specifications between Situation Calculus and Fluent Calculus. Diploma thesis, 2005
Abstract: Situation Calculus and Fluent Calculus are two action formalisms used for describing dynamic domains. Both calculi provide different solutions to the frame problem and therefore the programming languages based on them - Golog and Flux - have different properties. For this reason, one might be suited better than the other to solve certain classes of problems. In order to compare the two calculi or the two programming languages a formal relation between both is needed. In this thesis I develop such a relation in form of a translation function between domain axiomatisations of Situation Calculus and Fluent Calculus and prove the correctness of this translation. Furthermore, I present an implementation of this translation function in Prolog which translates Golog domain descriptions to Flux and vice versa.
(PDF, 345 KB; PS.GZ, 249 KB)

* Isara Anantavrasilp. Learning Agent: A Step Toward Automated Agent Programming. MSc thesis, 2004
Abstract: Fluent Calculus, a high level action representation formalism, employs the concept of state-update axioms to formalize actions together with their effects and, in effect, provides a solution to the classical frame problem. However, encoding the state-update axioms could be very difficult and error-prone, especially if the programmer is not familiar with the programming domain. To tackle this problem, a framework which allows the agent to learn the effects of its own actions (i.e. its state-update axioms) in a deterministic environment has been proposed. The Candidate Elimination algorithm has been utilized to add this learning ability to the agent. By maintaining version spaces of each action, the possible state-update axioms, based on the evidence of the already-seen observations, can be extracted when required. This framework has been evaluated by the simulation of the learning agent in the Yale Shooting scenario. An impressive result had been carried out in the experiment. The agent successfully learned the effects of its actions with 100% correctness.

* Loïc Alain Royer. Subsumption Special Fluent Calculus: Towards a Unification of Representationalism and Behaviorism through an Abstraction Action Theory. MSc thesis, 2003
Abstract: A variant of the Special Fluent Calculus action theory is introduced: the Subsumption Special Fluent Calculus, along with its logic programming implementation: the Subsumption FLUent calculus eXecutor (SFLUX). This new action theory is able to represent an agent's domain as a hierarchy of abstracted models. Harnessing the state space complexity and bridging the gap between cognitive and reactive control are the main two goals of this work. In essence we merge into one paradigm the key ingredients of representational AI and subsumption-based AI through the use of abstraction. The SFLUX language is a purely declarative specification language consisting of the agent's domain axiomatization and an interface to actuators and sensors. As a proof of principle, a real physical Blocks World robot: Mani II was built. It is entirely controlled from the low level to the high level in SFLUX. It is a unified architecture, with nothing more than a thin interface to real sensors and actuators. The system is very fast, computationally efficient, and is mostly implemented in Prolog. As integral part of this system, a simple execution monitoring strategy is shown to be capable of recovering from unexpected changes of the world in a sound and, if needed, optimal way.
Watch this movie (1.2 MB AVI), demonstrating SFLUX applied to the Mani-II robot in the blocks world.