Information Technology Reference
In-Depth Information
eventually. Since our current high-level control already knows about the robot's ca-
pabilities (the actions and the parameters that these actions need), we want to tightly
connect the interpretation with it. This paper is a revised and extended version of [17].
The remainder of this paper is organised as follows. In the next section we introduce
the foundations of our work and we briefly review related work. Then, we go into detail
on our approach in Section 3. We present an evaluation in Section 4 before we conclude
and present future work in Section 5.
2
Foundations and Related Work
In this section, we introduce the foundations, namely the situation calculus and G OLOG ,
which our approach is based on. We then briefly review related work.
2.1
Foundations
The high-level control of our domestic service robot uses a logical programming and
plan language called R EADYLOG . It is a dialect of G OLOG which itself is based on the
situation calculus.
The Situation Calculus and G OLOG . The situation calculus [14] is a sorted second
order logical language with equality that allows for reasoning about actions and their
effects. The situation calculus distinguishes three different sorts: actions , situations ,
and domain dependent objects . The state of the world is characterised by functions and
relations with a situation as their last argument. They are called functional and relational
fluents , respectively. The world evolves from an initial situation S 0 only due to primitive
actions, e.g., s = do ( a, s ) means that the world is in situation s after performing action
a in situation s . Possible world histories are represented as sequences of actions. For
each action one has to specify a precondition axiom stating under which conditions
it is possible to perform the respective action and effect axioms formulating how the
action changes the world in terms of the specified fluents. An action precondition axiom
states when an action can be executed. The effects that actions have on the fluents are
described by so-called successor state axioms [16].
G OLOG [13] is a logic-based robot programming and plan language based on the
situation calculus. It allows for imperative-style programming but it also offers some
non-deterministic constructs. A Basic Action Theory (BAT), which is a set of axioms de-
scribing properties of the world, axioms for actions and their preconditions and effects
as described above, and some foundational axioms, then allows for reasoning about a
course of action.
There exist various extensions and dialects to the original G OLOG interpreter, one of
which is R EADY L OG [9]. It integrates several extensions like interleaved concurrency,
sensing, exogenous events, and on-line decision-theoretic planning (following [3]) into
one framework. In R EADYLOG programs one can use non-deterministic actions that
leave certain decisions open, which then are taken by the controller based on an opti-
misation theory. The optimisation resembles that of a Markov Decision Process (MDP)
 
Search WWH ::




Custom Search