Mixed-Integer Programming for Cycle Detection in Non-reversible - - PowerPoint PPT Presentation

mixed integer programming for cycle detection in non
SMART_READER_LITE
LIVE PREVIEW

Mixed-Integer Programming for Cycle Detection in Non-reversible - - PowerPoint PPT Presentation

Mixed-Integer Programming for Cycle Detection in Non-reversible Markov Processes Isabel Beckenbach Leon Eifler Ambros Gleixner Jakob Witzig Mathematical Optimization, Zuse Institute Berlin Konstantin Fackeldey Andreas Grever Marcus Weber


slide-1
SLIDE 1

Mixed-Integer Programming for Cycle Detection in Non-reversible Markov Processes

Isabel Beckenbach Leon Eifler Ambros Gleixner Jakob Witzig

Mathematical Optimization, Zuse Institute Berlin

Konstantin Fackeldey Andreas Grever Marcus Weber

Computational Molecular Design, Zuse Institute Berlin

SCIP Workshop 2018 · Aachen

slide-2
SLIDE 2

Motivation

◮ Many chemical and biological

processes can be interpreted as a Markov State Models

  • J. Witzig (ZIB): Cycle-Clustering

1 / 25

slide-3
SLIDE 3

Motivation

◮ Many chemical and biological

processes can be interpreted as a Markov State Models

◮ After simulation (e.g.

Monte-Carlo) a discrete set of states S = {1, . . . , n} and a transition matrix P describe the underlying Markov process

  • J. Witzig (ZIB): Cycle-Clustering

1 / 25

slide-4
SLIDE 4

Motivation

◮ Many chemical and biological

processes can be interpreted as a Markov State Models

◮ After simulation (e.g.

Monte-Carlo) a discrete set of states S = {1, . . . , n} and a transition matrix P describe the underlying Markov process

◮ A clustering of the states can be

used to analyze the process

  • J. Witzig (ZIB): Cycle-Clustering

1 / 25

slide-5
SLIDE 5

Problem Description

◮ Let P ∈ Rn×n a transition matrix of a Markov process with stationary distribution

π ∈ Rn.

◮ A process is called reversible, if for all states i and j holds:

πipij = πjpji

  • J. Witzig (ZIB): Cycle-Clustering

2 / 25

slide-6
SLIDE 6

Problem Description

◮ Let P ∈ Rn×n a transition matrix of a Markov process with stationary distribution

π ∈ Rn.

◮ A process is called reversible, if for all states i and j holds:

πipij = πjpji Goal Find clustering C1, . . . , Cm, s.t. the process between two consecutive clusters is non-reversible and within each cluster coherent.

  • J. Witzig (ZIB): Cycle-Clustering

2 / 25

slide-7
SLIDE 7

Problem Description

◮ Let P ∈ Rn×n a transition matrix of a Markov process with stationary distribution

π ∈ Rn.

◮ A process is called reversible, if for all states i and j holds:

πipij = πjpji Goal Find clustering C1, . . . , Cm, s.t. the process between two consecutive clusters is non-reversible and within each cluster coherent.

  • J. Witzig (ZIB): Cycle-Clustering

2 / 25

slide-8
SLIDE 8

Problem Description

◮ Let P ∈ Rn×n a transition matrix of a Markov process with stationary distribution

π ∈ Rn.

◮ A process is called reversible, if for all states i and j holds:

πipij = πjpji Goal Find clustering C1, . . . , Cm, s.t. the process between two consecutive clusters is non-reversible and within each cluster coherent.

  • J. Witzig (ZIB): Cycle-Clustering

2 / 25

slide-9
SLIDE 9

Why is this interesting in practice?

◮ If a process is reversible the leading eigenvalues can be used to find a meaningful

clustering.

1Conrad, N. D., Weber, M., Schütte, C. (2016). Finding dominant structures of nonreversible Markov

  • processes. Multiscale Modeling & Simulation, 14(4), 1319-1340.

2Weber, M., Fackeldey, K. (2015). G-PCCA: Spectral clustering for non-reversible Markov chains. ZIB

Rep, 15(35).

  • J. Witzig (ZIB): Cycle-Clustering

3 / 25

slide-10
SLIDE 10

Why is this interesting in practice?

◮ If a process is reversible the leading eigenvalues can be used to find a meaningful

clustering.

◮ If a process is non-reversible some of the leading eigenvalues are complex and close

to the unit circle1 ⇒ only meaningful interpretation for dominant cycles, but not in general.

1Conrad, N. D., Weber, M., Schütte, C. (2016). Finding dominant structures of nonreversible Markov

  • processes. Multiscale Modeling & Simulation, 14(4), 1319-1340.

2Weber, M., Fackeldey, K. (2015). G-PCCA: Spectral clustering for non-reversible Markov chains. ZIB

Rep, 15(35).

  • J. Witzig (ZIB): Cycle-Clustering

3 / 25

slide-11
SLIDE 11

Why is this interesting in practice?

◮ If a process is reversible the leading eigenvalues can be used to find a meaningful

clustering.

◮ If a process is non-reversible some of the leading eigenvalues are complex and close

to the unit circle1 ⇒ only meaningful interpretation for dominant cycles, but not in general. State-of-the-art methods for non-reversible processes are, e.g.,

◮ Schur-decomposition2 ◮ “Fuzzy” clustering (i.e. assign fractions of states to clusters) and apply a rounding

heuristic but none of them can prove optimality or has some guarantee for the solution quality.

1Conrad, N. D., Weber, M., Schütte, C. (2016). Finding dominant structures of nonreversible Markov

  • processes. Multiscale Modeling & Simulation, 14(4), 1319-1340.

2Weber, M., Fackeldey, K. (2015). G-PCCA: Spectral clustering for non-reversible Markov chains. ZIB

Rep, 15(35).

  • J. Witzig (ZIB): Cycle-Clustering

3 / 25

slide-12
SLIDE 12

Our Goal

  • 1. Find a clustering C1, . . . , Cm, m ∈ N

given.

  • 2. Maximize the net-flow between

consecutive clusters and the coherence within each cluster.

  • J. Witzig (ZIB): Cycle-Clustering

4 / 25

slide-13
SLIDE 13

Our Goal

  • 1. Find a clustering C1, . . . , Cm, m ∈ N

given.

  • 2. Maximize the net-flow between

consecutive clusters and the coherence within each cluster.

  • 3. Should be applicable for all

non-reversible processes with stationary distribution.

  • J. Witzig (ZIB): Cycle-Clustering

4 / 25

slide-14
SLIDE 14

Our Goal

  • 1. Find a clustering C1, . . . , Cm, m ∈ N

given.

  • 2. Maximize the net-flow between

consecutive clusters and the coherence within each cluster.

  • 3. Should be applicable for all

non-reversible processes with stationary distribution.

  • 4. We want to be able to either prove
  • ptimality or to measure the solution

quality.

  • J. Witzig (ZIB): Cycle-Clustering

4 / 25

slide-15
SLIDE 15

Cycle-Clustering MINLP

max net-flow + α ·

  • t∈C

coherence of Ct s.t.

  • t∈C

xit = 1 ∀i ∈ S (1)

  • i∈S

xit ≥ 1 ∀t ∈ C (2) xit ∈ {0, 1} ∀i ∈ S, ∀t ∈ C

◮ Set of clusters C ◮ Discrete set of states S

  • J. Witzig (ZIB): Cycle-Clustering

5 / 25

slide-16
SLIDE 16

Cycle-Clustering MINLP

max net-flow + α ·

  • t∈C

coherence of Ct s.t.

  • t∈C

xit = 1 ∀i ∈ S (1)

  • i∈S

xit ≥ 1 ∀t ∈ C (2) xit ∈ {0, 1} ∀i ∈ S, ∀t ∈ C

◮ Set of clusters C ◮ Discrete set of states S ◮ Binary variable xit = 1 ⇐

⇒ state i is assigned to cluster t

  • J. Witzig (ZIB): Cycle-Clustering

5 / 25

slide-17
SLIDE 17

Cycle-Clustering MINLP

max

  • t∈C

ǫt + α ·

  • t∈C

coherence of Ct s.t.

  • t∈C

xit = 1 ∀i ∈ S (1)

  • i∈S

xit ≥ 1 ∀t ∈ C (2) ǫt =

  • i=j∈S

πipij(xitxjφ(t) − xiφ(t)xjt) ∀t ∈ C (3) xit ∈ {0, 1} ∀i ∈ S, ∀t ∈ C ǫt ∈ R≥0 ∀t ∈ C

◮ Set of clusters C ◮ Discrete set of states S ◮ Binary variable xit = 1 ⇐

⇒ state i is assigned to cluster t

◮ Cont. variable ǫt representing the net-flow between Ct and Cφ(t)

  • J. Witzig (ZIB): Cycle-Clustering

5 / 25

slide-18
SLIDE 18

Cycle-Clustering MINLP

max

  • t∈C

ǫt + α ·

  • t∈C
  • i,j∈S

πipijxitxjt s.t.

  • t∈C

xit = 1 ∀i ∈ S (1)

  • i∈S

xit ≥ 1 ∀t ∈ C (2) ǫt =

  • i=j∈S

πipij(xitxjφ(t) − xiφ(t)xjt) ∀t ∈ C (3) xit ∈ {0, 1} ∀i ∈ S, ∀t ∈ C ǫt ∈ R≥0 ∀t ∈ C

◮ Set of clusters C ◮ Discrete set of states S ◮ Binary variable xit = 1 ⇐

⇒ state i is assigned to cluster t

◮ Cont. variable ǫt representing the net-flow between Ct and Cφ(t)

  • J. Witzig (ZIB): Cycle-Clustering

5 / 25

slide-19
SLIDE 19

Linearizing the MINLP-Formulation

◮ automatic linearization by SCIP / textbook linearization

  • J. Witzig (ZIB): Cycle-Clustering

6 / 25

slide-20
SLIDE 20

Linearizing the MINLP-Formulation

◮ automatic linearization by SCIP / textbook linearization

◮ compact linearization for binary quadratic problems (L. Liberti, 2007)

✓/✗

  • J. Witzig (ZIB): Cycle-Clustering

6 / 25

slide-21
SLIDE 21

Linearizing the MINLP-Formulation

◮ automatic linearization by SCIP / textbook linearization

◮ compact linearization for binary quadratic problems (L. Liberti, 2007)

✓/✗

◮ problem specific linearization which uses the cyclic structure

  • J. Witzig (ZIB): Cycle-Clustering

6 / 25

slide-22
SLIDE 22

Linearizing the MINLP-Formulation

◮ automatic linearization by SCIP / textbook linearization

◮ compact linearization for binary quadratic problems (L. Liberti, 2007)

✓/✗

◮ problem specific linearization which uses the cyclic structure

◮ Set of relevant transitions: E := {(i, j) ∈ S × S : i = j, πipij + πjpji > 0} ◮ Binary variables yij = 1 ⇔ states i and j are in the same cluster, ∀i, j ∈ E : i < j ◮ Binary variables zij = 1 ⇔ states i ∈ Ct and j ∈ Cφ(t), ∀i, j ∈ E

  • J. Witzig (ZIB): Cycle-Clustering

6 / 25

slide-23
SLIDE 23

MIP Model

max

  • (i,j)∈E

zij(πipij − πjpji) + α

  • (i,j)∈E : i<j

yij(πipij + πjpji) s.t.

  • t∈C

xit = 1 ∀i ∈ S

  • i∈S

xit ≥ 1 ∀t ∈ C xit + xjt − yij + zij − xjφ(t) − xiφ−1(t) ≤ 1 ∀t ∈ C, (i, j) ∈ E xit + xjφ(t) − zij + yij − xjt − xiφ(t) ≤ 1 ∀t ∈ C, (i, j) ∈ E yij + zij + zji ≤ 1 ∀(i, j) ∈ E : i < j xit ∈ {0, 1} ∀i ∈ S, ∀t ∈ C yij, zij, zji ∈ {0, 1} ∀(i, j) ∈ E : i < j

  • J. Witzig (ZIB): Cycle-Clustering

7 / 25

slide-24
SLIDE 24

MIP Model

max

  • (i,j)∈E

zij(πipij − πjpji) + α

  • (i,j)∈E : i<j

yij(πipij + πjpji) s.t.

  • t∈C

xit = 1 ∀i ∈ S

  • i∈S

xit ≥ 1 ∀t ∈ C xit + xjt − yij + zij − xjφ(t) − xiφ−1(t) ≤ 1 ∀t ∈ C, (i, j) ∈ E xit + xjφ(t) − zij + yij − xjt − xiφ(t) ≤ 1 ∀t ∈ C, (i, j) ∈ E yij + zij + zji ≤ 1 ∀(i, j) ∈ E : i < j xit ∈ {0, 1} ∀i ∈ S, ∀t ∈ C yij, zij, zji ∈ {0, 1} ∀(i, j) ∈ E : i < j

  • J. Witzig (ZIB): Cycle-Clustering

7 / 25

slide-25
SLIDE 25

MIP Model

max

  • (i,j)∈E

zij(πipij − πjpji) + α

  • (i,j)∈E : i<j

yij(πipij + πjpji) s.t.

  • t∈C

xit = 1 ∀i ∈ S

  • i∈S

xit ≥ 1 ∀t ∈ C xit + xjt − yij + zij − xjφ(t) − xiφ−1(t) ≤ 1 ∀t ∈ C, (i, j) ∈ E xit + xjφ(t) − zij + yij − xjt − xiφ(t) ≤ 1 ∀t ∈ C, (i, j) ∈ E yij + zij + zji ≤ 1 ∀(i, j) ∈ E : i < j xit ∈ {0, 1} ∀i ∈ S, ∀t ∈ C yij, zij, zji ∈ {0, 1} ∀(i, j) ∈ E : i < j

  • J. Witzig (ZIB): Cycle-Clustering

7 / 25

slide-26
SLIDE 26

MIP Model

max

  • (i,j)∈E

zij(πipij − πjpji) + α

  • (i,j)∈E : i<j

yij(πipij + πjpji) s.t.

  • t∈C

xit = 1 ∀i ∈ S

  • i∈S

xit ≥ 1 ∀t ∈ C xit + xjt − yij + zij − xjφ(t) − xiφ−1(t) ≤ 1 ∀t ∈ C, (i, j) ∈ E xit + xjφ(t) − zij + yij − xjt − xiφ(t) ≤ 1 ∀t ∈ C, (i, j) ∈ E yij + zij + zji ≤ 1 ∀(i, j) ∈ E : i < j xit ∈ {0, 1} ∀i ∈ S, ∀t ∈ C yij, zij, zji ∈ {0, 1} ∀(i, j) ∈ E : i < j

  • J. Witzig (ZIB): Cycle-Clustering

7 / 25

slide-27
SLIDE 27

Facets of the Linearization

Theorem

Let (i, j) ∈ E, t ∈ C, and m ≥ 4. Then the inequalities xit + xjt − yij + zij − xjφ(t) − xiφ−1(t) ≤ 1 and xit + xjφ(t) − zij + yij − xjt − xiφ(t) ≤ 1 are facet-defining for the cycle-clustering polytope (CCP).

  • J. Witzig (ZIB): Cycle-Clustering

8 / 25

slide-28
SLIDE 28

Facets of the Linearization

Theorem

Let (i, j) ∈ E, t ∈ C, and m ≥ 4. Then the inequalities xit + xjt − yij + zij − xjφ(t) − xiφ−1(t) ≤ 1 and xit + xjφ(t) − zij + yij − xjt − xiφ(t) ≤ 1 are facet-defining for the cycle-clustering polytope (CCP). very technical proof

  • J. Witzig (ZIB): Cycle-Clustering

8 / 25

slide-29
SLIDE 29

Facets of the Linearization

Theorem

Let (i, j) ∈ E, t ∈ C, and m ≥ 4. Then the inequalities xit + xjt − yij + zij − xjφ(t) − xiφ−1(t) ≤ 1 and xit + xjφ(t) − zij + yij − xjt − xiφ(t) ≤ 1 are facet-defining for the cycle-clustering polytope (CCP). very technical proof Proof idea

  • 1. Let ˆ

ax + ˆ by + ˆ cz ≤ ˆ δ facet-defining with {(x, y, z) ∈ CCP | ax + by + cz = δ} ⊆ {(x, y, z) ∈ CCP | ˆ ax + ˆ by + ˆ cz = ˆ δ}

  • 2. Compare coefficients and show that ax + by + cz ≤ δ is a multiple of

ˆ ax + ˆ by + ˆ cz ≤ ˆ δ Follows the proof technique of Chopra and Rao (1993).

  • J. Witzig (ZIB): Cycle-Clustering

8 / 25

slide-30
SLIDE 30

Valid Inequalities

  • 1. various types of triangle inequalities

◮ special case: m = 3 ◮ general case: m ≥ 4 (motivated by S. Chopra and M. R. Rao. (1993); M. Grötschel

and Y. Wakabayashi (1990))

  • 2. subtour and path inequalities

◮ motivated by TSP subtour elimination inequalities

  • 3. partitioning inequalities

◮ modification of M. Grötschel and Y. Wakabayashi (1990)

  • J. Witzig (ZIB): Cycle-Clustering

9 / 25

slide-31
SLIDE 31

Valid Inequalities

  • 1. various types of triangle inequalities

◮ special case: m = 3 ◮ general case: m ≥ 4 (motivated by S. Chopra and M. R. Rao. (1993); M. Grötschel

and Y. Wakabayashi (1990))

  • 2. subtour and path inequalities

◮ motivated by TSP subtour elimination inequalities

  • 3. partitioning inequalities

◮ modification of M. Grötschel and Y. Wakabayashi (1990)

  • J. Witzig (ZIB): Cycle-Clustering

9 / 25

slide-32
SLIDE 32

Simple Triangle Inequalities

i k j i j k

special case m = 3: zij + zjk − zki ≤ 1 ∀(i, j), (j, k), (k, i) ∈ E holds in general: yij + yjk − yik ≤ 1 ∀(i, j), (j, k), (k, i) ∈ E

  • J. Witzig (ZIB): Cycle-Clustering

10 / 25

slide-33
SLIDE 33

Triangle Inequalities Involving 2 Clusters

k j i

k is in the successor cluster of i

k j i

k is in the predecessor cluster of i

  • J. Witzig (ZIB): Cycle-Clustering

11 / 25

slide-34
SLIDE 34

Triangle Inequalities Involving 2 Clusters

k j i

k is in the successor cluster of i yij + zik − zjk ≤ 1

k j i

k is in the predecessor cluster of i yij + zki − zkj ≤ 1

  • J. Witzig (ZIB): Cycle-Clustering

11 / 25

slide-35
SLIDE 35

Facet-Defining Triangle Inequalities

A combination of

◮ yij + yjk − yik ≤ 1 ◮ yij + zik − zjk ≤ 1 ◮ yij + zki − zkj ≤ 1

yield a facet-defining inequality.

i j k k j i k j i

  • J. Witzig (ZIB): Cycle-Clustering

12 / 25

slide-36
SLIDE 36

Facet-Defining Triangle Inequalities

A combination of

◮ yij + yjk − yik ≤ 1 ◮ yij + zik − zjk ≤ 1 ◮ yij + zki − zkj ≤ 1

yield a facet-defining inequality.

i j k k j i k j i

Theorem

Let i, j, k ∈ S with (i, j), (j, k), (i, k) ∈ E. Then the triangle inequality yij + yjk − yik + 0.5 (zij + zji + zjk + zkj − zik − zki) ≤ 1 is facet-defining for the cycle clustering polytope.

  • J. Witzig (ZIB): Cycle-Clustering

12 / 25

slide-37
SLIDE 37

Triangle Inequalities Involving 2 Clusters (cont.)

i j k

i is in the successor cluster of j and k zij + zik − yjk ≤ 1

i j k

i is in the predecessor cluster of j and k zji + zki − yjk ≤ 1

  • J. Witzig (ZIB): Cycle-Clustering

13 / 25

slide-38
SLIDE 38

Facet-Defining Triangle Inequalities (cont.)

Theorem

Let i, j, k ∈ S with (i, j), (j, k), (i, k) ∈ E.

◮ If m > 4, then

zij + zik − yjk ≤ 1 and zji + zki − yjk ≤ 1 are facet-defining for the cycle clustering polytope.

◮ If m = 4, then

zij + zik − 2yjk − (zjk + zkj + zji + zki) ≤ 0 is facet-defining for the cycle clustering polytope.

  • J. Witzig (ZIB): Cycle-Clustering

14 / 25

slide-39
SLIDE 39

Facet-Defining Triangle Inequalities (cont.)

Theorem

Let i, j, k ∈ S with (i, j), (j, k), (i, k) ∈ E.

◮ If m > 4, then

zij + zik − yjk ≤ 1 and zji + zki − yjk ≤ 1 are facet-defining for the cycle clustering polytope.

◮ If m = 4, then

zij + zik − 2yjk − (zjk + zkj + zji + zki) ≤ 0 is facet-defining for the cycle clustering polytope.

i j

  • J. Witzig (ZIB): Cycle-Clustering

14 / 25

slide-40
SLIDE 40

Facet-Defining Triangle Inequalities (cont.)

Theorem

Let i, j, k ∈ S with (i, j), (j, k), (i, k) ∈ E.

◮ If m > 4, then

zij + zik − yjk ≤ 1 and zji + zki − yjk ≤ 1 are facet-defining for the cycle clustering polytope.

◮ If m = 4, then

zij + zik − 2yjk − (zjk + zkj + zji + zki) ≤ 0 is facet-defining for the cycle clustering polytope.

i j k

  • J. Witzig (ZIB): Cycle-Clustering

14 / 25

slide-41
SLIDE 41

Facet-Defining Triangle Inequalities (cont.)

Theorem

Let i, j, k ∈ S with (i, j), (j, k), (i, k) ∈ E.

◮ If m > 4, then

zij + zik − yjk ≤ 1 and zji + zki − yjk ≤ 1 are facet-defining for the cycle clustering polytope.

◮ If m = 4, then

zij + zik − 2yjk − (zjk + zkj + zji + zki) ≤ 0 is facet-defining for the cycle clustering polytope.

i j k

  • J. Witzig (ZIB): Cycle-Clustering

14 / 25

slide-42
SLIDE 42

Facet-Defining Triangle Inequalities (cont.)

Theorem

Let i, j, k ∈ S with (i, j), (j, k), (i, k) ∈ E.

◮ If m > 4, then

zij + zik − yjk ≤ 1 and zji + zki − yjk ≤ 1 are facet-defining for the cycle clustering polytope.

◮ If m = 4, then

zij + zik − 2yjk − (zjk + zkj + zji + zki) ≤ 0 is facet-defining for the cycle clustering polytope.

i j k

  • J. Witzig (ZIB): Cycle-Clustering

14 / 25

slide-43
SLIDE 43

Facet-Defining Triangle Inequalities (cont.)

Theorem

Let i, j, k ∈ S with (i, j), (j, k), (i, k) ∈ E.

◮ If m > 4, then

zij + zik − yjk ≤ 1 and zji + zki − yjk ≤ 1 are facet-defining for the cycle clustering polytope.

◮ If m = 4, then

zij + zik − 2yjk − (zjk + zkj + zji + zki) ≤ 0 is facet-defining for the cycle clustering polytope.

i j k

  • J. Witzig (ZIB): Cycle-Clustering

14 / 25

slide-44
SLIDE 44

Facet-Defining Triangle Inequalities (cont.)

Theorem

Let i, j, k ∈ S with (i, j), (j, k), (i, k) ∈ E.

◮ If m > 4, then

zij + zik − yjk ≤ 1 and zji + zki − yjk ≤ 1 are facet-defining for the cycle clustering polytope.

◮ If m = 4, then

zij + zik − 2yjk − (zjk + zkj + zji + zki) ≤ 0 is facet-defining for the cycle clustering polytope.

i j k

  • J. Witzig (ZIB): Cycle-Clustering

14 / 25

slide-45
SLIDE 45

Facet-Defining Triangle Inequalities (cont.)

Theorem

Let i, j, k ∈ S with (i, j), (j, k), (i, k) ∈ E.

◮ If m > 4, then

zij + zik − yjk ≤ 1 and zji + zki − yjk ≤ 1 are facet-defining for the cycle clustering polytope.

◮ If m = 4, then

zij + zik − 2yjk − (zjk + zkj + zji + zki) ≤ 0 is facet-defining for the cycle clustering polytope.

i j k

  • J. Witzig (ZIB): Cycle-Clustering

14 / 25

slide-46
SLIDE 46

Valid Inequalities

  • 1. various types of triangle inequalities

◮ special case: m = 3 ◮ general case: m ≥ 4 (motivated by S. Chopra and M. R. Rao. (1993); M. Grötschel

and Y. Wakabayashi (1990))

  • 2. subtour and path inequalities

◮ motivated by TSP subtour elimination inequalities

  • 3. partitioning inequalities

◮ modification of M. Grötschel and Y. Wakabayashi (1990)

  • J. Witzig (ZIB): Cycle-Clustering

15 / 25

slide-47
SLIDE 47

Subtour Elimination Inequalities

◮ Let K = {(i1, i2), (i2, i3), . . . , (is−1, is), (is, i1)} ⊂ E with 1 < |K| < m ◮ U ⊂ K, |U| ≤ |K| − 1

i1 i2 i3 zi1i2 zi2i3 zi3i1 yi1i2 zi2i3 zi3i4 zi4i1

  • J. Witzig (ZIB): Cycle-Clustering

16 / 25

slide-48
SLIDE 48

Subtour Elimination Inequalities

◮ Let K = {(i1, i2), (i2, i3), . . . , (is−1, is), (is, i1)} ⊂ E with 1 < |K| < m ◮ U ⊂ K, |U| ≤ |K| − 1

i1 i2 i3 zi1i2 zi2i3 zi3i1

  • (i,j)∈K

zij ≤ |K| − 1

yi1i2 zi2i3 zi3i4 zi4i1

  • J. Witzig (ZIB): Cycle-Clustering

16 / 25

slide-49
SLIDE 49

Subtour Elimination Inequalities

◮ Let K = {(i1, i2), (i2, i3), . . . , (is−1, is), (is, i1)} ⊂ E with 1 < |K| < m ◮ U ⊂ K, |U| ≤ |K| − 1

i1 i2 i3 zi1i2 zi2i3 zi3i1

  • (i,j)∈K

zij ≤ |K| − 1

yi1i2 zi2i3 zi3i4 zi4i1

  • (i,j)∈K

zij +

  • (i,j)∈U

yij ≤ |K| − 1

  • J. Witzig (ZIB): Cycle-Clustering

16 / 25

slide-50
SLIDE 50

Subtour Elimination Inequalities

◮ Let K = {(i1, i2), (i2, i3), . . . , (is−1, is), (is, i1)} ⊂ E with 1 < |K| < m ◮ U ⊂ K, |U| ≤ |K| − 1

i1 i2 i3 zi1i2 zi2i3 zi3i1

  • (i,j)∈K

zij ≤ |K| − 1

yi1i2 zi2i3 zi3i4 zi4i1

  • (i,j)∈K

zij +

  • (i,j)∈U

yij ≤ |K| − 1

◮ none of them is facet-defining ◮ but can be separated in polynomial time

  • J. Witzig (ZIB): Cycle-Clustering

16 / 25

slide-51
SLIDE 51

Valid Inequalities

  • 1. various types of triangle inequalities

◮ special case: m = 3 ◮ general case: m ≥ 4 (motivated by S. Chopra and M. R. Rao. (1993); M. Grötschel

and Y. Wakabayashi (1990))

  • 2. subtour and path inequalities

◮ motivated by TSP subtour elimination inequalities

  • 3. partitioning inequalities

◮ modification of M. Grötschel and Y. Wakabayashi (1990)

  • J. Witzig (ZIB): Cycle-Clustering

17 / 25

slide-52
SLIDE 52

Partition Inequalities

B A

  • J. Witzig (ZIB): Cycle-Clustering

18 / 25

slide-53
SLIDE 53

Partition Inequalities

Let A, B ⊂ S, A ∩ B = ∅. The partitioning inequality

  • i∈A, j∈B

zij −

  • i<j∈A

yij −

  • i<j∈B

yij ≤ min{|A|, |B|} (4) is valid for the cycle clustering polytope.

B A

  • J. Witzig (ZIB): Cycle-Clustering

18 / 25

slide-54
SLIDE 54

Partition Inequalities

Let A, B ⊂ S, A ∩ B = ∅. The partitioning inequality

  • i∈A, j∈B

zij −

  • i<j∈A

yij −

  • i<j∈B

yij ≤ min{|A|, |B|} (4) is valid for the cycle clustering polytope.

B A

Theorem

The partitioning inequalities of type (4) are facet-defining if m > 4 and ||A| − |B|| = 1.

  • J. Witzig (ZIB): Cycle-Clustering

18 / 25

slide-55
SLIDE 55

How do the inequalities perform in practice?

Our test instances:

  • 1. Artificial potentials with

3, 4 or 6 minima

  • 2. Repressilator (synthetic

genetic regulatory network)

  • 3. Hindmarsh-Rose (simulate

membrane potential of cells in a human heart)

potential with 4 minima Repressilator (Elowitz and Leibler, 2000)

  • J. Witzig (ZIB): Cycle-Clustering

19 / 25

slide-56
SLIDE 56

Only one slide left before you see some numbers. . .

pA mA pB mB pC mC 5 10 15 pA mA pB mB pC mC pA mA pB mB pC mC ǫ1 ǫ2 ǫ3

Schur Clustering

pA mA pB mB pC mC 5 10 15 pA mA pB mB pC mC pA mA pB mB pC mC ǫ1 ǫ2 ǫ3

Cycle Clustering

(solutions of a repressilator instance)

  • J. Witzig (ZIB): Cycle-Clustering

20 / 25

slide-57
SLIDE 57

Computational Results: Impact of Inequalities

Inequ. time [s] nodes dual integral default 130.6

  • 256.6
  • 1213.3
  • triangle

77.6 0.59 28.8 0.11 474.1 0.39 subtour 122.6 0.94 174.3 0.68 1036.4 0.85 partition 122.6 0.94 121.6 0.47 933.1 0.77 all 68.3 0.52 15.4 0.06 396.6 0.33

Test set of 176 instances with 50 – 250 states. Time limit 1h.

  • J. Witzig (ZIB): Cycle-Clustering

21 / 25

slide-58
SLIDE 58

Mixed Integer Programming is more than cutting planes. . .

Beside of three different type of cutting planes we designed primal heuristics to improve the primal side as well:

◮ greedy heuristic assigning states to clusters ◮ exchange heuristic that swaps states between clusters

(even if it gets worse in between)

◮ problem-tailored LP rounding heuristic

  • J. Witzig (ZIB): Cycle-Clustering

22 / 25

slide-59
SLIDE 59

Mixed Integer Programming is more than cutting planes. . .

Beside of three different type of cutting planes we designed primal heuristics to improve the primal side as well:

◮ greedy heuristic assigning states to clusters

−32% primal integral

◮ exchange heuristic that swaps states between clusters

−53% primal integral (even if it gets worse in between)

◮ problem-tailored LP rounding heuristic

−32% primal integral

  • J. Witzig (ZIB): Cycle-Clustering

22 / 25

slide-60
SLIDE 60

Now, put it all together

Solver solved time [s] primal int dual int SCIP 113 182.4 3274.8 1794.0 CC-SCIP 130 64.7 82.9 327.1 (out of competition) Gurobi 118 153.1 1236.6 1524.9

Test set of 176 instances with 50 – 250 states. Time limit 1h.

  • J. Witzig (ZIB): Cycle-Clustering

23 / 25

slide-61
SLIDE 61

Conclusion

Summary

◮ First MIP model for detecting cyclic clustering of non-reversible Markov State

Models

◮ Various (facet-defining) valid inequalities for the cycle-clustering polytope ◮ Very brief description of problem-tailored primal heuristics

References

◮ Model: Witzig, J., Beckenbach, I., Eifler, L., Fackeldey, K., Gleixner, A., Grever, A.,

& Weber, M. (2018). Mixed-Integer Programming for Cycle Detection in Nonreversible Markov Processes. Multiscale Modeling & Simulation, 16(1), 248-265.

◮ Methods: Master thesis of Leon Eifler, publication coming soon. . .

  • J. Witzig (ZIB): Cycle-Clustering

24 / 25

slide-62
SLIDE 62

The End Thank you for your attention. Questions?

  • J. Witzig (ZIB): Cycle-Clustering

25 / 25