IMT Institutional Repository: No conditions. Results ordered -Date Deposited. 2019-06-17T20:56:49ZEPrintshttp://eprints.imtlucca.it/images/logowhite.pnghttp://eprints.imtlucca.it/2017-09-26T09:19:39Z2017-09-26T09:19:39Zhttp://eprints.imtlucca.it/id/eprint/3765This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/37652017-09-26T09:19:39ZEGAC: a genetic algorithm to compare chemical reaction networksDiscovering relations between chemical reaction networks (CRNs)
is a relevant problem in computational systems biology for model
reduction, to explain if a given system can be seen as an abstraction
of another one; and for model comparison, useful to establish an evolutionary
path from simpler networks to more complex ones. This
is also related to foundational issues in computer science regarding
program equivalence, in light of the established interpretation of a
CRN as a kernel programming language for concurrency. Criteria
for deciding if two CRNs can be formally related have been recently
developed, but these require that a candidate mapping be provided.
Automatically finding candidate mappings is very hard in general
since the search space essentially consists of all possible partitions
of a set. In this paper we tackle this problem by developing a genetic
algorithm for a class of CRNs called influence networks, which can
be used to model a variety of biological systems including cell-cycle
switches and gene networks. An extensive numerical evaluation
shows that our approach can successfully establish relations between
influence networks from the literature which cannot be found
by exact algorithms due to their large computational requirements.Stefano TognazziMirco Tribastonemirco.tribastone@imtlucca.itMax Tschaikowskimax.tschaikowski@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2017-08-08T09:06:01Z2017-08-08T09:06:01Zhttp://eprints.imtlucca.it/id/eprint/3766This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/37662017-08-08T09:06:01ZERODE: A Tool for the Evaluation and Reduction of Ordinary Differential EquationsWe present ERODE, a multi-platform tool for the solution and exact reduction of systems of ordinary differential equations (ODEs). ERODE supports two recently introduced, complementary, equivalence relations over ODE variables: forward differential equivalence yields a self-consistent aggregate system where each ODE gives the cumulative dynamics of the sum of the original variables in the respective equivalence class. Backward differential equivalence identifies variables that have identical solutions whenever starting from the same initial conditions. As back-end ERODE uses the well-known Z3 SMT solver to compute the largest equivalence that refines a given initial partition of ODE variables. In the special case of ODEs with polynomial derivatives of degree at most two (covering affine systems and elementary chemical reaction networks), it implements a more efficient partition-refinement algorithm in the style of Paige and Tarjan. ERODE comes with a rich development environment based on the Eclipse plug-in framework offering: (i) seamless project management; (ii) a fully-featured text editor; and (iii) importing-exporting capabilities.Luca CardelliMirco Tribastonemirco.tribastone@imtlucca.itMax Tschaikowskimax.tschaikowski@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2016-07-13T09:55:44Z2016-07-13T09:55:44Zhttp://eprints.imtlucca.it/id/eprint/3517This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/35172016-07-13T09:55:44ZStatistical Analysis of Probabilistic Models of Software Product Lines with Quantitative ConstraintsWe investigate the suitability of statistical model checking for the analysis of probabilistic models of software product lines with complex quantitative constraints and advanced feature installation options. Such models are specified in the feature-oriented language QFLan, a rich process algebra whose operational behaviour interacts with a store of constraints, neatly separating product configuration from product behaviour. The resulting probabilistic configurations and behaviour converge seamlessly in a semantics based on DTMCs, thus enabling quantitative analyses ranging from the likelihood of certain behaviour to the expected average cost of products. This is supported by a Maude implementation of QFLan, integrated with the SMT solver Z3 and the distributed statistical model checker MultiVeStA. Our approach is illustrated with a bikes product line case study.M.H. ter BeekAxel LegayAlberto Lluch-Lafuentealberto.lluch@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2016-07-13T09:43:28Z2016-07-13T09:43:28Zhttp://eprints.imtlucca.it/id/eprint/3516This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/35162016-07-13T09:43:28ZQuantitative Abstractions for Collective Adaptive SystemsCollective adaptive systems (CAS) consist of a large number of possibly heterogeneous entities evolving according to local interactions that may operate across multiple scales in time and space. The adaptation to changes in the environment, as well as the highly dispersed decision-making process, often leads to emergent behaviour that cannot be understood by simply analysing the objectives, properties, and dynamics of the individual entities in isolation.
As with most complex systems, modelling is a phase of crucial importance for the design of new CAS or the understanding of existing ones. Elsewhere in this volume the typical workflow of formal modelling, analysis, and evaluation of a CAS has been illustrated in detail. In this chapter we treat the problem of efficiently analysing large-scale CAS for quantitative properties. We review algorithms to automatically reduce the dimensionality of a CAS model preserving modeller-defined state variables, with focus on descriptions based on systems of ordinary differential equations. We illustrate the theory in a tutorial fashion, with running examples and a number of more substantial case studies ranging from crowd dynamics, epidemiology and biological systems.Andrea Vandinandrea.vandin@imtlucca.itMirco Tribastonemirco.tribastone@imtlucca.it2016-05-26T10:47:34Z2016-05-26T10:47:34Zhttp://eprints.imtlucca.it/id/eprint/3493This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/34932016-05-26T10:47:34ZSoftware Engineering for Collective Autonomic Systems: The ASCENS ApproachDhaminda B. AbeywickramaJacques CombazJaroslav and Kofro\v HorkýAndrea Vandinandrea.vandin@imtlucca.itEmil VassevJan KofroňAlberto Lluch LafuenteMichele LoretiAndrea MargheriPhilip MayerGiacoma Valentina MonrealeUgo MontanariCarlo PinciroliPetr Tůma2016-05-26T10:39:24Z2016-05-26T10:39:24Zhttp://eprints.imtlucca.it/id/eprint/3492This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/34922016-05-26T10:39:24ZQuantitative Analysis of Probabilistic Models of SoftwareProduct Lines with Statistical Model CheckingWe investigate the suitability of statistical model checking techniques for analysing quantitative prop-erties of software product line models with probabilistic aspects. For this purpose, we enrich thefeature-oriented language FLANwith action rates, which specify the likelihood of exhibiting par-ticular behaviour or of installing features at a specific moment or in a specific order. The enrichedlanguage (called PFLAN) allows us to specify models of software product lines with probabilis-tic configurations and behaviour, e.g. by considering a PFLANsemantics based on discrete-timeMarkov chains. The Maude implementation of PFLANis combined with the distributed statisticalmodel checker MultiVeStA to perform quantitative analyses of a simple product line case study. Thepresented analyses include the likelihood of certain behaviour of interest (e.g. product malfunction-ing) and the expected average cost of productsMaurice H. ter Beekmaurice.terbeek@isti.cnr.itAxel LegayAlberto Lluch LafuenteAndrea Vandinandrea.vandin@imtlucca.it2016-05-26T10:06:19Z2016-05-26T10:06:19Zhttp://eprints.imtlucca.it/id/eprint/3491This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/34912016-05-26T10:06:19ZModelling and Analyzing Adaptive Self-assembly Strategies with MaudeBuilding adaptive systems with predictable emergent behavior is a challenging task and it is becoming a critical need. The research community has accepted the challenge by introducing approaches of various nature: from software architectures, to programming paradigms, to analysis techniques. We recently proposed a conceptual framework for adaptation centered around the role of control data. In this paper we show that it can be naturally realized in a reflective logical language like Maude by using the Reflective Russian Dolls model. Moreover, we exploit this model to specify and analyse a prominent example of adaptive system: robot swarms equipped with obstacle-avoidance self-assembly strategies. The analysis exploits the statistical model checker PVesta.Roberto BruniAndrea CorradiniFabio GadducciAlberto Lluch LafuenteAndrea Vandinandrea.vandin@imtlucca.it2016-04-13T09:23:42Z2016-04-13T09:23:42Zhttp://eprints.imtlucca.it/id/eprint/3441This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/34412016-04-13T09:23:42ZForward and Backward Bisimulations for Chemical Reaction NetworksWe present two quantitative behavioral equivalences over species of a chemical reaction network(CRN) with semantics based on ordinary differential equations.Forward CRN bisimulationiden-tifies a partition where each equivalence class represents the exact sum of the concentrations ofthe species belonging to that class. Backward CRN bisimulationrelates species that have theidentical solutions at all time points when starting from the same initial conditions. Both notionscan be checked using only CRN syntactical information, i.e., by inspection of the set of reactions. We provide a unified algorithm that computes the coarsest refinement up to our bisimulationsin polynomial time. Further, we give algorithms to compute quotient CRNs induced by a bisim-ulation. As an application, we find significant reductions in a number of models of biologicalprocesses from the literature. In two cases we allow the analysis of benchmark models whichwould be otherwise intractable due to their memory requirements.Luca CardelliMirco Tribastonemirco.tribastone@imtlucca.itMax Tschaikowskimax.tschaikowski@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2016-04-13T08:40:24Z2016-04-13T08:40:24Zhttp://eprints.imtlucca.it/id/eprint/3437This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/34372016-04-13T08:40:24ZEfficient Syntax-Driven Lumping of Differential EquationsWe present an algorithm to compute exact aggregations of a class of systems of ordinary differential equations (ODEs). Our approach consists in an extension of Paige and Tarjan’s seminal solution to the coarsest refinement problem by encoding an ODE system into a suitable discrete-state representation. In particular, we consider a simple extension of the syntax of elementary chemical reaction networks because (i) it can express ODEs with derivatives given by polynomials of degree at most two, which are relevant in many applications in natural sciences and engineering; and (ii) we can build on two recently introduced bisimulations, which yield two complementary notions of ODE lumping. Our algorithm computes the largest bisimulations in O(r⋅s⋅logs)O(r⋅s⋅logs) time, where r is the number of monomials and s is the number of variables in the ODEs. Numerical experiments on real-world models from biochemistry, electrical engineering, and structural mechanics show that our prototype is able to handle ODEs with millions of variables and monomials, providing significant model reductions.Luca CardelliMirco Tribastonemirco.tribastone@imtlucca.itMax Tschaikowskimax.tschaikowski@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2016-04-13T08:26:32Z2016-04-13T08:26:32Zhttp://eprints.imtlucca.it/id/eprint/3435This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/34352016-04-13T08:26:32ZSymbolic Computation of Differential EquivalencesOrdinary differential equations (ODEs) are widespread in manynatural sciences including chemistry, ecology, and systems biology,and in disciplines such as control theory and electrical engineering. Building on the celebrated molecules-as-processes paradigm, they have become increasingly popular in computer science, with high-level languages and formal methods such as Petri nets, process algebra, and rule-based systems that are interpreted as ODEs. We consider the problem of comparing and minimizing ODEs automatically. Influenced by traditional approaches in the theory of programming, we propose differential equivalence relations. We study them for a basic intermediate language, for which we have decidability results, that can be targeted by a class of high-level specifications. An ODE implicitly represents an uncountable state space, hence reasoning techniques cannot be borrowed from established domains such as probabilistic programs with finite-state Markov chain semantics. We provide novel symbolic procedures to check an equivalence and compute the largest one via partition refinement algorithms that use satisfiability modulo theories. We illustrate the generality of our framework by showing that differential equivalences include (i) well-known notions for the minimization of continuous-time Markov chains (lumpability),(ii) bisimulations for chemical reaction networks recently proposedby Cardelli et al., and (iii) behavioral relations for process algebra with ODE semantics. With a prototype implementation we are able to detect equivalences in biochemical models from the literature thatcannot be reduced using competing automatic techniques.Luca CardelliMirco Tribastonemirco.tribastone@imtlucca.itMax Tschaikowskimax.tschaikowski@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2016-04-13T08:14:47Z2016-04-13T08:14:47Zhttp://eprints.imtlucca.it/id/eprint/3433This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/34332016-04-13T08:14:47ZComparing Chemical Reaction Networks:A Categorical and Algorithmic PerspectiveWe study chemical reaction networks (CRNs) as a kernel language for concurrency models with semantics based on ordinary differential equations. We investigate the problem of comparing two CRNs,i.e., to decide whether the trajectories of asource CRN can be matched by a target CRN under an appropriate choice of initial conditions. Using a categorical framework, we extend and relate model-comparison approaches based on structural (syntactic) and on dynamical (semantic) properties of a CRN, proving their equivalence. Then, we provide an algorithm to compare CRNs, running linearly in time with respect to the cardinality of all possible comparisons. Finally, we apply our results to biological models from the literature.Luca CardelliMirco Tribastonemirco.tribastone@imtlucca.itMax Tschaikowskimax.tschaikowski@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2016-02-12T13:32:18Z2016-02-12T13:32:18Zhttp://eprints.imtlucca.it/id/eprint/3068This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/30682016-02-12T13:32:18ZMultiVeStA: Statistical Model Checking for Discrete Event SimulatorsThe modeling, analysis and performance evaluation of large-scale systems are difficult tasks. An approach typically followed by engineers consists in performing simulations of systems models to obtain statistical estimations of quantitative properties. Similarly, a technique used by computer scientists working on quantitative analysis is Statistical Model Checking (SMC), where rigorous mathematical languages (e.g., logics) are used to express properties, which are automatically estimated again simulating the model at hand. These property specification languages provide a formal, compact and elegant way to express properties without hard-coding them in the model definition. This paper presents MultiVeStA, a statistical analysis tool which can be easily integrated with discrete event simulators, enriching them with efficient distributed statistical analysis and SMC capabilities.Stefano Sebastiostefano.sebastio@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2016-02-12T13:25:31Z2016-04-06T09:37:22Zhttp://eprints.imtlucca.it/id/eprint/3067This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/30672016-02-12T13:25:31ZDistributed statistical analysis of complex systems modeled through a chemical metaphorThe chemical-inspired programming approach is an emerging paradigm for defining the behavior of densely distributed and context-aware devices (e.g., in ecosystems of displays tailored to crowd steering, or to obtain profile-based coordinated visualization). Typically, the evolution of such systems cannot be easily predicted, thus making of paramount importance the availability of techniques and tools supporting prior-to-deployment analysis. Exact analysis techniques do not scale well when the complexity of systems grows: as a consequence, approximated techniques based on simulation assumed a relevant role. This work presents a new simulation-based distributed analysis tool addressing the statistical analysis of such a kind of systems. The tool has been obtained by chaining two existing tools: MultiVeSta and Alchemist. The former is a recently proposed lightweight tool which allows to enrich existing discrete event simulators with automated and distributed statistical analysis capabilities, while the latter is an efficient simulator for chemical-inspired computational systems. The tool is validated against a crowd steering scenario, and insights on the performance are provided by discussing how the analysis tasks scale on a multi-core architecture.Danilo PianiniStefano Sebastiostefano.sebastio@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2016-02-12T13:11:53Z2016-02-12T13:11:53Zhttp://eprints.imtlucca.it/id/eprint/3065This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/30652016-02-12T13:11:53ZThe SCEL Language: Design, Implementation, VerificationSCEL (Service Component Ensemble Language) is a new language specifically designed to rigorously model and program autonomic components and their interaction, while supporting formal reasoning on their behaviors. SCEL brings together various programming abstractions that allow one to directly represent aggregations, behaviors and knowledge according to specific policies. It also naturally supports programming interaction, self-awareness, context-awareness, and adaptation. The solid semantic grounds of the language is exploited for developing logics, tools and methodologies for formal reasoning on system behavior to establish qualitative and quantitative properties of both the individual components and the overall systems.Rocco De Nicolar.denicola@imtlucca.itDiego LatellaAlberto Lluch LafuenteMichele LoretiAndrea MargheriMieke MassinkAndrea MorichettaRosario PuglieseFrancesco TiezziAndrea Vandinandrea.vandin@imtlucca.it2016-02-12T13:04:06Z2016-04-06T07:58:07Zhttp://eprints.imtlucca.it/id/eprint/3064This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/30642016-02-12T13:04:06ZReconciling White-Box and Black-Box Perspectives on Behavioral Self-adaptationThis paper proposes to reconcile two perspectives on behavioral adaptation commonly taken at different stages of the engineering of autonomic computing systems. Requirements engineering activities often take a black-box perspective: A system is considered to be adaptive with respect to an environment whenever the system is able to satisfy its goals irrespectively of the environment perturbations. Modeling and programming engineering activities often take a white-box perspective: A system is equipped with suitable adaptation mechanisms and its behavior is classified as adaptive depending on whether the adaptation mechanisms are enacted or not. The proposed approach reconciles black- and white-box perspectives by proposing several notions of coherence between the adaptivity as observed by the two perspectives: These notions provide useful criteria for the system developer to assess and possibly modify the adaptation requirements, models and programs of an autonomic system.Roberto BruniAndrea CorradiniFabio GadducciMatthias HölzlAlberto Lluch LafuenteAndrea Vandinandrea.vandin@imtlucca.itMartin Wirsing2016-02-12T12:37:25Z2016-02-12T12:37:25Zhttp://eprints.imtlucca.it/id/eprint/3063This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/30632016-02-12T12:37:25ZDifferential Bisimulation for a Markovian Process AlgebraFormal languages with semantics based on ordinary differential equations (ODEs) have emerged as a useful tool to reason about large-scale distributed systems. We present differential bisimulation, a behavioral equivalence developed as the ODE counterpart of bisimulations for languages with probabilistic or stochastic semantics. We study it in the context of a Markovian process algebra. Similarly to Markovian bisimulations yielding an aggregated Markov process in the sense of the theory of lumpability, differential bisimulation yields a partition of the ODEs underlying a process algebra term, whereby the sum of the ODE solutions of the same partition block is equal to the solution of a single (lumped) ODE. Differential bisimulation is defined in terms of two symmetries that can be verified only using syntactic checks. This enables the adaptation to a continuous-state semantics of proof techniques and algorithms for finite, discrete-state, labeled transition systems. For instance, we readily obtain a result of compositionality, and provide an efficient partition-refinement algorithm to compute the coarsest ODE aggregation of a model according to differential bisimulation.Giulio IacobelliMirco Tribastonemirco.tribastone@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2016-02-12T12:27:56Z2016-02-12T12:27:56Zhttp://eprints.imtlucca.it/id/eprint/3062This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/30622016-02-12T12:27:56ZA White Box Perspective on Behavioural AdaptationWe present a white-box conceptual framework for adaptation developed in the context of the EU Project ASCENS coordinated by Martin Wirsing. We called it CoDa, for Control Data Adaptation, since it is based on the notion of control data. CoDa promotes a neat separation between application and adaptation logic through a clear identification of the set of data that is relevant for the latter. The framework provides an original perspective from which we survey a representative set of approaches to adaptation, ranging from programming languages and paradigms to computational models and architectural solutions.Roberto BruniAndrea CorradiniFabio GadducciAlberto Lluch LafuenteAndrea Vandinandrea.vandin@imtlucca.it2016-02-12T11:52:51Z2016-02-12T12:08:13Zhttp://eprints.imtlucca.it/id/eprint/3061This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/30612016-02-12T11:52:51ZModelling and analyzing adaptive self-assembly strategies with MaudeBuilding adaptive systems with predictable emergent behavior is a difficult task and it is becoming a critical need. The research community has accepted the challenge by introducing approaches of various nature: from software architectures to programming paradigms and analysis techniques. Our white-box conceptual approach to adaptive systems based on the notion of control data promotes a clear distinction between the application and the adaptation logic. In this paper we propose a concrete instance of our approach based on (i) a neat identification of control data; (ii) a hierarchical architecture that provides the basic structure to separate the adaptation and application logics; (iii) computational reflection as the main mechanism to realize the adaptation logic; (iv) probabilistic rule-based specifications and quantitative verification techniques to specify and analyze the adaptation logic. We show that our solution can be naturally realized in Maude, a Rewriting Logic based framework, and illustrate our approach by specifying, validating and analyzing a prominent example of adaptive systems: robot swarms equipped with self-assembly strategies.Roberto BruniAndrea CorradiniFabio GadducciAlberto Lluch LafuenteAndrea Vandinandrea.vandin@imtlucca.it2016-02-12T11:43:04Z2016-02-12T11:43:04Zhttp://eprints.imtlucca.it/id/eprint/3060This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/30602016-02-12T11:43:04ZSoftware Engineering for Collective Autonomic Systems: The ASCENS ApproachThe ASCENS project deals with designing systems as ensembles of adaptive components. Among the outputs of the ASCENS project are multiple tools that address particular issues in designing the ensembles, ranging from support for early stage formal modeling to runtime environment for executing and monitoring ensemble implementations. The goal of this chapter is to provide a compact description of the individual tools, which is supplemented by additional downloadable material on the project website.Dhaminda B. AbeywickramaJacques CombazJaroslav and Kofro\v HorkýAndrea Vandinandrea.vandin@imtlucca.itEmil Vassev2015-02-10T15:26:40Z2016-02-12T13:12:35Zhttp://eprints.imtlucca.it/id/eprint/2593This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/25932015-02-10T15:26:40ZAn analysis pathway for the quantitative evaluation of public transport systemsWe consider the problem of evaluating quantitative service-level agreements in public services such as transportation systems. We describe the integration of quantitative analysis tools for data fitting, model generation, simulation, and statistical model-checking, creating an analysis pathway leading from system measurement data to verification results. We apply our pathway to the problem of determining whether public bus systems are delivering an appropriate quality of service as required by regulators. We exercise the pathway on service data obtained from Lothian Buses about the arrival and departure times of their buses on key bus routes through the city of Edinburgh. Although we include only that example in the present paper, our methods are sufficiently general to apply to other transport systems and other cities.Stephen GilmoreMirco Tribastonemirco.tribastone@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2014-03-10T12:55:15Z2016-02-12T13:15:43Zhttp://eprints.imtlucca.it/id/eprint/2180This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/21802014-03-10T12:55:15ZReasoning (on) service component ensembles in rewriting logicProgramming autonomic systems with massive number of heterogeneous components poses a number of challenges to language designers and software engineers and requires the integration of computational tools and reasoning tools. We present a general methodology to enrich SCEL, a recently introduced language for programming systems with massive numbers of components, with reasoning capabilities that are guaranteed by external reasoners. We show how the methodology can be instantiated by considering the Maude implementation of SCEL and a specific reasoner, Pirlo, implemented in Maude as well. Moreover we show how the actual integration can benefit from the existing analytical tools of the Maude framework. In particular, we demonstrate our approach by considering a simple scenario consisting of a group of robots moving in an arena aiming at minimising the number of collisions.Lenz BelznerRocco De Nicolar.denicola@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.itMartin Wirsing2013-12-12T13:11:42Z2016-07-13T10:29:47Zhttp://eprints.imtlucca.it/id/eprint/2056This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/20562013-12-12T13:11:42ZModelling and analyzing adaptive self-assembling strategies with MaudeBuilding adaptive systems with predictable emergent behavior is a challenging task and it is becoming a critical need. The research community has accepted the challenge by introducing approaches of various nature: from software architectures, to programming paradigms, to analysis techniques. We recently proposed a conceptual framework for adaptation centered around the role of control data. In this paper we show that it can be naturally realized in a reflective logical language like Maude by using the Reflective Russian Dolls model. Moreover, we exploit this model to specify, validate and analyse a prominent example of adaptive system: robot swarms equipped with self-assembly strategies. The analysis exploits the statistical model checker PVeStA.Roberto BruniAndrea CorradiniFabio GadducciAlberto Lluch-Lafuentealberto.lluch@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2013-09-18T09:31:59Z2016-07-13T10:47:00Zhttp://eprints.imtlucca.it/id/eprint/1798This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/17982013-09-18T09:31:59ZMultiVeStA: Statistical Model Checking for Discrete Event SimulatorsThe modeling, analysis and performance evaluation of large-scale systems are difficult tasks. Due to the size and complexity of the considered systems, an approach typically followed by engineers consists in performing simulations of systems models to obtain statistical estimations of quantitative properties. Similarly, a technique used by computer scientists working on quantitative analysis is Statistical Model Checking (SMC), where rigorous mathematical languages (typically logics) are used to express systems properties of interest. Such properties can then be automatically estimated by tools performing simulations of the model at hand. These property specifications languages, often not popular among engineers, provide a formal, compact and elegant way to express systems properties without needing to hard-code them in the model definition. This paper presents MultiVeStA, a statistical analysis tool which can be easily integrated with existing discrete event simulators, enriching them with efficient distributed statistical analysis and SMC capabilities.Stefano Sebastiostefano.sebastio@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2013-09-12T11:13:50Z2016-07-13T10:47:18Zhttp://eprints.imtlucca.it/id/eprint/1697This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/16972013-09-12T11:13:50ZStatistical analysis of chemical computational systems with MULTIVESTA and ALCHEMIST The chemical-oriented approach is an emerging paradigm for programming the behaviour of densely distributed and context-aware devices (e.g. in ecosystems of displays tailored to crowd steering, or to obtain profile-based coordinated visualization). Typically, the evolution of such systems cannot be easily predicted, thus making of paramount importance the availability of techniques and tools supporting prior-to-deployment analysis. Exact analysis techniques do not scale well when the complexity of systems grows: as a consequence, approximated techniques based on simulation assumed a relevant role. This work presents a new simulation-based distributed tool addressing the statistical analysis of such a kind of systems, which has been obtained by chaining two existing tools: MultiVeStA and Alchemist. The former is a recently proposed lightweight tool which allows to enrich existing discrete event simulators with distributed statistical analysis capabilities, while the latter is an efficient simulator for chemical-oriented computational systems. The tool is validated against a crowd steering scenario, and insights on the performance are provided by discussing how these scale distributing the analysis tasks on a multi-core architecture.Danilo PianiniStefano Sebastiostefano.sebastio@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2013-05-16T13:56:29Z2016-07-13T10:47:56Zhttp://eprints.imtlucca.it/id/eprint/1584This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/15842013-05-16T13:56:29ZA Conceptual Framework for AdaptationWe present a white-box conceptual framework for adaptation. We called it CODA, for COntrol Data Adaptation, since it is based on the notion of control data. CODA promotes a neat separation between application and adaptation logic through a clear identification of the set of data that is relevant for the latter. The framework provides an original perspective from which we survey a representative set of approaches to adaptation ranging from programming languages and paradigms, to computational models and architectural solutions.Roberto BruniAndrea CorradiniFabio GadducciAlberto Lluch-Lafuentealberto.lluch@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2013-05-16T13:06:14Z2016-07-13T09:48:45Zhttp://eprints.imtlucca.it/id/eprint/1581This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/15812013-05-16T13:06:14ZA Conceptual Framework for AdaptationIn this position paper we present a conceptual vision of adaptation, a key feature of autonomic systems. We put some stress on the role of control data and argue how some of the programming paradigms and models used for adaptive systems match with our conceptual framework.Roberto BruniAndrea CorradiniFabio GadducciAlberto Lluch-Lafuentealberto.lluch@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2013-05-16T13:05:40Z2016-07-13T10:47:36Zhttp://eprints.imtlucca.it/id/eprint/1583This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/15832013-05-16T13:05:40ZAdaptation is a GameControl data variants of game models such as Interface Automata are suitable for the design and analysis of self-adaptive systems.Roberto BruniAndrea CorradiniFabio GadducciAlberto Lluch-Lafuentealberto.lluch@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2013-03-18T07:40:52Z2016-02-12T13:26:47Zhttp://eprints.imtlucca.it/id/eprint/1535This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/15352013-03-18T07:40:52ZAdaptable transition systemsWe present an essential model of adaptable transition systems inspired by white-box approaches to adaptation and based on foundational models of component based systems. The key feature of adaptable transition systems are control propositions, imposing a clear separation between ordinary, functional behaviours and adaptive ones. We instantiate our approach on interface automata yielding adaptable interface automata, but it may be instantiated on other foundational models of component-based systems as well. We discuss how control propositions can be exploited in the specification and analysis of adaptive systems, focusing on various notions proposed in the literature, like adaptability, control loops, and control synthesis.Roberto BruniAndrea CorradiniFabio GadducciAlberto Lluch-Lafuentealberto.lluch@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2012-09-14T15:24:30Z2016-07-13T10:52:33Zhttp://eprints.imtlucca.it/id/eprint/1350This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/13502012-09-14T15:24:30ZState space c-reductions for concurrent systems in rewriting logicWe present c-reductions, a simple, flexible and very general state space reduction technique that exploits an equivalence relation on states that is a bisimulation. Reduction is achieved by a canonizer function, which maps each state into a not necessarily unique canonical representative of its equivalence class. The approach contains symmetry reduction and name reuse and name abstraction as special cases, and exploits the expressiveness of rewriting logic and its realization in Maude to automate c-reductions and to seamlessly integrate model checking and the discharging of correctness proof obligations. The performance of the approach has been validated over a set of representative case studies.Alberto Lluch-Lafuentealberto.lluch@imtlucca.itJosé MeseguerAndrea Vandinandrea.vandin@imtlucca.it2012-06-29T12:28:49Z2016-07-13T09:49:50Zhttp://eprints.imtlucca.it/id/eprint/1293This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/12932012-06-29T12:28:49ZState space c-reductions for concurrent systems in rewriting logicWe present c-reductions, a simple, flexible and very general state space reduction technique that exploits an equivalence relation on states that is a bisimulation. Reduction is achieved by a canonizer function, which maps each state into a not necessarily unique canonical representative of its equivalence class. The approach contains symmetry reduction and name reuse and name abstraction as special cases, and exploits the expressiveness of rewriting logic and its realization in Maude
to automate c-reductions and to seamlessly integrate model checking and the discharging of correctness proof obligations. The performance of the approach has been validated over a set of representative case studies.Alberto Lluch-Lafuentealberto.lluch@imtlucca.itJosé MeseguerAndrea Vandinandrea.vandin@imtlucca.it2012-06-29T11:10:58Z2016-07-13T09:49:16Zhttp://eprints.imtlucca.it/id/eprint/1292This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/12922012-06-29T11:10:58ZExploiting over- and under-approximations for infinite-state counterpart modelsSoftware systems with dynamic topology are often infini-testate. Paradigmatic examples are those modeled as graph transformation systems (GTSs) with rewrite rules that allow an unbounded creation of items. For such systems, verification can become intractable, thus calling for the development of approximation techniques that may ease
the verification at the cost of losing in preciseness and completeness. Both over- and under-approximations have been considered in the literature, respectively offering more and less behaviors than the original system. At the same time, properties of the system may be either preserved or
reflected by a given approximation. In this paper we propose a general notion of approximation that captures some of the existing approaches for GTSs. Formulae are specified by a generic quantified modal logic, one that also generalizes many specification logics adopted in the literature for GTSs. We also propose a type system to denote part of the formulae as either reflected or preserved, together with a technique that exploits
under- and over-approximations to reason about typed as well as untyped formulaeAlberto Lluch-Lafuentealberto.lluch@imtlucca.itFabio GadducciAndrea Vandinandrea.vandin@imtlucca.it2012-01-09T11:57:49Z2016-07-13T10:50:07Zhttp://eprints.imtlucca.it/id/eprint/1049This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/10492012-01-09T11:57:49ZCounterpart Semantics for a Second-Order mu-CalculusQuantified μ-calculi combine the fix-point and modal operators of temporal logics with (existential and universal) quantifiers, and they allow for reasoning about the possible behaviour of individual components within a software system. In this paper we introduce a novel approach to the semantics of such calculi: we consider a sort of labeled transition systems called counterpart models as semantic domain, where states are algebras and transitions are defined by counterpart relations (a family of partial homomorphisms) between states. Then, formulae are interpreted over sets of state assignments (families of partial substitutions, associating formula variables to state components). Our proposal allows us to model and reason about the creation and deletion of components, as well as the merging of components. Moreover, it avoids the limitations of existing approaches, usually enforcing restrictions of the transition relation: the resulting semantics is a streamlined and intuitively appealing one, yet it is general enough to cover most of the alternative proposals we are aware of. The paper is rounded up with some considerations about expressiveness and decidability aspects.Fabio GadducciAlberto Lluch-Lafuentealberto.lluch@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2011-12-22T09:22:41Z2016-07-13T10:49:38Zhttp://eprints.imtlucca.it/id/eprint/1048This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/10482011-12-22T09:22:41ZModelling and analyzing adaptive self-assembling strategies with MaudeBuilding adaptive systems with predictable emergent behavior is a challenging task and it is becoming a critical need. The research community has accepted the challenge by introducing approaches of various nature: from software architectures, to programming paradigms, to analysis techniques. We recently proposed a conceptual framework for adaptation centered around the role of control data. In this paper we show that it can be naturally realized in a reflective logical language like Maude by using the Reflective Russian Dolls model. Moreover, we exploit this model to specify and analyse a prominent example of adaptive system: robot swarms equipped with obstacle-avoidance self-assembly strategies. The analysis exploits the statistical model checker PVesta.Roberto BruniAndrea CorradiniFabio GadducciAlberto Lluch-Lafuentealberto.lluch@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2011-09-13T09:24:38Z2016-07-13T10:48:51Zhttp://eprints.imtlucca.it/id/eprint/861This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/8612011-09-13T09:24:38ZA Lewisian approach to the verification of adaptive systemsMany software artifacts like software architectures or distributed programs are characterized by a high level of
dynamism involving changes in their structure or behaviour as a response to external stimuli or as the result of
programmed reconfigurations. When reasoning on such adaptive systems one is not only interested in proving
properties on their global behaviour like system correctness, but also on the evolution of the single components. For instance, when analysing the well-known stable marriage problem one would like to know whether a solution ensures that “two females never claim to be married with the same male”. To enable automatic reasoning, two main things are needed: models for the software artifacts and logic-based languages for describing their properties. One of the most successful and versatile model for such artifacts are graphs. Regarding the property specification languages, variants of quantified temporal logics have been proposed, which combine the modal operators of temporal logics with monadic second-order logic for graphs. Unfortunately, the semantical models for such logics are not clearly cut, due to the possibility to interleave modal operators and quantifiers in formulae like $x.◊ψ where x is quantified in a world but ψ states properties about x in a reachable world or state where it does not necessarily exist or even have the same identity. The issue is denoted in the quantified temporal logic
literature as trans-world identity [1, 3]. A typical solution follows the so-called “Kripke semantics” approach: roughly, a set of universal items is chosen, and its elements are used to form each state. This solution is the most widely adopted, and it underlines all the proposals we are aware of Kripke-like solutions do not fit well with the merging, deletion and creation of components, neither allows for an easy inclusion of evolution relations possibly forming cycles: if the value of an open formula is a set of states, how to account e.g. for an element that is first deleted and then added again? This problem is often solved by restricting the class of admissible evolution relations: this forces to reformulate the state transition relation modeling the system evolution, hampering the intuitive meaning of the logic. In [2, 5] we presented an alternative approach, inspired to counterpart theory [4]. The key point of Lewis's proposal is the notion of counterpart, which is a consequence of his refusal to interpret the relation of trans-world sameness as
strict identity. In our approach we exploit counterpart relations, i.e. (partial) functions among states, explicitly relating elements of different states. Our solution avoids some limitations of the existing approaches, in particular in what regards the treatment of the possible merging and reuse of components. Moreover, the resulting semantics is a streamlined and intuitively appealing one, yet it is general enough to cover most of the alternatives we are aware of.Fabio GadducciAlberto Lluch-Lafuentealberto.lluch@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2011-09-12T14:13:05Z2016-07-13T09:45:10Zhttp://eprints.imtlucca.it/id/eprint/860This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/8602011-09-12T14:13:05ZTowards a Maude tool for model checking temporal graph propertiesWe present our prototypical tool for the verification of graph transformation systems. The major novelty of our tool is that it provides a model checker for temporal graph properties based on counterpart semantics for quantified m-calculi. Our tool can be considered as an instantiation of our approach to counterpart semantics which allows for a neat handling of creation, deletion and merging in systems
with dynamic structure. Our implementation is based on the object-based machinery of Maude, which provides the basics to deal with attributed graphs. Graph transformation
systems are specified with term rewrite rules. The model checker evaluates logical formulae of second-order modal m-calculus in the automatically generated CounterpartModel (a sort of unfolded graph transition system) of the graph transformation system under study. The result of evaluating a formula is a set of assignments for each state, associating node variables to actual nodes.Alberto Lluch-Lafuentealberto.lluch@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it2011-03-31T10:44:27Z2016-07-13T09:46:04Zhttp://eprints.imtlucca.it/id/eprint/143This item is in the repository with the URL: http://eprints.imtlucca.it/id/eprint/1432011-03-31T10:44:27ZCounterpart semantics for a second-order mu-calculusWe propose a novel approach to the semantics of quantified μ-calculi, considering models where states are algebras; the evolution relation is given by a counterpart relation (a family of partial homomorphisms), allowing for the creation, deletion, and merging of components; and formulas are interpreted over sets of state assignments (families of substitutions, associating formula variables to state components). Our proposal avoids the limitations of existing approaches, usually enforcing restrictions of the evolution relation: the resulting semantics is a streamlined and intuitively appealing one, yet it is general enough to cover most of the alternative proposals we are aware of. Fabio GadducciAlberto Lluch-Lafuentealberto.lluch@imtlucca.itAndrea Vandinandrea.vandin@imtlucca.it