A Methodology and Simulation-based Toolchain for Estimating Deployment Performance of Smart Collective Services at the Edge - Casadei, Roberto; Fortino, Giancarlo; Pianini, Danilo; Placuzzi, Andrea; Savaglio, Claudio; Viroli, Mirko (IEEE internet of things journal, 2022)
Research trends are pushing artificial intelligence (AI) across the IoT-Edge-Fog-Cloud continuum, to enable effective data analytics, decision making, as well as efficient use of resources for QoS targets. Approaches for collective adaptive systems engineering, such as aggregate computing, provide declarative programming models and tools for dealing with the uncertainty and the complexity that may arise from scale, heterogeneity, and dynamicity. Crucially, aggregate computing architecture allows for "pulverisation": applications can be decomposed into many deployable micro-modules that can be spread across the ICT infrastructure, thus allowing multiple potential deployment configurations for the same application logic. This article studies the deployment architecture of aggregate-based edge services and its implications in terms of performance and cost. The goal is to provide methodological guidelines and a model-based toolchain for the generation and simulation-based evaluation of potential deployments. First, we address this subject methodologically by proposing an approach based on deployment code generators and a simulation phase whose obtained solutions are assessed with respect to their performance and costs. We then tailor this approach to aggregate computing applications deployed onto an IoT-Edge-Fog-Cloud infrastructure, and we develop a corresponding toolchain based on Protelis and EdgeCloudSim. Finally, we evaluate the approach and tools through a case study of edge multimedia streaming, where the edge ecosystem exhibits intelligence by self-organising into clusters to promote load-balancing in large-scale dynamic settings.