High-level robot programming in dynamic and incompletely known environments
Authors: Mikhail Soutchanski
Venue:  (2005)

This thesis advocates the usefulness and practicality of a logic-based approach to AI and in particular to high-level control of mobile robots. The contribution of the research work reported here is twofold: (1) the development of theoretical frameworks that account for uncertainty and unmodeled dynamics in an environment where an acting agent has to achieve certain goals and (2) the implementation of the developed ideas on a mobile robot. We have elaborated the approach to designing efficient and reliable controllers in Golog following two different perspectives on the environment where the control program is supposed to operate. According to one perspective, investigated in Chapter 4, the agent has a logical model of the world, but there is no probabilistic information about the environment where the agent is planning to act, and the agent is not capable or has no time for acquiring probabilities of different effects of its actions. In this case, the uncertainty and dynamics of the environment can be accounted only by observing the real outcomes of actions executed by the agent, by determining possible discrepancies between the observed outcomes and the effects expected according to the logical model of the world and then by recovering, if necessary, from the relevant discrepancies. To recover the agent computes on-line an appropriate correction of the program that is being executed. A general framework for execution monitoring of Golog programs provides the aforementioned functionalities and generalizes those previously known approaches to execution monitoring that have been formulated only for cases when the agent is given a linearly or partially ordered sequence of actions, but not an arbitrary program. According to the second perspective, investigated in Chapter 5, we can model actions of the agent as stochastic actions and characterize them by a finite set of probabilities: whenever the agent does a stochastic action, it may lead to a finite number of possible outcomes. Two major innovations in this research direction are the development of a decision-theoretic Golog (DT Golog) interpreter, that deals with programs that include stochastic actions, and the development of the situation calculus representation of MDPs. In addition to this off-line DT-Golog interpreter, in Chapter 6 we develop an on-line DT Golog interpreter that combines planning with the execution of policies. This new on-line architecture allows one to compute an optimal policy (optimal with respect to a given Golog program and a current model of the world) from an initial segment of a Golog program, execute the computed policy on-line and then proceed to computing and executing policies for the remaining segments of the program. The specification and implementation of the on-line interpreter requires a new approach to the representation of sensing actions in the situation calculus. A formal study of this approach is undertaken in Chapter 3. We also describe implementations of our frameworks; these were successfully tested in a real office environment on a mobile robot B21.