quantitative abstractions for collective adaptive systems · quantitative abstractions for...
TRANSCRIPT
Quantitative Abstractions For Collective Adaptive Systems
Mirco Tribastone and Andrea Vandin
SFM'16 – Bertinoro24 June 2016
Outline
● ERODE: A tool for the Evaluation and Reduction of ODEs- Frontend- Core- Reduction Techniques
● Case Studies- Large case studies
Continuous time Markov chains from MRMC distributionChemical Reaction Networks from the literature
- Spatial dynamicsCrowd DynamicsMulti-community Epidemiology
ERODE: Evaluation and Reduction of ODEs
IDOL: Intermediate Drift-oriented Language [POPL’16]
Reaction Networks [CONCUR’15, TACAS’16]
ERODE: Evaluation and Reduction of ODEs
IDOL: Intermediate Drift-oriented Language [POPL’16]
Reaction Networks [CONCUR’15, TACAS’16]
● Forward Equivalence● Backward Equivalence
● Forward Bisimulation● Backward Bisimulation
ERODE: Evaluation and Reduction of ODEs
IDOL: Intermediate Drift-oriented Language [POPL’16]
Reaction Networks [CONCUR’15, TACAS’16]
Luca Cardelli¹ Mirco Tribastone² Max Tschaikowski² Andrea Vandin²
¹ Microsoft Research and University of Oxford, UK² IMT School for Advanced Studies Lucca, Italy
Tool paper submitted at CAV'16
ERODE: Evaluation and Reduction of ODEs
http://sysma.imtlucca.it/tools/erode/
ERODE: Evaluation and Reduction of ODEs
Auto-completionError detectionFix suggestion
Project explorerOutline & Problems
Console & Plots
Update managerNew ERODE Project & FileImport BNG, Matlab, LBS
ERODE ViewsODE and RN Editor ERODE Wizards
ODESimulator
Statistical ModelChecker (RN)
BDE/FDE Reducer
BB/FB Reducer (RN)
ODE RN Encoder
Importer/Exporter(BNG,Matlab,LBS,SBML)
StochasticSimulator (RN)
ApacheCommons Math FERN MultiVeStA Microsoft Z3
FRO
NTE
ND
CORE
APIs
ERODE: Frontend
Auto-completionError detectionFix suggestion
Project explorerOutline & Problems
Console & Plots
Update managerNew ERODE Project & FileImport BNG, Matlab, LBS
ERODE ViewsODE and RN Editor ERODE Wizards
ODESimulator
Statistical ModelChecker (RN)
BDE/FDE Reducer
BB/FB Reducer (RN)
ODE RN Encoder
Importer/Exporter(BNG,Matlab,LBS,SBML)
StochasticSimulator (RN)
ApacheCommons Math FERN MultiVeStA Microsoft Z3
FRO
NTE
ND
CORE
APIs
Highlights:● The Project explorer● Project and file creation● Parts composing an ERODE file● The Outline● Auto completion, error detection and fix suggestion● Importer wizards● Updates manager
ERODE: Frontend
ERODE: Core
Auto-completionError detectionFix suggestion
Project explorerOutline & Problems
Console & Plots
Update managerNew ERODE Project & FileImport BNG, Matlab, LBS
ERODE ViewsODE and RN Editor ERODE Wizards
ODESimulator
Statistical ModelChecker (RN)
BDE/FDE Reducer
BB/FB Reducer (RN)
ODE RN Encoder
Importer/Exporter(BNG,Matlab,LBS,SBML)
StochasticSimulator (RN)
ApacheCommons Math FERN MultiVeStA Microsoft Z3
FRO
NTE
ND
CORE
APIs
Highlights● SimulateODE● setIC/setParam, ● Plots and CSV files● Views in plots● RN to ODE encoding● Specific features of ODE editor● Matlab export/import● Stochastic simulation
ERODE: Core
ODESimulator
Statistical ModelChecker (RN)
ODE RN Encoder
Importer/Exporter(BNG,Matlab,LBS,SBML)
StochasticSimulator (RN)
ERODE: Core – Reduction techniques
Auto-completionError detectionFix suggestion
Project explorerOutline & Problems
Console & Plots
Update managerNew ERODE Project & FileImport BNG, Matlab, LBS
ERODE ViewsODE and RN Editor ERODE Wizards
ApacheCommons Math FERN MultiVeStA Microsoft Z3
FRO
NTE
ND
CORE
APIs
BDE/FDE Reducer
BB/FB Reducer (RN)
ERODE: Core – Reduction techniques
A B
A simple binding/unbinding model
ERODE: Core – Reduction techniques
A
b
B
b
A simple binding/unbinding model
ERODE: Core – Reduction techniques
A
b
B
b
A simple binding/unbinding model
ERODE: Core – Reduction techniques
A
b~P
B
b
A
b~U
B
b
A simple binding/unbinding model
ERODE: Core – Reduction techniques
A
b~U
A
b~Pr1
r2
ERODE: Core – Reduction techniques
A
b~U
B
b
A
b~U
A
b~P
A
b~U
B
b
r1
r2
3
4
ERODE: Core – Reduction techniques
A
b~U
B
b
A
b~U
A
b~P
A
b~U
B
b
A
b~P
B
b
A
b~P
B
b
r1
r2
3
4
3
4
Highlights● RN specification● ODE simulation● ODE specification (via encoding)● FDE reduction
● With & without pre-partitioning● Explanation of reduction via plots
● BDE reduction● For r1=r2 and not● With & without IC pre-partitioning● Explanation of reduction via plots
ERODE: FDE/BDE
ERODE: Core – Reduction techniques
Model Candidate partition
ERODE: Core – Reduction techniques
Model Candidate partition
Equivalence condition (quantifier free)
ERODE: Core – Reduction techniques
Model Candidate partition
Equivalence condition (quantifier free)
ERODE: Core – Reduction techniques
Model Candidate partition
Equivalence condition (quantifier free)
SMT check
ERODE: Core – Reduction techniques
Model Candidate partition
Equivalence condition (quantifier free)
SMT check
ERODE: Core – Reduction techniques
Algorithm. Compute the largest equivalence that refines a given partition of variables:
ERODE: Core – Reduction techniques
Algorithm. Compute the largest equivalence that refines a given partition of variables:
1. SMT check of negation of
ERODE: Core – Reduction techniques
Algorithm. Compute the largest equivalence that refines a given partition of variables:
1. SMT check of negation of
sat
ERODE: Core – Reduction techniques
Algorithm. Compute the largest equivalence that refines a given partition of variables:
1. SMT check of negation of
2. If sat get witness and split partition preserving its uniformity. Goto 1.
sat
ERODE: Core – Reduction techniques
Algorithm. Compute the largest equivalence that refines a given partition of variables:
1. SMT check of negation of
2. If sat get witness and split partition preserving its uniformity. Goto 1.
sat
ERODE: Core – Reduction techniques
Algorithm. Compute the largest equivalence that refines a given partition of variables:
1. SMT check of negation of
2. If sat get witness and split partition preserving its uniformity. Goto 1.
unsat
sat
ERODE: Core – Reduction techniques
Algorithm. Compute the largest equivalence that refines a given partition of variables:
1. SMT check of negation of
2. If sat get witness and split partition preserving its uniformity. Goto 1.
3. If unsat the current partition is the coarsest refinement. End. unsat
sat
ERODE: Core – Reduction techniques
Model Candidate partition
Equivalence condition (quantifier free)
SMT check
ERODE: Core – Reduction techniques
Model Candidate partition
Equivalence condition (quantifier free)
SMT checkhttp://rise4fun.com/Z3/lW7d1http://rise4fun.com/Z3/lW7d1
Highlights● RN Encoding● FDE & FB reduction
● Same FDE reductions as for ODE● FB is stricter than FDE
● BDE & BB reduction● Same BDE reductions as for ODE● The two reductions coincide● Comparison of the BDE/BB reduced RNs
ERODE: FB/BB
Outline
● ERODE: A tool for the Evaluation and Reduction of ODEs- Frontend- Core- Reduction Techniques
● Case Studies- Large case studies
Continuous time Markov chains from MRMC distributionChemical Reaction Networks from the literature
- Spatial dynamicsCrowd DynamicsMulti-community Epidemiology
Some considered large case studies
J.P. Katoen, T. Kemna, I.S. Zapreev, and D.N. Jansen.Bisimulation minimisation mostly speeds up probabilistic model checking. TACAS, 2007
Largest models from MRMC distributionComparison with state-of-the-art model checker to assess scalability and correctness
J.P. Katoen, T. Kemna, I.S. Zapreev, and D.N. Jansen.Bisimulation minimisation mostly speeds up probabilistic model checking. TACAS, 2007
Largest models from MRMC distributionComparison with state-of-the-art model checker to assess scalability and correctness
J.P. Katoen, T. Kemna, I.S. Zapreev, and D.N. Jansen.Bisimulation minimisation mostly speeds up probabilistic model checking. TACAS, 2007
Largest models from MRMC distributionComparison with state-of-the-art model checker to assess scalability and correctness
Biochemical models from BioNetGen repositorySupport for state-of-the-art tool for the analysis of biological networks
http://bionetgen.org
Observable-preserving FB reduction
P. Kocieniewski, J.R. Faeder, and T. LipniackiThe interplay of double phosphorylation and scaffolding in MAPK pathways. Journal of Theoretical Biology 295, 2012
Observable-preserving FB reduction
Outline
● ERODE: A tool for the Evaluation and Reduction of ODEs- Frontend- Core- Reduction Techniques
● Case Studies- Large case studies
Continuous time Markov chains from MRMC distributionChemical Reaction Networks from the literature
- Spatial dynamicsCrowd DynamicsMulti-community Epidemiology
Crowd Dynamics
Square 4
Square 1 Square 2
Square 3
J.E. Rowe, R.L. Gomez. El Botellon: Modeling the movement of crowds in a city. Complex Systems 14, 2003L. Bortolussi, D. Latella, M. Massink. Stochastic process algebra and stability analysis of collective systems. Coordination 2013
Crowd Dynamics
Square 4
Square 1 Square 2
Square 3
s1s1
J.E. Rowe, R.L. Gomez. El Botellon: Modeling the movement of crowds in a city. Complex Systems 14, 2003L. Bortolussi, D. Latella, M. Massink. Stochastic process algebra and stability analysis of collective systems. Coordination 2013
Crowd Dynamics
Square 4
Square 1 Square 2
Square 3
0.25
0.25
0.75 0.75
s1s1
J.E. Rowe, R.L. Gomez. El Botellon: Modeling the movement of crowds in a city. Complex Systems 14, 2003L. Bortolussi, D. Latella, M. Massink. Stochastic process algebra and stability analysis of collective systems. Coordination 2013
Crowd Dynamics
Square 4
Square 1 Square 2
Square 3
0.25
0.25
0.75 0.75
s1s1 s2s2
J.E. Rowe, R.L. Gomez. El Botellon: Modeling the movement of crowds in a city. Complex Systems 14, 2003L. Bortolussi, D. Latella, M. Massink. Stochastic process algebra and stability analysis of collective systems. Coordination 2013
Crowd Dynamics
s1s1 s2s2
s1s1 s4s4
s2s2 s3s3
s3s3 s4s4
Highlights● Plots for different IC● BDE/BB formally proves the presence of “symmetric squares”
ERODE: FB/BB
Square 4
Square 1 Square 2
Square 3
0.25
0.25
0.75 0.75
Multi-community Epidemiology
Community 4
Community 1 Community 2
Community 3
0.01
0.01
0.03 0.03
Multi-community Epidemiology
Community 4
Community 2
Community 3
0.01
0.01
0.03 0.03
Community 1
R1I1S1
Si Sj
Multi-community Epidemiology
Ii Ij
Ri Rj
Movements
Si Sj IiSi IiIi
Multi-community Epidemiology
Ii Ij
Ri Rj
Movements Local interactions
Si Sj IiSi IiIi
Ii Ri
Multi-community Epidemiology
Ii Ij
Ri Rj
Movements Local interactions
Multi-community Epidemiology
Community 4
Community 1 Community 2
Community 3
Multi-community Epidemiology
Community 4
Community 1 Community 2
Community 3
Multi-community Epidemiology
http://groups.inf.ed.ac.uk/paloma/SIR.paloma
C. Feng, J. Hillston.PALOMA: A Process Algebra for Located Markovian Agents. QEST 2014
Multi-community Epidemiology
C. Feng, J. Hillston, V. Galpin.Automatic Moment-Closure Approximation of Spatially Distributed Collective Adaptive Systems. ACM Trans. Mod. Comp. Sim. 26, 2016
Multi-community Epidemiology
Community 4
Community 2
Community 3
0.01
0.01
0.03 0.03
Community 1
R1I1S1
R4I4S4
R2I2S2
R3I3S3
Multi-community Epidemiology
Community 4
Community 2
Community 3
0.01
0.01
0.03 0.03
Community 1
R1I1S1
R4I4S4
R2I2S2
R3I3S3
ERODE: Evaluation and Reduction of ODEs
Auto-completionError detectionFix suggestion
Project explorerOutline & Problems
Console & Plots
Update managerNew ERODE Project & FileImport BNG, Matlab, LBS
ERODE ViewsODE and RN Editor ERODE Wizards
ODESimulator
Statistical ModelChecker (RN)
BDE/FDE Reducer
BB/FB Reducer (RN)
ODE RN Encoder
Importer/Exporter(BNG,Matlab,LBS,SBML)
StochasticSimulator (RN)
ApacheCommons Math FERN MultiVeStA Microsoft Z3
FRO
NTE
ND
CORE
APIs
Thanks
http://sysma.imtlucca.it/tools/erode/