1 / 74

# On Optimal Solutions for the Bottleneck Tower of Hanoi Problem - PowerPoint PPT Presentation

On Optimal Solutions for the Bottleneck Tower of Hanoi Problem . Yefim Dinitz Shay Solomon Dept. of Comp. Sci., Ben-Gurion University ISRAEL. Contents of the lecture. 1. Background on the Tower of Hanoi. 2. The Bottleneck Tower of Hanoi (BTH) problem.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about 'On Optimal Solutions for the Bottleneck Tower of Hanoi Problem' - fergal

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### On Optimal Solutions for the Bottleneck Tower of Hanoi Problem

Yefim Dinitz Shay Solomon

Dept. of Comp. Sci., Ben-Gurion University

ISRAEL

Contents of the lecture Problem

1. Background on the Tower of Hanoi.

2. The Bottleneck Tower of Hanoi (BTH) problem.

3. The family of all optimal solutions to BTH.

4. Investigation of the configuration graph of

BTH: its diameter and average distance.

1. Background Problem

• The first version of the puzzle was marketed by Edouard Lucas in 1883, under the name "Tower of Hanoi“:

- Given are 3 pegs, denoted by A,B and C, and ndisks of distinct sizes placed on peg A in decreasing order, largest at the bottom to the smallest at the top.

- The goal of the puzzle is to transfer all disksto peg C, placed in the same order, by the minimum possible number of moves.

- The rules are to move a single disk from (the top of) one peg to (the top of) another one at each step, following the "divine rule": to never have a larger disk above a smaller one.

Move number Problem

Example for general n

1

2

n-1

n

A B C

Move number Problem

Cn-1

The optimal transfer for general n

1

2

n-1

n

A B C

Move number Problem

Cn-1 + 1

The optimal transfer for general n

1

2

n-1

n

A B C

Move number Problem

2 Cn-1 + 1

The optimal transfer for general n

1

2

n-1

n

A B C

The Problem recurrence formula is

cn = 2cn-1 + 1, c1 = 1.

Hence,cn = 2^n -1.

This classical Tower of Hanoi problem with three pegs is a basic problem, taught as a basic example of a recursion program.

### There is a great proliferation of Problem new ToH puzzles posed over the last twenty years.

There is a bibliography made by Paul Stockmeyer, which covers over 350

papers on the subject.

In 1981, D. Wood posed the following generalization of ToH, which we call the

“Bottleneck Tower of Hanoi Problem, BTHn= BTHn,k”,

depending on an integer parameter k, k>0.

The k-relaxed Placement Rule: Problem Besides the usual placement of smaller disks above bigger ones, a bigger disk j may be placed above a smaller disk i, if their size difference j - i < k.

i+k

….

….

i

Definitions Problem

• A placement of the n disks [1..n] on a single peg is called a tower of n disks.

• The decreasing bottom-top placement of the n disks [1..n] on a peg is called the perfect tower.

1

2

3

n-2

n-1

n

Description of Problem BTHn:

• There are 3 pegs: A,B, and C.

• The goal is to transfer the perfect toweron peg A to the perfect toweron peg C.

• The placement rule is k-relaxed.

(Note that if k=1, we arrive at the classical problem.)

Example: Problem k=4, n=7

We note that there are many legal towers for a given k.

As k grows, there are morelegal towers.

1

2

3

7

6

5

4

(The two extreme) examples:

k=1, one legal tower (perfect tower).

k≥n, n!possible towers.

Legal

• D.Poole [1992] suggested the sequence of moves Problem αn (described in the next slide), which solves BTHn. He showed its optimality within just one simple strategy.

• Beneditkis, Berend, and Safro[1998]proved its optimalityfor the case k=2.

• We proved optimality of αn for the general case [ISAAC’2006].

• Remark: another proof of optimality ofαn for BTHn, by different techniques, was suggested independently by Xiaomin Chen et al. (unpublished).

α Problem n(A,C) (not explicitly)

1.(*) Move disks [1..(n-1)] from A,

by the minimum possible number of moves, to any (legal) state on B.

2. Move disk n from A to C.

3.(*) Move disks [1..(n-1)] from B to the perfect tower on C, by the minimum possible number of moves.

1 Problem

2

3

4

….

….

….

….

….

n-1

n

B

C

A

[1..n-1] Problem

n

B

C

A

[1..n-1] Problem

n

B

C

A

1 Problem

2

3

4

….

….

….

….

….

n-1

n

B

C

A

“Somehow” tower-move(*) Problem :To move a tower of m disks on one peg, to a tower of m disks on another peg, in anyorder.

• D. Poole and BBS used, for the “somehow” problem, the following optimal sequence of moves, βm:

β Problem m(source,target):(for the explanation, assume that the initial configuration is perfect)

• If m ≤ k, move all disks from source to target one by one.

• Otherwise:

1.Recursively perform βm-k(source,auxiliary).

2. Move k disks [(m-k+1)..m] one by one fromsource to target.

3. Recursively perform βm-k(auxiliary,target).

K=4, m=7 Problem

1

2

3

4

5

6

7

source auxiliary target

4 Problem

5

6

7

3

2

1

source auxiliary target

7 Problem

6

5

4

3

2

1

source auxiliary target

1 Problem

2

3

7

6

5

4

source auxiliary target

K=4, m=11 Problem

1

2

3

4

5

6

7

8

9

10

11

source auxiliary target

8 Problem

9

10

11

1

2

3

7

6

5

4

source auxiliary target

11 Problem

10

9

8

1

2

3

7

6

5

4

source auxiliary target

1 Problem

2

3

4

5

6

7

11

10

9

8

source auxiliary target

(**) We remark that, if we start with the Problem perfect tower on A, and perform βm(A,B)followed byβm(B,C), the result is the perfect tower on C.

α Problem n(A,C), reformulated

1. perform βn-1(A,B).

2. Move disk n from A to C.

3. perform βn-1(B,C).

By earlier remark (**), αnsolves BTHn.

1 Problem

2

3

4

….

….

….

….

….

n-1

n

B

C

A

1 Problem

2

3

….

….

n-k-1

n-1

….

n-k+1

n-k

n

B

C

A

1 Problem

2

3

….

….

n-k-1

n-1

….

n-k+1

n-k

n

B

C

A

1 Problem

2

3

4

….

….

….

….

….

n-1

n

B

C

A

• bm = The number of moves in βm

• an = The number of moves in αn

• bm = 2bm-k + k ; b1 = 1,…, bk = k.

bm = r (2^q) + k (2^q -1),

where m = qk +r.

• an = 2bn-1 + 1 ; a1 = 1.

an = r (2^(q+1)) + k (2^(q+1) -2) + 1,

where n-1=qk + r.

3. Family of all optimal solutions to Problem BTHn

We provethat, in any optimal solution toBTHn, disk n makes only one move, from peg A to C.

Before that move, all disks 1,…,n-1 have been moved from peg A to peg B.

After that move, all disks 1,..,n-1 willmove from peg B to peg C.

Is Problem αn the unique optimal solution?

In the casek=1, the answer is yes (and is well known): there exists a unique solution for the classical problem.

For the case k ≥ 2, the answer is

No!

Let us see a different sequence of moves, of the same length as that of αn:

Example n=10, k=3 Problem

1

2

3

4

5

6

7

8

9

10

A B C

4 Problem

5

6

7

8

9

10

3

2

1

A B C

7 Problem

8

9

10

3

2

1

6

5

4

A B C

1 Problem

2

3

6

5

4

7

8

9

10

A B C

1 Problem

2

3

6

5

4

9

8

7

10

A B C

6

5

4

3

2

1

10

9

8

7

A B C

5 Problem

4

3

6

9

8

7

2

1

10

A B C

2 Problem

5

3

6

9

8

7

4

1

10

A B C

1 Problem

4

2

5

3

6

9

8

7

10

A B C

1 Problem

4

2

5

3

6

9

8

7

10

A B C

9 Problem

8

7

3

2

1

10

6

5

4

A B C

9 Problem

8

7

1

2

3

6

5

4

10

A B C

1 Problem

2

3

6

5

4

7

8

9

10

A B C

6 Problem

5

4

7

8

9

10

3

2

1

A B C

4 Problem

5

6

7

8

9

10

3

2

1

A B C

1 Problem

2

3

4

5

6

7

8

9

10

A B C

Tower-Move Problem

• tower-move – A sequence of moves that transfers a tower on one peg to a tower on another peg.

• For example:

- αnis a shortest perfect-to-perfect tower-move of n disks.

- βmis a shortest “somehow” tower-move

of m disks.

• It should be similar to the structure of the (recursive) classic Tower of Hanoi solution, but the transfer unit is a block of k disks (as in the example).

• Main Proposition 1: The only possible change, in an optimal solution, may be to interleave the two upper blocks.

• Main Observation 2: The ways of interleaving, each time, are independent.

• Any optimal solution (i.e., a shortest p.t.p. tower move of [1..n]) contains 2^(┌(n-1)/k┐-1) tower-moves of the union of the two upper blocks.

• For any such even-numbered tower-move, except for the last tower-move, its final configuration can be chosen arbitrarily from a certainset (**) ofC(k+r,k)-C(k+r,k+1)configurations.

• These are the only choices, for an optimal solution.

An auxiliary problem Problem equivalent to (**):Let n ≤ t+p.What is the number of integer solutions that satisfy the two following conditions:

How many such configurations exist?

• ∑xi =n, i=[0..t], xi≥0.

• ∑xi ≤ j+p, 0≤j ≤n-p, i=[0..j].

C(n+t,t) – C(n+t,t+p+1)

### The number of all optimal solutions Problem toBTHn is:

k=1:

A unique optimal solution

k ≥ 2:

(C(k+r,k)-C(k+r,k+1))^[┌2^(┌(n-1)/k┐-2)┐-1],

where r= (n-1) mod k.

Questions :

1. Find a pair of disk arrangements over A,B and C, requiring the longest sequence of moves in order to get from one to the other.

2. Find the length of that sequence (later referred as “diameter”).

Let us translate these questions to the language of graphs:

• For Problem BTHn , the corresponding configuration graph, G=(V,E) is the (undirected) graph s.t.:

• V is the set of all legal arrangements of the n disks over A, B and C.

• E = {e=(u,v)| u,v in V, s.t. u and v are reachable one from the other by a single move}.

The configuration graph for the case Problem n=2,k=2

(),(2),(1)

(),(2,1),()

(),(),(1,2)

(1,2),(),()

(2),(),(1)

(2,1),(),()

(),(),(2,1)

(2),(1),()

(1),(),(2)

(),(1),(2)

(),(1,2),()

(1),(2),()

The diameter is 4 Problem

(),(2),(1)

(),(2,1),()

(),(),(1,2)

(1,2),(),()

(2),(),(1)

(2,1),(),()

(),(),(2,1)

(2),(1),()

(1),(),(2)

(),(1),(2)

(),(1,2),()

(1),(2),()

### We found the answer for the second question, i.e. the diameter, D(n,k),up to a constant factor.

D(n,k) =Θ((k^2)∙2^(n/k))

This is k times the shortest length of

a perfect-to-perfect tower-move.

Reminder: an = Θ(k ∙2^(n/k))

Tighter bounds for D(n,k): diameter,

• Let n ≤ k

D(n,k) = Θ(n∙logn).

• Let k ≤ n ≤ 2k

D(n,k) = Θ(n∙logn + (n-k)^2).

• For n>2k:

D(n,k) = Θ((k^2)∙2^(n/k)).

We believe (based on similar open questions raised by D. Knuth) that both afore-mentioned questions:

1. Finding a pair of disk arrangements requiring a longest sequence of moves.

2. Finding the length of that sequence (i.e, the previously mentioned diameter) exactly.

should be difficult even for the (degenerate) case n≤k.

4.2 Average distance Knuth) that both afore-mentioned questions:

We find the average number of moves required to get from one configuration to another, taken over all pairs of configurations, up to a constant factor.

In other words, we bound the average distance between nodes in the configuration graph of BTHn.

### We prove that the average Knuth) that both afore-mentioned questions:,Avg(n,k), is asymptotically the same as the afore-mentioned diameter.

For n ≥ 3k:

Avg(n,k) = Θ(D(n,k)) =Θ((k^2)∙2^(n/k))

This is k times the shortest length of a

p.t.p. tower-move.

Avg(n,k) for some values Knuth) that both afore-mentioned questions: of n vs. k:

• Let n ≤ k:

Avg(n,k) = Θ(D(n,k)) = Θ(nlogn).

• For n>3k:

Avg(n,k) = Θ(D(n,k)) = Θ((k^2)∙2^(n/k)).

In our paper at ISAAC’06, we considered optimal algorithms for ToH problems with generalized placement rules.

We appreciate your attention.

The for ToH problems with generalized placement rules.way of proof (for diameter)

Upper bound: We show an explicit way to transfer any tower of n disks in O((k^2)∙2^(n/k)) moves.

Lower bound for ToH problems with generalized placement rules.

• Observation. When any disk out of the k biggest disks [(n-k+1)..n] moves, alln-2kdisksin [1..(n-2k)] should be on the spare peg.

• We show two configurations of the k biggest disks, such that any tower-move between them requires Ω(k)changes of the spare peg.

• As a consequence, for those configurations and the case n>2k, Ω(k) tower-moves of the n-2k smallest disks are required.

As we know, each one of those tower-moves requires Ω(k∙2^((n-2k)/k))moves.