260 likes | 403 Views
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
E N D
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
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
Illustration by example • Consider a species that cycles through dispersal and reproduction phases: • State space of a single individual move rep …
Illustration by example • System with 2 individuals: S | S • State space of 2 individuals (first time unit): move = … rep =
Illustration by example • System with 3 individuals: S | S | S • State space of 3 individuals (first time unit): move = … rep = 6/25
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 forkindividuals movek repk
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:
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)
Syntax (1) • The Individual level Inactive Individual Action prefix Probabilistic choice Conditional choice Parallel composition Constant • Actions Input action Output action Dispersal action Tick action
Syntax (2) • The system level Inactive system Located Population Parallel Composition Restriction
S-PALPS Example • The individual level: Individuals live on an nnlattice 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 ’:
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
Selected Rules – Population Level • (ACT) • (MOVE)
Selected Rules – System Level • (TICK) • (SYNCH)
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)
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
Encoding S-PALPS into PRISM – A Snapshot global sp:[0,max] init 5 global sQ:[0,max] init0 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 … …
Correctness of the encoding Theorem. For any S-PALPS process and its PRISM translation we have • If then . • If then . • If then .
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
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)
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
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