Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1,...

24
Finding Instability in Biological Models Byron Cook 1,2 , Jasmin Fisher 1,3 , Benjamin A. Hall 1 , Samin Ishtiaq 1 , Garvit Juniwal 4 , Nir Piterman 5 1 Microsoft Research 2 University College London 3 University of Cambridge 4 UC Berkeley 5 University of Leicester 1 CAV 2014

Transcript of Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1,...

Page 1: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

1

Finding Instability in Biological Models

Byron Cook1,2, Jasmin Fisher1,3, Benjamin A. Hall1, Samin Ishtiaq1, Garvit Juniwal4, Nir Piterman5

1Microsoft Research 2University College London3University of Cambridge 4UC Berkeley5University of Leicester

CAV 2014

Page 2: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

2

Biological Signaling Networks• Network of chemicals (usually proteins) regulating each others’

concentration, evolving the overall state.• Qualitative Networks offer a good level of abstraction for

modeling and analysis. [BMC Syst Biol ’07] Schaub et. al.• Have been applied to blood cell differentiation, skin homeostasis

and cancer cell development.

Page 3: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

3

Homeostasis• Homeostasis (or stability) is a natural requirement for

most of these systems. It represents the ability to stay at robust equilibrium.• Model of a naturally occurring phenomenon stability

desired. starting from every state, the same stable state reached.

• Required sanity check during development stage.• Central problem: Enabling biologists to be able to quickly

check stability and examine instability.

Page 4: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

4

Bio Model Analyzer (BMA)

http://biomodelanalyzer.research.microsoft.com/[CAV’12] Visual Tool for Modeling and Analyzing Biological Networks. Benque et. al.

Page 5: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

5

Contribution• Previous: BMA’s stability algorithm from [VMCAI’11 Cook

et. al.]• Problem: takes too long (~ 2 hours) for certain classes of

models.• This work: divide/conquer based algorithm to tackle hard

cases.• Benefit: Up to 3 orders of magnitude of speed up. Can solve

all existing models in matter of seconds making BMA truly interactive.

Page 6: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

6

Outline• Definitions – Qualitative Networks and stability• Summary of previous algorithm and its issues• New divide/conquer algorithm• Evaluation and conclusion

Page 7: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

Qualitative Networks (QNs)

• Variables• finite domain – [0, N]

• Dependencies • Target functions

• Z moves towards F(X,Y) in increments/decrements of 1

• Typically monotonic

• Synchronous updates• Unique next state

X

Z

Y

:=

7

Page 8: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

8

Typical Size of a QN

• Variables (|V|) -- 50• Domain size (N+1) – 4• Average in-degree – 3• State space – 450

Page 9: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

9

Stabilization Behavior in QNs (1/2)

For a QN with variables V • State Space ∑ = {0, …, N}|V|

• Transition Function δ: ∑∑ (defined via target functions)• All states are initial

• A state s said to be recurring if it is possible to reach from s to itself with finite applications of δ.

• Unique recurring state Stabilizing QN

Page 10: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

10

Stabilization Behavior in QNs (2/2)

Stable Unstable

Cycle (length >=2) Multiple self-loops

State Cycle Self-loop state

Bifurcation (BF)

Cyclic Instability (CI)

Page 11: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

12

Proving Stability

• Goal: compute the set of recurring states• Idea: over-approximate via rectangular abstraction• If over-approximation has single state - STABLE• Else:

1) Check for multiple self-loop states by encoding to a SAT query 2) Check for cycles of increasing length starting at 2 (BMC)3) If no cycles found for a length > diameter – STABLE (using a naïve over-approximation of diameter)

[VMCAI’11 Proving Stabilization of Biological Systems. Cook et. al.]

Page 12: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

13

Over-Approximation Technique

• Keep track of an interval per variable• Start with the set of all states • For a variable, given the current intervals of its inputs and the

target function, is it possible to tighten its interval?

• Order of updating variables doesn’t matter Pick arbitrarily from a work list.

X

Y

[0,2]

[0 ,9]

𝐹 (𝑌 )=𝑋+1

X

Y

[0,2]

[1,3]

Page 13: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

14

Pitfalls0 1 2 3

012

AB

Trivially Stable (TS)

Bifurcation (BF)

Cyclic Instability (CI)

Non-trivially Stable (NTS)

Computationally prohibitive todistinguish these two cases

SAT !!

Page 14: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

15

Main Contribution:Finding Instability• New instability finding algorithm to distinguish between

Cyclic Instability (CI) and Non-Trivial Stability (NTS)• Rectangular abstraction. A Cartesian product of intervals is

called a region. For example, [1, 4] × [0, 2]• Uses two new generic procedures SHRINK and CUT.

Page 15: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

16

SHRINK• SHRINK: region region.

Given a region ρ, it returns another region ρ’ contained in ρ s.t. all cycles and self-loops in ρ are within ρ’

• The previous interval update technique is one way to implement SHRINK• The old algorithm can be thought of as a single application

of SHRINK, now we use it within a recursive procedure.

0 1 2 3

012

AB

ρ ρ'

Page 16: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

17

CUT• A cut of a region ρ is a pair (ρ1, ρ2) of regions s.t. ρ1ρ2 = ρ.

• A frontier of a cut (ρ1, ρ2) is a pair of sets of states around the cut.• A frontier can be two/one/zero-way.

cut

frontier(two-way)

• CUT: region cut × frontier.

ρ

ρ1ρ2

Page 17: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

18

FINDINSTABILITY// distinguish between CI and NTS// returns either stable or a cycleFINDINSTABILITY(ρ): ρ SHRINK(ρ) if ρ contains single state then return stable else

(ρ1, ρ2) CUT(ρ)

res1 FINDINSTABILITY(ρ1)

if res1 is cycle then return res1

res2 FINDINSTABILITY(ρ2)

if res2 is cycle then return res2

return (cycle) FINDCYCLEACROSSCUT(ρ1, ρ2)

Page 18: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

19

Concrete Implementation of SHRINK

• Reduce region while retaining all contained cycles; update intervals• Issue: Due to cuts, might get outgoing transitions causing

intervals to grow• Fix: Change target functions by limiting with a min/max value.• TB’ = max(min(TB, 1), 0)

B 0 1 2 3

Page 19: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

20

Concrete Implementation of CUT

• Split the interval of one of the |V| variables.• Variables change by at most 1 the slice around the split

point is a frontier.• Enumerate over N*|V| choices until a zero/one-way frontier

is found because no loops can exist across such frontiers.• Zero/one-way property can be checked via a SAT query.

cut

Page 20: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

21

FINDCYCLEACROSSCUT• If the frontier is zero/one-way Return none• Else enumerate over states in the frontier and run

simulations of the transition function. Stop when a cycle of length >= 2 is found.• Works well because

• SHRINK is effective in reducing the search space.• One-way cuts are prevalent due to simple and monotonic target

functions. CYCLE!!

Page 21: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

22

`

Examples one-way frontier

Cyclic Instability (CI)

Non-trivially Stable (NTS)

Page 22: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

23

Benchmarks and Evaluation

T.O. = 15 minutes

http://www.cs.le.ac.uk/people/npiterman/publications/2014/instability/

Model Variables Dependencies

N+1 BMA(old)(ms)

BMA(new)(ms)

Speed up

Dicty Population 35 71 2 60066 2514 23.6x

Firing Neuron 21 21 2 218 458 0.5xL Model 25 105 4 43934 9865 4.5x

Leukemia 57 92 3 4497 446 10.1xSSkin 1D 40 46 5 T.O. 132350 >6.8x

SSkin 2D 2 layers 40 64 5 T.O. 2706 >322.6x

Ion Channel 10 7 2 499 173 2.9x

Lambda Phage 8 13 2 3113 197 15.8x

Resting Neuron 21 28 2 T.O. 244949 >3.7x

E. Coli Chemotaxis 9 10 5 T.O. 250 >3600x

Page 23: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

24

Conclusion

• SHRINK and CUT work effectively for systems under consideration.• Running time down from hours to milliseconds• The added capabilities make the tool clinically relevant for

industrial biomedicine.• Found stability and instability results for previously un-

tractable and biologically important models:• bacterial chemotaxis• dictyostelium discoideum

Page 24: Finding Instability in Biological Models Byron Cook 1,2, Jasmin Fisher 1,3, Benjamin A. Hall 1, Samin Ishtiaq 1, Garvit Juniwal 4, Nir Piterman 5 1 Microsoft.

25

Thank You!