Agent-Oriented Programming for Developing Modern Software Systems

Size: px
Start display at page:

Download "Agent-Oriented Programming for Developing Modern Software Systems"

Transcription

1 Agent-Oriented Programming for Developing Modern Software Systems Andrea Santi 1 a.santi@unibo.it Alma Mater Studiorum Università di Bologna Ph.D in Electronics, Computer Science and Telecommunications 1 - XXV Ciclo Second Year Ending Seminar 21/10/2011 A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

2 Outline Introduction 1 Introduction Objectives Method 2 Multi-Agent Oriented Programming The JaCa platform The JaCaMo Framework Weaknesses and Limitations 3 The simpal Project Background Metaphor Programming Model 4 Conclusions A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

3 Outline Introduction 1 Introduction Objectives Method 2 Multi-Agent Oriented Programming The JaCa platform The JaCaMo Framework Weaknesses and Limitations 3 The simpal Project Background Metaphor Programming Model 4 Conclusions A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

4 Introduction Developing Modern Software Systems: Challenges Developing modern software systems is an hard task Almost every modern application has to deal with issues such as Concurrency Distribution Decentralisation of control... The free lunch is over [Sutter and Larus, 2005] Towards a paradigm change in computer science [Zambonelli, 2004] A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

5 Introduction How to Program Such Systems? It is now important to introduce higher-level programming abstractions [Sutter and Larus, 2005] Easing the development of modern software systems Like OO abstractions help(ed) build large component-based programs Proliferation of new programming languages/frameworks aiming at ease this task Rooted on not so mainstream (yet) programming models The Actor [Hewitt et al., 1973] model one is a main example Scala [Wampler and Payne, 2009], Groovy [König and Glover, 2007], Clojure [Hickey, 2011], etc. A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

6 Introduction Agent-Oriented Programming (AOP):the Current Situation The idea of Agent-Oriented Programming is not new The first paper about AOP is dated 1993 [Shoham, 1993].... and since then many APLs and platforms have been proposed [Bordini et al., 2005, Bordini et al., 2009, Bordini et al., 2006] Main acceptations are the (D)AI contexts Agents as a special purpose technique to build intelligent systems No significant impacts on mainstream research in programming languages and software development Emphasis put on theoretical issues No focus on principles of general-purpose computer programming A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

7 Our Perspective Introduction AOP can be exploited for programming modern software systems in general [Ricci and Santi, 2011a] Extending object/function-oriented programming Thanks to an higher-level of abstraction Tackling main challenges of modern software development Concurrency Decentralization of control Autonomy Adaptivity... A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

8 Outline Introduction Objectives 1 Introduction Objectives Method 2 Multi-Agent Oriented Programming The JaCa platform The JaCaMo Framework Weaknesses and Limitations 3 The simpal Project Background Metaphor Programming Model 4 Conclusions A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

9 Introduction Objectives Objectives Background Objective Explore AOP as a high-level general purpose programming paradigm providing a set of abstractions meant to simplify the design of concurrent, distributed, reactive/interactive programs In particular we are interested in Identify the essential concepts and features of the paradigm Focussing on principles of general-purpose computer programming Inject/re-frame modern programming languages features in AOP Typing, reuse, inheritance, etc. AOP s impact on the set of programming support tools IDE, debuggers, profilers, etc. A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

10 Outline Introduction Method 1 Introduction Objectives Method 2 Multi-Agent Oriented Programming The JaCa platform The JaCaMo Framework Weaknesses and Limitations 3 The simpal Project Background Metaphor Programming Model 4 Conclusions A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

11 Introduction Method How Achieve the Stated Objectives? A container project named simpal [Ricci and Santi, 2011b] Concerning the design and development of A new generation agent-oriented programming language (i.e. simpal) Related platforms / infrastructures / tools Starting from the construction of a solid background Studying state of the art of Agent architectures Agent programming languages, programming models Making contributions in the context of Multi-Agent Oriented Programming A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

12 Outline Multi-Agent Oriented Programming 1 Introduction Objectives Method 2 Multi-Agent Oriented Programming The JaCa platform The JaCaMo Framework Weaknesses and Limitations 3 The simpal Project Background Metaphor Programming Model 4 Conclusions A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

13 Outline Multi-Agent Oriented Programming 1 Introduction Objectives Method 2 Multi-Agent Oriented Programming The JaCa platform The JaCaMo Framework Weaknesses and Limitations 3 The simpal Project Background Metaphor Programming Model 4 Conclusions A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

14 Multi-Agent Oriented Programming Objectives Investigating the adoption of state of the art agent-oriented technologies for programming Multi-Agent System (MAS) Focus on Agent-Oriented Programming Languages (APLs) Agent-based frameworks Aiming at Construct a background knowledge on state of the art Agent architectures APLs, programming models Immediately applying agent-based technologies in relevant domains Improving current agent-based technologies A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

15 Multi-Agent Oriented Programming The Belief Desire Intention (BDI) Agent Model Introduced by Rao and Georgeff [Rao and Georgeff, 1995] Reference model for the development of rational/inteligent agents The BDI model promote agent designed rooted upon: Belief knowledge the agent has about the world and other agents Desire all the possible objectives the agent might like to accomplish Intention the set of objectives the agent has decided to work towards A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

16 Multi-Agent Oriented Programming Agents Control Architecture clock events Event queue (sensor) sense stage Agent State Agent Program (plans) plan stage actions Agent Ongoing Tasks Action buffer (actuator) act stage A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

17 Outline Multi-Agent Oriented Programming The JaCa platform 1 Introduction Objectives Method 2 Multi-Agent Oriented Programming The JaCa platform The JaCaMo Framework Weaknesses and Limitations 3 The simpal Project Background Metaphor Programming Model 4 Conclusions A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

18 Multi-Agent Oriented Programming The JaCa platform The JaCa platform Our base reference platform/infrastructure For this macro-research line Born from the synergistic integration of Jason [Bordini et al., 2007] A BDI-based agent-oriented programming language CArtAgO [Ricci et al., 2009] A framework for building agents working environments Applied in several application contexts Mobile [Santi et al., 2011] SOA/WS [Piunti et al., 2009] Ambient-Intelligence [Sorici et al., 2011] A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

19 Multi-Agent Oriented Programming The JaCa platform JaCa-Android in Action: SMS Notification Manager 1/2 Figure: Two different kinds of SMS notifications: (a) notification performed using the standard Android status bar, and (b) notification performed using the ViewerArtifact. A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

20 Multi-Agent Oriented Programming The JaCa platform JaCa-Android in Action: SMS Notification Manager 2/2 00!init !init 03 <- focus("smsartifact"); 04 focus("notificationmanager"); 05 focus("viewerartifact") sms_received(source, Message) 08 : not (state("running") & session(source)) 09 <- shownotification("jaca.android:drawable/notification", 10 Source, Message, "jaca.android.sms.smsviewer", Id); 11 append(source, Message) sms_received(source, Message) : state("running") & session(source) 14 <- append(source, Message). A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

21 Outline Multi-Agent Oriented Programming The JaCaMo Framework 1 Introduction Objectives Method 2 Multi-Agent Oriented Programming The JaCa platform The JaCaMo Framework Weaknesses and Limitations 3 The simpal Project Background Metaphor Programming Model 4 Conclusions A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

22 Multi-Agent Oriented Programming The JaCaMo Framework The JaCaMo Framework A comprehensive multi-agent oriented programming approach [Boissier et al., 2012] Taking into account three different programming dimensions Agent, environment, and organization dimensions Built upon the synergistic integration of Jason [Bordini et al., 2007] CArtAgO [Ricci et al., 2009] M oise [Hübner et al., 2007] Defining semantic links among concepts of the different programming dimensions at the meta-model and programming levels Providing a uniform programming model for MAS programming A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

23 Outline Multi-Agent Oriented Programming Weaknesses and Limitations 1 Introduction Objectives Method 2 Multi-Agent Oriented Programming The JaCa platform The JaCaMo Framework Weaknesses and Limitations 3 The simpal Project Background Metaphor Programming Model 4 Conclusions A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

24 Multi-Agent Oriented Programming Weaknesses and Limitations Weaknesses and Limitations Weak support for modularise active behaviour A main issue: absence of hierarchical structure for plans Still no explicit notion of type Neither for agents nor for artifacts Lack of a seamless integration with object/functional-oriented layer We are currently using a custom library A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

25 Outline The simpal Project 1 Introduction Objectives Method 2 Multi-Agent Oriented Programming The JaCa platform The JaCaMo Framework Weaknesses and Limitations 3 The simpal Project Background Metaphor Programming Model 4 Conclusions A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

26 Outline The simpal Project Background Metaphor 1 Introduction Objectives Method 2 Multi-Agent Oriented Programming The JaCa platform The JaCaMo Framework Weaknesses and Limitations 3 The simpal Project Background Metaphor Programming Model 4 Conclusions A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

27 The simpal Project Background Metaphor Abstractions and Metaphors for Computer Programming OOP metaphor: real-world objects Objects have properties and states Objects can communicate and respond to communications Actors metaphor: anthropomorphic inspiration A set of light-weight processes (actors)....interacting only via asynchronous message-passing Our Agent-Oriented Programming metaphor Anthropomorphic inspiration too A&A meta-model: mimicking human cooperative work environments from Activity Theory [Nardi, 1996] and Distributed Cognition BDI Agent Model [Rao and Georgeff, 1995] A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

28 The simpal Project Background Metaphor Background Metaphor: an Abstract Representation A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

29 Outline The simpal Project Programming Model 1 Introduction Objectives Method 2 Multi-Agent Oriented Programming The JaCa platform The JaCaMo Framework Weaknesses and Limitations 3 The simpal Project Background Metaphor Programming Model 4 Conclusions A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

30 Agents The simpal Project Programming Model Autonomous, state-full task- and event-driven entity Based on a BDI architecture Creating and co-using artifacts for supporting their activities besides direct communication Autonomous behaviour structured in terms of Role The set of tasks an agent must be able to do inside an organisation Tasks Unit of work that has to be executed Defining what have to be executed Plans Actions to be performed for achieving a task Defining how to execute a task Agent Script Collection of concrete plans for playing a role A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

31 Working Environments The simpal Project Programming Model Structured in terms of multiple (distributed) workspace Provide agents the tools and resource they need by means of artifacts Artifacts are non-autonomous function-oriented entities Controllable and observable by agents Functionalities provided by artifact operations State exposed by means of observable properties AGENTS ORGANISATION ARTIFACTS use observe communicate with WORKSPACE A ARTIFACTS WORKSPACE B A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

32 An Agent Role Example The simpal Project Programming Model r o l e MyRole e x t e n d s B a s i c R o l e { t a s k MyTask { aparam : i n t ; // p r i m i t i v e type mylist : L i s t <S t r i n g >; // an o b j e c t mycountertool : C o u n t e r I n t e r f a c e ; // an a r t i f a c t } t a s k AnotherTask {... } } Figure: An example of role definition in simpal A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

33 Agent Script The simpal Project Programming Model Defines how play one or more roles by means of concrete plans s c r i p t MyScript implements MyRole { s t : S t r i n g ; mytool : MyTool ; p l a n MyPlanA t a s k : MyTask c o n t e x t : ( aparam > 0 && s t. e q u a l s ( t e s t ) ) {... } p l a n MyPlanB t a s k : MyTask c o n t e x t : aparam <= 0 u s i n g : mycountertool, mytool {... } } p l a n MyPlanC t a s k : AnotherTask {... }... Figure: An example of agent script definition in simpal A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

34 The simpal Project Programming Model Mixed Reactive and Proactive Behavior A plan body is composed by a set of action rules Event : Action [label] Easily mixing of reactive/proactive behavihor Combining Event and attributes p l a n MixedPlan t a s k : MyTask { mybel : S t r i n g ; mytool >doaction1 ( ) ; mytool >doaction2 ( ) ; mytool >doaction3 ( ) ;... +c r i t i c a l c o n d i t i o n : mybel == s t a t e 1 => d o R e p a i r A c t i o n 1 ( ) +c r i t i c a l c o n d i t i o n : mybel == s t a t e 2 => d o R e p a i r A c t i o n 2 ( ) +n e w i n f o : t r u e => p r i n t l n ( New i n f o r e t r i e v e d + n e w i n f o ) } Figure: An example of mixed reactive and proactive behavior in simpal A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

35 The simpal Project Programming Model simpal Type System Agent Side Agent type role(s) it implements Set of tasks the agent is able to perform Agent role: the contract identifying a certain set of tasks Analogous to the interface for OOP Basic unit for agent sub-typing/hierarchies relations An agent can play/implement multiple roles Artifact Side Artifact type its artifact model (usage interface), including Operations The set of its observable properties Sub-typing and inheritance rooted on the notion of Artifact type A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

36 The simpal Project Programming Model Inheritance, Polymorphism and Error Checking Inheritance We can define inheritance relations for what concerns Agent roles/scripts Artifact models and concrete implementations Polymorphism We are able to support polymorphism at different levels Role level Agents implementing the same role in different ways Agent script level Tasks performed in different ways on the base of contextual conditions Artifact and artifact model level Error Checking We are able to support error checking at compile time Agents implementation compliant to the roles it implements Artifact definition must adhere to its model specification... A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

37 The simpal Project Programming Model The simpal Ecosystem MyApp1 org ws1 ws2 ws3 Application logical view MyApp1 MyApp2 MyApp1 MyApp1 Application-specific structures simpal OS (JVM based) simpal OS (JVM based) simpal OS (JVM based) Runtime Infrastructure OS OS OS agent processor artifact processor agent artifact A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

38 Outline Conclusions 1 Introduction Objectives Method 2 Multi-Agent Oriented Programming The JaCa platform The JaCaMo Framework Weaknesses and Limitations 3 The simpal Project Background Metaphor Programming Model 4 Conclusions A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

39 Future Work Conclusions Main efforts to be put on finalizing/improving the simpal project From the language perspective Shape the basic set of features of the language Finalize and formalize the type system From the simpal platform perspective IDEs, debuggers, profilers, etc. Finalize the work on the distributed Runtime Infrastructure Test simpal effectiveness for developing modern software systems In relevant application domains Pointing out experienced outcomes, benefits and limitations Continue the exploration with the JaCaMo framework As a reference multi-agent oriented programming approach for developing MAS A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

40 Conclusions AGERE! Programming Systems, Languages, and Applications based on Actors, Agents, and Decentralized Control International workshop we organised to discuss our ideas in practice Held at the ACM conference SPLASH 2011 Aiming at investigating Actors and Agents as post-oo programming paradigm A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

41 Conclusions Bibliography I Boissier, O., Bordini, R., Hübner, J. F., Ricci, A., and Santi, A. (2012). Multi-agent oriented programming with jacamo. Science of Computer Programming. Special Issue on Agent-oriented Design methods and Programming Techniques for Distributed Computing in Dynamic and Complex Environments. Bordini, R., Braubach, L., Dastani, M., Seghrouchni, A., Gomez-Sanz, J., Leite, J., O Hare, G., Pokahr, A., and Ricci, A. (2006). A survey of programming languages and platforms for multi-agent systems. In Informatica 30, pages A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

42 Bibliography II Conclusions Bordini, R., Dastani, M., Dix, J., and El Fallah Seghrouchni, A., editors (2005). Multi-Agent Programming Languages, Platforms and Applications - Volume 1, volume 15 of Multiagent Systems, Artificial Societies, and Simulated Organizations. Springer. Bordini, R., Dastani, M., Dix, J., and El Fallah Seghrouchni, A., editors (2009). Multi-Agent Programming Languages, Platforms and Applications - Volume 2, Multiagent Systems, Artificial Societies, and Simulated Organizations. Springer. Bordini, R., Hübner, J., and Wooldridge, M. (2007). Programming Multi-Agent Systems in AgentSpeak Using Jason. John Wiley & Sons, Ltd. A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

43 Bibliography III Conclusions Hewitt, C., Bishop, P., and Steiger, R. (1973). A universal modular actor formalism for artificial intelligence. In Proceedings of the 3rd international joint conference on Artificial intelligence, pages Morgan Kaufmann Publishers Inc. Hickey, R. (2011). Agents and asynchronous actions (in clojure). Online document, available at: Last Retrieved: Sept. 1, Hübner, J. F., Sichman, J. S., and Boissier, O. (2007). Developing Organised Multi-Agent Systems Using the MOISE+ Model: Programming Issues at the System and Agent Levels. Agent-Oriented Software Engineering, 1(3/4): A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

44 Bibliography IV Conclusions König, D. and Glover, A. (2007). Groovy in action. Manning Pubs Co Series. Manning. Nardi, B. (1996). Activity theory and human-computer interaction. and consciousness: Activity theory and human-computer interaction, pages Piunti, M., Santi, A., and Ricci, A. (2009). Programming SOA/WS systems with BDI agents and artifact-based environments. In Proceedings of MALLOW-AWESOME Joint Workshop on Agents, Web Services and Ontologies, Integrated Methodologies. A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

45 Conclusions Bibliography V Rao, A. S. and Georgeff, M. P. (1995). BDI Agents: From Theory to Practice. In First International Conference on Multi Agent Systems (ICMAS95). Resnick, M. (1994). Turtles, Termites and Traffic Jams. Explorations in Massively Parallel Microworlds. MIT Press. Ricci, A., Piunti, M., Viroli, M., and Omicini, A. (2009). Environment programming in CArtAgO. In Bordini, R. H., Dastani, M., Dix, J., and El Fallah-Seghrouchni, A., editors, Multi-Agent Programming: Languages, Platforms and Applications, Vol. 2, pages Springer. A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

46 Bibliography VI Conclusions Ricci, A. and Santi, A. (2011a). Agent-oriented computing: Agents as a paradigm for computer programming and software development. In Proc. of the 3rd Int. Conf. on Future Computational Technologies and Applications (Future Computing 11), Rome, Italy. IARIA. Ricci, A. and Santi, A. (2011b). Designing a general-purpose programming language based on agent-oriented abstractions: The simpal project. In Proceedings of First International Workshop on Programming Systems, Languages, and Applications based on Actors, Agents, and Decentralized Control, AGERE! A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

47 Bibliography VII Conclusions Santi, A., Guidi, M., and Ricci, A. (2011). JaCa-Android: An agent-based platform for building smart mobile applications. In Dastani, M., El Fallah Seghrouchni, A., Hübner, J., and Leite, J., editors, Languages, Methodologies, and Development Tools for Multi-Agent Systems, volume 6822 of LNAI, pages Springer. Shoham, Y. (1993). Agent-oriented programming. Artificial Intelligence, 60(1): Sorici, A., Santi, A., Picard, G., and Boissier, O. (2011). An adaptive jacamo-based ambient intelligence application. In PAAMS. A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

48 Bibliography VIII Conclusions Sutter, H. and Larus, J. (2005). Software and the concurrency revolution. ACM Queue: Tomorrow s Computing Today, 3(7): Wampler, D. and Payne, A. (2009). Programming Scala. O Reilly Series. O Reilly Media. Zambonelli, F. (2004). Towards a paradigm change in computer science and software engineering: a synthesis. The Knowledge Engineering Review, 18(04): A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

49 Conclusions Considerations Decentralized mindset in programming [Resnick, 1994] thanks to Encapsulation of control (into agents) An interaction dimension rooted on two interaction typologies Asynchronous message passing Environment-mediated interactions An high-level rationale to structure autonomous behaviour Through the notion of roles, tasks and plans Integration of pro-active and reactive behaviour Thanks to the agent control architecture Avoidance of everything is an X perspective Agents to model active parts, artifacts for passive ones A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

50 Conclusions Inheritance: Notable Cases R1 can be defined as an extension of role R Inheriting all tasks defined in R Adding/specializing tasks defined in R Ag1 can be defined as an extension of an agent script Ag Inheriting all plans defined in Ag Adding further plans either to achieve Task defined in the role implemented by Ag New tasks defined in a role implemented by Ag1 (and not by Ag) Similar inheritance relations can be defined also for the environment dimension A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

51 Conclusions Error Checking and Polymorphism: Notable Cases Error Checking An agent script must define at least one plan for each task defined in the role it implements Artifact definition must adhere to its model specification Duplicated constructs checks... Polymorphism The same task can be performed by different agents implementing the same role in different ways Depending on the scripts that they are using Task assigned to an agent can be performed in a different way Depending on current contextual conditions Artifacts can provide different implementations for the same model A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

52 Conclusions Integration with Object-Oriented/Functional programming Agent and environment are coarse grain abstractions Defining the high-level organization of the system Not useful for defining Data structures Computational parts manipulating them OOP/Functional languages to define data structures and functions simpal integration with OO programming languages is quite straightforward Thanks to a clear separation between the agents/environment layer and the objects/functions one A. Santi (DEIS) XXV Ciclo Second Year Ending Seminar 21/10/ / 52

Agent-Oriented Programming as a Paradigm for Developing Modern Software Systems

Agent-Oriented Programming as a Paradigm for Developing Modern Software Systems Agent-Oriented Programming as a Paradigm for Developing Modern Software Systems Andrea Santi 1, Alessandro Ricci 1 a.santi@unibo.it, a.ricci@unibo.it Alma Mater Studiorum Università di Bologna Ph.D in

More information

From Agents to Artifacts Back and Forth Operational and Doxastic Use of Artifacts in MAS

From Agents to Artifacts Back and Forth Operational and Doxastic Use of Artifacts in MAS Operational and Doxastic Use of Artifacts in MAS Michele Piunti(1,2), Alessandro Ricci (1) (1) alice group at DEIS, Università di Bologna, Cesena (2) Istituto Scienze e Tecnologie della Cognizione, ISTC-CNR,

More information

Developing Web Client Applications with JaCa-Web

Developing Web Client Applications with JaCa-Web Developing Web Client Applications with JaCa-Web Mattia Minotti University of Bologna Cesena, Italy Email: mattia.minotti@studio.unibo.it Andrea Santi DEIS, University of Bologna Cesena, Italy Email: a.santi@unibo.it

More information

From Objects to Agents: The Java Agent Middleware (JAM)

From Objects to Agents: The Java Agent Middleware (JAM) From Objects to Agents: The Java Agent Middleware (JAM) Laboratory of Multiagent Systems LM Laboratorio di Sistemi Multiagente LM Elena Nardini elena.nardini@unibo.it Ingegneria Due Alma Mater Studiorum

More information

Plexil-Like Plan Execution Control in Agent Programming

Plexil-Like Plan Execution Control in Agent Programming AI and Robotics: Papers from the AAAI-14 Workshop Plexil-Like Plan Execution Control in Agent Programming Pouyan Ziafati SnT, University of Luxembourg Intelligent Systems Group, Utrecht University Abstract

More information

simpa: A Simple Agent-Oriented Java Extension for Developing Concurrent Applications

simpa: A Simple Agent-Oriented Java Extension for Developing Concurrent Applications simpa: A Simple Agent-Oriented Java Extension for Developing Concurrent Applications Alessandro Ricci, Mirko Viroli, and Giulio Piancastelli DEIS, Alma Mater Studiorum Università di Bologna, Italy {a.ricci,mirko.viroli,giulio.piancastelli@unibo.it

More information

Multi-Agent Oriented Reorganisation within the

Multi-Agent Oriented Reorganisation within the Multi-Agent Oriented Reorganisation within the JaCaMo infrastructure Alexandru Sorici 1,2, Gauthier Picard 2, Olivier Boissier 2, Andrea Santi 3, and Jomi F. Hübner 4 1 Politehnica University of Bucharest,

More information

Agent-Oriented Software Engineering

Agent-Oriented Software Engineering Agent-Oriented Software Engineering Lin Zuoquan Information Science Department Peking University lz@is.pku.edu.cn http://www.is.pku.edu.cn/~lz/teaching/stm/saswws.html Outline Introduction AOSE Agent-oriented

More information

simpa An Agent-Oriented Approach for Prototyping Concurrent Applications on Top of Java

simpa An Agent-Oriented Approach for Prototyping Concurrent Applications on Top of Java SISMA 2008/2009 - Seminar simpa An Agent-Oriented Approach for Prototyping Concurrent Applications on Top of Java Alessandro Ricci alice group at DEIS, Università di Bologna, Cesena a.ricci@unibo.it joint

More information

Coordination in Situated Systems

Coordination in Situated Systems Coordination in Situated Systems Engineering MAS Environment in TuCSoN Stefano Mariani, Andrea Omicini {s.mariani, andrea.omicini}@unibo.it Dipartimento di Informatica Scienza e Ingegneria (DISI) Alma

More information

1.1 Jadex - Engineering Goal-Oriented Agents

1.1 Jadex - Engineering Goal-Oriented Agents 1.1 Jadex - Engineering Goal-Oriented Agents In previous sections of the book agents have been considered as software artifacts that differ from objects mainly in their capability to autonomously execute

More information

ENVIRONMENT PROGRAMMING IN MAS WITH CARTAGO

ENVIRONMENT PROGRAMMING IN MAS WITH CARTAGO SISMA 2008/2009 - Seminar ENVIRONMENT PROGRAMMING IN MAS WITH CARTAGO Alessandro Ricci alice group at DEIS, Università di Bologna, Cesena a.ricci@unibo.it joint work with: - Michele Piunti, PhD student

More information

Jade: Java Agent DEvelopment Framework Overview

Jade: Java Agent DEvelopment Framework Overview Jade: Java Agent DEvelopment Framework Overview Multiagent Systems LM Sistemi Multiagente LM Stefano Mariani revised by Andrea Omicini s.mariani@unibo.it, andrea.omicini@unibo.it Dipartimento di Informatica:

More information

Agent Language Analysis: 3APL

Agent Language Analysis: 3APL Alvarez Napagao Sergio Auffarth Benjamin Salazar Ramirez rman Agent Language Analysis: 3APL Course: Multi-Agent Systems Professor: Javier Vazquez Introduction An Abstract Agent Programming Language or

More information

Jade: Java Agent DEvelopment Framework Overview

Jade: Java Agent DEvelopment Framework Overview Jade: Java Agent DEvelopment Framework Overview Stefano Mariani s.mariani@unibo.it Dipartimento di Informatica Scienza e Ingegneria (DISI) Alma Mater Studiorum Università di Bologna a Cesena Academic Year

More information

From Agents to Artifacts Back and Forth: Purposive and Doxastic use of Artifacts in MAS

From Agents to Artifacts Back and Forth: Purposive and Doxastic use of Artifacts in MAS From Agents to Artifacts Back and Forth: Purposive and Doxastic use of Artifacts in MAS 1 Michele Piunti and Alessandro Ricci DEIS, Università di Bologna, Italy {michele.piunti,a.ricci}@unibo.it Abstract.

More information

COURSE PRESENTATION. PROGRAMMAZIONE AVANZATA E PARADIGMI Ingegneria e Scienze Informatiche Università di Bologna - Cesena - a.a.

COURSE PRESENTATION. PROGRAMMAZIONE AVANZATA E PARADIGMI Ingegneria e Scienze Informatiche Università di Bologna - Cesena - a.a. PROGRAMMAZIONE AVANZATA E PARADIGMI Ingegneria e Scienze Informatiche Università di Bologna - Cesena - a.a. 2013 / 2014 COURSE PRESENTATION v1.0 20140224 ABOUT THE TEACHER Alessandro Ricci PhD, researcher

More information

Using Jason to Implement a Team of Gold Miners

Using Jason to Implement a Team of Gold Miners Using Jason to Implement a Team of Gold Miners Rafael H. Bordini 1, Jomi F. Hübner 2, and Daniel M. Tralamazza 3 1 Department of Computer Science University of Durham Durham DH1 3LE, U.K. R.Bordini@durham.ac.uk

More information

COMPARING AGENT ORIENTED PROGRAMMING VERSUS OBJECT- ORIENTED PROGRAMMING

COMPARING AGENT ORIENTED PROGRAMMING VERSUS OBJECT- ORIENTED PROGRAMMING COMPARING AGENT ORIENTED PROGRAMMING VERSUS OBJECT- ORIENTED PROGRAMMING Rula K.Al-Azawi Gulf College affiliated with Staffordshire University-UK Muscat/Oman E-mail: rulaalazzawi@yahoo.com Aladdin Ayesh

More information

Towards semantic merging of versions of BDI agent systems

Towards semantic merging of versions of BDI agent systems Towards semantic merging of versions of BDI agent systems Yingzhi Gou, Hoa Khanh Dam and Aditya Ghose School of Computer Science and Software Engineering University of Wollongong New South Wales 2522,

More information

SARL: a general-purpose agent-oriented programming language

SARL: a general-purpose agent-oriented programming language SARL: a general-purpose agent-oriented programming language Sebastian RODRIGUEZ GITIA UTN, 4000 Tucumán, Argentina http://www.gitia.org email: sebastian.rodriguez@gitia.org Nicolas GAUD IRTES-SeT UTBM,

More information

A Software Engineering Process for BDI Agents

A Software Engineering Process for BDI Agents A Software Engineering Process for BDI Agents Aaron Hector, Frans Henskens, and Michael Hannaford University of Newcastle, University Drive, Callaghan NSW 2308, Australia {Aaron.Hector, Frans.Henskens,

More information

Agent Language Analysis: 3-APL

Agent Language Analysis: 3-APL Agent Language Analysis: 3-APL Sergio Alvarez Napagao, Benjamin Auffarth, Norman Salazar Ramirez 3-APL (Triple APL) is an agent programming language and platform, created as a way of developing intelligent

More information

Distributed Runtime Verification of JADE and Jason Multiagent Systems with Prolog?

Distributed Runtime Verification of JADE and Jason Multiagent Systems with Prolog? Distributed Runtime Verification of JADE and Jason Multiagent Systems with Prolog? Daniela Briola, Viviana Mascardi, and Davide Ancona DIBRIS, Genoa University, Italy daniela.briola,viviana.mascardi,davide.ancona@unige.it

More information

CArtAgO: An Infrastructure for Engineering Computational Environments in MAS

CArtAgO: An Infrastructure for Engineering Computational Environments in MAS CArtAgO: An Infrastructure for Engineering Computational Environments in MAS Alessandro Ricci, Mirko Viroli, and Andrea Omicini DEIS, Università di Bologna via Venezia 52, 47023 Cesena, Italy {a.ricci,mirko.viroli,andrea.omicini@unibo.it

More information

Meta-Modeling Communication and Interaction inside MASs with Ontologies

Meta-Modeling Communication and Interaction inside MASs with Ontologies Meta-Modeling Communication and Interaction inside MASs with Ontologies Valentina Cordì, Viviana Mascardi DISI, Università di Genova, Via Dodecaneso 35, 16146, Genova, Italy. Abstract. The need of a unifying

More information

Scalable Middleware Environment for Agent-Based Internet Applications]

Scalable Middleware Environment for Agent-Based Internet Applications] Scalable Middleware Environment for Agent-Based Internet Applications] Benno J. Overeinder and Frances M.T. Brazier Department of Computer Science, Vrije Universiteit Amsterdam De Boelelaan 1081a, 1081

More information

Bridges To Computing

Bridges To Computing Bridges To Computing General Information: This document was created for use in the "Bridges to Computing" project of Brooklyn College. You are invited and encouraged to use this presentation to promote

More information

ICT-SHOK Project Proposal: PROFI

ICT-SHOK Project Proposal: PROFI ICT-SHOK Project Proposal: PROFI Full Title: Proactive Future Internet: Smart Semantic Middleware Overlay Architecture for Declarative Networking ICT-SHOK Programme: Future Internet Project duration: 2+2

More information

Object-Oriented Middleware for Distributed Systems

Object-Oriented Middleware for Distributed Systems Object-Oriented Middleware for Distributed Systems Distributed Systems Sistemi Distribuiti Andrea Omicini andrea.omicini@unibo.it Ingegneria Due Alma Mater Studiorum Università di Bologna a Cesena Academic

More information

Use and Reuse of Multi-Agent Models and Techniques in a Distributed Systems Development Framework

Use and Reuse of Multi-Agent Models and Techniques in a Distributed Systems Development Framework Use and Reuse of Multi-Agent Models and Techniques in a Distributed Systems Development Framework Agostino Poggi, Michele Tomaiuolo Dipartimento di Ingegneria dell Informazione Università degli Studi di

More information

MOBILE AGENT IN FACTS

MOBILE AGENT IN FACTS 306 MOBILE AGENT IN FACTS Maman Somantri *, Lukito E Nugroho**, F Soesianto** * Electrical Engineering, Faculty, Diponegoro University ** Electrical Engineering, Faculty of Engineering, Gadjah Mada University

More information

CArtAgO: A Framework for Prototyping Artifact-based Environments in MAS

CArtAgO: A Framework for Prototyping Artifact-based Environments in MAS CArtAgO: A Framework for Prototyping Artifact-based Environments in MAS Alessandro Ricci, Mirko Viroli, and Andrea Omicini Alma Mater Studiorum Università di Bologna via Venezia 52, 47023 Cesena, Italy

More information

An Architecture and System for Support of Cooperation in Multi-Agent Software Development

An Architecture and System for Support of Cooperation in Multi-Agent Software Development 296 Conf. on Software Eng. Research and Practice SERP'07 An Architecture and System for Support of Cooperation in Multi-Agent Software Development Xuetao Niu, School of Information and Communication Technology

More information

Multi-Agent Programming Contest The Python-DTU Team

Multi-Agent Programming Contest The Python-DTU Team Downloaded from orbit.dtu.dk on: Jan 24, 2018 Multi-Agent Programming Contest 2012 - The Python-DTU Team Villadsen, Jørgen; Jensen, Andreas Schmidt; Ettienne, Mikko Berggren; Vester, Steen; Balsiger Andersen,

More information

Overview of a Scripting Language for JADE-Based Multi-Agent Systems

Overview of a Scripting Language for JADE-Based Multi-Agent Systems Overview of a Scripting Language for JADE-Based Multi-Agent Systems Federico Bergenti, Giuseppe Petrosino Dipartimento di Scienze Matematiche, Fisiche e Informatiche Università degli Studi di Parma, 43124

More information

Task-oriented engineering of coordinated software systems

Task-oriented engineering of coordinated software systems CE: The Vision for the Future Generation in Research and Applications, R. Jardim-Gonçalves et al. (eds) 2003 Swets & Zeitlinger, Lisse, ISBN 90 5809 622 X Task-oriented engineering of coordinated software

More information

Programming Safe Agents in Blueprint. Alex Muscar University of Craiova

Programming Safe Agents in Blueprint. Alex Muscar University of Craiova Programming Safe Agents in Blueprint Alex Muscar University of Craiova Programmers are craftsmen, and, as such, they are only as productive as theirs tools allow them to be Introduction Agent Oriented

More information

Software Architectures

Software Architectures Software Architectures Distributed Systems Sistemi Distribuiti Andrea Omicini andrea.omicini@unibo.it Dipartimento di Informatica: Scienza e Ingegneria (DISI) Alma Mater Studiorum Università di Bologna

More information

Unifying Agent and Component Concepts - Jadex Active Components

Unifying Agent and Component Concepts - Jadex Active Components Unifying Agent and Component Concepts - Jadex Active Components Alexander Pokahr, Lars Braubach, Kai Jander Distributed Systems and Information Systems Group (VSIS) Department of Informatics, University

More information

Software Architectures

Software Architectures Software Architectures Distributed Systems L-A Sistemi Distribuiti L-A Andrea Omicini andrea.omicini@unibo.it Ingegneria Due Alma Mater Studiorum Università di Bologna a Cesena Academic Year 2008/2009

More information

Teaching Distributed Programming Concepts using a Java and Logo-based Framework

Teaching Distributed Programming Concepts using a Java and Logo-based Framework Teaching Distributed Programming Concepts using a Java and Logo-based Framework Thanaporn Chochai 1 Telecom. and Network Research and Development Division NECTEC Rajtawe, Bangkok 10400, Thailand rung@ttl.nectec.or.th

More information

Introduction to Distributed Systems

Introduction to Distributed Systems Introduction to Distributed Systems Distributed Systems L-A Sistemi Distribuiti L-A Andrea Omicini andrea.omicini@unibo.it Ingegneria Due Alma Mater Studiorum Università di Bologna a Cesena Academic Year

More information

simpa-ws: A Simple Agent-Oriented Programming Model & Technology for Developing SOA & Web Services

simpa-ws: A Simple Agent-Oriented Programming Model & Technology for Developing SOA & Web Services simpa-ws: A Simple Agent-Oriented Programming Model & Technology for Developing SOA & Web Services Alessandro Ricci, Enrico Denti Abstract Service-Oriented Architecture (SOA) is more and more recognised

More information

3. Agent-Oriented Methodologies Part 2: The PROMETHEUS methodology.

3. Agent-Oriented Methodologies Part 2: The PROMETHEUS methodology. Multiagent Syste ems Design (MASD D) Part 2: The PROMETHEUS methodology. https://kemlg.upc.edu Javier Vázquez-Salceda MASD Methodological Extensions to Object-Oriented Approaches A means for agent technologies

More information

On the Encapsulation and Reuse of Decentralized Coordination Mechanisms: A Layered Architecture and Design Implications

On the Encapsulation and Reuse of Decentralized Coordination Mechanisms: A Layered Architecture and Design Implications On the Encapsulation and Reuse of Decentralized Mechanisms: A Layered Architecture and Design Implications Jan Sudeikat 1,2 and Wolfgang Renz 1 1 Multimedia Systems Laboratory, Hamburg University of Applied

More information

OWL-S for Describing Artifacts

OWL-S for Describing Artifacts OWL-S for Describing Artifacts Rossella Rubino, Ambra Molesini, Enrico Denti ambra.molesini@unibo.it Alma Mater Studiorum Università di Bologna Lisbon, 14 15 December 2006 Ambra Molesini (Università di

More information

Implementing BDI-like Systems by Direct Execution

Implementing BDI-like Systems by Direct Execution Implementing BDI-like Systems by Direct Execution Michael Fisher Department of Computing Manchester Metropolitan University Manchester Ml 5GD, United Kingdom EMAIL: M.Fisher@doc.mmu.ac.uk Abstract While

More information

Introduction to Distributed Systems

Introduction to Distributed Systems Introduction to Distributed Systems Distributed Systems Sistemi Distribuiti Andrea Omicini andrea.omicini@unibo.it Ingegneria Due Alma Mater Studiorum Università di Bologna a Cesena Academic Year 2011/2012

More information

tatami-2 a Flexible Framework for Modular Agents 1

tatami-2 a Flexible Framework for Modular Agents 1 tatami-2 a Flexible Framework for Modular Agents 1 Andrei Olaru Department of Computers University Politehnica of Bucharest 313 Splaiul Independentei 060042 Bucharest, Romania Email: cs@andreiolaru.ro

More information

An Agent Modeling Language Implementing Protocols through Capabilities

An Agent Modeling Language Implementing Protocols through Capabilities An Agent Modeling Language Implementing Protocols through Capabilities Nikolaos Spanoudakis 1,2 1 Technical University of Crete, Greece nikos@science.tuc.gr Pavlos Moraitis 2 2 Paris Descartes University,

More information

Helper Agents as a Means of Structuring Multi-Agent Applications

Helper Agents as a Means of Structuring Multi-Agent Applications Helper Agents as a Means of Structuring Multi-Agent Applications Kolja Markwardt and Daniel Moldt University of Hamburg, Department of Informatics, Vogt-Kölln-Str. 30, D-22527 Hamburg http://www.informatik.uni-hamburg.de/tgi

More information

Normative Programming for Organisation Management Infrastructures

Normative Programming for Organisation Management Infrastructures Normative Programming for Organisation Management Infrastructures Jomi F. Hübner Dept Automation and Systems Eng. Federal University of Santa Catarina Florianópolis, Brazil Email: jomi@das.ufsc.br Olivier

More information

Principles of Computer Game Design and Implementation. Lecture 3

Principles of Computer Game Design and Implementation. Lecture 3 Principles of Computer Game Design and Implementation Lecture 3 We already knew Introduction to this module History of video High-level information for a game (such as Game platform, player motivation,

More information

Multi-Agent Programming

Multi-Agent Programming Multi-Agent Programming Brian Logan 1 School of Computer Science University of Nottingham Midlands Graduate School 8th 12th April 2013 1 Slides on Normative Organisations are from an AAMAS 2012 tutorial

More information

Generic Programming Constructs and Applications in Object-Oriented Languages

Generic Programming Constructs and Applications in Object-Oriented Languages Generic Programming Constructs and Applications in Object-Oriented Languages Maurizio Cimadamore maurizio.cimadamore@[unibo.it sun.com] alice research group Alma Mater Studiorum Università di Bologna Sun

More information

What are the characteristics of Object Oriented programming language?

What are the characteristics of Object Oriented programming language? What are the various elements of OOP? Following are the various elements of OOP:- Class:- A class is a collection of data and the various operations that can be performed on that data. Object- This is

More information

SISTEMI CONCORRENTI E DI RETE LS II Facoltà di Ingegneria - Università di Bologna - Cesena - a.a / 2009 COURSE PRESENTATION

SISTEMI CONCORRENTI E DI RETE LS II Facoltà di Ingegneria - Università di Bologna - Cesena - a.a / 2009 COURSE PRESENTATION SISTEMI CONCORRENTI E DI RETE LS II Facoltà di Ingegneria - Università di Bologna - Cesena - a.a. 2008 / 2009 COURSE PRESENTATION ABOUT THE LECTURER Alessandro Ricci PhD, DEIS researcher / alice group,

More information

Artificial Intelligence Agent Oriented Software Engineering

Artificial Intelligence Agent Oriented Software Engineering Artificial Intelligence Agent Oriented Software Engineering Maurizio Martelli, Viviana Mascardi {martelli, mascardi}@disi.unige.it University of Genoa Department of Computer and Information Science AI,

More information

Towards a Component Agent Service Oriented Model

Towards a Component Agent Service Oriented Model Towards a Component Agent Service Oriented Model Nour Alhouda Aboud, Eric Cariou and Eric Gouardères LIUPPA Laboratory Université de Pau et des Pays de l Adour BP 1155 64013 Pau Cedex France {Nour-alhouda.Aboud,

More information

A Recent Experience in Teaching Multi-Agent Systems Using Jason

A Recent Experience in Teaching Multi-Agent Systems Using Jason A Recent Experience in Teaching Multi-Agent Systems Using Jason Rafael H. Bordini Department of Computer Science University of Durham Durham DH1 3LE, U.K. R.Bordini@durham.ac.uk ABSTRACT This paper briefly

More information

Rigurous Software Development of Multi-Agent Systems

Rigurous Software Development of Multi-Agent Systems Rigurous Software Development of Multi-Agent Systems 2 nd Prometidos-CM Winter School Speaker: Álvaro Fernández Díaz Universidad Politécnica de Madrid Structure of the talk Multi-Agent Systems Purpose

More information

Software Integration Using a Dynamic Wrapper Agent

Software Integration Using a Dynamic Wrapper Agent Software Integration Using a Dynamic Wrapper Agent MIRIAM A. M. CAPRETZ & MARY C. HRYB Department of Electrical and Computer Engineering University of Western Ontario London, Ontario, CANADA N6A 5B9 Abstract:

More information

Issues in Multiagent System Development

Issues in Multiagent System Development Issues in Multiagent System Development Mehdi Dastani, Joris Hulstijn, Frank Dignum, John-Jules Ch. Meyer ICS, Utrecht University {mehdi,jorish,dignum,jj}@cs.uu.nl Abstract Methodologies for multiagent

More information

Monitoring BPMN-Processes with Rules in a Distributed Environment

Monitoring BPMN-Processes with Rules in a Distributed Environment Monitoring BPMN-Processes with Rules in a Distributed Environment Lothar Hotz 1, Stephanie von Riegen 1, Lars Braubach 2, Alexander Pokahr 2, and Torsten Schwinghammer 3 1 HITeC e.v. c/o Fachbereich Informatik,

More information

Integration Testing in AOSE Methodologies

Integration Testing in AOSE Methodologies Manikkanan. D et al, / (IJCSIT) International Journal of Computer Science and Information Technologies, Vol. 5, 2014, 492-497 Integration Testing in AOSE Methodologies Manikkanan. D #, Prasanna Kumar.K

More information

A Tutorial on Agent Based Software Engineering

A Tutorial on Agent Based Software Engineering A tutorial report for SENG 609.22 Agent Based Software Engineering Course Instructor: Dr. Behrouz H. Far A Tutorial on Agent Based Software Engineering Qun Zhou December, 2002 Abstract Agent oriented software

More information

Towards a formal model of object-oriented hyperslices

Towards a formal model of object-oriented hyperslices Towards a formal model of object-oriented hyperslices Torsten Nelson, Donald Cowan, Paulo Alencar Computer Systems Group, University of Waterloo {torsten,dcowan,alencar}@csg.uwaterloo.ca Abstract This

More information

Conceptual Framework

Conceptual Framework ArchiMate in a Nutshell v11 Conceptual Framework Generic Meta Model / Framework / Meta Model Creative Commons Attribution-No Derivative Works Licence 2.0 Attribution: You may copy, distribute and display

More information

A Multiagent Platform for Developments of Accounting Intelligent Applications

A Multiagent Platform for Developments of Accounting Intelligent Applications A Multiagent Platform for Developments of Accounting Intelligent Applications Adrian LUPAŞC alupasc@ugal.ro University "Dunărea de Jos" of Galaţi Abstract. AOP Agent Oriented Programming is a new software

More information

Mapping Multi- Agent Systems Based on FIPA Specification to GPU Architectures

Mapping Multi- Agent Systems Based on FIPA Specification to GPU Architectures Mapping Multi- Agent Systems Based on FIPA Specification to GPU Architectures Luiz Guilherme Oliveira dos Santos 1, Flávia Cristina Bernadini 1, Esteban Gonzales Clua 2, Luís C. da Costa 2 and Erick Passos

More information

Toward Self-Organizing, Self-Repairing and Resilient Distributed Systems

Toward Self-Organizing, Self-Repairing and Resilient Distributed Systems Toward Self-Organizing, Self-Repairing and Resilient Distributed Systems Alberto Montresor 1, Hein Meling 2, and Özalp Babaoğlu1 1 Department of Computer Science, University of Bologna, Mura Anteo Zamboni

More information

Agent-Oriented Software Engineering. Franco Zambonelli April 2010

Agent-Oriented Software Engineering. Franco Zambonelli April 2010 Agent-Oriented Software Engineering Franco Zambonelli April 2010 1 Outline Part 1: What is Agent-Oriented Software Engineering (AOSE) Why it is important Key concepts. Part 2: Agent-methodologies Key Concepts

More information

Jadex: A Short Overview

Jadex: A Short Overview Jadex: A Short Overview L. Braubach, 1 A. Pokahr, 1 W. Lamersdorf 1 Distributed and Information Systems Group, University of Hamburg, Germany {braubach, pokahr, lamersd}@informatik.uni-hamburg.de Abstract.

More information

SOA/WS Applications using Cognitive Agents working in CArtAgO Environments

SOA/WS Applications using Cognitive Agents working in CArtAgO Environments SOA/WS Applications using Cognitive Agents working in CArtAgO Environments Michele Piunti DEIS, Università di Bologna Via Venezia 52 Cesena (FC), Italy michele.piunti@unibo.it Alessandro Ricci DEIS, Università

More information

Health Monitoring Service for Multi-Agent Systems

Health Monitoring Service for Multi-Agent Systems Health Monitoring Service for Multi-Agent Systems MSc Thesis Final Report A thesis submitted in part fulfilment of the degree of MSc in Advanced Software Engineering with the supervision of Dr. Rem Collier

More information

Agent-based Models, Technologies and Methodologies for the Engineering of Software Systems in the Context of Open Scenarios

Agent-based Models, Technologies and Methodologies for the Engineering of Software Systems in the Context of Open Scenarios Agent-based Models, Technologies and Methodologies for the Engineering of Software Systems in the Context of Open Scenarios Dottorato di Ricerca in Informatica, Elettronica e Telecomunicazioni XXIII Ciclo

More information

Consistency & Replication in Distributed Systems

Consistency & Replication in Distributed Systems Consistency & Replication in Distributed Systems Distributed Systems Sistemi Distribuiti Andrea Omicini andrea.omicini@unibo.it Ingegneria Due Alma Mater Studiorum Università di Bologna a Cesena Academic

More information

AGENTSPEAK AND JASON. AgentSpeak ROBOTICS AND AUTONOMOUS SYSTEMS. Today. Language of choice for the Multi-Agent Programming Contest

AGENTSPEAK AND JASON. AgentSpeak ROBOTICS AND AUTONOMOUS SYSTEMS. Today. Language of choice for the Multi-Agent Programming Contest ROBOTICS AND AUTONOMOUS SYSTEMS Simon Parsons Department of Computer Science University of Liverpool LECTURE 19 comp329-2013-parsons-lect19 2/35 Today In this lecture we will begin to look at the tools

More information

Mobile robots and appliances to support the elderly people

Mobile robots and appliances to support the elderly people Microsoft Research Embedded Systems Invitation for Proposal Mobile robots and appliances to support the elderly people Luca Iocchi, Daniele Nardi Dipartimento di Informatica e Sistemistica Università di

More information

Contributions to the Study of Semantic Interoperability in Multi-Agent Environments - An Ontology Based Approach

Contributions to the Study of Semantic Interoperability in Multi-Agent Environments - An Ontology Based Approach Int. J. of Computers, Communications & Control, ISSN 1841-9836, E-ISSN 1841-9844 Vol. V (2010), No. 5, pp. 946-952 Contributions to the Study of Semantic Interoperability in Multi-Agent Environments -

More information

Communication in Distributed Systems

Communication in Distributed Systems Communication in Distributed Systems Distributed Systems Sistemi Distribuiti Andrea Omicini andrea.omicini@unibo.it Dipartimento di Informatica Scienza e Ingegneria (DISI) Alma Mater Studiorum Università

More information

Erlang as an Implementation Platform for BDI Languages

Erlang as an Implementation Platform for BDI Languages Erlang as an Implementation Platform for BDI Languages Álvaro Fernández Díaz Clara Benac Earle Lars-Åke Fredlund Babel group, DLSIIS, Facultad de Informática, Universidad Politécnica de Madrid {avalor,cbenac,fred}@babel.ls.fi.upm.es

More information

INFORMATION TECHNOLOGY COURSE OBJECTIVE AND OUTCOME

INFORMATION TECHNOLOGY COURSE OBJECTIVE AND OUTCOME INFORMATION TECHNOLOGY COURSE OBJECTIVE AND OUTCOME CO-1 Programming fundamental using C The purpose of this course is to introduce to students to the field of programming using C language. The students

More information

Role based Software Process Modelling

Role based Software Process Modelling Role based Software Process Modelling Fadila Atil, Djamel Meslati, Nora Bounour & Said Ghoul * LRI Laboratory, University of Badji Mokhtar, BP 12, Annaba, Ageria * Institute of Computer science, university

More information

Profiling and optimization for Android applications on the tatami platform

Profiling and optimization for Android applications on the tatami platform Profiling and optimization for Android applications on the tatami platform Understanding the tatami Platform and the S-CLAIM Language Jaber Hassoun Advisor: S. l. dr. ing. Andrei Olaru University "Politehnica"

More information

Vision Document for Multi-Agent Research Tool (MART)

Vision Document for Multi-Agent Research Tool (MART) Vision Document for Multi-Agent Research Tool (MART) Version 2.0 Submitted in partial fulfillment of the requirements for the degree MSE Madhukar Kumar CIS 895 MSE Project Kansas State University 1 1.

More information

Coordination in Multi-Agent Systems: A Declarative Approach using Coordination Spaces

Coordination in Multi-Agent Systems: A Declarative Approach using Coordination Spaces in Multi- Systems: A Declarative Approach using Spaces Ante Vilenica, Alexander Pokahr, Lars Braubach, Winfried Lamersdorf Distributed Systems and Information Systems, University of Hamburg {vilenica}@informatik.uni-hamburg.de

More information

A Self-Organising Solution to the Collective Sort Problem in Distributed Tuple Spaces

A Self-Organising Solution to the Collective Sort Problem in Distributed Tuple Spaces A Self-Organising Solution to the Collective Sort Problem in Distributed Tuple Spaces Mirko Viroli Matteo Casadei Luca Gardelli Alma Mater Studiorum Università di Bologna {mirko.viroli,m.casadei,luca.gardelli}@unibo.it

More information

Toward Self-Organizing, Self-Repairing and Resilient Large-Scale Distributed Systems

Toward Self-Organizing, Self-Repairing and Resilient Large-Scale Distributed Systems Toward Self-Organizing, Self-Repairing and Resilient Large-Scale Distributed Systems Alberto Montresor 1, Hein Meling 2, and Özalp Babaoğlu1 1 Department of Computer Science, University of Bologna, Mura

More information

A Framework For Designing, Modeling and Analyzing Agent Based Software Systems

A Framework For Designing, Modeling and Analyzing Agent Based Software Systems A Framework For Designing, Modeling and Analyzing Agent Based Software Systems Krishna M. Kavi, The University of North Texas Mohamed Aborizka, The University of Alabama in Huntsville and David Kung, The

More information

Argonaut: Integrating Jason and Jena for context aware computing based on OWL ontologies

Argonaut: Integrating Jason and Jena for context aware computing based on OWL ontologies Argonaut: Integrating Jason and Jena for context aware computing based on OWL ontologies Douglas Michaelsen da Silva 1, Renata Vieira 1 1 Universidade do Vale do Rio dos Sinos Av. Unisinos, 950 - CEP 93.022-000

More information

Visual Construction of Multi-Agent-Systems according to the AgentComponent Approach and the Run-Design-Time Concept

Visual Construction of Multi-Agent-Systems according to the AgentComponent Approach and the Run-Design-Time Concept Visual Construction of Multi-Agent-Systems according to the AgentComponent Approach and the Run-Design-Time Concept Philipp Meier Institute of Computer Science, Ludwig-Maximilians-Universität meierp@pst.informatik.uni-muenchen.de

More information

Processes in Distributed Systems

Processes in Distributed Systems Processes in Distributed Systems Distributed Systems L-A Sistemi Distribuiti L-A Andrea Omicini andrea.omicini@unibo.it Ingegneria Due Alma Mater Studiorum Università di Bologna a Cesena Academic Year

More information

System Analysis and Design. Introduction: Object Oriented Design

System Analysis and Design. Introduction: Object Oriented Design System Analysis and Design Introduction: Object Oriented Design Salahaddin University College of Engineering Software Engineering Department 2011-2012 Amanj Sherwany http://www.amanj.me/wiki/doku.php?id=teaching:su:system_analysis_and_design

More information

Agent Architectures & Languages. Heikki Helin

Agent Architectures & Languages. Heikki Helin Agent Architectures & Languages Heikki Helin Agent Architectures Introduction Different architectures Deliberative approach Reactive approach Hybrid approach Agent Architectures Definition Maes: An architecture

More information

OBJECT ORIENTED PROGRAMMING

OBJECT ORIENTED PROGRAMMING 1. Programming Paradigms OBJECT ORIENTED PROGRAMMING A programming methodology defines the methodology of designing and implementing programs using the key features and other building blocks (such as key

More information

Naming in Distributed Systems

Naming in Distributed Systems Naming in Distributed Systems Distributed Systems Sistemi Distribuiti Andrea Omicini andrea.omicini@unibo.it Ingegneria Due Alma Mater Studiorum Università di Bologna a Cesena Academic Year 2010/2011 Andrea

More information

CHAPTER 5 GENERAL OOP CONCEPTS

CHAPTER 5 GENERAL OOP CONCEPTS CHAPTER 5 GENERAL OOP CONCEPTS EVOLUTION OF SOFTWARE A PROGRAMMING LANGUAGE SHOULD SERVE 2 RELATED PURPOSES : 1. It should provide a vehicle for programmer to specify actions to be executed. 2. It should

More information

AOSA - Betriebssystemkomponenten und der Aspektmoderatoransatz

AOSA - Betriebssystemkomponenten und der Aspektmoderatoransatz AOSA - Betriebssystemkomponenten und der Aspektmoderatoransatz Results obtained by researchers in the aspect-oriented programming are promoting the aim to export these ideas to whole software development

More information