Mirko Viroli | Università di Bologna (original) (raw)
Papers by Mirko Viroli
Abstract: This paper describes a Java-based framework for developing componentbased software syst... more Abstract: This paper describes a Java-based framework for developing componentbased software systems supporting adaptation with logic laws and considering component interactions as a first-class aspect. On the one side, the framework makes it possible to specify the logic of interaction at the component-level, in terms of input and output interfaces, the events generated and observed by a component, and related information about the management of the control flow.
Intelligent and autonomous software agents may engage in dialogue and argument with one another, ... more Intelligent and autonomous software agents may engage in dialogue and argument with one another, and much recent research has considered protocols, architectures and frameworks for this. Just as with human dialogues, such agent dialogues may be facilitated by the presence of a mediator, able to summarise different positions, identify common assumptions and inconsistencies, and make appropriate interventions in the dialogue.
Abstract. In this paper, we elaborate on the notion of artifact for MAS (multi-agent system), aim... more Abstract. In this paper, we elaborate on the notion of artifact for MAS (multi-agent system), aimed at providing a unifying abstraction to model and engineer the environment of agents. This notion, inspired by the studies on Activity Theory, generalises over existing infrastructures for MAS environments, and over previous work on coordination artifacts [1] and agent coordination contexts [2, 3].
Today's large scale software systems are typically designed and implemented using the concepts of... more Today's large scale software systems are typically designed and implemented using the concepts of the object-oriented (OO) paradigm. However, there is still a need for existing OO languages and architectures to continuously adapt in response to demands for new features and innovative approaches. These new features, to name a few, include unanticipated software evolution, security, safety, distribution, and interoperability.
Abstract The Agent Coordination Context abstraction (ACC) has been recently introduced as a mean ... more Abstract The Agent Coordination Context abstraction (ACC) has been recently introduced as a mean to model the environment and the agent-environment interaction in the context of Multi-Agent Systems (MASs). In this article we discuss how the ACC notion has been embedded in a MAS infrastructure, in terms of the new runtime structures and services. As a reference, we will take TuCSoN coordination infrastructure, which is extended with the ACC framework to integrate organisation and security support with coordination.
ABSTRACT The observation pattern represents one of the most common and widespread coordination sc... more ABSTRACT The observation pattern represents one of the most common and widespread coordination schemata in today complex models and systems, as it emerges from a variety of different research and application areas. This paper aims first at providing a common ontological foundation for the many different models, architectures, and systems supporting the observation pattern, allowing them to be classified and compared despite their seeming diversity.
Abstract: Observation is a fundamental interaction pattern in today's computerbased systems. Adop... more Abstract: Observation is a fundamental interaction pattern in today's computerbased systems. Adopting observation as the main modelling criterion, computer-based systems can be represented as composed by three class of entities: observers, observables (or sources), and coordinators, that is, the entities managing the observer/source interaction.
Abstract P@ J is a framework, based on the tuProlog open-source engine, allowing Prolog code to b... more Abstract P@ J is a framework, based on the tuProlog open-source engine, allowing Prolog code to be used as possible implementation of a Java method: Java annotations are used for specifying all the necessary information to fill the Java-Prolog gap. This framework is useful to inject a declarative, logic-based paradigm into mainstream object-oriented programming, so as to easily code functionalities related to automatic reasoning, adaptivity, and conciseness in expressing algorithms.
Purpose–Emerging pervasive computing scenarios require open service frameworks promoting situated... more Purpose–Emerging pervasive computing scenarios require open service frameworks promoting situated and self-adaptive behaviors, and supporting diversity in services and long-term evolvability. This suggests adopting a nature-inspired approach, where pervasive services are modeled and deployed as autonomous individuals in an ecosystem of other services, data sources, and pervasive devices.
Abstract This paper grounds on the SAPERE project (Self-Aware PERvasive Service Ecosystems), whic... more Abstract This paper grounds on the SAPERE project (Self-Aware PERvasive Service Ecosystems), which aims at proposing a multi-agent framework for pervasive computing, based on the idea of making each agent (service, device, human) manifest its existence in the ecosystem by a Live Semantic Annotation (LSA), and of coordinating agent activities by a small and fixed set of so-called eco-laws, which are sort of chemical-like reactions evolving the distributed population of LSAs.
Abstract This paper investigates the application of a formal framework for the observation issue ... more Abstract This paper investigates the application of a formal framework for the observation issue in agent-based systems to the specification of the individual agent interactive behaviour. An abstract architecture is defined for agents that is based on the idea of viewing them as observable sources--of knowledge, services, capabilities.
Abstract—In this paper, the ReSpecT specification language for programming the behaviour of tuple... more Abstract—In this paper, the ReSpecT specification language for programming the behaviour of tuple centres is extended with the out tc predicate, enabling communication between tuple centres. The extension is formally defined, and its benefits in the management of multiple coordination flows are outlined. The paper shows how relevant interaction scenarios–typically event-oriented–can be framed as multiple coordination flow problems, and properly engineered using tuple centres with the extended ReSpecT language.
Recent coordination languages and models are moving towards the application of techniques coming ... more Recent coordination languages and models are moving towards the application of techniques coming from the research context of complex systems: adaptivity and self-organization are exploited in order to tackle the openness, dynamism and unpredictability of today's distributed systems. In this area, systems are to be described using stochastic models, and simulation is a valuable tool both for analysis and design.
Abstract. Artifacts have been recently proposed as first-class abstractions to model and engineer... more Abstract. Artifacts have been recently proposed as first-class abstractions to model and engineer general-purpose computational environments for multiagent systems. In this paper, we consider the design and development of an infrastructure called CArtAgO, directly supporting the artifact notion for the engineering of multiagent applications. We first propose an abstract model of the infrastructure, and then describe an implementation prototype of it.
Abstract Subjective and objective coordination can be integrated and exploited fruitfully in the ... more Abstract Subjective and objective coordination can be integrated and exploited fruitfully in the same context. In this paper we investigate such integration in multi-agent systems, in particular taking as a reference context FIPA agents-typically adopting subjective approaches-aiming at exploiting the coordination services provided by TuCSoN objective coordination infrastructure.
Natural systems are regarded as rich sources of inspiration for engineering artificial systems, p... more Natural systems are regarded as rich sources of inspiration for engineering artificial systems, particularly when adopting the multiagent system (MAS) paradigm. To promote a systematic reuse of mechanisms featured in self-organising systems, we analyse a selection of design patterns devised from the self-organisation literature. Starting from our reference MAS metamodel, we propose a pattern scheme that reflects the peculiarities of self-organising systems.
Abstract Much recent work in the design of object-oriented programming languages has been focusin... more Abstract Much recent work in the design of object-oriented programming languages has been focusing on identifying suitable features to support so-called scalable extensibility, where the usual extension mechanism by inheritance works in different scales of software components-that is, classes, groups of classes, groups of groups and so on. Its typing issues has usually been addressed by means of dependent type systems, where nested types are seen as properties of objects.
In the context of component-based systems, coordination can be thought of as an event-based servi... more In the context of component-based systems, coordination can be thought of as an event-based service provided by a coordination medium. However, this interpretation is not endorsed by some researches in the field of coordination and in particular by existing attempts to define a notion of expressiveness for coordination models.
Family polymorphism has been proposed for object-oriented languages as a solution to supporting r... more Family polymorphism has been proposed for object-oriented languages as a solution to supporting reusable yet type-safe mutually recursive classes. A key idea of family polymorphism is the notion of families, which are used to group mutually recursive classes. In the original proposal, due to the design decision that families are represented by objects, dependent types had to be introduced, resulting in a rather complex type system.
Abstract: This paper describes a Java-based framework for developing componentbased software syst... more Abstract: This paper describes a Java-based framework for developing componentbased software systems supporting adaptation with logic laws and considering component interactions as a first-class aspect. On the one side, the framework makes it possible to specify the logic of interaction at the component-level, in terms of input and output interfaces, the events generated and observed by a component, and related information about the management of the control flow.
Intelligent and autonomous software agents may engage in dialogue and argument with one another, ... more Intelligent and autonomous software agents may engage in dialogue and argument with one another, and much recent research has considered protocols, architectures and frameworks for this. Just as with human dialogues, such agent dialogues may be facilitated by the presence of a mediator, able to summarise different positions, identify common assumptions and inconsistencies, and make appropriate interventions in the dialogue.
Abstract. In this paper, we elaborate on the notion of artifact for MAS (multi-agent system), aim... more Abstract. In this paper, we elaborate on the notion of artifact for MAS (multi-agent system), aimed at providing a unifying abstraction to model and engineer the environment of agents. This notion, inspired by the studies on Activity Theory, generalises over existing infrastructures for MAS environments, and over previous work on coordination artifacts [1] and agent coordination contexts [2, 3].
Today's large scale software systems are typically designed and implemented using the concepts of... more Today's large scale software systems are typically designed and implemented using the concepts of the object-oriented (OO) paradigm. However, there is still a need for existing OO languages and architectures to continuously adapt in response to demands for new features and innovative approaches. These new features, to name a few, include unanticipated software evolution, security, safety, distribution, and interoperability.
Abstract The Agent Coordination Context abstraction (ACC) has been recently introduced as a mean ... more Abstract The Agent Coordination Context abstraction (ACC) has been recently introduced as a mean to model the environment and the agent-environment interaction in the context of Multi-Agent Systems (MASs). In this article we discuss how the ACC notion has been embedded in a MAS infrastructure, in terms of the new runtime structures and services. As a reference, we will take TuCSoN coordination infrastructure, which is extended with the ACC framework to integrate organisation and security support with coordination.
ABSTRACT The observation pattern represents one of the most common and widespread coordination sc... more ABSTRACT The observation pattern represents one of the most common and widespread coordination schemata in today complex models and systems, as it emerges from a variety of different research and application areas. This paper aims first at providing a common ontological foundation for the many different models, architectures, and systems supporting the observation pattern, allowing them to be classified and compared despite their seeming diversity.
Abstract: Observation is a fundamental interaction pattern in today's computerbased systems. Adop... more Abstract: Observation is a fundamental interaction pattern in today's computerbased systems. Adopting observation as the main modelling criterion, computer-based systems can be represented as composed by three class of entities: observers, observables (or sources), and coordinators, that is, the entities managing the observer/source interaction.
Abstract P@ J is a framework, based on the tuProlog open-source engine, allowing Prolog code to b... more Abstract P@ J is a framework, based on the tuProlog open-source engine, allowing Prolog code to be used as possible implementation of a Java method: Java annotations are used for specifying all the necessary information to fill the Java-Prolog gap. This framework is useful to inject a declarative, logic-based paradigm into mainstream object-oriented programming, so as to easily code functionalities related to automatic reasoning, adaptivity, and conciseness in expressing algorithms.
Purpose–Emerging pervasive computing scenarios require open service frameworks promoting situated... more Purpose–Emerging pervasive computing scenarios require open service frameworks promoting situated and self-adaptive behaviors, and supporting diversity in services and long-term evolvability. This suggests adopting a nature-inspired approach, where pervasive services are modeled and deployed as autonomous individuals in an ecosystem of other services, data sources, and pervasive devices.
Abstract This paper grounds on the SAPERE project (Self-Aware PERvasive Service Ecosystems), whic... more Abstract This paper grounds on the SAPERE project (Self-Aware PERvasive Service Ecosystems), which aims at proposing a multi-agent framework for pervasive computing, based on the idea of making each agent (service, device, human) manifest its existence in the ecosystem by a Live Semantic Annotation (LSA), and of coordinating agent activities by a small and fixed set of so-called eco-laws, which are sort of chemical-like reactions evolving the distributed population of LSAs.
Abstract This paper investigates the application of a formal framework for the observation issue ... more Abstract This paper investigates the application of a formal framework for the observation issue in agent-based systems to the specification of the individual agent interactive behaviour. An abstract architecture is defined for agents that is based on the idea of viewing them as observable sources--of knowledge, services, capabilities.
Abstract—In this paper, the ReSpecT specification language for programming the behaviour of tuple... more Abstract—In this paper, the ReSpecT specification language for programming the behaviour of tuple centres is extended with the out tc predicate, enabling communication between tuple centres. The extension is formally defined, and its benefits in the management of multiple coordination flows are outlined. The paper shows how relevant interaction scenarios–typically event-oriented–can be framed as multiple coordination flow problems, and properly engineered using tuple centres with the extended ReSpecT language.
Recent coordination languages and models are moving towards the application of techniques coming ... more Recent coordination languages and models are moving towards the application of techniques coming from the research context of complex systems: adaptivity and self-organization are exploited in order to tackle the openness, dynamism and unpredictability of today's distributed systems. In this area, systems are to be described using stochastic models, and simulation is a valuable tool both for analysis and design.
Abstract. Artifacts have been recently proposed as first-class abstractions to model and engineer... more Abstract. Artifacts have been recently proposed as first-class abstractions to model and engineer general-purpose computational environments for multiagent systems. In this paper, we consider the design and development of an infrastructure called CArtAgO, directly supporting the artifact notion for the engineering of multiagent applications. We first propose an abstract model of the infrastructure, and then describe an implementation prototype of it.
Abstract Subjective and objective coordination can be integrated and exploited fruitfully in the ... more Abstract Subjective and objective coordination can be integrated and exploited fruitfully in the same context. In this paper we investigate such integration in multi-agent systems, in particular taking as a reference context FIPA agents-typically adopting subjective approaches-aiming at exploiting the coordination services provided by TuCSoN objective coordination infrastructure.
Natural systems are regarded as rich sources of inspiration for engineering artificial systems, p... more Natural systems are regarded as rich sources of inspiration for engineering artificial systems, particularly when adopting the multiagent system (MAS) paradigm. To promote a systematic reuse of mechanisms featured in self-organising systems, we analyse a selection of design patterns devised from the self-organisation literature. Starting from our reference MAS metamodel, we propose a pattern scheme that reflects the peculiarities of self-organising systems.
Abstract Much recent work in the design of object-oriented programming languages has been focusin... more Abstract Much recent work in the design of object-oriented programming languages has been focusing on identifying suitable features to support so-called scalable extensibility, where the usual extension mechanism by inheritance works in different scales of software components-that is, classes, groups of classes, groups of groups and so on. Its typing issues has usually been addressed by means of dependent type systems, where nested types are seen as properties of objects.
In the context of component-based systems, coordination can be thought of as an event-based servi... more In the context of component-based systems, coordination can be thought of as an event-based service provided by a coordination medium. However, this interpretation is not endorsed by some researches in the field of coordination and in particular by existing attempts to define a notion of expressiveness for coordination models.
Family polymorphism has been proposed for object-oriented languages as a solution to supporting r... more Family polymorphism has been proposed for object-oriented languages as a solution to supporting reusable yet type-safe mutually recursive classes. A key idea of family polymorphism is the notion of families, which are used to group mutually recursive classes. In the original proposal, due to the design decision that families are represented by objects, dependent types had to be introduced, resulting in a rather complex type system.