2.4 Teleo-Reactive (T-R) procedures as Qu-Prolog terms

In parallel with our use of high level communication servers to facilitate the implementation of multi-agent applications using Qu-Prolog, we began to explore syntactic extensions to facilitate the programming of agents controlling robotic devices. This work was inspired by the 2001 paper by Nils Nilsson on Tele-Reactive Procedures using rules with preconditions that accessed percept facts using Prolog style inference rules. This use of Prolog style inference made T-R procedures an ideal application specific extension of Qu-Prolog.

To achieve this, we declared new Qu-Prolog operators which allowed us to include T-R procedures in a Qu-Prolog source file using a syntax similar to Nilsson’s. To the Qu-Prolog system these procedures were just Qu-Prolog terms terminated with fullstops. We then ’compiled’ any T-R procedure terms in a source file, as it was being consulted, using Prolog’s term expansion feature. They were compiled into ordinary Qu-Prolog clauses. T-R procedure call evaluation, with its unique operational semantics, was then partially interpretively executed. However, the checking of the pre-condition tests of the individual T-R action rules was a direct Qu-Prolog evaluation.

On This Site