Interaction-Oriented Programming: Abstractions for Engineering Decentralized Multiagent Systems

Time and place

TBA

Presenters

Amit K. Chopra (Lancaster University), Samuel H. Christie V (Independent), Munindar P. Singh (North Carolina State University) 

Contact email: akchopra.mail@gmail.com 

Expected Background

Undergraduate-level knowledge of computer science 

Expected Gained Skills

 * Model multiagent systems via abstractions for modeling interactions, such as norms and protocols

* Verify properties of protocols

* Implement flexible software agents that enact protocols and reason about norms

* Develop a critical understanding of related work in diverse areas such as programming languages, blockchain, microservices, and distributed systems 

Brief Description

Interaction protocols, commitments, and more generally, norms have been a major theme of multiagent systems (MAS) research for the past two decades. This tutorial will cover the latest advances on these topics, especially from the

perspective of information modeling (think databases) and decentralized enactments (think messaging and asynchrony). Understanding these perspectives is crucial to designing practical and correct MAS.

In this tutorial, we will present the challenges of building practical

and correct MAS with an emphasis on decentralized settings. We will discuss the challenges in the context of applications such as ebusiness and finance and paradigms such as the IoT, blockchain, and microservices. We will discuss

here the traditional approaches---drawn from diverse areas such as multiagent systems, programming languages, and distributed systems---fall short.

We will introduce Interaction-Oriented Programming (IOP) as an approach for engineering decentralized MAS. IOP stands apart from alternative approaches in its information-based conception of interactions. We will first introduce the Blindingly Simple Protocol Language (BSPL), and show how it addresses the above challenges. We will show how to verify protocols and engineer protocol-compliant agents. We will show how higher-level notions such as commitments may be specified in Cupid and layered on top of BSPL. We will chart out our vision for how IOP puts multiagent systems at the heart of distributed thinking, broadly speaking.


The tutorial is presented at the level of senior undergraduate and beginning graduate students and is suitable for researchers and practitioners. Concepts will be supported by software available in a public repository (https://gitlab.com/masr/). Beyond multiagent systems, this tutorial should be valuable to anyone interested in modeling and programming distributed systems and related themes such as asynchrony, concurrency, and fault-tolerance.