Programming Rational Agents in GOAL

  • Koen V. HindriksEmail author


The agent programming language GOAL is a high-level programming language to program rational agents that derive their choice of action from their beliefsand goals. The language provides the basic building blocks to design and implementrationalagents by meansofa setofprogramming constructs. These programming constructs allow and facilitate the manipulation of an agent’sbeliefs and goals and to structure its decision-making. GOAL agents are called rational because they satisfy a numberof basic rationality constraints and because they decide to perform actions to further their goals based uponareasoning scheme derived from practical reasoning. The programming concepts of belief and goal incorporated into GOAL provide the basis for this form of reasoning and are similarto their common sense counterparts used everyday to explain the actions that we perform. In addition, GOAL provides the means for agents to focus their attention on specic goals and to communicate at the knowledge level. This provides an intuitive basis for writing high-level agent programs. At the same time these concepts and programming constructs have a well-dened, formal semantics. The formal semantics provides the basis for deninga verication framework for GOAL for verifying and reasoning about GOAL agents whichis similar to some of the wellknownagent logics introduced in the literature.


Belief Base Action Rule Goal Base Integrate Development Environment Goal Agent 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.



I would like to than keveryone whohas contributed to the development of GOAL, by helping to implement the language, developing the theoretical foundations, or contributing to extensionsof GOAL. The listof people who have been involved one way or the other in the GOAL story so far,all of which I would like to thank are: Lăacrăamioaria Aşstefăanoaei, FrankdeBoer, MehdiDastani,Wiebe van der Hoek, Catholijn Jonker, John-Jules Ch.Meyer, Peter Novak, M. Birna van Riemsdijk, Tijmen Roberti, Nick Tinnemeier, Wouter de Vries. Special thanks go to Paul Harrenstein, who suggestedthe acronym GOAL to me, and Wouter Pasman, who did most of the programming of the GOAL interpreter. I would also like to thank Hilko Derde for useful remarks that helped to improve this chapter.


  1. 1.
    Baral, C.: Knowledge Representation, Reasoning and Declarative Problem Solving. Cambridge UniversityPres (2003)Google Scholar
  2. 2.
    Bellifemine, F., Caire, G., Greenwood, D. (eds.): Developing Multi-Agent Systems with JADE. No. 15 in Agent Technology. John Wiley & Sons, Ltd. (2007)Google Scholar
  3. 3.
    de Boer, F., Hindriks, K., van der Hoek, W., Meyer, J.J.: A Verification Framework for Agent Programming with Declarative Goals. Journal of Applied Logic 5(2), 277–302 (2007)MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Bordini, R.H., Hübner, J.F., Wooldridge, M.: Programming Multi-Agent Systems in AgentSpeak using Jason. John Wiley & Sons (2007)Google Scholar
  5. 5.
    Bratman, M., Israel, D., Pollack, M.: Plansandresource-boundedpracticalreasoning. In: R. Cummins, J.L. Pollock(eds.) Philosophyand AI: Essays atthe Interface, pp. 1–22. The MIT Press (1991)Google Scholar
  6. 6.
    Bratman, M.E.: Intentions, Plans, and Practical Reasoning. Harvard University Press(1987)Google Scholar
  7. 7.
    Ceri, S., Gottlob, G., Tanca, L.: What you always wanted to know about datalog(andnever daredto ask). IEEE Trans.of KDE 1(1) (1989)Google Scholar
  8. 8.
    Chandy, K.M., Misra, J.: Parallel Program Design. Addison-Wesley(1988)Google Scholar
  9. 9.
    Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Quesada, J.F.: Maude: Specifcation and programming in rewriting logic. Theoretical Computer Science 285(2), 187–243 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  10. 10.
    Cohen, P.R.,Levesque, H.J.: Intention Is Choice with Commitment. Artifcial Intelligence 42, 213–261 (1990)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    Cook, S., Liu, Y.: AComplete Axiomatization for Blocks World. Journal of Logicand Computation 13(4), 581–594 (2002)CrossRefGoogle Scholar
  12. 12.
    Dastani, M.: 2APL: a practical agent programming language. Journal Autonomous Agents and Multi-Agent Systems 16(3), 214–248 (2008)CrossRefGoogle Scholar
  13. 13.
    Dastani, M., Hindriks, K.V., Novak, P., Tinnemeier, N.A.: Combining multiple knowledge representation technologies intoagent programming languages. In: Proceedings of the International Workshop on Declarative Agent Languages and Theories(DALT’08) (2008).To appearGoogle Scholar
  14. 14.
    Davidson, D.: Actions, reasons and causes. In: Essays on Actions and Events. Oxford University Press (1980)Google Scholar
  15. 15.
    Davis, R., Shrobe, H.E., Szolovits, P.: What is a knowledge representation? AI 14(1), 17–33 (1993)Google Scholar
  16. 16.
    Dretske, F.: Explaining Behavior: Reasonsina World of Causes. The MIT Press (1995)Google Scholar
  17. 17.
    Ghallab, M., Nau, D., Traverso, P.: Automated Planning: Theory and Practice. Morgan Kaufmann (2004)Google Scholar
  18. 18.
    Gupta, N., Nau, D.S.: On the Complexity of Blocks-World Planning.Artifcial Intelligence 56(2-3), 223–254 (1992)MathSciNetCrossRefzbMATHGoogle Scholar
  19. 19.
    Hindriks, K.: Modules as policy-based intentions: Modular agent programming in goal. In: Proceedings of the International Workshop on Programming Multi-Agent Systems (Pro-MAS’07), vol. 4908 (2008)Google Scholar
  20. 20.
    Hindriks, K., vanderHoek, W.: GOAL agents instantiate intentionlogic.In: Proceedings of the 11th European Conference on Logics in Artifcial Intelligence(JELIA’08), pp. 232–244 (2008)Google Scholar
  21. 21.
    Hindriks, K., Jonker, C., Pasman, W.: Exploring heuristic action selection in agent programming. In: Proceedings of the International Workshop on Programming Multi-Agent Systems (ProMAS’08) (2008)Google Scholar
  22. 22.
    Hindriks, K.V., de Boer,F.S., van der Hoek,W., Meyer, J.J.C.: Agent Programming with Declarative Goals. In: Proceedings of the 7th International Workshop on Agent Theories Architectures and Languages, LNCS, vol. 1986, pp. 228–243 (2000)Google Scholar
  23. 23.
    Hindriks, K.V., van Riemsdijk, M.B.: Using temporal logic to integrate goals and qualitative preferences into agent programming. In: Proceedings of the International Workshop on Declarative Agent Languages and Theories, vol. 5397, pp. 215–232 (2008)zbMATHGoogle Scholar
  24. 24.
    Hindriks, K.V., van Riemsdijk, M.B.,van der Hoek, W.: Agent programming with temporally extended goals. In: Proceedings of the 8th International Conference on Autonomous Agents and Multi-Agent Systems (2009)Google Scholar
  25. 25.
    vander Hoek, W., van Linder, B.,Meyer, J.J.: An Integrated Modal Approach to Rational Agents. In: M.Wooldridge(ed.) Foundations of Rational Agency, Applied Logic Series 14, pp. 133–168. Kluwer, Dordrecht (1999)CrossRefGoogle Scholar
  26. 26.
    Jackson, P.: Introduction To Expert Systems,3rd edn. Addison-Wesley(1999)Google Scholar
  27. 27.
    Lifschitz, V.:On the semantics of strips. In: M. Georgeff, A. Lansky (eds.) Reasoning about Actions and Plans, pp. 1–9. MorganKaufman (1986)Google Scholar
  28. 28.
    McCarthy, J.: Programs with common sense. In: Proceedings of the Teddington Conference on the Mechanization of Thought Processes, pp. 75–91. Her Majesty’s Stationary Office, London (1959)Google Scholar
  29. 29.
    McCarthy, J.:Ascribing mental qualities to machines. Tech. rep., Stanford AILab, Stanford, CA (1979)Google Scholar
  30. 30.
    Meyer, J.J.C., vanderHoek, W.: Epistemic Logic for AI and Computer Science. Cambridge: Cambridge UniversityPress (1995)CrossRefGoogle Scholar
  31. 31.
    Newell, A.: The Knowledge Level. Artificial Intelligence 18(1), 87–127 (1982)MathSciNetCrossRefGoogle Scholar
  32. 32.
    Pearl, J.:Probabilistic Reasoning in Intelligent Systems-Networks of Plausible Inference. Morgan Kaufmann (1988)Google Scholar
  33. 33.
    Plotkin, G.: A Structural Approachto Operational Semantics. Tech. Rep. DAIMI FN-19, University of Aarhus (1981)Google Scholar
  34. 34.
    Rao, A.S., Georgeff, M.P.: Intentions and Rational Commitment. Tech. Rep.8, Australian Artificial Intelligence Institute (1993)Google Scholar
  35. 35.
    van Riemsdijk, M.B., Dastani, M., Meyer, J.J.C.: Goals in conflict: semantic foundations of goals in agent programming. Autonomous Agents and Multi-AgentSystems (2008). OnlineGoogle Scholar
  36. 36.
    Russell, S., Norvig, P.: Artificial Intelligence: A Modern Approach,2nd edn. Prentice Hall (2003)Google Scholar
  37. 37.
    Schoppers, M.: Universal plans for reactive robots in unpredictable environments. In: Proceedings of the Tenth International Joint Conference on Artificial Intelligence (IJCAI’87) (1987)Google Scholar
  38. 38.
    Scowen, R.S.: Extended BNF -A generic base standard. (1996)
  39. 39.
    Shoham, Y.: Agent-oriented programming. Artificial Intelligence 60, 51–92 (1993)MathSciNetCrossRefGoogle Scholar
  40. 40.
    Slaney, J., Thiébaux, S.: Blocks World revisited. Artificial Intelligence 125, 119–153 (2001)MathSciNetCrossRefzbMATHGoogle Scholar
  41. 41.
    Sterling, L., Shapiro, E.: The Art of Prolog, 2nd edn. MIT Press (1994)Google Scholar
  42. 42.

Copyright information

© Springer-Verlag US 2009

Authors and Affiliations

  1. 1.EEMCS, Delft University of TechnologyMekelweg 4

Personalised recommendations