Tutorials


Consensus-based Design of Self-Organizing Multi-Agent Systems

October 20th, Morning Session

Reza Olfati-Saber

presenter: Reza Olfati-Saber (Dartmouth College, USA).

abstract: In this tutorial, we will teach the design and formal analysis of consensus algorithms for networked multi-agent systems. Distributed consensus has been used to both engineer self-organizing multi-agent systems as well as understand natural systems -- example applications include understanding collective synchronization in nature and man-made networks, flocking in nature and for robots, formation control for mobile robots/Uavs, self-assembly in modular robots, and distributed tracking in sensor networks. We will introduce a combination of tools from control theory, robotics, spectral graph theory, and matrix theory to analytically study the convergence and performance of such self-organizing systems. Further, we will show how one can analyze the fundamental challenges arising in networked systems including failure of links/nodes, packet-loss, presence of time-delays, and variable topology in mobile ad hoc networks. The effects of the "network structure" on speed of consensus for important classes of small-world networks, random networks, and scale-free networks will be also discussed.


Autonomic Grid Computing: Self-Adapting and Self-Organizing Approaches and Applications

October 20th, Afternoon Session

Manish Parashar
Omer Rana

presenters: Manish Parashar (Rutgers University, USA), Omer Rana (Cardiff University, UK)

abstract: Grid computing has come to represent the distributed computing infrastructure to enable large scale (scientific) problem solving, generally by integrating resources across multiple administrative domains or "Virtual Organizations". As this infrastructure matures new types of scientific and engineering applications become feasible based on the aggregation of computational and data resources, scientific instruments, distributed sensors and actuators, etc. However Grids are inherently large, complex, heterogeneous and dynamic. As many of these resources exist in independently managed administrative domains, resource access and provisioning is determined by independently developed policies. Enterprise-scale datacenters, that dominate computing infrastructures in industry, are similarly growing in size and complexity, and are also enabling new classes and scales of complex business applications (e.g., MapReduce, Hadoop) as well as new business paradigms (e.g., Clouds). This tutorial will motivate and introduce autonomic computing for Grids and datacenters, highlighting challenges and opportunities. A key focus will be on understanding how approaches based on self-organization and emergent behavior may be used to influence system and application management.


Self-Organizing Applications with Polyagents

October 21st, Morning Session

Sven Brueckner

presenter: Sven Brueckner (NewVectors, USA).

abstract: The success of many multi-agent systems (MAS's) depends on the existence of some form of organization among the individual agents that allows the system as a whole to achieve more than any single agent. In many traditional MAS's, organization is imposed externally. An alternative approach is systems that organize themselves through local interactions. Self-organizing applications (SOAs) take inspiration from biology, physical world, chemistry, or social systems. Polyagents are a construct that combines the advantages of self-organizing problem solving with the need for a stronger representation of individuals. Each polyagent typically maps to a domain entity, but as the "poly" in polyagent indicates, each polyagent actually comprises multiple agents. This half-day tutorial introduces the audience to engineering SOA's in general and then it puts self-organization into the context of polyagent systems, and discusses the use of polyagents as applied to multi-future prediction and coordination in complex, real-world domains.


Spatial Approaches to Pervasive Computing

October 21st, Afternoon Session

Jonathan Bachrach
Jacob Beal
Cristian Borcea
Marco Mamei

presenters: Jonathan Bachrach (Massachusstes Institute of Technology, USA), Jacob Beal (Massachussts Institute of Technology, USA), Cristian Borcea (New Jersey Institute of Technology, USA), Marco Mamei (University of Modena and Reggio Emilia, Italy)

abstract: Programming distributed applications in pervasive computing environments is challenging for traditional programming approaches. Typically, there are potentially large numbers of devices, spread through a physical space with only local communication, ephemeral devices, and a frequently changing network structure. A number of programming models have been developed, however, that simplify these problems by taking advantage of the spatial character of the network structure and typical pervasive computing goals. This tutorial presents an overview of the problem area and state-of-the art approaches, plus an in-depth look at two programming models---resource naming with implicit routing and the Proto programming language---and their supporting middleware.