Visualising the Tutte Polynomial Computation Bennett Thompson, David J. Pearce Victoria University...

Preview:

Citation preview

Visualising the Tutte Polynomial Computation

Bennett Thompson, David J. Pearce

Victoria University of Wellington,New Zealand

Gary HaggardBucknell, USA

COMP205 Software Design and Engineering

The Tutte Polynomial

• Delete/Contract Operations:

• Tutte Definition:

T(G) = 1, if G = T(G) = xT(G/e), if e is a bridgeT(G) = yT(G-e), if e is a loopT(G) = T(G-e) + T(G/e), otherwise

G = G–e = G/e =

COMP205 Software Design and Engineering

Tutte Computation Tree

COMP205 Software Design and Engineering

Great, but why do we care?

• Many applications of Tutte polynomial– Physics, Biology and probably lots more …

• Knots– Tangled cords which can’t be unravelled

– Problem: how do we know when two knots are same?

– Tutte polynomial can be used to answer this

COMP205 Software Design and Engineering

GREAT, but why do we care?

• Many applications of Tutte polynomial– Physics, Biology and probably lots more …

• For example– Tangled cords which can’t be unravelled– Double Helix of DNA actually forms a Knot

-- N.R. Cozzarelli and A. Stasiak

COMP205 Software Design and Engineering

Optimising the Computation

• Caching previously seen graphs:

COMP205 Software Design and Engineering

Performance Data

COMP205 Software Design and Engineering

Optimising the Computation

• Degrees of Freedom– Can apply Tutte rules in any order

– Can choose any edge to delete/contract

– Our choices affect size of computation tree

• Edge Selection Heuristics– Developed heuristics: Minsdeg, Vorder

– But, why are they any good?

COMP205 Software Design and Engineering

Visualising the Computation Tree

• Tree may have > 100K nodes– How can we visualise it?

Minsdeg

Vorder

Minsdeg

Vorder

COMP205 Software Design and Engineering

To be continued …

• Edge Selection Heuristics …

– Q) How do we know why they work?– A) Visualise them!

– Q) So, does it really help?– A) Er …, I’ll tell you later !

COMP205 Software Design and Engineering

Graph Layout Algorithms?

• Simple layout algorithm used– Better ones exist that minimise crossings– But, simple approach has some

advantages…