Font Size: a A A

Organization-based Agent-Oriented Programming Theory And Language

Posted on:2014-10-29Degree:DoctorType:Dissertation
Country:ChinaCandidate:C Y HuFull Text:PDF
GTID:1268330422973963Subject:Computational science and technology
Abstract/Summary:PDF Full Text Request
Current software systems situated on the Internet are characterized by theopenness of environment, autonomy of software entities, uncertainty of interactions, andsocialization of themselves. These characteristics pose higher requirements on thedynamisms and flexibilities of software. One main trend of software engineering is howto provide high-level abstraction, effective mechanisms and expressive programminglanguages for the constructions of such software systems.Agent-oriented programming (AOP) takes the autonomous agents as basicsoftware units, which can engage in high-level interactions. AOP is considered as arepresentative novel software paradigm for abstraction and construction of softwaresystems, which effectively addresses the above issues. However, current AOP researchstill lacks effective programming mechanism for software dynamisms and flexibilities.Moreover, AOP also fails to integrate successful principles and practices of softwareengineering, which affects the quality and efficiency of programming. Recently, withthe wide application of organization metaphor in agent-oriented analysis and design, anew trend in AOP field is to recognize and realize the socialized characteristics ofInternet-based software systems with organizational concepts and mechanisms.This dissertation, from a software engineering perspective, addresses the problemsof how to construct Internet-based complex software systems by integratingorganizational abstraction and AOP with software engineering principles andtechnologies. Our research on organization-based agent-oriented programming focusesthe following aspects: programming model and mechanism, language, type system andrelated theory, and programming and runtime environment. The main contributions ofthis dissertation are described as follows.1. Models and mechanisms of organization-based agent-oriented programmingWith regards to the problems that current AOP models lack effective abstractionsand mechanisms to support dynamism, we propose an organization-basedagent-oriented programming model, namely Oragent, which takes organizationalconcepts, such as agent, role, and organization, as first-class abstractions, and introducesa set of organizational mechanisms, so as to explicitly support such dynamism at theprogramming level. Specifically, in this model, we provide a role-enactment mechanismfor the dynamic binding between agents and roles, a role-composition mechanism forthe self-adaptive behavior of agents, a role-promotion mechanism for the self-evolutionof agents, a role-based interaction mechanism for an agent to dynamically obtain itscommunication partners, and an organization-based self-management mechanism forthe dynamic and adaptive adjustment of organizational structures. We also introduceinheritance, which has been proven availably in OOP, for both organizations and roles, thereby reinforcing the modularity and extensibility of Oragent programs.2. An organization-based agent-oriented programming language—OragentLOragentL is designed based on the Oragent model. Its distinguishing characteristicis that providing explicit language facilities for the core concepts and programmingmechanisms of Oragent model, so that the high-level organization abstractions can beexplicitly specified in the low-level codes. In this way, OragentL provides the uniformsyntax and semantics for organizational concepts and agents. Moreover, we havedefined the operational semantics of OragentL at levels of statements, agents, andorganizations with abstract state machine and transition system, so as to provide atheoretical basis for the development of a runtime environment, and the verification ofproperties of the language.3. Type system and related theory of organization-based agent-orientedprogramming languageIn order to address the problems related to the legitimate interactions among agentsand to the consistency of behavior from different roles, a type system and related theoryis defined for OragentL. The major works include: typing agents and roles with actionsequence (i.e., behavior), defining the well-typed rules for role programs and agentconfigurations, proving the safety of a featherweight OragentL (which supports onlyrole enactment and role-based interaction) with preservation theorem and progresstheorem. The study on this aspect ensures the quality of organization-basedagent-oriented programs, so as to make the language more practically useful indeveloping large-scale software systems.4. A programming and runtime environment for organization-based agent-orientedprogrammingWe design and implement a programming environment for the compilation andexecution of OragentL programs. The environment consists of Oragentburg—aruntime environment, and an OragentL complier. Oragentburg realizes the coreprogramming mechanisms of OragentL and provides infrastructure for the entitiesmanagement and communication. The OragentL complier is responsible for translatingOragentL programs into corresponding Java classes that can execute on Oragentburg.Throughout the paper, a case of online mall is studied to demonstrate how toconstruct and implement Internet-based software systems with OragentL, anddemonstrate the effectiveness of the runtime environment Oragentburg.
Keywords/Search Tags:Agent-oriented programming, Organizational abstraction, Operational semantics, Type system
PDF Full Text Request
Related items