PhD Course
Reasoning about Action and High-Level Programs
Summer 2009
Dipartamento di Informatica e Sistemistica,
Universita di Roma "La Sapienza"
Brief Description
This course will discuss a framework for reasoning about action using
the Situation Calculus, as well as languages for high-level
programming of autonomous agents based on it. Autonomous agents are
active entities that perceive their environment, reason, plan and
execute appropriate actions to achieve their goals (in service of
their users), react to external changes, and have social abilities
that allow them to communicate and interact with other agents and
users. These may be robots or intelligent software agents that "live"
on the Internet. Agent-based approaches are good for building
open systems where components can come and go, and work
together in flexible ways. This course will focus on the
Golog-family of Situation Calculus-based agent programming languages.
The course will show how this work is relevant for many applications
beyond the traditional area of artificial intelligence, e.g. process
management and service composition/orchestration.
What's new
- July 20: Lecture 9 will be on July 22, instead of July 23 as initially anounced.
- June 24: The lecture transparencies for lecture 2 were updated.
- June 17: The tentative schedule has changed:
Lecture 5 will be on July 7 and Lecture 6 will be on July 8.
Instructors
Prof. Yves Lespérance
Office: B109
Tel: ext. 34124
Email: lesperan at cse.yorku.ca
Prof. Adrian Pearce
Office: B109
Tel: 34124
Email: adrianrp at unimelb.edu.au
Prof. Giuseppe De Giacomo
Office: B109
Tel: 34010
Email: degiacomo at dis.uniroma1.it
Lectures
Normally Tuesday and Thursday from 14:00 to 15:30 in A3; see schedule below.
Evaluation
If you are taking the course for credit, see the instructors to arrange
evaluation.
Schedule
- Lecture 1 (Hour 1 and Hour 2)(June 18): Introduction to Reasoning about Action in the Situation Calculus [Lespérance].
- Lecture 2 (Hour 3 and Hour 4)(June 23): Regression and Induction on Situations [Pearce].
- Lecture 3 (Hour 5 and Hour 6)(June 25): High-Level Programming in the Situation Calculus: Golog and ConGolog [Lespérance].
- Lecture 4 (Hour 7 and Hour 8)(June 30): High-Level Programming in the Situation Calculus and Formal Methods [De Giacomo].
- Lecture 5 (Hour 9 and Hour 10)(July 7): Sensing and Planning under Incomplete Information and Dynamic Evironments: IndiGolog [Lespérance].
- Lecture 6 (Hour 11 and Hour 12)(July 8): Knowledge in the Situation Calculus [Pearce].
- Lecture 7 (Hour 13 and Hour 14)(July 9): Practical Programming in IndiGolog [Pearce].
- Lecture 8 (Hour 15 and Hour 16)(July 21): Execution Monitoring and Plan Repair [Lespérance].
- Lecture 9 (Hour 17 and Hour 18)(July 22): Process Composition and Orchestration [De Giacomo].
References and Links
General References
Reiter, R.,
Knowledge in Action: Logical Foundations for Specifying and Implementing
Dynamical Systems,
MIT Press, 2001.
Publisher,
Book home page.
Wooldridge M.,
An Introduction to Multiagent Systems - Second Edition,
Wiley, 2009.
Ronald J. Brachman and Hector J. Levesque,
Knowledge Representation and Reasoning,
Elsevier/Morgan Kaufmann, 2004.
Bordini, R.H., Dastani, M., Dix, J., and El Fallah Seghrouchni, A. (Eds.)
Multi-Agent Programming: Languages, Platforms and Applications,
Springer 2005.
Publisher.
Bordini, R.H., Dastani, M., Dix, J., and El Fallah Seghrouchni, A. (Eds.)
Multi-Agent Programming: Languages, Tools and Applications,
Springer 2009.
Publisher.
Singh, M.P. and Huhns, M.N.
Service-Oriented Computing: Semantics, Processes, Agents,Wiley 2005.
Weiss, Gerhard (Ed.),
Multiagent Systems, A Modern Approach to Distributed Artificial
Intelligence,
MIT Press, 1999.
Publisher.
Huhns, M.N. and Singh, M.P. (Eds.),
Readings in Agents,
Morgan Kaufmann, San Francisco, CA, 1997.
Wooldridge M. and Jennings, N.R.,
Intelligent Agents: Theory and Practice,
Knowledge Engineering Review, 10 (2), 115-152, 1995;
PDF version,
HTML version.
Bradshaw, J. (Ed.),
Software Agents,
AAAI Press/MIT Press, Cambridge, MA, 1997.
Jennings, N.R. and Wooldridge, M. (Eds.),
Agent Technology: Foundations, Applications, and Markets,
Springer Verlag, Berlin, 1998.
Wooldridge, M. and Rao, A. (Eds.),
Foundations of Rational Agency,
Applied Logic Series, Vol. 14, Kluwer, Dordrecht, 1999.
Fagin, R., Halpern, J.Y., Moses, Y., and Vardi, M.Y.
Reasoning about Knowledge. MIT Press, Cambridge, MA, 1995.
Clocksin, W.F. and Mellish, C.S.,
Programming in Prolog,
Springer Verlag, New York, 1987. Third edition.
Russell, S.J. and Norvig, P.,
Artificial Intelligence: A Modern Approach, 2nd Edition
Prentice Hall, 2003.
Readings and Lecture Transparencies
- Lecture 1 (Hour 1 and Hour 2)(June 18): Introduction to Reasoning About Action in the Situation Calculus [Lespérance].
Lecture transparencies from Brachman & Levesque Ch. 14 & 15.
Required readings:
Just read the lecture transparencies ahead of time.
Optional readings:
Chapter 14 and Section 15.1 of
Ronald J. Brachman and Hector J. Levesque,
Knowledge Representation and Reasoning,
Elsevier/Morgan Kaufmann, 2004; copies can be obtained from the instructor.
References:
McCarthy, J. and Hayes, P.J. Some Philosophical Problems from the Standpoint
of Artificial Intelligence.
In Machine Intelligence 4, B. Meltzer and D. Michie (eds.),
463-502, Edinburgh Univ. Press, Edinburgh, 1969.
Reiter, R.,
Knowledge in Action: Logical Foundations for Specifying and Implementing
Dynamical Systems,
MIT Press, 2001.
Publisher,
Book home page.
- Lecture 2 (Hour 3 and Hour 4)(June 23): Regression and Induction on Situations [Pearce].
Lecture transparencies - Updated!
Required readings:
Just read the lecture transparencies ahead of time.
Optional readings:
Chapter 4 of
Reiter, R.,
Knowledge in Action: Logical Foundations for Specifying and Implementing
Dynamical Systems,
MIT Press, 2001
(copies can be obtained from the instructor).
Chapter 2 & 3 from Kelly, Ryan, Asynchronous Multi-Agent Reasoning in
the Situation Calculus, PhD Thesis, The University of Melbourne, 2009.
- Lecture 3 (Hour 5 and Hour 6)(June 25): High-Level Programming in the Situation Calculus: Golog and ConGolog [Lespérance].
Lecture transparencies
Required readings:
Just read the lecture transparencies ahead of time.
Optional readings:
De Giacomo, G., Lespérance, Y., Levesque, H.J., and Sardina, S.,
IndiGolog: A High-Level Programming Language for Embedded Reasoning Agents,
in Bordini, R.H., Dastani, M., Dix, J., and El Fallah Seghrouchni, A. (Eds.)
Multi-Agent Programming: Languages, Tools and Applications,
31-72, Springer 2009.
References:
See at end of lecture notes.
- Lecture 4 (Hour 7 and Hour 8)(June 30): High-Level Programming in the Situation Calculus and Formal Methods [De Giacomo].
Lecture transparencies:
Part 1: Evaluation Semantics,
Part 2: Hoare Logic,
Part 3: Golog and ConGolog.
Optional readings:
De Giacomo, G., Ternovskaia, E., and Reiter, R.,
Non-Terminating Processes in the Situation Calculus.
In Proc. of the AAAI'97 Workshop on Robots, Softbots, Immobots:
Theories of Action, Planning and Control,
1997.
- Lecture 5 (Hour 9 and Hour 10)(July 7): Sensing and Planning under
Incomplete Information and Dynamic Evironments [Lespérance].
Lecture transparencies.
Optional readings:
De Giacomo, G., Lespérance, Y., Levesque, H.J., and Sardina, S.
On the Semantics of Deliberation in IndiGolog - From Theory to Implementation.
Annals of Mathematics and Artificial Intelligence,
41(2-4), 259-299, August, 2004.
References.
- Lecture 6 (Hour 11 and Hour 12)(July 8): Knowledge in the Situation Calculus [Pearce].
Lecture transparencies - Updated!
Optional readings:
Chapters 1 & 2 of
Fagin, R., Halpern, J.Y., Moses, Y., and Vardi, M.Y.
Reasoning about Knowledge. MIT Press, Cambridge, MA, 1995.
References:
See at the end of the lecture transparencies.
- Lecture 7 (Hour 13 and Hour 14)(July 9): Practical Programming in IndiGolog and MIndiGolog [Pearce].
Lecture transparencies.
References and URL for Downloading MIndiGolog:
See at the end of the lecture transparencies.
- Lecture 8 (Hour 15 and Hour 16)(July 21): Execution Monitoring and Plan
Repair [Lespérance].
Lecture transparencies.
References:
De Giacomo, G., Lespérance, Y., Levesque, H.J., and Sardina, S.
On the Semantics of Deliberation in IndiGolog - From Theory to Implementation.
Annals of Mathematics and Artificial Intelligence,
41(2-4), 259-299, August, 2004.
de Leoni, M., De Giacomo, G., Lespérance, Y., and Mecella, M.
On-line adaptation of sequential mobile processes running concurrently.
In S.Y. Shin and S. Ossowski (Eds.)
Proc. of the 2009 ACM Symposium on Applied Computing (SAC),
1345-1352, Honolulu, HI, USA, March, 2009.
- Lecture 9 (Hour 17 and Hour 18)(July 22): Process Composition and Orchestration [De Giacomo].
Lecture transparencies of "Composition of Services that Share an Ininite-State
Blackboard" presented at IIWEB'09 (with Fabio Patrizi),
Lecture transparencies of "Composition of ConGolog Programs"
presented at IJCAI'09 (jointly with Sebastian Sardina),
Lecture transparencies "Service Composition and Synthesis: The Roman Model".