Protocols model multiagent systems (MAS) by capturing the communications between its agents. Belief-Desire-Intention (BDI) architectures provide an attractive way for organizing an agent in terms of cognitive concepts. Current BDI approaches, however, lack adequate support for engineering protocol-based agents. We describe Argus, an approach that melds recent advances in flexible, declarative communication protocols with BDI architectures. For concreteness, we adopt Jason as an exemplar of the BDI paradigm and show how to support protocol-based reasoning in it. Specifically, Argus contributes (1) a novel architecture and formal operational semantics combining protocols and BDI; (2) a code generation-based programming model that guides the implementation of agents; and (3) integrity checking for incoming and outgoing messages that help ensure that the agents are well-behaved. The Argus conceptual architecture builds quite naturally on top of Jason. Thus, Argus enables building more flexible multiagent systems while using a BDI architecture than is currently possible.
more »
« less
This content will become publicly available on May 19, 2026
Orpheus: Programming Protocol-Based BDI Agents: Demonstration Track
We demonstrate Orpheus, a novel programming model for engineering BDI agents that communicate on the basis of protocols. In Orpheus, protocols are specified in BSPL and agents are implemented in Jason. Given a protocol, Orpheus tooling generates a Jason adapter that exposes a simple interface for sending messages based on protocol state. Orpheus shines in the implementation of flexible, loosely-coupled agents, long a challenge for BDI-based agent programming approaches. Demonstration video: https://di.unito.it/orpheusvid
more »
« less
- Award ID(s):
- 1908374
- PAR ID:
- 10638570
- Publisher / Repository:
- IFAAMAS
- Date Published:
- Page Range / eLocation ID:
- 3006-3008
- Format(s):
- Medium: X
- Sponsoring Org:
- National Science Foundation
More Like this
-
-
Commitments support flexible interactions between agents by capturing the meaning of their interactions. However, commitmentbased reasoning is not adequately supported in agent programming models. We contribute Azorus, a programming model based on declarative specifications centered on commitments and aligned with information protocols. Azorus supports reasoning about goals and commitments and combines modeling of commitments and protocols, thereby uniting three leading declarative approaches to engineering decentralized multiagent systems. Specifically, we realize Azorus over three existing technology suites: (1) Jason, a popular BDI-based programming model; (2) Cupid, a formal language and query-based model for commitments; and (3) BSPL, a language and its associated tools for information protocols, including Jason programming. We implement Azorus and demonstrate how it enables capturing interesting patterns of business logic.more » « less
-
null (Ed.)A decentralized application involves multiple autonomous principals, e.g., humans and organizations. Autonomy motivates (1) specifying a decentralized application via a protocol that captures the interactions between the principals, and (2) a programming model that enables each principal to independently (from other principals) construct its own protocol-compliant agent. An agent encodes its principal's decision making and represents it in the application. We contribute Deserv, the first protocol-based programming model for decentralized applications that is suited to the cloud. Specifically, Deserv demonstrates how to leverage function-as-a-service (FaaS), a popular serverless programming model, to implement agents. A notable feature of Deserv is the use declarative protocols to specify interactions. Declarative protocols support implementing stateful agents in a manner that naturally exploits the concurrency and autoscaling benefits offered by serverless computing.more » « less
-
We define a decentralized software application as one that consists of autonomous agents that communicate through asynchronous messaging. Constructing a decentralized application involves designing agents as independent local computations that coordinate to realize the application’s requirements. Moreover, a decentralized application is susceptible to faults manifested as message loss, delay, and reordering. We contribute Mandrake, a programming model for decentralized applications that addresses these challenges. Specifically, we adopt the construct of an information protocol that specifies messaging between agents purely in causal terms and can be correctly enacted by agents in a shared-nothing environment over nothing more than unreliable, unordered transport. Mandrake facilitates (1) implementing protocol-compliant agents by introducing a programming model; (2) transforming fragile protocols into fault-tolerant ones with simple annotations; and (3) a declarative policy language that makes it easy to implement fault-tolerance in agents based on the capabilities in protocols. In obviating the reliance on reliability and ordering guarantees in the communication infrastructure, Mandrake achieves some of the goals of the founders of networked computing from the 1970s.more » « less
-
Abstract We conceptualize adecentralizedsoftware application as one constituted fromautonomousagents that communicate viaasynchronousmessaging. Modern software paradigms such as microservices and settings such as the Internet of Things evidence a growing interest in decentralized applications. Constructing a decentralized application involves designing agents as independent local computations that coordinate successfully to realize the application’s requirements. Moreover, a decentralized application is susceptible to faults manifested as message loss, delay, and reordering. We contributeMandrake, a programming model for decentralized applications that tackles these challenges without relying on infrastructure guarantees. Specifically, we adopt the construct of aninformation protocolthat specifies messaging between agents purely in causal terms and can be correctly enacted by agents in a shared-nothing environment over nothing more than unreliable, unordered transport. Mandrake facilitates (1) implementing protocol-compliant agents by introducing a programming model; (2) transforming protocols into fault-tolerant ones with simple annotations; and (3) a declarative policy language that makes it easy to implement fault-tolerance in agents based on the capabilities in protocols. Mandrake’s significance lies in demonstrating a straightforward approach for constructing decentralized applications without relying on coordination mechanisms in the infrastructure, thus achieving some of the goals of the founders of networked computing from the 1970s.more » « less
An official website of the United States government
