Variantes da Torre de Hanói Tássio Naia dos Santos∗ e José Augusto Ramos Soares (orientador) para a terceira, sem se descuidar das regras xas que acabamos de indicar, e que foram impostas por Brahma. Quando tudo esti- Universidade de São Paulo (USP), Brasil ver terminado, a torre e os brâmanes cairão, [email protected] e será o m dos mundos! 1. Introdução Os enunciados acima são do conhecido quebracabeça Torre de Hanói [15], proposto comercialmente Le mandarin N. Claus (de Siam) nous pelo matemático francês Édouard Lucas em 1983. O raconte qu'il a vu, dans ses voyages pour problema consiste em determinar a menor seqüência la publication des écrits de l'illustre Fer- de movimentos que perfazem a tarefa dos monges. Fer-Tam-Tam, dans le grand temple de Um Bénarès, au-dessous du dôme qui marque le centre du monde, trois aiguilles de di- já de si interessante, utilizado truturas recursivas e indução, a Torre de Hanói rende amant, plantées dans une dalle d'airain, material para estudo há mais de um século, e suas hautes d'une coudée et grosses comme le variantes ainda apresentam questões em aberto. corps d'une abeille. Sur une de ces aiguilles Numerosos foram os estudos sobre sua estrutura Dieu enla, au commencement des siècles, matemática, e foram observadas relações entre o soixante-quatre disques d'or pur, le plus quebra-cabeça e objetos matemáticos conhecidos, large reposant sur l'airain, et les autres, como os triângulos de Sierpi«ski e de Pascal, de plus en plus étroits, superposés jusqu'au sommet. problema freqüentemente como exemplo em introduções a es- a seqüência diatômica de Stern [4] e os números de C'est la tour sacrée de Brahma. Stirling de segundo tipo [2]. Nuit et jour, les prêtes se succèdent sur les Uma extensa referên- cia bibliográca (com mais de 350 entradas), sobre marches de l'autel, occupés à transporter diversos aspectos do problema e suas variantes, foi la tour de la première aiguille de diamant compilada por Stockmeyer [11]. sur la troisième, sans s'écarter des règles - Mesmo exibindo diversas propriedades interessan- xes que nous venons d'indiquer, et qui on tes, a solução do quebra-cabeça original é atualmente été imposées par Brahma. Quand tout sera já bem conhecida. Por outro lado a investigação de ni, la tour et les brahmes tomberont, et ce suas diversas variantes tem descortinado uma imen- sera la n des mondes! sidão de questões complexas, que desaam pesquisadores há décadas. O mandarim N. Claus (de Sião) nos conta que viu, em suas viagens para a publi- De longe, a variante mais conhecida, mais antiga cação dos escritos do ilustre Fer-Fer-Tam- e estudada da Torre de Hanói advém do incremento Tam, no grande templo de Bénarès, sob o do número de pinos disponíveis para empilhar os dis- domo que marca o centro do mundo, três cos. Essa variante data de 1904 [1], quando que são agulhas de diamante, assentadas sobre uma considerados 4 pinos. sas como o corpo de uma abelha. Sobre imposição de restrições a movimentos de discos en- uma dessas agulhas, Deus empilhou, no co- tre certos pinos. Abordamos aqui três delas. Chama meço dos séculos, sessenta e quatro discos a atenção o fato de que, nessa família de variantes, de ouro puro, o maior repousando sobre a a quantidade de pinos se apresentar como um fator laje, e os outros, cada vez menores, sobre- determinante da complexidade da análise: as vari- postos até o pico. Esta é a torre sagrada de antes generalizáveis para um número arbitrário de Brahma. Dia e noite, os monges se sucedem pinos são questões em aberto se o número de pinos nos afazeres do altar, ocupados a transpor- for maior ou igual a quatro. 1 laje de latão, altas de um côvado e gros- Afora essa, diversas outras variantes nasceram da tar a torre da primeira agulha de diamante Nas seções 3, 4 e 5, apresentamos resultados conhecidos da Torre de Hanói e de algumas variantes ∗ [email protected] 1 Côvado: bem conhecidas, a medida correspondente à distância entre o cotovelo e as pontas dos dedos, aproximadamente equivalente a 45 cm. variante estendida, proposta em sua forma generalizada para um número qualquer de pinos em [13], as variantes linha 107 [5]. circular [5], estelar [12] e 2. Notação e denições Discos e pinos. A 0 1 (n − 1) discos → 1 disco → O número de discos e de pinos envol- 1 0 0 1 0 1 0 1 0 1 0 1 0 1 vidos nos problemas a serem discutidos serão denotados, respectivamente, por n e p. Os discos 1, 2, . . . , n Figura 1. são numerados em ordem crescente de tamanho, e os pinos são numerados de 1 a Congurações. conguração tamanho do topo para a base. Muitas vezes, a uma dada conguração faremos corresponder uma n-upla 1 ≤ i ≤ n e 1 ≤ ai ≤ p, que representa que o disco i repousa no pino ai . Uma conguração a = (an , an−1 , . . . , a1 ) é dita simples se ai = k para todo i, 1 ≤ i ≤ n. Denotarek mos tais congurações Sn . com Indicaremos ainda a passagem de uma congura- c1 a outra, c2 , por c1 → c2 . Quando tratarmos da tarefa de mover uma pilha de discos de um pino a a outro, (Sn de origem Grafos. um grafo e G → Snb , a, b pinos) chamaremos o pino b de destino. o pino a Denotaremos o conjunto de vértices de por V (G), 1 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 (b) Recursão na Torre de Hanói uma dis- buição dos discos em pilhas em ordem crescente de ção (a) C 1 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 p. Chamamos posição válida de discos nos pinos, i.e.: uma distri- (ai ), B e seu conjunto de arestas por E(G). Quando tratarmos de um grafo A(G) denotará o conjunto de seus arcos. orientado, uma estratégia recursiva para a resolução do problema, já que, para que se chegue ao dito estado, é necessário mover uma pilha menor para o pino auxiliar. Em outras palavras, o problema reduz-se a uma instância menor do problema inicial. Denotemos por o número mínimo de movi- n dis- cos de um pino a outro. Então, no momento representado pela gura 1 (b), já terão sido efetuados, no mínimo, f (n − 1) movimentos. Pode-se agora mover o maior disco para o pino de destino. Mas a situ- ação após esse movimento é a mesma de antes, se trocarmos os rótulos dos pinos A e C. Por simetria, a seqüência que demanda o menor número de movimentos possível já está neste ponto determinada, e basta perfazer mais f (n − 1) movimentos. Outro esquema possível de movimentação dos discos seria fazer com que o maior disco (n) fosse de A para B antes de chegar a C. Ora, essa opção implica 3. A Torre de Hanói necessariamente a passagem por três congurações Dispõe-se de três pinos, em um dos quais há discos empilhados em ordem crescente de tamanho do topo intermediárias antes que seja possível nalmente mover o maior disco para C: • para a base. Deseja-se transportar a pilha para um dos outros pinos, de modo que: o disco maior está em A, e todos os demais discos estão em C; 1. somente seja movido um disco por vez; • da pilha em que está; e • o disco maior está em B e os demais estão em A; 3. jamais um disco repouse sobre outro de menor tamanho. o disco maior está em B e todos os demais estão em C; e 2. o disco a ser movido a cada passo seja o menor e, ao menos, Se a pilha consistir de apenas um disco, basta um movimento para resolver o problema. Consideremos, sem perda de generalidade, que o pino de origem seja denotado por A, e o de destino seja o C (vide gura 1 (a)). Quando a quantidade de discos, f (n) mentos em que é possível mover uma pilha de n, for igual a 2, faz-se necessário liberar o maior deles já que em algum momento ele terá que ser movido colocando o menor em um pino auxiliar (pino B) e, 2f (n−1)+1 movimentos são necessários nesse caso. Conseqüentemente, a seqüência de movimentos em que o maior disco é movido duas vezes para alcançar o pino C tem tamanho traste com 2f (n − 1) + 1 3f (n − 1) + 2, em con- do outro esquema de mo- vimentação, e, portanto, não faz parte da solução 2 procurada . Assim, a relação que expressa o número procurado é a seguir, mover, primeiro o maior e depois o menor, f (n) = 2f (n − 1) + 1. para o pino de destino, num total de 3 movimentos. (1) As restrições do quebra-cabeça condicionam o movimento do maior dos discos de A para C a uma única disposição dos demais discos: devem estar todos em B. Essa característica sugere o emprego de 2 Isso ca claro quando se considera que f (1) = 1 para ambas as estratégias de movimentação, e que 3f (n − 1) + 2 > 2f (n − 1) + 1, se n ≥ 0. 108 f (n) + 1 = 2(f (n) + 1), com f (1) = 1, f (n) + 1 = g(n), g(n) = 2g(n − 1), ⇒ g(n) = 2n . g(1) = 2 Donde fazendo e, Por construção, Hn possui n-upla (an , an−1 , . . . , a1 ) reprei está no pino de Hn , cada um de seus vértices Lembramos que a senta a conguração tal que o disco ai . Pela denição corresponde naturalmente à uma conguração. A conexão entre as congurações do quebra-cabeça e o f (n) = 2n − 1. (2) O algoritmo 1 (recursivo) obtém os movimentos necessários para resolver o problema com o mínimo possível de movimentos. Algoritmo 1 mover (n,origem, destino, auxiliar) Requer: n ≥ 1, {origem, destino, auxiliar} = {A, B, C} Garante: Gera uma seqüência de movimentos para a transferência de uma pilha de n discos em origem para destino, de tamanho 2n − 1. = 1 {i, j, k} = {1, 2, 3}. a estrutura exibida na gura 3. Finalmente, obtemos se n onde então mova o disco no topo do pino origem para destino grafo de congurações Prova. 1. Claramente, a proposição é válida para n= Suponhamos, por indução, que a proposição seja válida para todo número de discos menor que um n > 1. Hn . certo Consideremos dois vértices distintos Sabemos que mover (n - 1, origem, auxiliar, destino) é estabelecida pela propo- Proposição 3.1. Para quaisquer vértices u e v em V (Hn ), se cu e cv são as congurações correspondentes, então {u, v} ∈ E(Hn ) se, e somente se, existir um movimento (válido) que leve cu a cv . em senão Hn sição a seguir. i Hn−1 é obtido de Hn−1 pela adi- ção do maior disco à base da pilha sobre o pino mova o disco no topo do pino origem para destino i. mover (n - 1, auxiliar, destino, origem) Conseqüentemente, se as congurações diferirem pela posição de algum dos m se n − 1 menores discos, pela hipótese de indução a proposição será válida. Por outro lado, se as congurações diferirem pela posição do maior disco, estarão ligadas se, e somente se, 3.1 Resultados os Essa seção aborda o problema tradicional da Torre de Hanói, para 3 pinos e n discos. Wood [8] discute o caso em que as congurações inicial e nal são quaisquer. Xuemiao [9] introduz (em 1986) o termo fos de Hanói, gra- formalizando a abordagem de Scorer, Grundy e Smith [5] (1944), e demonstra que há no máximo duas seqüências distintas de comprimento mínimo entre duas congurações. Uma expressão para a determinação da quantidade de tais seqüências para um dado par de congurações expressa em termos da seqüência diatômica de Stern é obtida por Hinz e outros [4]. A seguir, listamos alguns resultados desses artigos. Para isso serão necessárias algumas denições. Começamos pela denição dos grafos de Hanói Hn , n−1 menores discos estiverem no mesmo pino em ambas as congurações, o que é garantido por construção. É importante notar que uma condição necessária (mas não suciente) para que duas congurações tenham respectivos vértices vizinhos em Hn é que estes diram em apenas uma coordenada. Em outras palavras, deve-se ter apenas um disco em uma posição diferente, restando os demais na mesma posição em ambas as congurações. Um caminho do nó s ao nó t em Hn é uma seqüên- (v0 , v1 , . . . , vm ), com v0 = s e vm = t, {vi , vi+1 } ∈ E(Hn ), 0 ≤ i < m. Um caminho de s a t é dito mínimo se não houver outro caminho (w0 , w1 , . . . , wl ) de s a t com l < m. Neste caso, dizemos que a distância entre s e t, denotada cia de vértices tal que que se tornaram uma ferramenta muito popular no estudo da Torre de Hanói e suas variantes. (1) Os grafos de Hanói são denidos por Xuemiao, recursivamente, da seguinte forma: H1 (gura 2) é (1), (3). 1 Para n > 1, Hn consiste de três subgrafos, Hn , 2 3 i Hn , e Hn . Cada Hn é obtido de Hn−1 pela adição do prexo i aos rótulos de seus vértices, e de três o grafo completo com três vértices, com rótulos (2), e arestas conectando os pares de vértices (i, k, . . . , k) e (3) Figura 2. (j, k, . . . , k), 109 (2) Grafo de congurações H1 Lema Sn1 3.5 (Xuemiao) arbitrários u v e . em Para todo dist(u, v) ≤ 2n − 1. Hn1 Prova. Provamos o resultado por indução em dist(u, v) = 1 = 21 − 1 Hn3 Hn2 Suponha agora que Sn3 Sn2 dist(u, v), é cu e cv correspondentes u e v . Vamos considerar dois casos. Se o disco n está no mesmo pino em cu e em cv , digamos, pino j , então temos que u e v estão no j subgrafo Hn que é isomorfo a Hn−1 . Portanto m. de distância: dist(u, v) = dist(u, v), a Lema respondentes a A distância dist entre vértices em Hn , sa- (i) indicam, respectivamente, os vértices cor- u, v, w ∈ V (Hn ): u e v em Hn−1 . dist(u, v) ≤ 2n−1 − 1, dist(u, v) ≥ 0 sendo u = v, que dist(u, v) = 0 se e somente se (ii) uev Pela hipótese de indução, isso implica tisfaz as seguintes propriedades, para quaisquer vértices n. Vamos mosn discos. Considere as congurações onde . e que o lema é válido aos vértices função é realmente uma métrica. 3.2 n > 1 trar que o lema é válido também para O lema a seguir, bem conhecido em teoria dos gra- dist n. ∀u 6= v ∈ V (H1 ). para número de discos menor do que Estrutura recursiva de Hn fos, justica chamar a função (4) n = 1, Para Figura 3. n > 0 e dois vértices Hn o que prova o lema para este caso. Suponha agora que o disco rentes em dist(u, v) = dist(v, u), cu e cv . n está em torres dife- Sem perda de generalidade, pode- n está no pino 1 em cu e no 2 em cv . Considere um caminho de u a v usando a aresta e = {w1 , w2 }, onde w1 = (1, 3, 3, . . . , 3) e w2 = (2, 3, 3, . . . , 3). Note que o disco n está no mesmo pino em cu e na conguração correspondente a w1 e que também o disco n está no mesmo pino em cv e na conguração correspondente ao vértice w2 . Usando o argumento do caso anterior obtemos mos assumir que o disco (iii) dist(u, v) ≤ dist(u, w) + dist(w, v). pino Segue um resultado básico da Torre de Hanói (equação (2)), reescrito em termos dos vértices de Hn . Lema . 3.3 Para todo n > 0, e i 6= j, (1 ≤ i, j ≤ 3), dist(Sni , Snj ) = 2n − 1. (3) que i i Denotemos H n o grafo obtido de Hn quando apagamos o prexo i de cada um de seus vértices, e, se u é um vértice em Hni , então u será usado para dei notar o vértice em H n obtido de u pela exclusão do i prexo. Então H n é Hn−1 . E temos Lema 3.4 (Xuemiao) cem a então 1. Hni , . Se dois vértices u e v u a v pode ser obtido u a v adicionando-se u a v pode ser obtido de um caminho mínimo de u a v i A propriedade seguinte é bem conhecida para gra3.6. Seja G um grafo. Para quaisquer vértices u, w e v em V (G), w está em um caminho mínimo de u para v se e só se i a cada um dos vértices que o compõe; 3. todo caminho mínimo de 2n−1 − 1 + 1 + 2n−1 − 1 2n − 1. Lema e prexo ≤ = fos. de um caminho mínimo de o prexo dist(u, w1 ) + dist(w1 , w2 ) +dist(w2 , v) perten- dist(u, v) = dist(u, v); 2. todo caminho mínimo de dist(u, v) ≤ retirando-se o a cada um dos vértices que o compõe. dist(u, v) = dist(u, w) + dist(w, v). Lema 3.7 (Xuemiao) n > 0. Então, para qualquer nó . (5) {i, j, k} = {1, 2, 3} e u em Hnj , cada camii nho mínimo de Sn a u contém os vértices (i, k, . . . , k) e (j, k, . . . , k). 110 Sejam o caminho de Prova. Por simetria, basta provar o lema para i = 1 j = 3. Isto é, qualquer caminho mínimo de Sn1 a u precisa conter os vértices v1 = (1, 2, 2, . . . , 2) e v2 = (3, 2, 2, . . . , 2). Ou seja, o disco n é movimento somente uma vez (do pino 1 para o pino 3). e Por contradição, suponha que não. Então, para o n terminar no pino 3, ele precisa passar pelo 2. Isso corresponde ao caminho mínimo conter os vértices w1 = (1, 3, 3, . . . , 3) e w2 = (2, 3, 3, . . . , 3) para mover o disco n do pino 1 ao pino 2 e w3 = (2, 1, 1, . . . , 1) e w4 = (3, 1, 1, . . . , 1) para mover o disco n do pino 2 ao pino 3. disco pino Assim, pelo lema 3.6 dist(Sn1 , u) ≥ + dist(w1 , w2 ) +dist(w2 , w3 ) + dist(w3 , w4 ) +dist(w4 , u) ≥ dist(Sn1 , w1 ) + 1 + dist(w2 , w3 ) + 1 = 2n−1 + 2n−1 pelo lema 3.3 = 2n , Temos agora condição de demonstrar um dos teoremas centrais de [9]. Teorema em Hn . 3.8 (Xuemiao) . Sejam Então, para todo (i) o caminho mínimo de (ii) dist(Sni , u) pode paço O(n). Prova. para n > 0 e u um vértice i Sni a u é único; e ser calculada em tempo e es- vale a recorrência: dist(Sn1 , u) / V (Hn1 ) 2n−1 + dist(w2 , u), se u ∈ 1 dist(Sn−1 , u), se u ∈ V (Hn1 ). = Aplicando a recorrência acima n−1 vezes, e usando diretamente a distância entre vértices de tância entre Sn1 e u H1 , a dis- é determinada. Note que a com- putação denida pela recorrência pode ser feita em tempo e espaço 1. O(n), o que conrma (ii). 3.9 (Xuemiao) quer vértices u e v . Para todo n ≥ 0, e quais- Hn em dist(u, v) pode ser calculada em espaço e tempo O(n), e 2. há, no máximo, dois caminhos de comprimento mínimo entre u v. e V (Hnj ) para algum j , então o problema pode ser estudado em Hn−1 . Portanto, j i vamos supor que u ∈ V (Hn ) e v ∈ V (Hn ) para i 6= j . Novamente por simetria, pode-se supor que u está 1 3 em V (Hn ) e v em V (Hn ). Note que num caminho mínimo o disco n é movido diretamente do pino 1 ao pino 3, ou pe movido do pino 1 ao pino 2 e do pino 2 ao pino 3. No primeiro caso, os vértices v1 = (1, 2, 2, . . . , 2) e v2 = (3, 2, 2, . . . , 2) estão Se uev estão em no caminho, e a distância percorrida é d1 Por simetria, basta provarmos o teorema Vamos mostrar, por indução em (i). A propriedade vale para o grafo Agora, para um (i) dist(Sn1 , w1 ) = 2n−1 − 1, 1 n−1 então dist(Sn , w2 ) = 2 . Usando a argumentação dos parágrafos anteriores, temos que, para n > 1, i = 1. priedade Com isso, a propriedade Como, pelo lema 3.3, Prova. o que contradiz o lema 3.5. u. a está provada. Teorema dist(Sn1 , w1 ) Sn1 n > 1, n, que vale a proH1 . vamos assumir que a pro- priedade vale para valores menores que n e conside- rar dois casos. 1 1 O vértice u está em Hn . Como S n = 1 Sn−1 , pela hipótese de indução o caminho mínimo de 1 Sn−1 a u é único, o mesmo valendo para o caminho 1 de Sn a u. j O vértice u está em algum Hn (j 6= 1). Pelo lema 3.7, todo caminho mínimo de Sn a u e k 6= j. con- tém os vértices dist(u, v1) + dist(v1 , v2 ) + dist(v2 , v) = dist(u, v1) + 1 + dist(v2 , v). w1 = (1, 3, 3, . . . , 3), w2 = (2, 3, 3, . . . , 3), w3 = (2, 1, 1, . . . , 1) e (w4 = (3, 1, 1, . . . , 1) estão no caminho e a distância per- No segundo caso, os vértices corrida, usando lema 3.3, é d2 = Caso 1. Caso 2. = dist(u, w1) + dist(w1 , w2 ) + dist(w2 , w3 ) +dist(w3 , w4 ) + dist(w4 , v) = dist(u, w1) + 1 + 2n−1 − 1 + 1 + dist(w4 , v) = dist(u, w1) + dist(w4 , v) + 2n−1 + 1. d1 e d2 . dist(u, v) basta calcular dist(u, v1 ), dist(v2 , v), dist(u, w1 ) e dist(w4 , v), A distância entre u e v será o mínimo entre Isso signica que para calcular o que pode, segundo o teorema 3.8, ser feito em w1 = (1, k, . . . , k) e w2 = (j, k, . . . , k), k 6= 1 tempo e espaço O(n), o que prova (1). Note que, também pelo teorema 3.8, cada um dos Então ele pode ser dividido em duas partes: a primeira é um caminho mínimo de um caminho mínimo de w2 a u. Sn1 a w1 e a segunda Pelo mesmo raciocí- nio do Caso 1 ambos são únicos e o mesmo vale para 4 distâncias mend1 e d2 denem ca- caminhos mínimos que denem as cionadas são únicos e, portanto, minhos únicos. Portanto, ou o caminho de comprimento mínimo entre 111 uev é único quando d1 6= d2 Figura 5. Figura 4. ou d1 = d2 Variante cíclica: n = 1, p = 6 Grafo de congurações H4 e existem dois caminhos de compri- mento mínimo entre u e v, o que prova (2). Figura 6. 4. Grafos de Hanói Variante linha com n = 1, p = 6 Como já foi mencionado, as variantes abordadas neste artigo derivam da mudança de dois parâmetros da Hanói original, 1. número de pinos; e 2. restrições ao movimento entre certos pares de pinos. Dito isto, ao empregarmos no que segue estaremos sempre nos referindo a variantes dessa forma. Em geral, para o estudo dessas variantes são considerados com freqüencia dois grafos, G e H , assunto dessa Figura 7. Variante estrela: n = 1, p = 6 seção. O H, grafo das congurações, que denotaremos por é tal que seus vértices correspondem a congu- u, v con{u, v} ∈ E(H) se, e somente se, é possível, de u chegar a v com um movimento legal. rações da variante em questão, e, dadas gurações a partir Quando as regras de movimentação não permitem simetria de movimentos, os grafos considerados são grafos orientados, com arcos no lugar de arestas. As guras 2 e 4 exemplicam esse conceito. Outro grafo comumente utilizado para descrever uma variante com essas características consiste em um mapa dos possíveis movimentos de discos entre G. Cada vértice em G corresponde a um pino, e (a, b) ∈ E(G) se, e só se, existir a possibilidade de mover um disco do topo do pino a para o topo do pino b. As guras 5 a 8 exibem esse pinos. Denotá-lo-emos tipo de grafos. 112 Figura 8. Variante estendida: n = 1, p = 6 Lema . 4.1 Sejam discussão acima, e G um Hn o grafo denido conforme a 2. pelas arestas grafo das congurações de uma certa variante para uma quantidade {(i, c1 , c2 , . . . , cn ) , (j, c1 , c2 , . . . , cn ))} n de discos, então tais que G = H1 . Prova. (6) Basta observar que a única restrição do mo- vimento do disco 1 entre dois pinos (a, b) ∈ G, a e donde cada vértice e aresta de b é que H1 pos- sui um correspondente vértice ou aresta, respectivamente, em G. Uma pergunta que surge naturalmente da observação dos grafos G é sob que condições pode-se garantir que o problema terá solução? Mais especicamente, ci 6= i, ci 6= j e {i, j} ∈ E(G). Ressaltamos que, para o caso de uma variante orientada, substitui-se a noção de aresta por arco. Por brevidade, no restante da seção trataremos apenas de variantes não-orientadas, mas a abordagem para o caso orientado é a mesma (no âmbito da contagem), substituindo-se apenas Lema . 4.2 Seja Hn E(G) A(G). o grafo de congurações de uma variante da Torre de Hanói. Se an por an = |E(Hn )|, então satisfaz a recursão an = pan−1 + a1 (p − 2)n−1 dado um grafo que mapeia as movimentações possí- (8) veis para o menor disco, quais as constrições necessárias para que seja possível, partindo de qualquer conguração válida com tado qualquer? n discos, chegar a outro es- Prova. Uma condição suciente para que isso seja possível é G Desenvolvendo a expressão, obtemos ser fortemente conexo e pos- an 3 vértices (pode possuir 2 vértices caso máximo 1 disco envolvido no problema). suir ao menos haja no = = = 4.1 Contagem de vértices Outra característica comum aos grafos H dessas va- riantes é o fato de seu número de vértices |H|, |H| = pn . = ser p = possíveis esco- lhas de pinos em que colocar cada um dos discos, e = de, uma vez determinado um conjunto de discos, haver exatamente uma maneira de empilhá-los em um dado pino, já que todos os os discos têm tamanhos pan−1 + a1 (p − 2)n−1 n−2 p pan−2 + a1 (p − 2) + a1 (p − 2)n−1 n−3 p2 pan−3 + a1 (p − 2) + n−1 n−2 + a1 (p − 2) + p (p − 2) n−1 p3 an−3 + a1 (p − 2) + n−2 n−3 2 + p (p − 2) + p (p − 2) ··· (7) O que decorre do fato de haver Essa recursão deriva diretamente da constru- ção acima descrita. n−1 n−2 pn−1 a1 + a1 (p − 2) + p (p − 2) + · · · + pn−2 (p − 2) Pn−1 a1 i=0 pi (p − 2)n−1−i . Resolvendo o somatório, chegamos a uma expressão concisa para o número de arestas em distintos. an = a1 4.2 Contagem de arestas A denição dos grafos de Hanói sugere uma abordagem recursiva para a contagem das arestas de uma variante. Consideremos o grafo de congurações de n discos e p pinos, deEsse grafo (Hn ) pode ser uma determinada variante com notado Hn , e seja G = H1 . construído recursivamente, por meio de uma generalização da construção do grafo de Hanói proposto Hn é gerado recursivamente a partir de da seguinte forma: pn − (p − 2)n 2 (9) 5. Variantes Nesta seção apresentamos a denição de algumas variantes conhecidas da Torre de Hanói. 5.1 Variante estendida Uma das primeiras variantes do quebra-cabeça, uma por Xuemiao [9]. O grafo Hn . H1 é (isomorfo a) vértices numerados de 1 a p; e Hn G, G e possui os é o grafo formado extensão para quatro pinos conhecida como Puzzle Reeve's foi proposta por Henry Dudeney em [1]. O problema da obtenção de um algorimo que realize a tarefa ótimamente, isto é, com o menor número de p 1 2 Hn−1 , Hn−1 , . . . , Hn−1 , i cada Hn−1 é obtido a partir de Hn−1 ção do prexo i a seus vértices, e 1. pelos grafos em que pela adi- movimentos possível, está em aberto, embora haja uma solução presumidamente ótima comprovada ótima para até 20 discos (conforme [6]). 113 5.2 Variante circular de A variante circular foi proposta por Scorer, Grundy e Smith em [5]. Consiste em dispor os pinos em um ciclo e permitir apenas movimentos em um sentido digamos, horário. Uma análise do que ocorre para um número arbitrário de pinos e discos é feita por Berend e Sapir [3, 7], que obtêm uma série de resultados interessantes. O problema também foi alvo de estudos em [10, 12, 14] entre outros, sem que tenha sido obtida a resposta para o problema com mais de três pinos. Nesta versão, os vértices vi , 1 ≤ i ≤ p são dispostos em uma la, e somente são permitidos movimentos vj mente se H1 i Hn−1 é conexo se e so- o for, haverá um caminho entre qual- Hn , quer estejam ou não no i Hn−1 , se e somente se H(1, p) for fortemente quer par de vértices em mesmo conexo. 7. Agradecimentos Este trabalho teve apoio nanceiro da FAPESP (Fundação de Amparo à Pesquisa do Estado de São Referências [1] H. E. Dudeney, vj+1 , 1 ≤ j < p. e Na variante estrela, São dados [2] S. Klavºar and U. Milutinovi¢ and C. Petr, Combinatorics of topmost discs of multi-peg Tower of Hanoi problem, 2001. p pinos, numerados de 1 a p, dispostos em um círculo, e ainda outro no centro deste, denotado C. Nenhum disco pode jamais ser movido diretamente entre os pinos numerados, isto é, podem apenas partir de C para algum outro pino qualquer ou de um destes para C. Stockmeyer [12] estudou-a no caso introduziu p = 3. The Canterbury Puzzles (and Other Cu- , E.P. Dutton, 1908. rious Problems) 5.4 Variante estrela essa Quando variante, p = 2, e a vari- ante é idêntica à variante linha (subseção 5.3) com p = 3, se, e só se,H1 for fortemente conexo. Como, Paulo), no processo de referência 2007/05285-2. 5.3 Variante linha entre Hn or indução, cada um dos e foi estudada em [14]. 6. Condições de solubilidade É interessante considerar os fatores que determinam [3] D. Berend and A. Sapir, The cyclic multi-peg Tower Hanoi, ACM Trans. Algorithms 2 (2006), 297317. of [4] A. M. Hinz and S. Klavºar and U. Milutinovi¢ and D. Parisse and C. Petr, Metric properties of the Tower of Hanoi graphs and Stern's diatomic sequence, 2005. [5] R. S. Scorer and P. M. Grundy and C. A. B. Smith, binary games, MG 28 (1944), 96-103. [6] B. Houston and H. Masun, Explorations in 4-peg of Hanoi, Technical Report TR-04-10 (2004). Some Tower [7] D. Berend and A. Sapir, The diameter of Hanoi graphs, Inf. Process. Lett. 98 (2006), no. 2, 7985, DOI http://dx.doi.org/10.1016/j.ipl.2005.12.004. [8] D. Wood, Adjudicating a towers of hanoi contest, International Journal of Computer Mathematics 14 (1983), 199 207. a existência de uma solução para o quebra-cabeça. [9] L. Xuemiao, Towers of hanoi graphs, International Journal of Computer Mathematics 19 (1986), 2338. Apesar de, originalmente, serem apenas considera- [10] P. K. Stockmeyer, das as seqüências de movimentos de mínimo comprimento entre congurações simples, o problema (por [11] vezes chamado de [12] problema geral da Torre de Hanói) em que as congurações inicial e nal são quaisquer também foi alvo de considerável atenção [8, 9]. Avaliamos a seguir as condições de existência de soluções para o problema geral das variantes. Denição 1. Diremos que um problema é geralmente solúvel se, para qualquer par ordenado (a, b) de congurações existir uma seqüência de movimentos válidos que leve Lema H(n, p) . 6.1 a a b. Uma variante com grafo ções , 2005". four-post Tower of Hanoi Forbidden Moves , [15] É. Lucas, Récréations Mathématiques, Vol. III, GauthierVillars et Fils (Paris), 1893. [16] D. G. Poole, H(1, p) (subseção 4.2) que existe um ca- minho entre cada par de subgrafos , Variations on the , CN 102 (1994), 3-12. [14] A. Sapir, The Tower of Hanoi with Comput. J. 47 (2004), no. 1, 20-24. Decorre da construção do grafo de congura- H(n, p) = Hn . The Tower of Hanoi: A Bibliography [13] J. S. Frame, Solution to Advanced Problem 3918, American Mathematical Monthly 48 (1941), no. 3, 216219. for fortemente conexo. Prova. , puzzle associado é geralmente solúvel se e somente se The Average Distance between Nodes in the Cyclic Tower of Hanoi Digraph i Hn−1 ,1≤i≤p 114 The Towers and Triangles of Professor Claus (or, Pascal Knows Hanoi) 67 (1994), no. 5, 323-344. , Mathematics Magazine