This document proposes an approach for engineering resilient collaborative edge-enabled IoT systems using aggregate computing. It presents aggregate computing as a paradigm for developing collaborative systems in dynamic open environments at scale. The contribution is a process for coordinating IoT/edge devices that uses decentralized coordination, self-* capabilities, neighbor-based communication, and collective behavior to address challenges of scale, dynamicity, failure, and lack of global connectivity. This is demonstrated through simulations of problem solving and resource management scenarios.
6th eCAS workshop on Engineering Collective Adaptive SystemsRoberto Casadei
Â
This is the presentation introducing the 6th eCAS workshop on Engineering Collective Adaptive Systems. It recaps its scope, provides data regarding this edition, provides an overview of the program and related initiatives.
The University of Northampton- Science and Technology Research Conference 201...AmeerAlSadi
Â
Keywords:
SDN, Software-Defined Network, NFV, Network Function Virtualization.
The emergence of smart city concept increases the needs for updating the abilities of the traditional network (Loffreda, 2015). The network of smart cities requires updating its topology and services dynamically using management software automate this operation. In addition, it needs to run multiple logical networks over a single network infrastructure similarly to the data centres nowadays. The automation of dynamic behaviour achieves using a novel paradigm of the network that contains forwarding devices have a central management, called Software-Define Network (SDN). SDN provides faster, cheaper and more efficient network. In addition, it strongly supports Network Function Virtualization (NFV), which enables executing the network functions using the software component instead of physical devices (Foundation, 2015). Therefore, NFV enables to run multiple logical networks on the single physical network. Moreover, it enables faster deployment of new services or updates the old ones.
The aim of the research is to develop a management algorithm automates the dynamical adaptation for network topology in smart cities.
Augmented Collective Digital Twins for Self-Organising Cyber-Physical SystemsRoberto Casadei
Â
Context. Self-organising and collective computing
approaches are increasingly applied to large-scale cyber-physical
systems (CPS), enabling them to adapt and cooperate in dynamic
environments. Also, in CPS engineering, digital twins are often
leveraged to provide synchronised logical counterparts of physical
entities, whereas in sensor networks the different-but-related
concept of virtual device is used e.g. to abstract groups of sensors.
Vision. We envision the design concept of âaugmented collective
digital twinâ that captures digital twins at a collective level
extended with purely virtual devices. We argue that this concept
can foster the engineering of self-organising CPS by providing a
holistic, declarative, and integrated system view.
Method. From a review and proposed taxonomy of logical
devices comprehending both digital twins and virtual devices,
we reinterpret a meta-model for self-organising CPSs and discuss
how it can support augmented collective digital twins. We illus-
trate the approach in a crowd-aware navigation scenario, where
virtual devices are opportunistically integrated into the system
to enhance spatial coverage, improving navigation capabilities.
Conclusion. By integrating physical and virtual devices, the
novel notion of augmented collective digital twin paves the way
to self-improving system functionality and intelligent use of
resources in self-organising CPSs.
Doctoral Symposium ACSOS 2021: Research directions for Aggregate Computing wi...Gianluca Aguzzi
Â
Collective adaptive systems (CASs) are challenging from the engineering perspective. Different techniques aim at taming these systems, either using declarative or black-box approaches (e.g. Machine Learning, Evolutionary Algorithms, etc.).Among the many declarative approaches, Aggregate Computing is a novel technique by which developers can express collective system behaviours from a global perspective, using a compositional and functional programming technique. Over the years, Aggregate Computing has been applied in different scenarios, ranging from smart cities to a crowd of augmented people. Despite its promising capabilities, it is sometimes challenging to describe aggregate behaviours, so we aim at merging Aggregate Computing with black-box techniques to simplify the aggregate program synthesis
ADVANCED CIVIL ENGINEERING OPTIMIZATION BY ARTIFICIAL INTELLIGENT SYSTEMS: RE...Journal For Research
Â
Artificial intelligence is the ability of computer systems to perform tasks which otherwise need human brain. Those tasks include visual perception, decision-making, speech recognition and translation between languages. Large amount computing resources is required to traditionally design and optimize complex civil structure in traditional method. This can be effectively eased by using intelligent systems. This paper lists out some of the methods and theories in the application of artificial intelligent systems in the field of civil engineering.
ScaFi-Web, A Web-Based application for Field-based CoordinationGianluca Aguzzi
Â
Field-based coordination is a model for expressing the coordination logic of large-scale adaptive systems, composing functional
blocks from a global perspective. As for any coordination model, a proper toolchain must be developed to support its adoption across all development phases. Under this point of view, the ScaFi toolkit provides a coordination language (field calculus) as a DSL internal in the Scala
language, a library of reusable building blocks, and an infrastructure
for simulation of distributed deployments. In this work, we enrich such
a toolchain by introducing ScaFi-Web, a web-based application allowing in-browser editing, execution, and visualisation of ScaFi programs.
ScaFi-Web facilitates access to the ScaFi coordination technology by
flattening the learning curve and simplifying configuration and requirements, thus promoting agile prototyping of field-based coordination specifications. In turn, this opens the door to easier demonstrations and experimentation, and also constitutes a stepping stone towards monitoring
and control of simulated/deployed systems.
Repository: https://github.com/scafi/scafi-web
eCAS 2021: Towards Pulverised Architectures for Collective Adaptive Systems t...Gianluca Aguzzi
Â
Engineering large-scale Cyber-Physical Systemsâlike robot swarms, augmented crowds, and smart cities â is challenging, for many issues have to be addressed, including specifying their collective adaptive behaviour and managing the connection of the digital and physical parts. In particular, some approaches propose self-organising mechanisms to actually program global behaviour while fostering decentralised, asynchronous execution. However, most of these approaches couple behavioural specifications to specific network architectures (e.g.,peer-to-peer), and therefore do not promote flexible exploitation of the underlying infrastructure. Conversely, pulverisation is a recent approach that enables self-organising behaviour to be defined independently of the available infrastructure while retaining functional correctness. Currently, however, no tools are available to formally specify and verify concrete architectures for pulverised applications. Therefore, in this work we propose to combine pulverisation with multi-tier programming, a paradigm that supports the specification of the architecture of distributed systems in a single code base, and enables static checks for the correctness of actual deployments. The approach can be seamlessly implemented by combining the ScaFi aggregate computing tool-chain with the ScalaLoci multi-tier programming language, paving the path fora coherent support to the development of self-organising cyber-physical systems, addressing both functional (behaviour) and non-functional concerns (deployment) in a single code base and modular fashion.
6th eCAS workshop on Engineering Collective Adaptive SystemsRoberto Casadei
Â
This is the presentation introducing the 6th eCAS workshop on Engineering Collective Adaptive Systems. It recaps its scope, provides data regarding this edition, provides an overview of the program and related initiatives.
The University of Northampton- Science and Technology Research Conference 201...AmeerAlSadi
Â
Keywords:
SDN, Software-Defined Network, NFV, Network Function Virtualization.
The emergence of smart city concept increases the needs for updating the abilities of the traditional network (Loffreda, 2015). The network of smart cities requires updating its topology and services dynamically using management software automate this operation. In addition, it needs to run multiple logical networks over a single network infrastructure similarly to the data centres nowadays. The automation of dynamic behaviour achieves using a novel paradigm of the network that contains forwarding devices have a central management, called Software-Define Network (SDN). SDN provides faster, cheaper and more efficient network. In addition, it strongly supports Network Function Virtualization (NFV), which enables executing the network functions using the software component instead of physical devices (Foundation, 2015). Therefore, NFV enables to run multiple logical networks on the single physical network. Moreover, it enables faster deployment of new services or updates the old ones.
The aim of the research is to develop a management algorithm automates the dynamical adaptation for network topology in smart cities.
Augmented Collective Digital Twins for Self-Organising Cyber-Physical SystemsRoberto Casadei
Â
Context. Self-organising and collective computing
approaches are increasingly applied to large-scale cyber-physical
systems (CPS), enabling them to adapt and cooperate in dynamic
environments. Also, in CPS engineering, digital twins are often
leveraged to provide synchronised logical counterparts of physical
entities, whereas in sensor networks the different-but-related
concept of virtual device is used e.g. to abstract groups of sensors.
Vision. We envision the design concept of âaugmented collective
digital twinâ that captures digital twins at a collective level
extended with purely virtual devices. We argue that this concept
can foster the engineering of self-organising CPS by providing a
holistic, declarative, and integrated system view.
Method. From a review and proposed taxonomy of logical
devices comprehending both digital twins and virtual devices,
we reinterpret a meta-model for self-organising CPSs and discuss
how it can support augmented collective digital twins. We illus-
trate the approach in a crowd-aware navigation scenario, where
virtual devices are opportunistically integrated into the system
to enhance spatial coverage, improving navigation capabilities.
Conclusion. By integrating physical and virtual devices, the
novel notion of augmented collective digital twin paves the way
to self-improving system functionality and intelligent use of
resources in self-organising CPSs.
Doctoral Symposium ACSOS 2021: Research directions for Aggregate Computing wi...Gianluca Aguzzi
Â
Collective adaptive systems (CASs) are challenging from the engineering perspective. Different techniques aim at taming these systems, either using declarative or black-box approaches (e.g. Machine Learning, Evolutionary Algorithms, etc.).Among the many declarative approaches, Aggregate Computing is a novel technique by which developers can express collective system behaviours from a global perspective, using a compositional and functional programming technique. Over the years, Aggregate Computing has been applied in different scenarios, ranging from smart cities to a crowd of augmented people. Despite its promising capabilities, it is sometimes challenging to describe aggregate behaviours, so we aim at merging Aggregate Computing with black-box techniques to simplify the aggregate program synthesis
ADVANCED CIVIL ENGINEERING OPTIMIZATION BY ARTIFICIAL INTELLIGENT SYSTEMS: RE...Journal For Research
Â
Artificial intelligence is the ability of computer systems to perform tasks which otherwise need human brain. Those tasks include visual perception, decision-making, speech recognition and translation between languages. Large amount computing resources is required to traditionally design and optimize complex civil structure in traditional method. This can be effectively eased by using intelligent systems. This paper lists out some of the methods and theories in the application of artificial intelligent systems in the field of civil engineering.
ScaFi-Web, A Web-Based application for Field-based CoordinationGianluca Aguzzi
Â
Field-based coordination is a model for expressing the coordination logic of large-scale adaptive systems, composing functional
blocks from a global perspective. As for any coordination model, a proper toolchain must be developed to support its adoption across all development phases. Under this point of view, the ScaFi toolkit provides a coordination language (field calculus) as a DSL internal in the Scala
language, a library of reusable building blocks, and an infrastructure
for simulation of distributed deployments. In this work, we enrich such
a toolchain by introducing ScaFi-Web, a web-based application allowing in-browser editing, execution, and visualisation of ScaFi programs.
ScaFi-Web facilitates access to the ScaFi coordination technology by
flattening the learning curve and simplifying configuration and requirements, thus promoting agile prototyping of field-based coordination specifications. In turn, this opens the door to easier demonstrations and experimentation, and also constitutes a stepping stone towards monitoring
and control of simulated/deployed systems.
Repository: https://github.com/scafi/scafi-web
eCAS 2021: Towards Pulverised Architectures for Collective Adaptive Systems t...Gianluca Aguzzi
Â
Engineering large-scale Cyber-Physical Systemsâlike robot swarms, augmented crowds, and smart cities â is challenging, for many issues have to be addressed, including specifying their collective adaptive behaviour and managing the connection of the digital and physical parts. In particular, some approaches propose self-organising mechanisms to actually program global behaviour while fostering decentralised, asynchronous execution. However, most of these approaches couple behavioural specifications to specific network architectures (e.g.,peer-to-peer), and therefore do not promote flexible exploitation of the underlying infrastructure. Conversely, pulverisation is a recent approach that enables self-organising behaviour to be defined independently of the available infrastructure while retaining functional correctness. Currently, however, no tools are available to formally specify and verify concrete architectures for pulverised applications. Therefore, in this work we propose to combine pulverisation with multi-tier programming, a paradigm that supports the specification of the architecture of distributed systems in a single code base, and enables static checks for the correctness of actual deployments. The approach can be seamlessly implemented by combining the ScaFi aggregate computing tool-chain with the ScalaLoci multi-tier programming language, paving the path fora coherent support to the development of self-organising cyber-physical systems, addressing both functional (behaviour) and non-functional concerns (deployment) in a single code base and modular fashion.
SIT is proud to be part of the global movement in confronting COVID-19 by moving some SIT operations into an online format.
At the #SITinsights in Technology talk, weâre blending computing and economics, bringing knowledge and expertise from all relevant fields to help enable global efforts.
SIT is proud to be part of the global movement in confronting COVID-19 by moving some SIT operations into an online format.
At the #SITinsights in Technology talk, weâre blending computing and economics, bringing knowledge and expertise from all relevant fields to help enable global efforts.
In this presentation, I briefly show challenges, approaches and the state of the art of "Collective" Learning, namely where a large number of agents try to maximise a policy following a collective good.
Understanding everyday usersâ perception of socio-technical issues through s...Ahreum lee
Â
I gave a talk at ImagineXLab, Seoul, Korea.
In this presentation, I would like to share my recent works that have been explored sociotechnical issues through social media data.
1) /r/Assholedesign: Online conversation about ethical concerns (ACM DIS 20' Honorable Mention Award)
2) /r/Digitalnomad: Current tensions in community-based spaces (ACM CHI 2019 LBW, CSCW 2019)
3) /r/Purdue: Everyday usersâ perception of delivery robots on campus (ACM CSCW 2020 LBW)
My Search for Modular Electronics - Asaad KaadanAsaadkaadan
Â
My journey into the world of modular electronics and a sneak peak of my upcoming project Hexabitz -the world's first modular electronics platform that works for both prototyping and real-life applications- set to launch in Q2/Q3 of next year.
Artificial intelligence in civil engineering seminar reportDhanushS51
Â
Artificial intelligence is a branch of computer science, involved in the research,
design, and application of intelligent computer. Traditional methods for modeling
and optimizing complex structure systems require huge amounts of computing
resources, and artificial intelligence based solutions can often provide valuable
alternatives for efficiently solving problems in civil engineering. This seminar
summarizes recently developed methods and theories in the developing direction for
applications of artificial intelligence in civil engineering. The field of artificial
intelligence, or AI, attempts to understand intelligent entities as well as construct
them to make the operation reasonably simple and easy, correct and precise.
Artificial neural networks are typical examples of a modern interdisciplinary
subject. Sophisticated modeling technique that can be used for solving many
complex problems serves as an analytical tool for qualified prognoses of the results.
Using the concept of the artificial neural networks and the results of the performed
numerical analyses make the field of civil engineering more accurate, precise and
efficient especially in the fields of smart materials and many more.
Artificial Intelligence Explained: What Are Generative Adversarial Networks (...Bernard Marr
Â
There are many new developments in the field of artificial intelligence, and one of the most exciting and transformative ideas are Generative Adversarial Networks (GANs). Here we explain in simple terms what they are.
Collective Abstractions and Platforms for Large-Scale Self-Adaptive IoTRoberto Casadei
Â
On the way to the materialisation of the pervasive computing vision, the technological progress swelling from mobile computing and the Internet of Things (IoT) domain is already rich of missed opportunities. Firstly, coordinating large numbers of heterogeneous situated entities to achieve system-level goals in a resilient and self-adaptive way is complex and requires novel approaches to be seamlessly injected into mainstream distributed computing models. Secondly, achieving effective exploitation of computer resources is difficult, due to operational constraints resulting from current paradigms and uncomprehensive software infrastructures which hinder flexibility, adaptation, and smooth coordination of computational tasks execution. Indeed, building dynamic, context-oriented applications in small- or large-scale IoT with traditional abstractions is hard: even harder is to achieve opportunistic, QoS- and QoE-driven application task management across available hardware and networking infras- tructure. In this insight paper, we analyse by the collective adap- tation perspective the key directions of the impelling paradigm shift urged by forthcoming large-scale IoT scenarios. Specifically, we consider how collective abstractions and platforms can syner- gistically assist in such a transformation, by better capturing and enacting a notion of âcollective serviceâ as well as the dynamic, opportunistic, and context-driven traits of space-time-situated computations.
Aggregate computing is a research topic that is addressed by multiple perspectives: computational models, programming languages, distributed adaptive algorithms, middleware architectures, formal analysis, tools.
Programming (and Learning) Self-Adaptive & Self-Organising Behaviour with Sca...Roberto Casadei
Â
Large-scale and fully distributed cyber-physical sys-
tems (CPS), such as swarm robotics or IoT systems, pose
significant challenges for programming and design. These chal-
lenges include promoting the desired (emergent) collective and
self-organising behaviour, dealing with failures, enacting decen-
tralised coordination, and deploying efficient executions. Aggre-
gate computing is a promising approach that aims to simplify
the design of such systems by providing a high-level abstraction
for describing collective and self-organising behaviours. In this
tutorial, we introduce a toolchain that supports the development
of aggregate computing applications, based on ScaFi (a Scala-
based language and toolkit for aggregate computing) and Al-
chemist (a simulator for CPS scenarios). We will showcase the
toolchain by means of a series of examples, ranging from simple
collective behaviours to more complex self-adaptive and self-
organising ones. Finally, we provide several pointers to research
opportunities (e.g., related to learning collective behaviours
and adaptive large-scale deployments) and applications (e.g., in
swarm robotics, edge-cloud ecosystems, and more).
Towards Automated Engineering for Collective Adaptive Systems: Vision and Res...Roberto Casadei
Â
The opportunities and challenges of recent and
forthcoming distributed computing scenarios have been promot-
ing research on languages and paradigms aimed at modelling the
macro/collective behaviour of systems as well as mechanisms to
endow them with self-* capabilities. One example is the aggregate
computing paradigm, which supports the development of self-
organising systems (e.g., robot swarms, computational ecosys-
tems, and crowd-based services) through various formalisms and
tools developed over a decade. However, very limited work has
been done by a methodological and automation perspective. In
this paper, we explore the issue of organising the development
process of aggregate computing systems. Accordingly, we outline
novel research directions that arise from careful analysis of
the peculiar issues in collective and self-organising systems, the
cornerstones of effective software engineering practices, and
recent scientific trends and insights.
Coordinating Computation at the Edge: a Decentralized, Self-organizing, Spati...Roberto Casadei
Â
Presentation of a paper accepted at the 4th Internetional Conference on Fog and Mobile Edge Computing (FMEC).
It discusses a decentralised, self-organising, spatial, collective approach to the development of edge-clouds/edge computing ecosystems.
Digital Twins, Virtual Devices, and Augmentations for Self-Organising Cyber-P...Roberto Casadei
Â
The engineering of large-scale cyber-physical systems (CPS) increasingly relies on principles from self-organisation and collective computing, enabling these systems to cooperate and adapt in dynamic environments. CPS engineering also often leverages digital twins that provide synchronised logical counterparts of physical entities. In contrast, sensor networks rely on the different but related concept of virtual device that provides an abstraction of a group of sensors. In this work, we study how such concepts can contribute to the engineering of self-organising CPSs. To that end, we analyse the concepts and devise modelling constructs, distinguishing between identity correspondence and execution relationships. Based on this analysis, we then contribute to the novel concept of âcollective digital twinâ (CDT) that captures the logical counterpart of a collection of physical devices. A CDT can also be âaugmentedâ with purely virtual devices, which may be exploited to steer the self-organisation process of the CDT and its physical counterpart. We underpin the novel concept with experiments in the context of the pulverisation framework of aggregate computing, showing how augmented CDTs provide a holistic, modular, and cyber-physically integrated system view that can foster the engineering of self-organising CPSs.
Ph.D. Thesis: A Methodology for the Development of Autonomic and Cognitive In...Universita della Calabria,
Â
Doctoral Defence in ICT (UniversitĂ della Calabria, Italy). Ph.D. candidate Claudio Savaglio. Thesis title: A Methodology for the Development of Autonomic and Cognitive Internet of Things Ecosystems.
Information Technology in Industry(ITII) - November Issue 2018ITIIIndustries
Â
IT Industry publishes original research articles, review articles, and extended versions of conference papers. Articles resulting from research of both theoretical and/or practical natures performed by academics and/or industry practitioners are welcome. IT in Industry aims to become a leading IT journal with a high impact factor.
SIT is proud to be part of the global movement in confronting COVID-19 by moving some SIT operations into an online format.
At the #SITinsights in Technology talk, weâre blending computing and economics, bringing knowledge and expertise from all relevant fields to help enable global efforts.
SIT is proud to be part of the global movement in confronting COVID-19 by moving some SIT operations into an online format.
At the #SITinsights in Technology talk, weâre blending computing and economics, bringing knowledge and expertise from all relevant fields to help enable global efforts.
In this presentation, I briefly show challenges, approaches and the state of the art of "Collective" Learning, namely where a large number of agents try to maximise a policy following a collective good.
Understanding everyday usersâ perception of socio-technical issues through s...Ahreum lee
Â
I gave a talk at ImagineXLab, Seoul, Korea.
In this presentation, I would like to share my recent works that have been explored sociotechnical issues through social media data.
1) /r/Assholedesign: Online conversation about ethical concerns (ACM DIS 20' Honorable Mention Award)
2) /r/Digitalnomad: Current tensions in community-based spaces (ACM CHI 2019 LBW, CSCW 2019)
3) /r/Purdue: Everyday usersâ perception of delivery robots on campus (ACM CSCW 2020 LBW)
My Search for Modular Electronics - Asaad KaadanAsaadkaadan
Â
My journey into the world of modular electronics and a sneak peak of my upcoming project Hexabitz -the world's first modular electronics platform that works for both prototyping and real-life applications- set to launch in Q2/Q3 of next year.
Artificial intelligence in civil engineering seminar reportDhanushS51
Â
Artificial intelligence is a branch of computer science, involved in the research,
design, and application of intelligent computer. Traditional methods for modeling
and optimizing complex structure systems require huge amounts of computing
resources, and artificial intelligence based solutions can often provide valuable
alternatives for efficiently solving problems in civil engineering. This seminar
summarizes recently developed methods and theories in the developing direction for
applications of artificial intelligence in civil engineering. The field of artificial
intelligence, or AI, attempts to understand intelligent entities as well as construct
them to make the operation reasonably simple and easy, correct and precise.
Artificial neural networks are typical examples of a modern interdisciplinary
subject. Sophisticated modeling technique that can be used for solving many
complex problems serves as an analytical tool for qualified prognoses of the results.
Using the concept of the artificial neural networks and the results of the performed
numerical analyses make the field of civil engineering more accurate, precise and
efficient especially in the fields of smart materials and many more.
Artificial Intelligence Explained: What Are Generative Adversarial Networks (...Bernard Marr
Â
There are many new developments in the field of artificial intelligence, and one of the most exciting and transformative ideas are Generative Adversarial Networks (GANs). Here we explain in simple terms what they are.
Collective Abstractions and Platforms for Large-Scale Self-Adaptive IoTRoberto Casadei
Â
On the way to the materialisation of the pervasive computing vision, the technological progress swelling from mobile computing and the Internet of Things (IoT) domain is already rich of missed opportunities. Firstly, coordinating large numbers of heterogeneous situated entities to achieve system-level goals in a resilient and self-adaptive way is complex and requires novel approaches to be seamlessly injected into mainstream distributed computing models. Secondly, achieving effective exploitation of computer resources is difficult, due to operational constraints resulting from current paradigms and uncomprehensive software infrastructures which hinder flexibility, adaptation, and smooth coordination of computational tasks execution. Indeed, building dynamic, context-oriented applications in small- or large-scale IoT with traditional abstractions is hard: even harder is to achieve opportunistic, QoS- and QoE-driven application task management across available hardware and networking infras- tructure. In this insight paper, we analyse by the collective adap- tation perspective the key directions of the impelling paradigm shift urged by forthcoming large-scale IoT scenarios. Specifically, we consider how collective abstractions and platforms can syner- gistically assist in such a transformation, by better capturing and enacting a notion of âcollective serviceâ as well as the dynamic, opportunistic, and context-driven traits of space-time-situated computations.
Aggregate computing is a research topic that is addressed by multiple perspectives: computational models, programming languages, distributed adaptive algorithms, middleware architectures, formal analysis, tools.
Programming (and Learning) Self-Adaptive & Self-Organising Behaviour with Sca...Roberto Casadei
Â
Large-scale and fully distributed cyber-physical sys-
tems (CPS), such as swarm robotics or IoT systems, pose
significant challenges for programming and design. These chal-
lenges include promoting the desired (emergent) collective and
self-organising behaviour, dealing with failures, enacting decen-
tralised coordination, and deploying efficient executions. Aggre-
gate computing is a promising approach that aims to simplify
the design of such systems by providing a high-level abstraction
for describing collective and self-organising behaviours. In this
tutorial, we introduce a toolchain that supports the development
of aggregate computing applications, based on ScaFi (a Scala-
based language and toolkit for aggregate computing) and Al-
chemist (a simulator for CPS scenarios). We will showcase the
toolchain by means of a series of examples, ranging from simple
collective behaviours to more complex self-adaptive and self-
organising ones. Finally, we provide several pointers to research
opportunities (e.g., related to learning collective behaviours
and adaptive large-scale deployments) and applications (e.g., in
swarm robotics, edge-cloud ecosystems, and more).
Towards Automated Engineering for Collective Adaptive Systems: Vision and Res...Roberto Casadei
Â
The opportunities and challenges of recent and
forthcoming distributed computing scenarios have been promot-
ing research on languages and paradigms aimed at modelling the
macro/collective behaviour of systems as well as mechanisms to
endow them with self-* capabilities. One example is the aggregate
computing paradigm, which supports the development of self-
organising systems (e.g., robot swarms, computational ecosys-
tems, and crowd-based services) through various formalisms and
tools developed over a decade. However, very limited work has
been done by a methodological and automation perspective. In
this paper, we explore the issue of organising the development
process of aggregate computing systems. Accordingly, we outline
novel research directions that arise from careful analysis of
the peculiar issues in collective and self-organising systems, the
cornerstones of effective software engineering practices, and
recent scientific trends and insights.
Coordinating Computation at the Edge: a Decentralized, Self-organizing, Spati...Roberto Casadei
Â
Presentation of a paper accepted at the 4th Internetional Conference on Fog and Mobile Edge Computing (FMEC).
It discusses a decentralised, self-organising, spatial, collective approach to the development of edge-clouds/edge computing ecosystems.
Digital Twins, Virtual Devices, and Augmentations for Self-Organising Cyber-P...Roberto Casadei
Â
The engineering of large-scale cyber-physical systems (CPS) increasingly relies on principles from self-organisation and collective computing, enabling these systems to cooperate and adapt in dynamic environments. CPS engineering also often leverages digital twins that provide synchronised logical counterparts of physical entities. In contrast, sensor networks rely on the different but related concept of virtual device that provides an abstraction of a group of sensors. In this work, we study how such concepts can contribute to the engineering of self-organising CPSs. To that end, we analyse the concepts and devise modelling constructs, distinguishing between identity correspondence and execution relationships. Based on this analysis, we then contribute to the novel concept of âcollective digital twinâ (CDT) that captures the logical counterpart of a collection of physical devices. A CDT can also be âaugmentedâ with purely virtual devices, which may be exploited to steer the self-organisation process of the CDT and its physical counterpart. We underpin the novel concept with experiments in the context of the pulverisation framework of aggregate computing, showing how augmented CDTs provide a holistic, modular, and cyber-physically integrated system view that can foster the engineering of self-organising CPSs.
Ph.D. Thesis: A Methodology for the Development of Autonomic and Cognitive In...Universita della Calabria,
Â
Doctoral Defence in ICT (UniversitĂ della Calabria, Italy). Ph.D. candidate Claudio Savaglio. Thesis title: A Methodology for the Development of Autonomic and Cognitive Internet of Things Ecosystems.
Information Technology in Industry(ITII) - November Issue 2018ITIIIndustries
Â
IT Industry publishes original research articles, review articles, and extended versions of conference papers. Articles resulting from research of both theoretical and/or practical natures performed by academics and/or industry practitioners are welcome. IT in Industry aims to become a leading IT journal with a high impact factor.
Collective Adaptive Systems as Coordination Media: The Case of Tuples in Spac...Roberto Casadei
Â
Coordination is a fundamental problem in the
engineering of collective adaptive systems (CAS). Prominent
approaches in this context promote adaptivity and collective
behaviour by founding coordination on local, decentralised in-
teraction. This is usually enabled through abstractions such as
collective interfaces, neighbour-based interaction, and attribute-
based communication. Application designers, then, use such
coordination mechanisms to enact collective adaptive behaviour
in order to solve specific problems or provide specific services
while coping with dynamic environments. In this paper, we
consider the other way round: we argue that a CAS model can
be used to provide support for high-level coordination models,
simplifying their implementation and transferring to them the
self-* properties it emergently fosters. As a motivating example,
we consider the idea of supporting tuple-based coordination by
Linda primitives such that tuples and operations have a position
and extension in space and time. Then, we adopt an aggregate
perspective, by which space-time is logically represented by a
mobile ad-hoc network of devices, and show that coordination
primitives can be implemented as true collective adaptive pro-
cesses. We describe this model and a prototype implementation
in the ScaFi aggregate programming framework, which is rooted
in the so-called computational field paradigm.
Towards XMAS: eXplainability through Multi-Agent SystemsGiovanni Ciatto
Â
In the context of the Internet of Things (IoT), intelligent systems (IS) are increasingly relying on Machine Learning (ML) techniques. Given the opaqueness of most ML techniques, however, humans have to rely on their intuition to fully understand the IS outcomes: helping them is the target of eXplainable Artificial Intelligence (XAI). Current solutions â mostly too specific, and simply aimed at making ML easier to interpret â cannot satisfy the needs of IoT, characterised by heterogeneous stimuli, devices, and data-types concurring in the composition of complex information structures. Moreover, Multi-Agent Systems (MAS) achievements and advancements are most often ignored, even when they could bring about key features like explainability and trustworthiness. Accordingly, in this paper we (i) elicit and discuss the most significant issues affecting modern IS, and (ii) devise the main elements and related interconnections paving the way towards reconciling interpretable and explainable IS using MAS.
Compositional Blocks for Optimal Self-Healing GradientsRoberto Casadei
Â
This papers revises the state-of-art in gradient computations, provides an evaluation of the performance of different gradient algorithms, presents a new algorithm with multi-path speed optimality, and shows how different techniques and algorithms can be used together to come up with a new optimal gradient implementation.
Presentation made for the event "Digital transformation in France and Germany: Consequences for industry, society & higher education" organized by the French-German University in cooperation with Institut Mines-TĂŠlĂŠcom https://www.dfh-ufa.org/fr/digital-transformation-in-france-and-germany/
Introduction to the 1st DISCOLI workshop on distributed collective intelligenceRoberto Casadei
Â
The 1st DISCOLI workshop on DIStributed COLlective Intelligence is co-located with the 42nd IEEE International Conference on Distributed Computing Systems (ICDCS 2022) that will take place in Bologna, Italy, 10-13 July 2022.
Recent technological and scientific trends are promoting a vision where intelligence is more and more distributed and collective. Indeed, as computing and communication technologies are becoming increasingly pervasive, and complexity of systems is growing in terms of scale, heterogeneity, and interaction, hence the focus tends to shift from the intelligence of individual devices or agents to the collective intelligence (CI) emerging from a dynamic collection of diverse devices. Such intelligence would allow systems to address complex problems through proper coordination (e.g., cooperation or competition), to self-organise to promote functionality under changing environments, and to improve decision-making capabilities.
The workshop aims to provide a forum where researchers and practitioners can share and discuss fundamental concepts, models, and techniques for studying and implementing collectively intelligent distributed systems. Accordingly, it welcomes original research work providing ideas and technical contributions for promoting scientific discussion and practical adoption of CI mechanisms in engineered systems. As such, the workshop also welcomes cross-disciplinary contributions (e.g., extracting computational mechanisms from natural systems exhibiting forms of CI) and contributions from related research areas like coordination (the study of interaction), multi-agent systems (MAS), socio-technical systems, organisational paradigms, Wireless Sensor and Actuator Networks (WSANs), the Internet of Things (IoT), crowd computing, and swarm robotics.
The topics of interest include (but are not limited to) the following:
Algorithms for self-adaptive/self-organizing system behaviour
Algorithms of artificial collective intelligence (e.g., multi-agent reinforcement learning)
Techniques for task-specific collective intelligence
Extraction of collective knowledge in Internet of Things systems
Collaborations of humans and artificial agents in socio-technical systems
Formal models for computational collective intelligence
Design and verification of emergent properties in distributed systems
Coordination models and languages
Programming languages for distributed CI systems
Languages for multi-tier programming or macro-programming
CI for distributed wearable computing systems
Techniques for crowd computing systems and applications
Applications of distributed CI for smart environments (e.g., smart cities, smart buildings)
Tools for programming and simulation of multi-agent systems
Fog Computing â between IoT Devices and The Cloud presentation covers following topics:
- Edge, Fog, Mist & Cloud Computing
- Fog domains and fog federation, wireless sensor networks, - multi-layer IoT architecture
- Fog computing standards and specifications
- Practical use-case scenarios & advantages of fog
- Fog analytics and intelligence on the edge
- Technologies for distributed asynchronous event processing - and analytics in real time
- Lambda architecture â Spark, Storm, Kafka, Apex, Beam, Spring - Reactor & WebFlux
- Eclipse IoT platform
Programming Distributed Collective Processes for Dynamic Ensembles and Collec...Roberto Casadei
Â
Recent trends like the Internet of Things (IoT) suggest a vi-
sion of dense and multi-scale deployments of computing devices in nearly
all kinds of environments. A prominent engineering challenge revolves
around programming the collective adaptive behaviour of such compu-
tational ecosystems. This requires abstractions able to capture concepts
like ensembles (dynamic groups of cooperating devices) and collective
tasks (joint activities carried out by ensembles). In this work, we con-
sider collections of devices interacting with neighbours and that execute
in nearly-synchronised senseâcomputeâinteract rounds, where the com-
putation is given by a single control program. To support programming
whole computational collectives, we propose the abstraction of a dis-
tributed collective process (DCP), which can be used to define at once
the ensemble formation logic and its collective task. We implement the
abstraction in the eXchange Calculus (XC), a core language based on
neighbouring values (maps from neighbours to values) where state man-
agement and interaction is handled through a single primitive, exchange.
Then, we discuss the features of the abstraction, its suitability for differ-
ent kinds of distributed computing applications, and provide a proof-of-
concept implementation of a wave-like process propagation.
Edge computing brings cloud services closer to the edge of the network, where data originates, and dramatically reduces the network latency of the cloud. It is a bridge linking clouds and users making the foundation for novel interconnected applications. However, edge computing still faces many challenges like remote configuration, well-defined native applications model, and limited node capacity. It lacks geo-organization and a clear separation of concerns. As such edge computing is hard to be offered as a service for future real-time user-centric applications. This paper presents the dynamic organization of geo-distributed edge nodes into micro data-centers to cover any arbitrary area and expand capacity, availability, and reliability. A cloud organization is used as an influence with adaptations for a different environment, and a model for edge applications utilizing these adaptations is presented. It is argued that the presented model can be integrated into existing solutions or used as a base for the development of future systems. Furthermore, a clear separation of concerns is given for the proposed model. With the separation of concerns setup, edge-native applications model, and a unified node organization, we are moving towards the idea of edge computing as a service, like any other utility in cloud computing.
Self-Organisation Programming: a Functional Reactive Macro Approach (FRASP) [...Roberto Casadei
Â
Engineering self-organising systems â e.g., robot
swarms, collectives of wearables, or distributed infrastructures
â has been investigated and addressed through various kinds
of approaches: devising algorithms by taking inspiration from
nature, relying on design patterns, using learning to synthesise
behaviour from expectations of emergent behaviour, and exposing
key mechanisms and abstractions at the level of a programming
language. Focussing on the latter approach, most of the state-
of-the-art languages for self-organisation leverage a round-based
execution model, where devices repeatedly evaluate their context
and control program fully: this model is simple to reason about
but limited in terms of flexibility and fine-grained management
of sub-activities. By inspiration from the so-called functional
reactive paradigm, in this paper we propose a reactive self-
organisation programming approach that enables to fully decouple
the program logic from the scheduling of its sub-activities.
Specifically, we implement the idea through a functional reactive
implementation of aggregate programming in Scala, based on
the functional reactive library Sodium. The result is a functional
reactive self-organisation programming model, called FRASP,
that maintains the same expressiveness and benefits of aggregate
programming, while enabling significant improvements in terms
of scheduling controllability, flexibility in the sensing/actuation
model, and execution efficiency.
FScaFi: A Core Calculus for Collective Adaptive Systems ProgrammingRoberto Casadei
Â
A recently proposed approach to the rigorous engineering of collective adaptive systems is the aggregate computing paradigm, which operationalises the idea of expressing collective adaptive behaviour by a global perspective as a functional composition of dynamic computational fields (i.e., structures mapping a collection of individual devices of a collective to computational values over time). In this paper, we present FScaFi, a core language that captures the essence of exploiting field computations in mainstream functional languages, and which is based on a semantic model for field computations leveraging the novel notion of âcomputation against a neighbourâ. Such a construct models expressions whose evaluation depends on the same evaluation that occurred on a neighbour, thus abstracting communication actions and, crucially, enabling deep and straightforward integration in the Scala programming language, by the ScaFi incarnation. We cover syntax and informal semantics of FScaFi, provide examples of collective adaptive behaviour development in ScaFi, and delineate future work.
Tuple-Based Coordination in Large-Scale Situated SystemsRoberto Casadei
Â
Space and time are key elements for many computer-based systems and often elevated to first-class abstractions. In tuple-based coordination, Linda primitives have been independently extended with space (with tuples and queries spanning spatial regions) or time information (mostly for tuple scoping). However, recent works in collective adaptive systems and aggregate computing show that space and time can naturally be considered as two intertwined facets of a common coordination abstraction for situated distributed systems. Accordingly, we introduce the Spatiotemporal Tuples model, a natural adaptation of Linda model for physically deployed large-scale networks. Unlike prior research, spatiotemporal properties â expressing where and when a tuple should range and has to be deposited/retrieved â naturally turn into specifications of collective adaptive processes, to be carried on in cooperation by the devices filling the computational environment, and sustaining tuple operations in a resilient way, possibly even in mobile and faulty environments. Additionally, the model promotes decentralised implementations where tuples actually reside where they are issued, which is good for supporting peer-to-peer and mobile ad-hoc networks as well as privacy. In this paper, we (i) present and formalise the Spatiotemporal Tuples model, based on the unifying notion of computational space-time structure, (ii) provide an implementation in the ScaFi aggregate computing framework, turning tuple operations into aggregate processes, and finally (iii) provide evaluation through simulation and a rescue case study.
Testing: an Introduction and Panorama
- what testing is
- perspectives on testing
- xUnit, TDD, acceptance testing
- pointers to more stuff about testing
On Context-Orientation in Aggregate ProgrammingRoberto Casadei
Â
Context-awareness plays a central role in self-
adaptive software. By a programming perspective, context is
often used implicitly, and context-aware code is fragmented
in the codebase. In Context-Oriented Programming, instead,
context is considered a first-class citizen and is explicitly used
to modularise context-sensitive functionality and behavioural
variability. In this paper, we reflect on the role of context in
collective adaptive systems, by a discussion from the special
perspective of a macro paradigm, Aggregate Programming,
which supports the specification of collective behaviour by a
global perspective through functional compositions of field com-
putations. In particular, we consider the abstractions exposed in
Context-Oriented and Aggregate Programming, suggest potential
synergies in both directions, and accordingly take the first steps
towards a combined design.
Engineering distributed applications and services in emerg-
ing and open computing scenarios like the Internet of Things, cyber-physical systems and pervasive computing, calls for identifying proper abstractions to smoothly capture collective behaviour, adaptivity, and dynamic injection and execution of concurrent distributed activities. Accordingly, we introduce a notion of âaggregate processâ as a concurrent
field computation whose execution and interactions are sustained by a dynamic team of devices, and whose spatial region can opportunistically vary over time. We formalise this notion by extending the Field Calculus with a new primitive construct, spawn, used to instantiate a set of field
computations and regulate key aspects of their life-cycle. By virtue of an open-source implementation in the ScaFi framework, we show basic programming examples and benefits via two case studies of mobile ad-hoc networks and drone swarm scenarios, evaluated by simulation.
Brief overview of the Rust system programming language. Provides a concise introduction of its basic features, with an emphasis on its memory safety features (ownership, moves, borrowing) and programming style with generic functions, structures, and traits.
A Programming Framework for Collective Adaptive EcosystemsRoberto Casadei
Â
On the thrust of recent technological trends, we can
envision a future where dense ecosystems of digitally empowered devices
continuously adapt and operate in our environments to provide services
both to humans and other systems. To achieve that, we arguably need to
move beyond what an individual device can provide and rather focus on
what collectives of devices can offer as a system. Aggregate Computing
is a recent, promising framework generalising over spatial computing
approaches that supports the development of collective adaptive systems
by global specifications. It builds on the framework of the field
calculus to bridge the local and global perspectives, express
collective computations in a compositional way, and formally analyse
them to derive guarantees.
In this presentation, we describe the key concepts and results, take a
look at the practical support for Aggregate Computing on the JVM
provided by scafi, and consider the main research directions on the topic.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Â
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
Dev Dives: Train smarter, not harder â active learning and UiPath LLMs for do...UiPathCommunity
Â
đĽ Speed, accuracy, and scaling â discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Miningâ˘:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing â with little to no training required
Get an exclusive demo of the new family of UiPath LLMs â GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
đ¨âđŤ Andras Palfi, Senior Product Manager, UiPath
đŠâđŤ Lenka Dulovicova, Product Program Manager, UiPath
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Â
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overviewâ
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
Â
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
Â
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
⢠The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
⢠Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
⢠Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
⢠Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Â
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Â
Clients donât know what they donât know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clientsâ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Â
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as âpredictable inferenceâ.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
DevOps and Testing slides at DASA ConnectKari Kakkonen
Â
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Â
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
8. problem
development of
collaborative IoT/Edge systems
in dynamic, open environments
scale
dynamicity, failure
R. Casadei Introduction and Motivation Background Contribution Wrap-up 6/29
9. problem
development of
collaborative IoT/Edge systems
in dynamic, open environments
scale
dynamicity, failure
no global connectivity
R. Casadei Introduction and Motivation Background Contribution Wrap-up 6/29
10. problem
development of
collaborative IoT/Edge systems
in dynamic, open environments
scale
dynamicity, failure
no global connectivity
collaboration
R. Casadei Introduction and Motivation Background Contribution Wrap-up 6/29
11. Outline
1 Introduction and Motivation
2 Background: Aggregate Computing
3 Contribution
4 Wrap-up
R. Casadei Introduction and Motivation Background Contribution Wrap-up 7/29
12. Aggregate Computing12
paradigm for Collective Adaptive Systems (CASs)
macro approach (global perspective)
formally founded (computational ďŹeld calculus)
1Jacob Beal, Danilo Pianini, and Mirko Viroli. âAggregate Programming for the Internet of Thingsâ. In:
IEEE Computer (2015) [ieeecom]
2Mirko Viroli, Jacob Beal, et al. âFrom Field-Based Coordination to Aggregate Computingâ. In: Int. Conf.
on Coordination Languages and Models. Springer. 2018 [coord18a]
R. Casadei Introduction and Motivation Background Contribution Wrap-up 8/29
13. sensors
local functions
actuators
Application
Code
Developer
APIs
Field Calculus
Constructs
Resilient
Coordination
Operators
Device
Capabilities
functions repnbr
TGCfunctions
communication state
PerceptionPerception
summarize
average
regionMax
âŚ
ActionAction StateState
Collective BehaviorCollective Behavior
distanceTo
broadcast
partition
âŚ
timer
lowpass
recentTrue
âŚ
collectivePerception
collectiveSummary
managementRegions
âŚ
Crowd ManagementCrowd Management
dangerousDensity crowdTracking
crowdWarning safeDispersal
restriction
selfÂstabilisation
R. Casadei Introduction and Motivation Background Contribution Wrap-up 9/29
14. structure (logical)
devices (individual elements of an aggregate)
neighbouring relationship (by networking or spatial)
R. Casadei Introduction and Motivation Background Contribution Wrap-up 10/29
15. structure (logical)
devices (individual elements of an aggregate)
neighbouring relationship (by networking or spatial)
behaviour (execution protocol)
async rounds of computation
1) full run of âaggregate programâ against âlocal contextâ
device state
sensor readings
neighbourhood coordination data
2) broadcast coordination data to neighbours
R. Casadei Introduction and Motivation Background Contribution Wrap-up 10/29
19. nice things about aggregate
computing 3
predictable composition of emergent behaviour 4
declarativity 5
ďŹexibility in execution
formal properties: self-stabiliz. 6
, eventual consistency 7
practical (see PLs/tools like ScaFi 8
)
3Mirko Viroli, Jacob Beal, et al. âFrom Field-Based Coordination to Aggregate Computingâ. In: Int. Conf. on
Coordination Languages and Models. Springer. 2018 [coord18a]
4Giorgio Audrito, Mirko Viroli, et al. âA Higher-Order Calculus of Computational Fieldsâ. In: ACM Transactions on
Computational Logic 1 (Jan. 2019) [tocl19Aud]
5Mirko Viroli, Roberto Casadei, and Danilo Pianini. âOn execution platforms for large-scale aggregate computingâ. In:
UbiComp, Proceedings of. ACM. 2016 [ubicomp16Vir]
6Mirko Viroli, Giorgio Audrito, et al. âEngineering Resilient Collective Adaptive Systems by Self-Stabilisationâ. In: ACM
Transactions on Modeling and Computer Simulation 2 (2018) [tomacs18Vir]
7Jacob Beal, Mirko Viroli, et al. âSelf-adaptation to device distribution in the Internet of Thingsâ. In: ACM Transactions
on Autonomous and Adaptive Systems (TAAS) 3 (2017) [taas17]
8Roberto Casadei, Danilo Pianini, and Mirko Viroli. âSimulating large-scale aggregate MASs with Alchemist and
Scalaâ. In: FedCSIS, Proceedings of. IEEE. 2016 [fedcsis16Cas]
R. Casadei Introduction and Motivation Background Contribution Wrap-up 12/29
20. Outline
1 Introduction and Motivation
2 Background: Aggregate Computing
3 Contribution
4 Wrap-up
R. Casadei Introduction and Motivation Background Contribution Wrap-up 13/29
21. problem
development of
collaborative IoT/Edge systems
in dynamic, open environments
scale
dynamicity, failure
no global connectivity
collaboration
R. Casadei Introduction and Motivation Background Contribution Wrap-up 14/29
22. problem
development of
collaborative IoT/Edge systems
in dynamic, open environments
scale decentralised coordination
dynamicity, failure
no global connectivity
collaboration
R. Casadei Introduction and Motivation Background Contribution Wrap-up 14/29
23. problem
development of
collaborative IoT/Edge systems
in dynamic, open environments
scale decentralised coordination
dynamicity, failure self-* capabilities
no global connectivity
collaboration
R. Casadei Introduction and Motivation Background Contribution Wrap-up 14/29
24. problem
development of
collaborative IoT/Edge systems
in dynamic, open environments
scale decentralised coordination
dynamicity, failure self-* capabilities
no global connectivity neighbour-based comm.
collaboration
R. Casadei Introduction and Motivation Background Contribution Wrap-up 14/29
25. problem
development of
collaborative IoT/Edge systems
in dynamic, open environments
scale decentralised coordination
dynamicity, failure self-* capabilities
no global connectivity neighbour-based comm.
collaboration collective behaviour
R. Casadei Introduction and Motivation Background Contribution Wrap-up 14/29
26. problem
development of
collaborative IoT/Edge systems
in dynamic, open environments
scale decentralised coordination
dynamicity, failure self-* capabilities
no global connectivity neighbour-based comm.
collaboration collective behaviour
IoT/Edge system as a CAS
R. Casadei Introduction and Motivation Background Contribution Wrap-up 14/29
27. approach overview
customisable collaboration process
System Concern
Sensing
ResilientCollaborativeEdge-EnabledIoT
EdgeGoalsIoTDevices-Environment
Device
Sensor
Edge
System Concern
Actuation
System Concern
Communication
âŚ
System Concern
Coordination
Aggregate Computing Constructs
Global System SpeciďŹcation
Device
Human
Design Time
Runtime
Robot
Edge
R. Casadei Introduction and Motivation Background Contribution Wrap-up 15/29
30. problem model
environment
situated devices (coordinators or workers/users)
â static or mobile
â resource-constrained (IoT) or powerful (edge/fog)
â sensors and actuators
R. Casadei Introduction and Motivation Background Contribution Wrap-up 16/29
31. problem model
environment
situated devices (coordinators or workers/users)
â static or mobile
â resource-constrained (IoT) or powerful (edge/fog)
â sensors and actuators
how to coordinate activity and
decision making?
how much locality and globality?
R. Casadei Introduction and Motivation Background Contribution Wrap-up 16/29
38. combining various SASOp patterns
decentralised, self-healing gradient 9
decentralised, self-healing leader election 10
information ďŹows and feedback loops 11
â information spreading 12
â information collection 13
9Giorgio Audrito, Roberto Casadei, et al. âCompositional blocks for optimal self-healing gradientsâ. In: Conf. on
Self-Adaptive and Self-Organizing Systems (SASO). IEEE. 2017 [saso17Aud]
10Yuanqiu Mo, Jacob Beal, and Soura Dasgupta. âAn Aggregate Computing Approach to Self-Stabilizing Leader
Electionâ. In: Workshops on Foundations & Applications of Self* Systems (FAS*W). IEEE. 2018 [ecas18Mo]
11Tom De Wolf and Tom Holvoet. âDesigning self-organising emergent systems based on information ďŹows and
feedback-loopsâ. In: Self-Adaptive and Self-Organizing Systems, 2007. SASOâ07. 1st Conf. on. IEEE. 2007 [saso07DeW]
12Yuanqiu Mo, Soura Dasgupta, and Jacob Beal. âRobust Stability of Spreading Blocks in Aggregate Computingâ. In:
2018 IEEE Conference on Decision and Control (CDC). IEEE. 2018 [cdc18Mo]
13Giorgio Audrito, Sergio Bergamini, et al. âEffective Collective Summarisation of Distributed Data in Mobile Multi-Agent
Systemsâ. In: 18th International Conference on Autonomous Agents and MultiAgent Systems. ACM. 2019 [aamas19Aud]
R. Casadei Introduction and Motivation Background Contribution Wrap-up 18/29
40. toolchain and simulation framework
ScaFi: Aggregate Computing toolkit
https://scafi.github.io
Alchemist: simulator
https://alchemist.github.io
Fully reproducible experiments @ repository:
https://github.com/metaphori/
engineering-collaborative-edge-iot
R. Casadei Introduction and Motivation Background Contribution Wrap-up 20/29
41. implementation schema (summary)
class ProblemSolvingEcosystem extends AggregateProgram with ProblemAPI {
override def main = {
val coordinators = S(grain, priorityField)
val potential = branch(infoPropagationNet){gradient(coordinators)}{+â}
val problems = collectSets(downTo=potential, problemOccurrences)
val solvers = collectSets(downTo=potential, solverProfile)
val feedbacks = collectSets(downTo=potential, feedbackField).groupBy(_.problem)
val assignments = branch(coordinators){
allocate(coordinators,solvers,problems,feedbacks)
}{ Set() }
val tasks = broadcast(potential, assignments)
branch(workers){ execute(tasks) }{ () }
} }
global speciďŹcation, collectively executed continuously
composition of aggregate-level building blocks
R. Casadei Introduction and Motivation Background Contribution Wrap-up 21/29
42. implementation schema (detail)
val coordinators = S(grain, priorityField)
boolean ďŹeld (true for elected leaders)
R. Casadei Introduction and Motivation Background Contribution Wrap-up 21/29
43. implementation schema (detail)
val potential = branch(infoPropagationNet){
gradient(coordinators)
}{+â}
leaders indirectly deďŹne areas by a gradient
(a device belongs to the area of its closest leader)
R. Casadei Introduction and Motivation Background Contribution Wrap-up 21/29
44. implementation schema (detail)
val problems = collectSets(downTo=potential, problemsFound)
val solvers = collectSets(downTo=potential, solverProfile)
val feedbacks = collectSets(downTo=potential, feedbackField)
.groupBy(_.problem)
upstreaming: data is collected into the leaders
R. Casadei Introduction and Motivation Background Contribution Wrap-up 21/29
45. implementation schema (detail)
val assignments = branch(coordinators){
allocate(coordinators,solvers,problems,feedbacks)
}{ Set() }
val tasks = broadcast(potential, assignments)
branch(workers){ execute(tasks) }{ () }
leadersâ control data downstreamed to workers
R. Casadei Introduction and Motivation Background Contribution Wrap-up 21/29
46. simulation setup
smart city environment (map of Vienna)
300 workers (lightweight devices for detection&solving)
10 potential coordinators (edge nodes)
R. Casadei Introduction and Motivation Background Contribution Wrap-up 22/29
50. another scenario:
resource management in edge-clouds
50 fog nodes
200 workers provide resources/services
500 sparse clients make requests
peek of requests in timeframe [150, 250]
R. Casadei Introduction and Motivation Background Contribution Wrap-up 24/29
51. qualitative evaluation
more leaders
lower load on relays/leaders
few leaders
higher load on relays/leaders
R. Casadei Introduction and Motivation Background Contribution Wrap-up 25/29
52. qualitative evaluation
higher utilization of workers
area-wise
lower utilization of workers
area-wise
R. Casadei Introduction and Motivation Background Contribution Wrap-up 25/29
53. qualitative evaluation
higher unavailability (declined
tasks) more retries
more services available in
each area
R. Casadei Introduction and Motivation Background Contribution Wrap-up 25/29
54. Outline
1 Introduction and Motivation
2 Background: Aggregate Computing
3 Contribution
4 Wrap-up
R. Casadei Introduction and Motivation Background Contribution Wrap-up 26/29
55. conclusion
a decentralised, self-org, spatial, collective approach to
development of collaborative IoT/Edge systems
aggregate computing implementation
evaluation of solution via simulations
R. Casadei Introduction and Motivation Background Contribution Wrap-up 27/29
56. conclusion
a decentralised, self-org, spatial, collective approach to
development of collaborative IoT/Edge systems
aggregate computing implementation
evaluation of solution via simulations
R. Casadei Introduction and Motivation Background Contribution Wrap-up 27/29
57. conclusion
a decentralised, self-org, spatial, collective approach to
development of collaborative IoT/Edge systems
aggregate computing implementation
evaluation of solution via simulations
R. Casadei Introduction and Motivation Background Contribution Wrap-up 27/29
58. conclusion
a decentralised, self-org, spatial, collective approach to
development of collaborative IoT/Edge systems
aggregate computing implementation
evaluation of solution via simulations
R. Casadei Introduction and Motivation Background Contribution Wrap-up 27/29
59. conclusion
a decentralised, self-org, spatial, collective approach to
development of collaborative IoT/Edge systems
aggregate computing implementation
evaluation of solution via simulations
future work
control theoretical analysis
time guarantees
R. Casadei Introduction and Motivation Background Contribution Wrap-up 27/29
60. conclusion
a decentralised, self-org, spatial, collective approach to
development of collaborative IoT/Edge systems
aggregate computing implementation
evaluation of solution via simulations
future work
control theoretical analysis
time guarantees
R. Casadei Introduction and Motivation Background Contribution Wrap-up 27/29
61. conclusion
a decentralised, self-org, spatial, collective approach to
development of collaborative IoT/Edge systems
aggregate computing implementation
evaluation of solution via simulations
future work
control theoretical analysis
time guarantees
R. Casadei Introduction and Motivation Background Contribution Wrap-up 27/29
62. References (1/2)
[aamas19Aud] Giorgio Audrito et al. âEffective Collective Summarisation of Distributed Data in
Mobile Multi-Agent Systemsâ. In: 18th International Conference on Autonomous
Agents and MultiAgent Systems. ACM. 2019, pp. 1618â1626.
[saso17Aud] Giorgio Audrito et al. âCompositional blocks for optimal self-healing gradientsâ. In:
Conf. on Self-Adaptive and Self-Organizing Systems (SASO). IEEE. 2017,
pp. 91â100.
[tocl19Aud] Giorgio Audrito et al. âA Higher-Order Calculus of Computational Fieldsâ. In: ACM
Transactions on Computational Logic 20.1 (Jan. 2019), 5:1â5:55. ISSN: 1529-3785.
DOI: 10.1145/3285956.
[ieeecom] Jacob Beal, Danilo Pianini, and Mirko Viroli. âAggregate Programming for the Internet
of Thingsâ. In: IEEE Computer (2015). ISSN: 1364-503X.
[taas17] Jacob Beal et al. âSelf-adaptation to device distribution in the Internet of Thingsâ. In:
ACM Transactions on Autonomous and Adaptive Systems (TAAS) 12.3 (2017), p. 12.
[fedcsis16Cas] Roberto Casadei, Danilo Pianini, and Mirko Viroli. âSimulating large-scale aggregate
MASs with Alchemist and Scalaâ. In: FedCSIS, Proceedings of. IEEE. 2016,
pp. 1495â1504.
[saso07DeW] Tom De Wolf and Tom Holvoet. âDesigning self-organising emergent systems based
on information ďŹows and feedback-loopsâ. In: Self-Adaptive and Self-Organizing
Systems, 2007. SASOâ07. 1st Conf. on. IEEE. 2007, pp. 295â298.
R. Casadei Appendix References 28/29
63. References (2/2)
[ecas18Mo] Yuanqiu Mo, Jacob Beal, and Soura Dasgupta. âAn Aggregate Computing Approach
to Self-Stabilizing Leader Electionâ. In: Workshops on Foundations & Applications of
Self* Systems (FAS*W). IEEE. 2018, pp. 112â117.
[cdc18Mo] Yuanqiu Mo, Soura Dasgupta, and Jacob Beal. âRobust Stability of Spreading Blocks
in Aggregate Computingâ. In: 2018 IEEE Conference on Decision and Control (CDC).
IEEE. 2018, pp. 6007â6012.
[tomacs18Vir] Mirko Viroli et al. âEngineering Resilient Collective Adaptive Systems by
Self-Stabilisationâ. In: ACM Transactions on Modeling and Computer Simulation 28.2
(2018), 16:1â16:28.
[coord18a] Mirko Viroli et al. âFrom Field-Based Coordination to Aggregate Computingâ. In: Int.
Conf. on Coordination Languages and Models. Springer. 2018, pp. 252â279.
[ubicomp16Vir] Mirko Viroli, Roberto Casadei, and Danilo Pianini. âOn execution platforms for
large-scale aggregate computingâ. In: UbiComp, Proceedings of. ACM. 2016,
pp. 1321â1326.
R. Casadei Appendix References 29/29