Local Conditional High - Level Robot Programs ( extended

  • Sebastian Sardi
  • Published 2007


When it comes to building robot controllers, high-level programming arises as a feasible alternative to planning. The task then is to verify a high-level program by nding a legal execution of it. However, interleaving ooine veriication with execution in the world seems to be the most practical approach for large programs and complex scenarios involving information gathering and exogenous events. In this paper, we present a mechanism for performing local lookahead for the Golog family of high-level robot programs. The main features of such mechanism are that it takes sensing seriously by constructing conditional plans that are ready to be executed in the world, and it mixes perfectly with an account of interleaved perception, planning, and action. Also, a simple implementation is developed. 1 Motivation In general terms, this paper is concerned with how to conveniently specify the behavior of an intelligent agent or robot living in an incompletely known dynamic world. One popular way of specifying the behavior of an agent is through planning | the generation of a sequence of actions achieving or maintaining a set of goals. To cope with incomplete knowledge, some sort of sensing behavior is usually assumed 1,2], resulting in conditional or contingency plans 3{5], where branches are executed based on the outcome of perceptual actions or sensors. The task of a conditional planner is to nd a tree-structured plan that accounts for and handles all eventualities, in advance of execution. However this type of conditional planning is computationally diicult and impractical in many robot domains. The non-conditional planning problem is already highly intractable, and taking sensing into account only makes it worse. High-level logic programming languages like Golog 6] and ConGolog 7] ooer an interesting alternative to planning in which the user speciies not just a goal, but also constraints on how it is to be achieved, perhaps leaving small sub-tasks to be handled by an automatic planner. In that way, a high-level program serves as a \guide" heavily restricting the search space. By a high-level program, we mean one whose primitive instructions are domain-dependent actions of the robot, whose tests involve domain-dependent uents aaected by these actions, and whose code may contain nondeterministic choice points. Instead of looking for a legal sequence of actions achieving some goal, the task now is to nd a sequence that constitutes a legal execution of a high-level program. Originally, Golog and ConGolog programs were intended to …

Cite this paper

@inproceedings{Sardi2007LocalCH, title={Local Conditional High - Level Robot Programs ( extended}, author={Sebastian Sardi}, year={2007} }