Abstract
BDI represents a well-known agent architecture that has been successfully adopted for expressing agent behavior in terms of beliefs, desires and intentions. A core advantage of the architecture consists in its underlying philosophical model that relies on intuitive folk-psychological notions to describe rational human behavior. A key challenge consists in making the ideas of the BDI model easily accessible for software engineers. For this purpose many different BDI programming languages have been devised that differ considerably in their interpretation of the attitudes and the used programming paradigm. In many cases, novel agent languages such as AgentSpeak(L) have been developed which expose a new syntax and semantics to the user. On the one hand this is positive because it allows for introducing a compact and concise notation, but on the other hand the language is very different from well-known and adopted mainstream languages. To remedy this problem it will be shown that the BDI model can also be realized in a completely object oriented programming language by exploiting its metadata capabilities. We will show how the BDI attitudes can be mapped to slightly enhanced object oriented counterparts and how common BDI use cases can be realized using the novel approach. A key advantage of the approach is that BDI programming more closely resembles object orientation and the learning effort is reduced, because existing concepts and tool chains can be further employed. The usefulness of the approach will be illustrated with an example application from the area of production automation.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Basanta-Val, P., Garcia-Valls, M.: A distributed real-time java-centric architecture for industrial systems. IEEE Transactions on Industrial Informatics 10(1), 27–34 (2014)
Bergenti, F., Botelho, L., Rimassa, G., Somacher, M.: A FIPA compliant Goal Delegation Protocol. In: Proc. Workshop on Agent Communication Languages and Conversation Policies (AAMAS 2002), Bologna, Italy (2002)
Boissier, O., Bordini, R., Hübner, J., Ricci, A., Santi, A.: Multi-agent oriented programming with jacamo. Science of Computer Programming 78(6), 747–761 (2013)
Bordini, R., Dastani, M., Dix, J., El Fallah Seghrouchni, A.: Multi-Agent Programming: Languages, Platforms and Applications. Springer (2005)
Bordini, R., Hübner, J.F., Vieira, R.: Jason and the Golden Fleece of Agent-Oriented Programming. In: Multi-Agent Programming: Languages, Platforms and Applications, pp. 3–37. Springer (2005)
Braubach, L., Pokahr, A., Moldt, D., Lamersdorf, W.: Goal Representation for BDI Agent Systems. In: Bordini, R.H., Dastani, M., Dix, J., El Fallah Seghrouchni, A. (eds.) PROMAS 2004. LNCS (LNAI), vol. 3346, pp. 44–65. Springer, Heidelberg (2005)
Braubach, L., Pokahr, A.: A generic mapping approach for the integration of bdi with object orientation. In: Proceedings of the 2014 IEEE/WIC/ACM International Conference on Intelligent Agent Technology (IAT 2014). IEEE Computer Society (2014)
Cohen, P.R., Levesque, H.J.: Teamwork. Technical Report Technote 504, SRI International, Menlo Park, CA (March 1991)
Dastani, M., van Riemsdijk, B., Meyer, J.-J.: Goal Types in Agent Programming. In: Brewka, G., Coradeschi, S., Perini, A., Traverso, P. (eds.) Proceedings of the 17th European Conference on Artificial Intelligence (ECAI 2006), pp. 220–224. IOS Press (2006)
Georgeff, M., Lansky, A.: Reactive Reasoning and Planning: An Experiment With a Mobile Robot. In: Proceedings of the 6th National Conference on Artificial Intelligence (AAAI 1987), pp. 677–682. AAAI (1987)
Ghonaim, W., Ghenniwa, H., Shen, W.: Towards an agent oriented smart manufacturing system. In: 2011 15th International Conference on Computer Supported Cooperative Work in Design (CSCWD), pp. 636–642 (June 2011)
Haubeck, C., Wior, I., Braubach, L., Pokahr, A., Ladiges, J., Fay, A., Lamersdorf, W.: Keeping pace with changes - towards supporting continuous improvements and extensive updates in production automation software. Electronic Communications of the EASST 56 (2013)
Hodgson, A., Rönnquist, R., Busetta, P.: Specification of Coordinated Agent Behavior (The SimpleTeam Approach). In: Proceedings of the Workshop on Team Behaviour and Plan Recognition at the 16th International Joint Conferences on Artificial Intelligence (IJCAI 1999), pp. 75–81 (1999)
Huber, M.: JAM: A BDI-Theoretic Mobile Agent Architecture. In: Proc. of the Conf. on Autonomous Agents (AGENTS 1999), pp. 236–243. ACM Press (1999)
Jander, K., Braubach, L., Pokahr, A.: Envsupport: A framework for developing virtual environments. In: Seventh International Workshop From Agent Theory to Agent Implementation (AT2AI-7). Austrian Society for Cybernetic Studies (2010)
Jennings, N., Mamdani, E.: Using Joint Responsibility to Coordinate Collaborative Problem Solving in Dynamic Environments. In: AAAI, pp. 269–275 (1992)
Jennings, N.R., Wooldridge, M.J.: Agent Technology - Foundations, Applications and Markets. Springer (1998)
Kinny, D.: The Agentis Agent Interaction Model. In: Papadimitriou, C., Singh, M.P., Müller, J.P. (eds.) ATAL 1998. LNCS (LNAI), vol. 1555, pp. 331–344. Springer, Heidelberg (1999)
Leitao, P., Marik, V., Vrba, P.: Past, present, and future of industrial agent applications. IEEE Transactions on Industrial Informatics 9(4), 2360–2372 (2013)
Morreale, V., Bonura, S., Francaviglia, G., Centineo, F., Cossentino, M., Gaglio, S.: Reasoning about goals in BDI agents: The PRACTIONIST framework. In: Proceedings of Joint Workshop “From Objects to Agents” (2006)
Norling, E.: Folk Psychology for Human Modelling: Extending the BDI Paradigm. In: Proceedings of the 3rd International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS 2004) (July 2004)
Nunes, I., Lucena, C., Luck, M.: BDI4JADE: A BDI layer on top of JADE. In: Proc. of the Workshop on Programming Multiagent Systems, pp. 88–103 (2011)
Pokahr, A., Braubach, L.: Goal delegation without goals - BDI agents in harmony with ocmas principles. In: Timm, I.J., Guttmann, C. (eds.) MATES 2012. LNCS, vol. 7598, pp. 116–125. Springer, Heidelberg (2012)
Pokahr, A., Braubach, L., Jander, K.: The jadex project: Programming model. In: Multiagent Systems and Applications, pp. 21–53. Springer (2012)
Pokahr, A., Braubach, L., Lamersdorf, W.: A Flexible BDI Architecture Supporting Extensibility. In: Proc. of the Int. Conf. on Intelligent Agent Technology, pp. 379–385. IEEE (2005)
Pokahr, A., Braubach, L., Lamersdorf, W.: A goal deliberation strategy for BDI agent systems. In: Eymann, T., Klügl, F., Lamersdorf, W., Klusch, M., Huhns, M.N. (eds.) MATES 2005. LNCS (LNAI), vol. 3550, pp. 82–93. Springer, Heidelberg (2005)
Rao, A., Georgeff, M.: BDI Agents: From Theory to Practice. In: Proc. of the Int. Conf. on Multi-Agent Systems, pp. 312–319. MIT Press (1995)
Ricci, A., Viroli, M., Omicini, A.: The A&A programming model and technology for developing agent environments in MAS. In: Dastani, M., El Fallah Seghrouchni, A., Ricci, A., Winikoff, M. (eds.) ProMAS 2007. LNCS (LNAI), vol. 4908, pp. 89–106. Springer, Heidelberg (2008)
Sutter, H., Larus, J.: Software and the concurrency revolution. ACM Queue 3(7), 54–62 (2005)
Thangarajah, J., Padgham, L., Winikoff, M.: Detecting and Avoiding Interference Between Goals in Intelligent Agents. In: Proc. of the 18th Int. Joint Conf. on Artificial Intelligence, pp. 721–726. Morgan Kaufmann (2003)
Thangarajah, J., Winikoff, M., Padgham, L., Fischer, K.: Avoiding resource conflicts in intelligent agents. In: Proc. of the Eur. Conf. on Artifical Intelligence, pp. 18–22. IOS Press (2002)
van Lamsweerde, A.: Goal-Oriented Requirements Engineering: A Guided Tour. In: Proceedings of the 9th International Joint Conference on Requirements Engineering (RE 2001), pp. 249–263. IEEE Press (2001)
van Riemsdijk, B., Dastani, M., Winikoff, M.: Goals in agent systems: a unifying framework. In: Proc. of the Int. Joint Conf. on Autonomous Agents and Multiagent Systems, pp. 713–720. IFAAMAS, Richland (2008)
Vogel-Heuser, B., Legat, C., Folmer, J., Feldmann, S.: Researching evolution in industrial plant automation: Scenarios and documentation of the pick and place unit: Technical report (2014)
Winikoff, M.: JACK Intelligent Agents: An Industrial Strength Platform. In: Bordini, R., Dastani, M., Dix, J., El Fallah Seghrouchni, A. (eds.) Multi-Agent Programming: Languages, Platforms and Applications, pp. 175–193. Springer (2005)
Wooldridge, M.: An Introduction to Multiagent Systems, 2nd edn. Wiley, Chichester (2009)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this paper
Cite this paper
Pokahr, A., Braubach, L., Haubeck, C., Ladiges, J. (2014). Programming BDI Agents with Pure Java. In: Müller, J.P., Weyrich, M., Bazzan, A.L.C. (eds) Multiagent System Technologies. MATES 2014. Lecture Notes in Computer Science(), vol 8732. Springer, Cham. https://doi.org/10.1007/978-3-319-11584-9_15
Download citation
DOI: https://doi.org/10.1007/978-3-319-11584-9_15
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-11583-2
Online ISBN: 978-3-319-11584-9
eBook Packages: Computer ScienceComputer Science (R0)