Please wait a minute...
Frontiers of Computer Science

ISSN 2095-2228

ISSN 2095-2236(Online)

CN 10-1014/TP

Postal Subscription Code 80-970

2018 Impact Factor: 1.129

Front. Comput. Sci.    2014, Vol. 8 Issue (1) : 33-51    https://doi.org/10.1007/s11704-013-2345-6
RESEARCH ARTICLE
Organization-based agent-oriented programming: model, mechanisms, and language
Cuiyun HU1(), Xinjun MAO2,3, Mengjun LI2, Zhi ZHU1
1. Information Science and Technology Institute, Zhengzhou 450000, China
2. College of Computer, National University of Defense Technology, Changsha 410073, China
3. State Key Laboratory of Software Development Environment, Beihang University, Beijing 100191, China
 Download: PDF(1963 KB)  
 Export: BibTeX | EndNote | Reference Manager | ProCite | RefWorks
Abstract

An increasing number of social computational systems consist of a great amount of autonomous entities and operate in highly dynamic and unpredictable environments. To construct such systems needs to seek high-level abstraction to manage the complexity of the systems and novel mechanism to support their characteristics, i.e., dynamism and flexibility. Agent-oriented programming (AOP) is considered as a potential paradigm for developing such systems by exhibiting a number of characteristics, such as autonomy, flexibility, social ability, etc. However, current researches on AOP mainly focus on the construction of multi-agent system (MAS) with theory and language facilities inspired from artificial intelligence (AI) and distributed AI, seldom considering and integrating the proven principles and practices of programming and software engineering. Moreover, abstractions and mechanism based on AI are inadequate for developing dynamic and flexible MAS in open environment. This paper proposes a novel AOP approach, namely Oragent, for constructing and implementing dynamic and flexible systems. From a software engineering perspective, Oragent integrates organizational concepts and mechanism into AOP language, and support the dynamism and flexibility with explicit primitives. The proposed approach consists of a programming model and a corresponding programming language. This paper presents the syntax and formal operational semantics of Oragent language, and studies a case to demonstrate our approach.

Keywords agent      agent-oriented programming      organization-based programming      role enactment      role-based interactions      organization abstraction     
Corresponding Author(s): Cuiyun HU   
Issue Date: 01 February 2014
 Cite this article:   
Cuiyun HU,Xinjun MAO,Mengjun LI, et al. Organization-based agent-oriented programming: model, mechanisms, and language[J]. Front. Comput. Sci., 2014, 8(1): 33-51.
 URL:  
https://academic.hep.com.cn/fcs/EN/10.1007/s11704-013-2345-6
https://academic.hep.com.cn/fcs/EN/Y2014/V8/I1/33
1 L Northrop. Ultra-large-scale systems: the software challenge of the future. Technical Report, Software Engineering Institute, Carnegie Mellon, 2006
2 W Matthias, M Daniel, K Michael. From multi-agent to multiorganization systems: utilizing middleware approaches. In: Proceedings of the 6th Annual International Workshop on Engineering Societies in the Agents World. 2008, 46−65
3 N Jennings. On agent-based software engineering. Artificial Intelligence, 2000, 117(2): 277−296
https://doi.org/10.1016/S0004-3702(99)00107-1
4 F Zambonelli, H V D Parunak. Towards a paradigm change in computer science and software engineering: a synthesis. The Knowledge Engineering Review, 2003, 18(4): 329−342
https://doi.org/10.1017/S0269888904000104
5 Y Shoham. Agent-oriented programming. Artificial Intelligence, 1993, 60(1): 51−92
https://doi.org/10.1016/0004-3702(93)90034-9
6 R Bordini, M Dastani, J Dix, A Fallah-Seghrouchni. Multi-agent programming: languages, platforms and applications. Vol. I, Heidelberg: Springer, 2005
https://doi.org/10.1007/b137449
7 R Bordini, M Dastani, J Dix, A Fallah-Seghrouchni. Multi-agent programming: languages, platforms and applications. Vol. II, Heidelberg: Springer, 2009
8 F Zambonelli, A Omicini. Challenges and research directions in agentoriented software engineering. Autonomous Agents and Multi-Agent Systems, 2004, 9(3): 253−283
https://doi.org/10.1023/B:AGNT.0000038028.66672.1e
9 V Dignum. The role of organization in agent systems. In: V Dignum, ed. Handbook of research on multi-agent systems: semantics and dynamics of organizational models. IGI Global, 2009, 1−16
https://doi.org/10.4018/978-1-60566-256-5.ch001
10 H Rafael, D Mehdi, W Michael. Current issues in multi-agent systems development. In: Proceedings of the 7th Annual International Workshop on Engineering Societies in the Agents World. 2007, 38−61
11 R Alessandro, S Andrea. Designing a general-purpose programming language based on agent-oriented abstractions: the simpAL project. In: Proceedings of SPLASH’11 Workshops, Portland, Oregon, USA. 2011
12 N Tinnemeier. Organizing agent organizations: syntax and operational semantics of an organization-oriented programming language. SIKS Dissertation Series 2011(2), Utrecht University, 2011
13 N Jennings. An agent-based approach for building complex software systems. Communications of ACM, 2001, 44(4): 35−41
https://doi.org/10.1145/367211.367250
14 E Yunus, E Nadia. Role models – implementation-based approaches to using roles. Software–Practice and Experience, 2011, 41: 1−22
https://doi.org/10.1002/spe.994
15 M Dastani, M Riemsdijk, J Hulstijn, F Dignum, J Meyer. Enacting and deacting roles in agent programming. In: Proceedings of International Workshop on Agent-Oriented Software Engineering. 2005, 189−204
16 O Martin, S Lex, V Bill. Programming in scala: a comprehensive stepby-step guide. Artima Inc, 2008
17 G Plotkin. A structural approach to operational semantics. Technical Report DAIMI FN-19, University of Aarhus, 1981
18 JavaCC Home [EB/OL].
19 J Ferber, O Gutknecht, F Michel. From agents to organizations: an organizational view of multi-agent systems. In: Proceedings of the 6th International Workshop on Agent-Oriented Software Engineering. 2004, 214−230
20 M Esteva, J Rodriguez-Aguilar, B Rosel, L Joseph. AMELI: an agentbased middleware for electronic institutions. In: Proceedings of the 3rd International Joint Conference on Autonomous Agents and Multi-Agent Systems. 2004, 236−243
21 D Weyns, R Heasevoets, A Helleboogh, T Holvoet, W Joosen. MACODO: middleware architecture for context-driven dynamic agent organizations. ACM Transactions on Autonomous and Adaptive Systems, 2009, 5(1): 1−25
https://doi.org/10.1145/1671948.1671951
22 G Alessa, S Galland, V Hilaire, A Koukam. An organisational platform for holonic and multiagent systems. In: Proceedings of the 6th International Workshop on Programming of Multi-Agent System. 2008, 111−126
23 B Matteo, B Guido, G Valerio, G Roberto, T van der Leendert. How to program organizations and roles in the JADE framework. In: Proceedings of the 6th German Conference on Multiagent System Technologies. 2008, 25−36
24 M Dastani. 2APL: a practical agent programming language. International Journal of Autonomous Agents and Multi-Agent Systems, 2008, 16(3): 214−248
https://doi.org/10.1007/s10458-008-9036-y
25 M R van Birna, H Koen, J Catholijn. Programming organization-aware agents. In: Proceedings of the 9th Annual International Workshop on Engineering Societies in the Agents World. 2009, 98−112
26 O Boissier, R H Bordini, J F Hübner, A Ricci, A Santi. Multi-agent oriented programming with JaCaMo. Science of Computer Programming, 2011,
https://doi.org/10.1016/j.scico.2011.10.004
27 R Bordini, M Wooldridge, J Höbner. Programming multi-agent systems in AgentSpeak using Jason (Wiley Series in Agent Technology). John Wiley & Sons, 2007
https://doi.org/10.1002/9780470061848
28 T Nick, D Mehdi, M John-Jules. Roles and norms for programming agent organization. In: Proceedings of the 8th International Joint Conference on Autonomous Agents and Multi-Agent Systems. 2009, 121−128
29 O Boissier, J Höbner, J Sichman. Organization oriented programming: from closed to open organizations. In: Proceedings of the 5th Annual International Workshop on Engineering Societies in the Agents World. 2007, 86−105
30 C Ghidini, B Hirsh, M Fisher. Programming group computations. In: Proceedings of the 1st European Workshop on Multi-Agent Systems. 2003
31 Y Chan, X J Mao, C Y Hu, H P Zhou, J M Zhao. Oragentburg: a platform supporting organisation-based programming. In: Proceedings of 2012 IEEE/WIC/ACM International Joint Conference on Web Intelligence and Intelligent Agent Technology. 2012, 2: 366−373
https://doi.org/10.1109/WI-IAT.2012.49
[1] Lijun WU, Kaile SU, Yabiao HAN, Jingyu CHEN, Xiangyu LU. Reasoning about knowledge, belief and certainty in hierarchical multi-agent systems[J]. Front. Comput. Sci., 2017, 11(3): 499-510.
[2] Qingliang CHEN,Kaile SU,Yong HU,Guiwu HU. A complete coalition logic of temporal knowledge for multi-agent systems[J]. Front. Comput. Sci., 2015, 9(1): 75-86.
[3] Weidong MIN, Ke CHEN, Yongzhen KE. A matrix grammar approach for automatic distributed network resource management[J]. Front Comput Sci, 2013, 7(4): 583-594.
[4] Wei DUAN, Xiaogang QIU. Fostering artificial societies using social learning and social control in parallel emergency management systems[J]. Front Comput Sci, 2012, 6(5): 604-610.
[5] Xiaojun BI, Jing XIAO. Classification-based self-adaptive differential evolution and its application in multi-lateral multi-issue negotiation[J]. Front Comput Sci, 2012, 6(4): 442-461.
[6] Yutaka OKAIE, Tadashi NAKANO. Non-cooperative optimization games in market-oriented overlay networks: an integrated model of resource pricing and network formation[J]. Front Comput Sci Chin, 2011, 5(4): 496-505.
[7] Ming C. LIN, Dinesh MANOCHA, . Virtual cityscapes: recent advances in crowd modeling and traffic simulation[J]. Front. Comput. Sci., 2010, 4(3): 405-416.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed