Quantitative Abstractions For Collective Adaptive Systems · Quantitative Abstractions For...

Preview:

Citation preview

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/

Recommended