synchronous parallel composition in process calculus for ecological models

25
Anna Philippou Department of Computer Science University of Cyprus Joint work with Mauricio Toro Department of Comp. Sc. EAFIT University Christina Kassara Department of Biology University of Patras Spyros Sfenthourakis Department of Biology University of Cyprus Synchronous Parallel Composition in Process Calculus for Ecological Models

Upload: nakia

Post on 04-Jan-2016

25 views

Category:

Documents


2 download

DESCRIPTION

Synchronous Parallel Composition in Process Calculus for Ecological Models. Motivation and Background. Population Ecology Population dynamics Conservation schemes, species reintroduction Individual-based modeling vs. population-based modeling Formal methods for ecological systems - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Synchronous Parallel Composition in Process Calculus for Ecological Models

Anna Philippou Department of Computer Science

University of Cyprus

Joint work with

Mauricio ToroDepartment of Comp. Sc.

EAFIT University Christina KassaraDepartment of Biology

University of Patras

Spyros SfenthourakisDepartment of Biology

University of Cyprus

Synchronous Parallel Composition in Process Calculus for Ecological Models

Page 2: Synchronous Parallel Composition in Process Calculus for Ecological Models

Motivation and Background

• Population Ecology– Population dynamics– Conservation schemes, species reintroduction

• Individual-based modeling vs. population-based modeling

• Formal methods for ecological systems– Process calculi, P-systems, cellular automata

2/25

Page 3: Synchronous Parallel Composition in Process Calculus for Ecological Models

Motivation and Background

• Previous work – PALPS (Process Algebra with Locations for Population Systems)

• a discrete-time, probabilistic process calculus with locations– Translation from PALPS to model checker PRISM– Application of the framework for studying population dynamics through

model checking

• Limitations– State space explosion – Interleaving semantics in process calculi vs. phase-based execution

considered by ecologists

3/25

Page 4: Synchronous Parallel Composition in Process Calculus for Ecological Models

Illustration by example

• Consider a species that cycles through dispersal and reproduction phases:

• State space of a single individual

4/25

…move rep√

Page 5: Synchronous Parallel Composition in Process Calculus for Ecological Models

Illustration by example

• System with 2 individuals: S | S

• State space of 2 individuals (first time unit):

5/25

=move

=rep…√

Page 6: Synchronous Parallel Composition in Process Calculus for Ecological Models

Illustration by example

=move

=rep

• System with 3 individuals: S | S | S

• State space of 3 individuals (first time unit):

…√

6/25

Page 7: Synchronous Parallel Composition in Process Calculus for Ecological Models

Illustration by example

• Intention: individuals execute their dispersal and reproduction phases simultaneously.

• Proposed solution– Syntax

Group individuals into populations– Semantics

Synchronous parallel composition

• E.g.– System with k individuals: Sk– state space for k individuals

7/25

movek repk

Page 8: Synchronous Parallel Composition in Process Calculus for Ecological Models

S-PALPS

• An extension of PALPS: a discrete-time, probabilistic process algebra with locations

• World consisting of a set of locations each featuring its own environmental characteristics and inhabited by populations. World implemented as a graph:

8/25

Page 9: Synchronous Parallel Composition in Process Calculus for Ecological Models

S-PALPS

• Basic entities– Channels: a, b, …

• can be used in input position, a, b, or in output position a, b

– Locations: l1, l2, …• And a set of logical expressions, e, referring to properties of locations

– Species: s1, s2, …

• Individuals– Modelled as processes– Possess a species and a location– Locations may change dynamically– Engage in activities (e.g. reproduction, dispersal, predation, death)

9/25

Page 10: Synchronous Parallel Composition in Process Calculus for Ecological Models

Syntax (1)• The Individual level Inactive Individual

Action prefix

Probabilistic choice

Conditional choice

Parallel composition

Constant

• Actions Input action

Output action

Dispersal action

Tick action10/25

Page 11: Synchronous Parallel Composition in Process Calculus for Ecological Models

Syntax (2)

• The system level

Inactive system

Located Population

Parallel Composition

Restriction

11/25

Page 12: Synchronous Parallel Composition in Process Calculus for Ecological Models

S-PALPS Example

• The individual level: Individuals live on an nn lattice of sites and they disperse and reproduce in two discrete phases.

• The system level: A system comprised of 2 individuals at location and one individual at location ’:

12/25

Page 13: Synchronous Parallel Composition in Process Calculus for Ecological Models

S-PALPS Semantics

• Two transition relations:– Probabilistic transition relation – Nondeterministic transition relation

• Key concepts– All components must synchronize on a tick-action– Probabilistic transition take precedence over nondeterministic transitions– All components able to execute a nondeterministic action must proceed

synchronously

13/25

Page 14: Synchronous Parallel Composition in Process Calculus for Ecological Models

Selected Rules – Population Level

• (ACT)

• (MOVE)

14/25

Page 15: Synchronous Parallel Composition in Process Calculus for Ecological Models

Selected Rules – System Level

• (TICK)

• (SYNCH)

15/25

Page 16: Synchronous Parallel Composition in Process Calculus for Ecological Models

Model checking S-PALPS models

• S-PALPS models where probabilistic and nondeterministic behavior co-exists

• PRISM model checker for probabilistic systems (Markov Decision Processes, Discrete Markov Chains, Continuous MCs)

• Prism language– State-based– Guarded commands– Set of modules that communicate with each other on shared actions

(CSP-style communication)

16/25

Page 17: Synchronous Parallel Composition in Process Calculus for Ecological Models

Encoding PALPS into PRISM

• To translate SPALPS into the PRISM language– Each state of a located population is a module– A module has a variable that counts the number of individuals at the

specific state– the execution flow is facilitated by a local variable– all modules synchronize via one of the following actions:

• synch – executed when a nondeterministic transition takes place• tick – executed when a timed action takes place• prob – executed when a probabilistic transition takes place

17/25

Page 18: Synchronous Parallel Composition in Process Calculus for Ecological Models

global sp:[0,max] init 5

global sQ:[0,max] init 0

module P st:[0..5] init 1; nP:[0..max]

[] (st=1)&(sP>0) (tact’=0)&

(st’=2)&(np’=sP);

[] (st=1)&(sP=0) (st’=2);

[synch] (st=2) (st’=3); [](st=3)&(pact=0)(sP’=sp– np)

&(sQ’=sQ+nP) [prob] (st=3)&(pact=1) …

module Q …

Encoding S-PALPS into PRISM – A Snapshot

18/25

Page 19: Synchronous Parallel Composition in Process Calculus for Ecological Models

Correctness of the encoding

Theorem. For any S-PALPS process and its PRISM translation we have1. If then .2. If then .3. If then .

19/25

Page 20: Synchronous Parallel Composition in Process Calculus for Ecological Models

Case Study – The Eleonora Falcon

• Migrant species that breeds in the Mediterranean sea

• Local conservation importance

• Three types of individuals– Juveniles – Young adults (sexual maturity at the age of 4)– Mature adults (more likely to choose a protected nest)

• Parameters– Probability of an individual to return to the island to breed (mortality)– Availability of less-exposed nests– Probabilities of offspring survival in exposed/less-exposed nests

20/25

Page 21: Synchronous Parallel Composition in Process Calculus for Ecological Models

The life cycleNewborns

Dispersal

Juveniles of Age 4

Mortality

Surviving Adults

Dispersal

First-year breeders

Reproductionin exposed nest

Newborns

Adults

DIspersal

Surviving Adults

Mortality

Experiencedbreeders

Reproduction inless exposed nest

Adults

DIspersal

Mortality

Newborns

Surviving Adults

21/25

Page 22: Synchronous Parallel Composition in Process Calculus for Ecological Models

The model in S-PALPS

22/25

Page 23: Synchronous Parallel Composition in Process Calculus for Ecological Models

Analysis in PRISM

• Verification of probabilistic temporal PCTL properties, e.g.– Probability of extinction of the population in the next 10 years is less than

a certain threshold pe

– The total average number of individuals of species s at time unit t

• Semantics of PRISM model checking

– Defined over Markov Decision Processes: Computes minimum and maximum probabilities

– Approximation defined over Discrete-Time Markov Chains: Computes reward-based properties, steady state and reachability

• Simulation– Explore random paths of execution– Search for deadlocks using Prism simulation– Perform model-checking by simulation (statistical model checking)

23/25

Page 24: Synchronous Parallel Composition in Process Calculus for Ecological Models

Representative results

• Impact of changing the offspring survival rates on the size of the population

• Results indicate a fair degree of stability in the evolution of the species and a relative insensitivity to small changes in local conditions

24/25

Page 25: Synchronous Parallel Composition in Process Calculus for Ecological Models

Conclusions and future work

• S-PALPS– Synchronous parallel composition – more faithful models– Reduction of the state space of systems– Case study – promising results

• Current/future work:– Translation from S-PALPS to PRISM has been automated– Improve the translation: generality vs. efficiency– Further calibrate our model and take into account more aspects of interest

to biologists– Apply to other case studies– Mean field semantics à la CCS within a spatially-explicit framework

25/25