This paper proposes a new logic programming language called GOLOG whose interpreter automatically maintains an explicit representation of the dynamic world being modeled, on the basis of user supplied axioms about the preconditions and effects of actions and the initial state of the world. This allows programs to reason about the state of the world and consider the effects of various possible courses of action before committing to a particular behavior. The net effect is that programs may be written at a much higher level of abstraction than is usually possible. The language appears well suited for applications in high level control of robots and industrial processes, intelligent software agents, discrete event simulation, etc. It is based on a formal theory of action specified in an extended version of the situation calculus. A prototype implementation in Prolog has been developed. 1 Introduction Computer systems are often embedded in complex environments with which they interact. In...
|
1385
|
STRIPS: A new approach to the application of Theorem Proving to Problem Solving
– Fikes, Nilsson
- 1971
|
|
1220
|
Some philosophical problems from the standpoint of artificial intelligence
– McCarthy, Hayes
- 1969
|
|
835
|
Intelligent agents: Theory and practice
– Wooldridge, Jennings
- 1995
|
|
603
|
Agent-oriented programming
– Shoham
- 1993
|
|
495
|
The frame problem in the situation calculus: A simple solution (sometimes) and a completeness result for goal regression
– Reiter
- 1991
|
|
233
|
ADL: Exploring the Middle Ground between STRIPS and the Situation Calculus
– Pednault
- 1989
|
|
211
|
State constraints revisited
– Lin, Reiter
- 1994
|
|
177
|
Logics of Time and Computation
– Goldblatt
- 1987
|
|
164
|
Embracing causality in specifying the indirect effects of actions
– Lin
- 1995
|
|
148
|
What is planning in the presence of sensing
– Levesque
- 1996
|
|
140
|
Monotonic solution of the frame problem in the situation calculus: an e cient method for worlds with fully speci ed actions
– Schubert
- 1990
|
|
119
|
Natural actions, concurrency and continuous time in the situation calculus
– Reiter
- 1996
|
|
118
|
The synthesis of digital machines with provable epistemic properties
– Rosenschein, Kaelbling
- 1986
|
|
115
|
Temporal reasoning in the situation calculus
– Pinto
- 1994
|
|
102
|
Proving properties of states in the situation calculus
– Reiter
|
|
100
|
Achieving several goals simultaneously
– Waldinger
- 1977
|
|
94
|
Transaction logic programming
– Bonner, Kifer
- 1993
|
|
85
|
A logical approach to high level robot programming { a progress report
– Lesperance, Levesque, et al.
- 1994
|
|
83
|
An Overview of Transaction Logic
– Bonner, Kifer
- 1994
|
|
80
|
The frame problem and knowledge-producing actions
– Scherl, Levesque
- 1993
|
|
68
|
The case for domain-specific frame axioms
– Haas
- 1987
|
|
66
|
Theorem proving by resolution as a basis for questionanswering systems
– Green
- 1969
|
|
58
|
Foundations of a logical approach to agent programming
– Lespérance, Levesque, et al.
- 1996
|
|
51
|
Reasoning about noisy sensors in the situation calculus
– Bacchus, Halpern, et al.
- 1995
|
|
48
|
Foundations for the situation calculus
– Levesque, Pirri, et al.
- 1998
|
|
30
|
Denotational Semantics
– Stoy
- 1977
|
|
29
|
How to progress a database (and why) I. Logical foundations
– Lin, Reiter
- 1994
|
|
25
|
How to clear a block: a theory of plans
– Manna, Waldinger
- 1987
|
|
22
|
How to progress a database II: The STRIPS connection
– Lin, Reiter
- 1995
|
|
18
|
Ability and knowing how in the situation calculus
– Lespérance, Levesque, et al.
|
|
12
|
Embedded computation and the semantics of programs
– Dixon
- 1991
|
|
9
|
Goals and rational action in the situation calculus { a preliminary report
– Shapiro, Lesperance, et al.
|
|
7
|
Interval Situation Calculus
– Ternovskaia
- 1994
|
|
7
|
Modeling complex systems in the situation calculus: A case study using the Dagstuhl steam boiler problem
– Kelley
- 1996
|
|
4
|
GOLOG as an agent-programming language: Experiments in developing banking applications
– Ruman
- 1995
|
|
3
|
Reasoning about physical systems with the situation calculus
– Kelley
- 1996
|
|
2
|
Defining complex actions in the situation calculus
– Levesque, Lin, et al.
- 1995
|
|
1
|
Robot programs with sensing actions: Specification and implementation
– Levesque
- 1995
|