on self-avoiding walks across n-dimensional dice and ...€¦ · (about gretel, hansel, and joker...

14
On Self-Avoiding Walks across n-Dimensional Dice and Combinatorial Optimization: An Introduction Franc Brglez Computer Science Raleigh, NC, USA Version: Sun Sep 22 05:58:27 EDT 2013 Back to contents slide 2 Contents • The fable -- About Gretel and Hansel searching for keys (and about Joker hiding the keys) • Summary and conclusions • Notation and definitions -- Combinatorial problem: defined by function and (concatenated) coordinate type(s) The folding problem examples: under plan A, plan B, and plan C -- coordinate neighborhood(s) defined by coordinate type(s) -- a self-avoiding walk (SAW): a sequence of steps that chain a unique set of pivot coordinates • Global search under SAW and experimental results -- protein folding on rectangular lattice in 2D • Appendix -- Experiments with SAW in progress: graph {VC, Clique, IS, LA}, labs, Golomb ruler, maxsat, npp, jobs, ...

Upload: others

Post on 07-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: On Self-Avoiding Walks across n-Dimensional Dice and ...€¦ · (about Gretel, Hansel, and Joker who keeps hiding the keys) 3-- Joker disguises the first set of keys as labeled

On Self-Avoiding Walks across n-Dimensional Dice and Combinatorial

Optimization: An IntroductionFranc Brglez

Computer Science Raleigh, NC, USA

Version: Sun Sep 22 05:58:27 EDT 2013

Back to contents slide 2

Contents• The fable-- About Gretel and Hansel searching for keys (and about Joker hiding the keys)

• Summary and conclusions

• Notation and definitions-- Combinatorial problem: defined by function and (concatenated) coordinate type(s) The folding problem examples: under plan A, plan B, and plan C-- coordinate neighborhood(s) defined by coordinate type(s)-- a self-avoiding walk (SAW): a sequence of steps that chain a unique set of pivot coordinates

• Global search under SAW and experimental results -- protein folding on rectangular lattice in 2D

• Appendix-- Experiments with SAW in progress: graph {VC, Clique, IS, LA}, labs, Golomb ruler, maxsat, npp, jobs, ...

Franc Brglez. Self-Avoiding Walks across n-Dimensional Dice and Combinatorial Optimization: An Introduction. Informacije MIDEM, 44 (1) 2014: pp. 53-68, English Edition http://www.midem- drustvo.si/journal/ ; alternatively at http://arxiv.org/abs/1309.7508 ; An invited talk at 2013-MIDEM, Kranjska Gora, Slovenia, Sept. 2013
Page 2: On Self-Avoiding Walks across n-Dimensional Dice and ...€¦ · (about Gretel, Hansel, and Joker who keeps hiding the keys) 3-- Joker disguises the first set of keys as labeled

Back to contents slide

The Fable (about Gretel, Hansel, and Joker who keeps hiding the keys)

3

-- Joker disguises the first set of keys as labeled tickets in two urns: Gretel and Hansel search for keys by retrieving them from the respective urns until each finds a ticket whose label represent the combination for the lock on the door to their apartment.

-- Once Gretel and Hansel open doors to their apartments, each steps onto a platform (or a face) of a huge platonic solid (polyhedron) -- so they think at first ...

-- In fact, Joker replaced each urn not with a polyhedron but with a hyperhedron (same number of faces, different face adjacency structure) and hid another set of keys, this time under the labeled tickets, attached to face centers of each hyperhedron.

-- Joker asks Gretel and Hansel to search for keys by walking their respective hyperhedrons, from face-to-face, until they find the real key to their apartment.

Back to contents slide

Gretel, Hansel, and Joker (invisible but omnipresent)

4

Majoring in Computer Science

Majoring in Land Surveying

Both are returning to their adjacent apartments (after a party)

Page 3: On Self-Avoiding Walks across n-Dimensional Dice and ...€¦ · (about Gretel, Hansel, and Joker who keeps hiding the keys) 3-- Joker disguises the first set of keys as labeled

Back to contents slide

Joker replaces locks on doors and posts two urns with clues

5

Gretel takes the ticket from the urn and if she does not succeed in opening the door, she puts the ticket into her handbag and retrieves another ticket. We say that Gretel is sampling contents of the urn without replacement: the probability of Gretel finding the correct ticket on trial k follows uniform distribution, given k remaining tickets: probability is 1/k, mean value is (k + 1)/2, and variance is (k2 − 1)/12.

Gretel and Hansel discover not only that locks have been changed on both apartment doors with punch-key locks but also that mats that hid the keys were replaced with two urns, each containing a set 36 tickets. Each ticket has a printed label with

five digits in the format xx.yy:z (xx.yy is a binary/ternary coordinate, z is a value)

(2^2)*(3^2) = 36 unique coordinates!Only one label opens Gretel’s door, and only one opens Hansel’s door. The two sets are identical.

Who gets in first?

The point of the fable so far: we learn that in a search scenarios such as described here, one can improve the chance of first success by dynamically reducing the search space after each trial. In the average case, Gretel’s search, even with handbag of limited capacity, always requires fewer trials than Hansel’s.

Hansel, who had a few drinks at the party, takes the ticket and if he does not succeed in opening the door, returns the ticket to the urn. We say that Hansel is sampling contents of the urn with replacement: the probability of Hansel finding the correct ticket on trial k follows geometric distribution: probability is (1/n)(1 − (1/n))k−1, mean value is n, and variance is n2(1 − (1/n)).

HanselGretel

Back to contents slide

On entering respective apartments, each steps onto what appears as a platonic solid, but only Joker knows what it is ...

6

00.00:2

00.10:9

01.00:6

00.01:2

10.00:5

Gretel’s Entry

00.00:2

00.10:9

01.00:6

00.01:2

10.00:5

Hansel’s Entry(1) Upon entry, both are standing on a flat platform (a face) of an object, with four adjacent faces sloping downwards -- and all they can see is the label of the face on which they are standing and the four labels on the adjacent faces. Each object has 36 faces with 36 labels taken from each urn, respectively.(2) Joker asks them to walk from face-to-face and search for the label that hides the key to their real door (the key is now under the label). He gives them one, and only one, clue about the label: the label with value of ‘1’ or ‘less than 1’ has the key.

Page 4: On Self-Avoiding Walks across n-Dimensional Dice and ...€¦ · (about Gretel, Hansel, and Joker who keeps hiding the keys) 3-- Joker disguises the first set of keys as labeled

Back to contents slide

Only Joker has a global view of this object: a hyperhedron

7

Joker creates this view as follows:

-- He moves inside the hyperhedron, finds the center of the face, and attaches one end of a string to the center and attaches the other string to the center of the adjacent face.

-- He repeats the process for all faces and thus creates a graph; in this case an undirected graph with 36 faces and 84 edges. Note that the polyhedron with 36 faces, with each face having only 4 neighbors, has 72 edges total!

-- He also assigns function values to each coordinate: his choice of values is expected to confound Gretel and Hansel in their search.

-- To represent this graph in the plane, he defines a distance between the coordinates assigned to each label and makes a projection of the graph as a layered graph.

-- This graph (now a Hasse graph) is not visible to Gretel and Hansel, however, the graph enables Joker to trace each step they would make during their search.

2 4 6 8 10

01

23

45

6

vertices and labels are ordered L -> R by function values (for coordType=BT, vertex distribution at each rank may depend on coordInit)

Has

se ra

nk d

ista

nce

from

the

initi

al c

oord

inat

e (th

e bo

ttom

ver

tex)

00.00:2

00.10:9 01.00:6 10.00:5 00.01:2

10.01:9 00.20:9 00.02:9 01.10:7 10.10:4 11.00:2 01.01:2 00.11:2

11.10:9 00.21:9 00.12:9 10.02:8 01.20:8 10.20:3 01.02:3 11.01:2 10.11:1 01.11:1

11.20:9 11.02:9 01.21:9 00.22:9 10.12:7 01.12:4 11.11:2 10.21:2

11.21:9 11.12:9 10.22:6 01.22:5

11.22:9

function = BT.index.2|V| = 36, |E| = 84

Back to contents slide

Tracing the self-avoiding walk by Gretel

8

2 4 6 8 10

01

23

45

6

vertices and labels are ordered L -> R by function values (for coordType=BT, vertex distribution at each rank may depend on coordInit)

Has

se ra

nk d

ista

nce

from

the

initi

al c

oord

inat

e (th

e bo

ttom

ver

tex)

00.00:2

00.10:9 01.00:6 10.00:5 00.01:2

10.01:9 00.20:9 00.02:9 01.10:7 10.10:4 11.00:2 01.01:2 00.11:2

11.10:9 00.21:9 00.12:9 10.02:8 01.20:8 10.20:3 01.02:3 11.01:2 10.11:1 01.11:1

11.20:9 11.02:9 01.21:9 00.22:9 10.12:7 01.12:4 11.11:2 10.21:2

11.21:9 11.12:9 10.22:6 01.22:5

11.22:9

Walk Chainschain 0 = solid bluechain 1 = dotted redchain 2 = solid greenchain ? = etc...

Under Hamiltonian walk, Gretel takes 5 steps to find Hansel's key and 23 steps her own key.

Serial number for Gretel's key: 10.11:1

Gretel is a computer science major and remembers a lecture about Hamiltonian walks in graphs. She knows that she is standing on one of 36 faces and that if she associates each face with a vertex in a graph and the edges between adjacent faces with edges in this graph, she can compute and remember the path that visits each face only once. In the worst case, she will take 35 steps to find the key. The procedure she uses to compute the coordinates for each step in the Hamiltonian walk is not as simple to explain as the procedure used by Hansel and explained next. Suffice it to say that function values associated with each coordinate have no role in determining the Hamiltonian path in the graph. An example of Gretel’s walk, as traced by Joker, is shown on left. She takes 5 steps to find Hansel’s key and needs to continue for a total of 23 steps before finding her key. The first step, from 00.00:2 to 00.00:6, is a deliberate step in this Hamiltonian walk – a step that Hansel would never have taken from this starting position for reasons we explain next.

Page 5: On Self-Avoiding Walks across n-Dimensional Dice and ...€¦ · (about Gretel, Hansel, and Joker who keeps hiding the keys) 3-- Joker disguises the first set of keys as labeled

Back to contents slide

Tracing the self-avoiding walk by Hansel

9

Hansel’s major is land surveying and takes the hint about function values seriously. He devises a few rules before starting the walk: (1) mark the face from where the walk starts with an easy-to-spot token; later on in the paper, we call this face the initial pivot. (2) probe each adjacent face that has not yet been marked and write its value on a list. (3) select the adjacent face with the smallest value, step on this face, call it a current pivot, and mark it with a new token. If there are several faces with the same value, make a random selection. (4) repeat step (2) from the current pivot until reaching the target value. The process of marking the pivots during the walk with tokens makes this walk self-avoiding. Hansel can run into a problem with these rules in two cases: (1) he runs out of tokens,(2) the walk is trapped. In either case, Hansel restarts the walk from a new face. Hansel can find the ticket that hides his pass-key in 3 steps or less from many initial positions. What we show is likely his longest walk: 10 steps.

Serial number for Hansel's key: 01.11:1

2 4 6 8 10

01

23

45

6

vertices and labels are ordered L -> R by function values (for coordType=BT, vertex distribution at each rank may depend on coordInit)

Has

se ra

nk d

ista

nce

from

the

initi

al c

oord

inat

e (th

e bo

ttom

ver

tex)

00.00:2

00.10:9 01.00:6 10.00:5 00.01:2

10.01:9 00.20:9 00.02:9 01.10:7 10.10:4 11.00:2 01.01:2 00.11:2

11.10:9 00.21:9 00.12:9 10.02:8 01.20:8 10.20:3 01.02:3 11.01:2 10.11:1 01.11:1

11.20:9 11.02:9 01.21:9 00.22:9 10.12:7 01.12:4 11.11:2 10.21:2

11.21:9 11.12:9 10.22:6 01.22:5

11.22:9

function = BT.index.2|V| = 36, |E| = 84

B-neighbors

T-neighbors

Back to contents slide

Notation and definitions

10

-- Combinatorial problem: defined by function and (concatenated) coordinate type(s) the folding problem: examples under plan A, plan B, and plan C

-- coordinate neighborhood(s) defined by coordinate type(s)

-- a self-avoiding walk (SAW): a sequence of steps that chain a unique set of pivot coordinates

Page 6: On Self-Avoiding Walks across n-Dimensional Dice and ...€¦ · (about Gretel, Hansel, and Joker who keeps hiding the keys) 3-- Joker disguises the first set of keys as labeled

Back to contents slide

A combinatorial problem example (the folding problem, 2D)

11

-- defined by function value(s) and (concatenated) coordinate type(s)

coordinate: concatenation of type B(inary) and type T(ernary)1100101001.221101211bbwwbwbwwb.ccrrlrcrr

b b w b b bw w w w1 1 0 1 1 10 0 0 0 c c

rrl

rcrr

Two-color configuration (L=10, weight=5)

Conformation in 2D(rectangular lattice)

Function value: negative sum ofb2b bonds = -4

Back to contents slide

A combinatorial problem example (the folding problem)

12

Input: a fixed configuration -- a binary coordinate of length L and weight W Search for minimum energy confirmation in E (function value): return a best-value conformation as a ternary coordinate of length L - 1

Input: a fixed conformation -- a ternary coordinate of length L - 1, weight WmaxSearch for minimum energy configuration in E (function value): return a best-value configuration as a binary coordinate of length L and weight <= Wmax

-- under plan A, plan B, and plan C plan A (the traditional folding problem formulation)

plan B (aka as the inverse folding problem formulation)

plan C (ours may well be the first results under this formulation)Input: a random configuration AND a random conformation, i.e. a binary coordinate of length L and weight Wmax and a ternary coordinate of length L - 1Search for minimum energy E (function value): return a best-value configuration AND conformation as a best-value binary coordinate of length L and weight <= Wmax AND a best-value ternary coordinate of length L - 1

Page 7: On Self-Avoiding Walks across n-Dimensional Dice and ...€¦ · (about Gretel, Hansel, and Joker who keeps hiding the keys) 3-- Joker disguises the first set of keys as labeled

Back to contents slide

Coordinate neighborhood(s) defined by coordinate type(s)

13

2 4 6 8 10

01

23

45

6

vertices and labels are ordered L -> R by function values (for coordType=BT, vertex distribution at each rank may depend on coordInit)

Has

se ra

nk d

ista

nce

from

the

initi

al c

oord

inat

e (th

e bo

ttom

ver

tex)

00.00:2

00.10:9 01.00:6 10.00:5 00.01:2

10.01:9 00.20:9 00.02:9 01.10:7 10.10:4 11.00:2 01.01:2 00.11:2

11.10:9 00.21:9 00.12:9 10.02:8 01.20:8 10.20:3 01.02:3 11.01:2 10.11:1 01.11:1

11.20:9 11.02:9 01.21:9 00.22:9 10.12:7 01.12:4 11.11:2 10.21:2

11.21:9 11.12:9 10.22:6 01.22:5

11.22:9

B-neighbors

T-neighbors

The Hasse graph is the one introduced by Joker to trace walks by Gretel and Hansel.Labels in this graph are a concatenation of binary coordinates and ternary coordinates, a total of

(2^2) * (3^2) = 36 Each binary coordinate has always a neighborhood of 2 (dotted edges).Each ternary coordinate has always a neighborhood that varies from 2 to 4 (dotted edges).For example, the coordinate 00.00 has 2 binary and 2 ternary neighbors; the coordinate 10.11 has 2 binary and 4 ternary neighbors.

Probe the neighborhoodbefore makingthe next step!(crawl before you walk)

Back to contents slide

Coordinate neighborhood(s) defined by coordinate type(s)

14

% func.BT.neighb.saw foldHP2 1100101001.21101111iB iT coordB.coordT yBest n p coordT yNA NA 1100101001.21101111 +8 0 1 21101111 +8 4 NA 1100001001.21101111 +8 1 2 21101111 +8 9 NA 1100101000.21101111 +8 2 3 21101111 +8 0 NA 0100101001.21101111 +8 3 4 21101111 +8 1 NA 1000101001.21101111 +8 4 5 21101111 +8 6 NA 1100100001.21101111 +8 5 6 21101111 +8NA 4 1100101001.21101111 +8 6 7 21102111 +9NA 4 1100101001.21101111 +8 7 8 21100111 +9NA 6 1100101001.21101111 +8 8 9 21101121 +8NA 6 1100101001.21101111 -2 9 10 21101101 -2NA 0 1100101001.21101111 -2 10 11 11101111 +4NA 2 1100101001.21101111 -2 11 12 21201111 +8NA 2 1100101001.21101111 -2 12 13 21001111 +8NA 3 1100101001.21101111 -2 13 14 21111111 +5NA 5 1100101001.21101111 -4 14 15 21101211 -4*NA 5 1100101001.21101111 -4 15 16 21101011 -2NA 7 1100101001.21101111 -4 16 17 21101112 +8NA 7 1100101001.21101111 -4 17 18 21101110 +8NA 1 1100101001.21101111 -4 18 19 22101111 +8NA 1 1100101001.21101111 -4 19 20 20101111 +8

1100101001.21101211 -4 <-- the next step to take

In this example, L = 10 and there are (2^10)*(3^9) = 20,155,392

coordinates -- we cannot show them in a Hasse graph -- we can only observe the probing of neighborhood from a table such as shown here.Indices iB and iT that address values in binary and ternary coordinates are always randomly permuted in order to prevent biasing the order of choices for best function value y. Function values y > 0 represent not only unfeasible conformations but also the relative level of unfeasibility. The counters n and p report the size of the neighborhood and the number probes to find each value of yBest.The probing of 19 neighbors of an initial pivot coordinate 1100101001.21101111 leads, in this example -- and in a single step, to an optimal conformation with a target energy of -4

1100101001.21101211 -4

(probing under plan C ... the most general case)

Page 8: On Self-Avoiding Walks across n-Dimensional Dice and ...€¦ · (about Gretel, Hansel, and Joker who keeps hiding the keys) 3-- Joker disguises the first set of keys as labeled

Back to contents slide

A self-avoiding walk (SAW): Hamiltonian of length 24 − 1

15

-- a sequence of steps that chain a unique set of pivot coordinates

x--->

y

--->

(a)

0000:7

-2 -1 0 1-2

-1

0

1

0100:11 1000:15 1100:3

0001:8 0101:12 1001:0 1101:4

0010:9 0110:13 1010:1 1110:5

0011:10 0111:14 1011:2 1111:6

1 2 3 4 5 6

01

23

4

fileBase = n=4−B_index_hamilton−0110−walk0(This image created in R by plot_hasse)

vertices and labels are ordered L −> R by function values (for coordType=B, vertex distribution at each rank is binomial)

Has

se ra

nk d

ista

nce

from

the

botto

m fa

ce o

f the

dic

e

● ● ● ●

● ● ● ● ● ●

● ● ● ●

0110:13

0111:14 0100:11 0010:9 1110:5

0101:12 0011:10 0000:7 1111:6 1100:3 1010:1

1000:15 0001:8 1101:4 1011:2

1001:0

Walk Chainschain 0 = solid bluechain 1 = dotted redchain 2 = solid greenchain ? = etc...

Two sides of the same coin: an instance in 2-D in a unit cell, subsets of points on a grid in a lattice, versus an instance of a Hamiltonian walk of the same length in a Hasse graph defined by dimension 4 (wrt to base 2). The walk in the unit cell is contiguous only with respect to coordinates defined in the lattice. Similarly, the walk in Hasse graphs is contiguous only with respect to coordinates defined in the Hasse graph.

Back to contents slide

A self-avoiding walk (SAW): Hamiltonian of length 42 − 1

16

-- a sequence of steps that chain a unique set of pivot coordinates

(b)L

R

U

DR

RU

D

U

R

U

R

RU

L

L = leftR = rightU = upD = down

1.0 1.5 2.0 2.5 3.0 3.5 4.0

01

23

45

6

fileBase = n=2−Q_index_hamilton−00−walk0(This image created in R by plot_hasse)

vertices and labels are ordered L −> R by function values (for coordType=Q, vertex distribution at each rank depends on coordInit)

Has

se ra

nk d

ista

nce

from

the

botto

m fa

ce o

f the

dic

e

● ●

● ● ●

● ● ● ●

● ● ●

● ●

00:11

10:15 01:12

02:13 20:3 11:0

03:14 30:7 21:4 12:1

31:8 22:5 13:2

32:9 23:6

33:10

Walk Chainschain 0 = solid bluechain 1 = dotted redchain 2 = solid greenchain ? = etc...

Two sides of the same coin: an instance in 3-D in a unit cell, subsets of points on a grid in a lattice, versus an instance of a Hamiltonian walk of the same length in a Hasse graph defined by dimension 2 (wrt to base 4). The walk in the unit cell is contiguous only with respect to coordinates defined in the lattice. Similarly, the walk in Hasse graphs is contiguous only with respect to coordinates defined in the Hasse graph.

Page 9: On Self-Avoiding Walks across n-Dimensional Dice and ...€¦ · (about Gretel, Hansel, and Joker who keeps hiding the keys) 3-- Joker disguises the first set of keys as labeled

Back to contents slide

A self-avoiding walk (SAW): Hamiltonian of length 33 − 1

17

-- a sequence of steps that chain a unique set of pivot coordinates

(c)

C C

C

L

LCL

LU

C

L

L

C

L

C

L

CU

C

L

L

LC C

LL

C

C = continueL = leftU = up 1 2 3 4 5 6 7

01

23

45

6

fileBase = n=3−T_index_hamilton−000−walk0(This image created in R by plot_hasse)

vertices and labels are ordered L −> R by function values (for coordType=T, vertex distribution at each rank depends on coordInit)

Has

se ra

nk d

ista

nce

from

the

botto

m fa

ce o

f the

dic

e

● ● ●

● ● ● ● ● ●

● ● ● ● ● ● ●

● ● ● ● ● ●

● ● ●

000:17

100:26 010:20 001:18

020:23 011:21 002:19 200:8 110:2 101:0

021:24 012:22 210:11 201:9 120:5 111:3 102:1

022:25 220:14 211:12 202:10 121:6 112:4

221:15 212:13 122:7

222:16

Walk Chainschain 0 = solid bluechain 1 = dotted redchain 2 = solid greenchain ? = etc...

Two sides of the same coin: an instance in 3-D in a unit cell, subsets of points on a grid in a lattice, versus an instance of a Hamiltonian walk of the same length in a Hasse graph defined by dimension 3 (wrt to base 3). The walk in the unit cell is contiguous only with respect to coordinates defined in the lattice. Similarly, the walk in Hasse graphs is contiguous only with respect to coordinates defined in the Hasse graph.

Back to contents slide

A self-avoiding walk (SAW): example of “Hansel’s walk”

18

-- a sequence of steps that chain a unique set of pivot coordinatesProbing from the initial pivot

11.10:9

the “best-value” neighbor is a T-neighbor

11.11:2followed by a B-neighbor

10.11:1which turns up the Gretel’s key, so Hansel needs to continue the walk. Here, Hansel would reach his target in two steps if he choose 00.11:2 as the next pivot. However, by random choice, his next pivot is a T-neighbor

10.21:2from where he needs to continue the walk for 7 more steps until reaching the pivot with target value that also turns up his key:

01.11:1

Serial number for Hansel's key: 01.11:1

2 4 6 8 10

01

23

45

6

vertices and labels are ordered L -> R by function values (for coordType=BT, vertex distribution at each rank may depend on coordInit)

Has

se ra

nk d

ista

nce

from

the

initi

al c

oord

inat

e (th

e bo

ttom

ver

tex)

00.00:2

00.10:9 01.00:6 10.00:5 00.01:2

10.01:9 00.20:9 00.02:9 01.10:7 10.10:4 11.00:2 01.01:2 00.11:2

11.10:9 00.21:9 00.12:9 10.02:8 01.20:8 10.20:3 01.02:3 11.01:2 10.11:1 01.11:1

11.20:9 11.02:9 01.21:9 00.22:9 10.12:7 01.12:4 11.11:2 10.21:2

11.21:9 11.12:9 10.22:6 01.22:5

11.22:9

function = BT.index.2|V| = 36, |E| = 84

B-neighbors

T-neighbors

Page 10: On Self-Avoiding Walks across n-Dimensional Dice and ...€¦ · (about Gretel, Hansel, and Joker who keeps hiding the keys) 3-- Joker disguises the first set of keys as labeled

Back to contents slide

Global search under SAW and Summary of experiments

19

Global search under SAW (any function, any coordinates) -- complete pseudo code -- detail: procedure coordUpdate.saw

Summary of experiments (the protein folding problem, 2D) -- For L = 10, weight = 2, 3, 4, 5, 10 -- For L = 20, weight = 10** -- For L = 24, weight = 10** -- For L = 25, weight = 9**

** Also featuring significantly improved solutions versus the solutions reported in [20]

Back to contents slide

SAW in context of global search (1): details in the paper

20

All concepts in this pseudo code have been informally introduced by Gretel, Hansel, and Joker earlier.

Page 11: On Self-Avoiding Walks across n-Dimensional Dice and ...€¦ · (about Gretel, Hansel, and Joker who keeps hiding the keys) 3-- Joker disguises the first set of keys as labeled

Back to contents slide

SAW in context of global search (2): details in the paper

21

All concepts in this pseudo code have been informally introduced by Gretel, Hansel, and Joker earlier.

Back to contents slide

L = 10, w = 2,3,4 under plan C; 1000 initial coordinates

22

walkLengthmedian mean stdev max 1000 843.6 695.5 2336

probesPerStepmedian mean stdev 10.8 11.3 2.12

beyond_target uniq_solutions 0 813

weight = 2: 0000010010energy = -1: 222212110

weight = 2energy = -1

Histogram of x

x

Frequency

0 500 1000 1500 2000

050

100

150

200

250

300

350

walkLength

frequency

weight = 3: 0010001001energy = -2: 222211011

weight = 3energy = -2

Histogram of x

x

Frequency

0 500 1000 1500 2000

0200

400

600

walkLength

walkLengthmedian mean stdev max 39 33.8 580.7 2353

probesPerStepmedian mean stdev 13 13.1 1.61

beyond_target uniq_solutions 0 511

frequency

weight = 4: 0011001001energy = -3: 222211011

weight = 4energy = -3

Histogram of x

x

Frequency

0 500 1000 1500 2000

0200

400

600

800

walkLength

walkLengthmedian mean stdev max 26 104.1 290.7 2017

probesPerStepmedian mean stdev 14 14.7 1.47

beyond_target uniq_solutions 95 204

frequency

Page 12: On Self-Avoiding Walks across n-Dimensional Dice and ...€¦ · (about Gretel, Hansel, and Joker who keeps hiding the keys) 3-- Joker disguises the first set of keys as labeled

Back to contents slide

L = 10, w = 4,5,10 under plan C; 1000 initial coordinates

23

weight = 4: 1001001001energy = -4: 211011011

Histogram of x

x

Frequency

0 2000 4000 6000

050

100

150

200

250

300

weight = 4energy = -4

walkLength

walkLengthmedian mean stdev max 797.5 1074.3 965.7 7433

probesPerStepmedian mean stdev 14 13.9 0.82

beyond_target uniq_solutions 0 2

frequency

weight = 5: 1100101001energy = -4: 221101211

Histogram of x

x

Frequency

0 500 1000 15000

200

400

600

800

weight = 5energy = -4

walkLength

walkLengthmedian mean stdev max 37.5 73.1 131.0 1755

probesPerStepmedian mean stdev 15.8 16.0 1.27

beyond_target uniq_solutions 0 51

frequency

weight = 10: 1111111111energy = -4: 222121102

Histogram of x

x

Frequency

0 100 200 300 400 500 600 700

0200

400

600

800

1000 weight = 10

energy = -4

walkLength

walkLengthmedian mean stdev max 2 4.3 24.6 689

probesPerStepmedian mean stdev 22.0 21.2 4.47

beyond_target uniq_solutions 0 197

frequency

Back to contents slide

L = 10, w = 4 under plan C; 1000 initial coordinates

24

weight = 4: 1001001001energy = -4: 211011011

Histogram of x

x

Frequency

0 2000 4000 6000

050

100

150

200

250

300

weight = 4energy = -4

walkLength

walkLengthmedian mean stdev max 797.5 1074.3 965.7 7433

probesPerStepmedian mean stdev 14 13.9 0.82

beyond_target uniq_solutions 0 2

frequency

Important observations for this case:

-- only two unique solutions (from 1000 initial coordinates)

-- walkLength has almost certainly geometric distribution

-- the average walkLength to reach one of the two solutions under Hamiltonian walk = 0.25 ∗ (210 ∗ 39 − 1) = 5,038,848

-- the average walkLength to reach one of the two solutions under the “Hansel’s walk”, also a SAW, is 1,074.3

Page 13: On Self-Avoiding Walks across n-Dimensional Dice and ...€¦ · (about Gretel, Hansel, and Joker who keeps hiding the keys) 3-- Joker disguises the first set of keys as labeled

Back to contents slide

L = 20, from reference, to equivalent, to better solutions

25

statistics are based on 1000 random initial coordinates

d

dll

u

ru

rd

u ur

r

l

l

u

dd

r

12

34

5

678

9

10100110100101100101 dlluruluurdrdrurddl

valueBest = -9bbSize = 16

Plan A

12

34

56 7

8

9

20

020

10

1

0

0

1

0 1 0 0

2

2

0

0

10010101001010011011 2002010100101002200

valueBest = -9bbSize = 20

Plan C

<walkLength> = 1.5088e+4 (worst-case = (109/1000)*(2^20)*(3^19) = 1.328404e14

12

3

4 5 6

78 9

10

2 0

02

011

01

10

101

10

112

10011101001010010011 2002011011010110112

valueBest = -10bbSize = 16

Plan C

Back to contents slide

L = 24, from reference, to equivalent, to better solutions

26

statistics are based on 1000 random initial coordinates

110010010010010010010011 rdruruluuurululdldrdddl

valueBest = -9bbSize = 21

1 2

3

4

5

6

7

8

9

d l

l

u

r

u

rr

l

u

d

dr

u

u

d

d

u

u

drl

l

Plan A

101001011000000100100111 21011210221102101101120

valueBest = -9bbSize = 25

12

34

56

78

9

2

0

0

1

2

1 1

1

0

1

1

0

1

1

2

222

11

0

10

Plan C

<walkLength> = 1.9391e+4 (worst-case = (875/1000)*(2^24)*(3^23) = 1.382028e+18e+18

Plan C

valueBest = -11bbSize = 25

81

2 34

679510

2

1

02

1

1

2

0

2

0

1

0

0

0

1

1

01

0

0

0

0

0

111000010010100101001001 21220021001010010100100

11

Page 14: On Self-Avoiding Walks across n-Dimensional Dice and ...€¦ · (about Gretel, Hansel, and Joker who keeps hiding the keys) 3-- Joker disguises the first set of keys as labeled

Back to contents slide

L = 25, from reference, to equivalent, to better solutions

27

statistics are based on 1000 random initial coordinates

... based on the sample size of 62 rather than 1000

Text

<walkLength> = 1.243210e+6 (worst-case = (11/62)*(2^25)*(3^24) = 1.681361e+18)

1001000010010101001001001 211021120110120100100100

0

1

1

0

0

1 0

0

1

21

1

0

2 10

2

1

01

2 1

0

06

8

1

23

45

7

910

valueBest = -10bbSize = 28

Plan C

0000010000100101001100111 202011200210220100210020

2

3

1

0

0

0

0 0

0

1

4

56

78

2

10

2

1

0

1

0

022

2

2

2 1

20

valueBest = -8bbSize = 30

Plan C

0010011000011000011000011 lurulurulldlulddrdddruuu

d

l

u

rd

d

u

u

u

d

d u

d l

1

23

4

5 6

7

8

l

u

r

r

l

u

u

r

ll

valueBest = -8bbSize = 20

Plan A

Back to contents slide 28

Conclusions and Future Work-- Our experiments with a SAW solver raise the expectation that the solution of the protein folding problem, where the chain configuration and its confirmation are optimized simultaneously, may be feasible at an acceptable cost. -- Experiments on protein folding problem are being planned also for triangular and hexagonal grids in 2- and 3-dimensions.-- We are refining SAW solvers to scale to very large problems in a number of different domains under different coordinate types: -- low autocorrelation binary sequence (labs, aka in physics as the aperiodic one-dimensional Ising spin system with long range 4-spin interactions) -- graph {vertex cover, clique, independent set, linear arrangement, ...} -- optimal Golomb ruler (ogr) -- maxsat -- parsimony -- number partitioning problem (npp) -- job scheduling problem (jobs) -- cryptography -- etc