TProcura
Biblioteca em C++ para testes paramรฉtricos de algoritmos, e coleรงรฃo de algoritmos de procura e otimizaรงรฃo
Loading...
Searching...
No Matches
๐Ÿ’ป Puzzle 8 - Procuras Cegas

Execuรงรฃo de exemplo com base no problema do Puzzle 8. Pode acompanhar o teste executando as aรงรตes localmente.

No Visual Studio, selecione o projeto TProcuraConstrutiva, e execute. No Linux na pasta .../TProcura/Construtiva/Teste$ execute make seguido de ./bin/Release/TProcuraConstrutiva

Nota: ao executar no terminal, os parรขmetros, indicadores e outros elementos, aparecem com realce de cor para facilitar a leitura.

Sumรกrio

โ”Œโ”€ Teste TProcuraConstrutiva โ”€โ”€โ”
โ”‚ 1 - Aspirador                โ”‚
โ”‚ 2 - Puzzle 8                 โ”‚
โ”‚ 3 - 8 Damas                  โ”‚
โ”‚ 4 - Partiรงรฃo                 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
Opรงรฃo: 2

Puzzle 8 - movimentar uma das peรงas para o espaรงo vazio

Aรงรฃo 1 - Ver instรขncias

Vamos entrar no problema Puzzle 8, introduza: 2.

Puzzle 8
โ”Œโ”€ โš™ Parรขmetros โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ”‚ P1(ALGORITMO): Largura Primeiro | P2(NIVEL_DEBUG): NADA | P3(SEMENTE): 1
โ”‚ P4(LIMITE_TEMPO): 10 | P5(LIMITE_ITERACOES): 0 | P6(VER_ACOES): 4 | P7(LIMITE): 0
โ”‚ P8(ESTADOS_REPETIDOS): ascendentes | P11(BARALHAR_SUCESSORES): 0
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
 โ”‚  3  1  2 
 โ”‚  4  7  5 
 โ”‚  6  8  . 
โ”Œโ”€ โ˜ฐ Menu โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ 1 ๐Ÿ“„   Instรขncia  โ”‚ 2 ๐Ÿ”  Explorar โ”‚ 3 โš™   Parรขmetros    โ”‚ 4 โœ”  Soluรงรฃo โ”‚
โ”‚ 5 โš–   Indicadores โ”‚ 6 โ–บ   Executar โ”‚ 7 ๐Ÿ› ๏ธ  Configuraรงรตes โ”‚ 8 ๐Ÿงช  Teste  โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
Opรงรฃo: 

Aparece uma instรขncia do Puzzle 8. Poderiamos procurar resolver manualmente. No entanto esta instรขncia estรก distante da soluรงรฃo, pelo que vamos ver outra instรขncia. Introduza: 1;4.

Opรงรฃo: 1
โ”Œโ”€ ๐Ÿ“„ Instรขncia โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ”‚ ID atual: 40  Intervalo: [1โ€“1000]  
โ”‚ Prefixo atual: 'instancia_' 
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
Novo ID (ENTER mantรฉm) ou novo prefixo (texto): 4
Puzzle 8
...
 3  1  2 
 6  4  5 
 7  8  . 
...
Opรงรฃo: 

Estavamos na instรขncia 40, e existem instรขncias de 1 a 1000. Como as instรขncias sรฃo construรญdas com base em movimentos aleatรณrios em quantidade igual ao ID da instรขncia, ao escolher um ID de 4 garantimos que estamos a uma distรขncia de 4 ou menos da soluรงรฃo.

Aรงรฃo 2 - Resolver manualmente

Vamos entรฃo resolver a instรขncia manualmente. Introduza: 2; dir dir baixo baixo; ENTER.

Opรงรฃo: 2
โ•โ•คโ• ๐Ÿ’ฐ g:0 ๐ŸŽฏ h:4 โš–  1|2|3 โ•โ•โ•
 โ”‚  3  1  2 
 โ”‚  6  4  5 
 โ”‚  7  8  . 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ baixo dir
๐Ÿ” Sucessor [1-2, aรงรฃo(รตes), exe]: dir dir baixo baixo
โ”Œโ”€ โœ”  โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ”‚ Executadas 4 aรงรตes. 
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ•โ•คโ• ๐Ÿ’ฐ g:0 โš–  6|14|6 โ•โ•โ•
 โ”‚  .  1  2 
 โ”‚  3  4  5 
 โ”‚  6  7  8 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ cima esq
๐Ÿ” Sucessor [1-2, aรงรฃo(รตes), exe]: โ†ต
Puzzle 8
...
 โ”‚  .  1  2 
 โ”‚  3  4  5 
 โ”‚  6  7  8 
...
Opรงรฃo:

A instรขncia estรก resolvida. Vamos agora ver o caminho gravado. Introduza 4.

Opรงรฃo: 4
Parte 1, aรงรตes: dir dir baixo baixo
(3) 1  2 
(6) 4  5 
(7)(8) . 
Puzzle 8
...
 โ”‚  .  1  2 
 โ”‚  3  4  5 
 โ”‚  6  7  8 
...
Opรงรฃo: 

Vemos agora a soluรงรฃo num formato compacto. Num sรณ tabuleiro, vemos as peรงas que mudam. Ou se se quiser, vemos o percurso do espaรงo. Existe uma sรณ parte, com as aรงรตes que demos manualmente. Caso o caminho intersecte, existiriam mais partes.

Esta forma de ver soluรงรตes รฉ especรญfica do Puzzle 8 porque foi redefinido o mรฉtodo MostrarSolucao(). Assim temos uma forma compacta mais cรณmoda de ver soluรงรตes.

Aรงรฃo 3 - Procura em Largura

Comeรงamos pela procura em largura nesta instรขncia, colocando debug a 4. Introduza: 1; 4; 3; 2; 4; ENTER; 6

Opรงรฃo: 6
โ•โ•คโ• โ–บ  Execuรงรฃo iniciada โ•โ•โ•
 โ”œโ– โ•โ•คโ• ๐Ÿ’ฐ g:0  โ•โ•โ• { }
 โ”‚  3  1  2 
 โ”‚  6  4  5 
 โ”‚  7  8  . 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ baixo dir { ๐Ÿ”– 1 ๐Ÿ”– 2 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 1 ๐Ÿ’ฐ g:1 โš–  1|2 โ•โ•โ• { ๐Ÿ”– 2 } 
 โ”‚  3  1  2 
 โ”‚  6  4  . 
 โ”‚  7  8  5 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ baixo dir { ๐Ÿ”– 3 ๐Ÿ”– 4 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 2 ๐Ÿ’ฐ g:1 โš–  2|4 โ•โ•โ• { ๐Ÿ”– 3 ๐Ÿ”– 4 } 
 โ”‚  3  1  2 
 โ”‚  6  4  5 
 โ”‚  7  .  8 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ baixo dir { ๐Ÿ”– 5 ๐Ÿ”– 6 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 3 ๐Ÿ’ฐ g:2 โš–  3|6 โ•โ•โ• { ๐Ÿ”– 4 ๐Ÿ”– 5 ๐Ÿ”– 6 } 
 โ”‚  3  1  . 
 โ”‚  6  4  2 
 โ”‚  7  8  5 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ dir { ๐Ÿ”– 7 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 4 ๐Ÿ’ฐ g:2 โš–  4|7 โ•โ•โ• { ๐Ÿ”– 5 ๐Ÿ”– 6 ๐Ÿ”– 7 } 
 โ”‚  3  1  2 
 โ”‚  6  .  4 
 โ”‚  7  8  5 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ baixo cima dir { ๐Ÿ”– 8 ๐Ÿ”– 9 ๐Ÿ”– 10 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 5 ๐Ÿ’ฐ g:2 โš–  5|10 โ•โ•โ• { ๐Ÿ”– 6 ๐Ÿ”– 7 ๐Ÿ”– 8 ๐Ÿ”– 9 ๐Ÿ”– 10 } 
 โ”‚  3  1  2 
 โ”‚  6  .  5 
 โ”‚  7  4  8 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ baixo dir esq { ๐Ÿ”– 11 ๐Ÿ”– 12 ๐Ÿ”– 13 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 6 ๐Ÿ’ฐ g:2 โš–  6|13 โ•โ•โ• { ๐Ÿ”– 7 ๐Ÿ”– 8 ๐Ÿ”– 9 ๐Ÿ”– 10 ๐Ÿ”– 11 ๐Ÿ”– 12 ๐Ÿ”– 13 } 
 โ”‚  3  1  2 
 โ”‚  6  4  5 
 โ”‚  .  7  8 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ baixo { ๐Ÿ”– 14 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 7 ๐Ÿ’ฐ g:3 โš–  7|14 โ•โ•โ• { ๐Ÿ”– 8 ๐Ÿ”– 9 ๐Ÿ”– 10 ๐Ÿ”– 11 ๐Ÿ”– 12 ๐Ÿ”– 13 ๐Ÿ”– 14 } 
 โ”‚  3  .  1 
 โ”‚  6  4  2 
 โ”‚  7  8  5 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ cima dir { ๐Ÿ”– 15 ๐Ÿ”– 16 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 8 ๐Ÿ’ฐ g:3 โš–  8|16 โ•โ•โ• { ๐Ÿ”– 9 ๐Ÿ”– 10 ๐Ÿ”– 11 ๐Ÿ”– 12 ๐Ÿ”– 13 ๐Ÿ”– 14 ๐Ÿ”– 15 ๐Ÿ”– 16 } 
 โ”‚  3  .  2 
 โ”‚  6  1  4 
 โ”‚  7  8  5 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ dir esq { ๐Ÿ”– 17 ๐Ÿ”– 18 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 9 ๐Ÿ’ฐ g:3 โš–  9|18 โ•โ•โ• { ๐Ÿ”– 10 ๐Ÿ”– 11 ๐Ÿ”– 12 ๐Ÿ”– 13 ๐Ÿ”– 14 ๐Ÿ”– 15 ๐Ÿ”– 16 ๐Ÿ”– 17 ๐Ÿ”– 18 } 
 โ”‚  3  1  2 
 โ”‚  6  8  4 
 โ”‚  7  .  5 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ dir esq { ๐Ÿ”– 19 ๐Ÿ”– 20 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 10 ๐Ÿ’ฐ g:3 โš–  10|20 โ•โ•โ• { ๐Ÿ”– 11 ๐Ÿ”– 12 ๐Ÿ”– 13 ๐Ÿ”– 14 ๐Ÿ”– 15 ๐Ÿ”– 16 ๐Ÿ”– 17 ๐Ÿ”– 18 ๐Ÿ”– 19 ๐Ÿ”– 20 } 
 โ”‚  3  1  2 
 โ”‚  .  6  4 
 โ”‚  7  8  5 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ baixo cima { ๐Ÿ”– 21 ๐Ÿ”– 22 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 11 ๐Ÿ’ฐ g:3 โš–  11|22 โ•โ•โ• { ๐Ÿ”– 12 ๐Ÿ”– 13 ๐Ÿ”– 14 โ€ฆ ๐Ÿ”– 20 ๐Ÿ”– 21 ๐Ÿ”– 22 } #11
 โ”‚  3  .  2 
 โ”‚  6  1  5 
 โ”‚  7  4  8 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ dir esq { ๐Ÿ”– 23 ๐Ÿ”– 24 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 12 ๐Ÿ’ฐ g:3 โš–  12|24 โ•โ•โ• { ๐Ÿ”– 13 ๐Ÿ”– 14 ๐Ÿ”– 15 โ€ฆ ๐Ÿ”– 22 ๐Ÿ”– 23 ๐Ÿ”– 24 } #12
 โ”‚  3  1  2 
 โ”‚  .  6  5 
 โ”‚  7  4  8 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ baixo cima { ๐Ÿ”– 25 ๐Ÿ”– 26 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 13 ๐Ÿ’ฐ g:3 โš–  13|26 โ•โ•โ• { ๐Ÿ”– 14 ๐Ÿ”– 15 ๐Ÿ”– 16 โ€ฆ ๐Ÿ”– 24 ๐Ÿ”– 25 ๐Ÿ”– 26 } #13
 โ”‚  3  1  2 
 โ”‚  6  5  . 
 โ”‚  7  4  8 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ baixo cima { ๐Ÿ”– 27 ๐Ÿ”– 28 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 14 ๐Ÿ’ฐ g:3 โš–  14|28 โ•โ•โ• { ๐Ÿ”– 15 ๐Ÿ”– 16 ๐Ÿ”– 17 โ€ฆ ๐Ÿ”– 26 ๐Ÿ”– 27 ๐Ÿ”– 28 } #14
 โ”‚  3  1  2 
 โ”‚  .  4  5 
 โ”‚  6  7  8 
 โ”‚ โ””โ”€ โšก  โ”€โ”€โ”€โ”€ baixo esq { ๐Ÿ”– 29 ๐Ÿ”– 30 } 
 โ”‚  ๐ŸŽฏ  Soluรงรฃo encontrada! ๐Ÿ’ฐ g:4
 โ”‚  .  1  2 
 โ”‚  3  4  5 
 โ”‚  6  7  8 
 โ”œโ”€ Parรขmetros โ”€ P1=1 P2=4 P3=1 P4=10 P5=0 P6=4 P7=0 P8=2 P11=0
โ•โ•งโ• ๐Ÿ  Execuรงรฃo terminada โฑ    โ•โ•โ•
Puzzle 8
โ”Œโ”€ โš™ Parรขmetros โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ”‚ P1(ALGORITMO): Largura Primeiro | P2(NIVEL_DEBUG): COMPLETO | P3(SEMENTE): 1
โ”‚ P4(LIMITE_TEMPO): 10 | P5(LIMITE_ITERACOES): 0 | P6(VER_ACOES): 4 | P7(LIMITE): 0
โ”‚ P8(ESTADOS_REPETIDOS): ascendentes | P11(BARALHAR_SUCESSORES): 0
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
 .  1  2 
 3  4  5 
 6  7  8 
โ”Œโ”€ โš– Indicadores โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ”‚ I1(IND_CUSTO): 4 | I2(Tempo(ms)): 0 | I3(Iteraรงรตes): 0 | I4(IND_EXPANSOES): 15 | 
โ”‚ I5(IND_GERACOES): 30 | I6(IND_LOWER_BOUND): 0
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
...
Opรงรฃo: 

Foi encontrada uma soluรงรฃo de distรขncia 4. Podemos ver a ordem das expansรตes, houve estados expandidos que em nada contribuiam para a soluรงรฃo, mas serviram para garantir que nรฃo havia outra soluรงรฃo mais curta.

Vemos a lista de estados gerados nรฃo expandidos, vai cada vez aumentando, e na geraรงรฃo 14 jรก tinha 14 elementos. A partir de 10 elementos, em vez de colocar todos os elementos da lista, colocamos apenas os primeiros e รบltimos, acompanhado com a quantidade de elementos.

Esta instรขncia era fรกcil, mas e a instรขncia inicial? Vamos ver, mas reduzindo o debug para 2, e a semente para 2. Introduza: 3; 2; 2; 3; 2; ENTER; 1; 40; 6.

Opรงรฃo: 6
โ•โ•คโ• โ–บ  Execuรงรฃo iniciada โ•โ•โ•
 โ”œโ– โ•โ•คโ• ๐Ÿ’ฐ g:0  โ•โ•โ• { }
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 1 ๐Ÿ’ฐ g:1 โš–  1|4 โ•โ•โ• { ๐Ÿ”– 2 ๐Ÿ”– 3 ๐Ÿ”– 4 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 2 ๐Ÿ’ฐ g:1 โš–  2|6 โ•โ•โ• { ๐Ÿ”– 3 ๐Ÿ”– 4 ๐Ÿ”– 5 ๐Ÿ”– 6 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 3 ๐Ÿ’ฐ g:1 โš–  3|8 โ•โ•โ• { ๐Ÿ”– 4 ๐Ÿ”– 5 ๐Ÿ”– 6 ๐Ÿ”– 7 ๐Ÿ”– 8 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 4 ๐Ÿ’ฐ g:1 โš–  4|10 โ•โ•โ• { ๐Ÿ”– 5 ๐Ÿ”– 6 ๐Ÿ”– 7 ๐Ÿ”– 8 ๐Ÿ”– 9 ๐Ÿ”– 10 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 5 ๐Ÿ’ฐ g:2 โš–  5|12 โ•โ•โ• { ๐Ÿ”– 6 ๐Ÿ”– 7 ๐Ÿ”– 8 ๐Ÿ”– 9 ๐Ÿ”– 10 ๐Ÿ”– 11 ๐Ÿ”– 12 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 6 ๐Ÿ’ฐ g:2 โš–  6|13 โ•โ•โ• { ๐Ÿ”– 7 ๐Ÿ”– 8 ๐Ÿ”– 9 ๐Ÿ”– 10 ๐Ÿ”– 11 ๐Ÿ”– 12 ๐Ÿ”– 13 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 7 ๐Ÿ’ฐ g:2 โš–  7|14 โ•โ•โ• { ๐Ÿ”– 8 ๐Ÿ”– 9 ๐Ÿ”– 10 ๐Ÿ”– 11 ๐Ÿ”– 12 ๐Ÿ”– 13 ๐Ÿ”– 14 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 8 ๐Ÿ’ฐ g:2 โš–  8|15 โ•โ•โ• { ๐Ÿ”– 9 ๐Ÿ”– 10 ๐Ÿ”– 11 ๐Ÿ”– 12 ๐Ÿ”– 13 ๐Ÿ”– 14 ๐Ÿ”– 15 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 9 ๐Ÿ’ฐ g:2 โš–  9|16 โ•โ•โ• { ๐Ÿ”– 10 ๐Ÿ”– 11 ๐Ÿ”– 12 ๐Ÿ”– 13 ๐Ÿ”– 14 ๐Ÿ”– 15 ๐Ÿ”– 16 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 10 ๐Ÿ’ฐ g:2 โš–  10|17 โ•โ•โ• { ๐Ÿ”– 11 ๐Ÿ”– 12 ๐Ÿ”– 13 ๐Ÿ”– 14 ๐Ÿ”– 15 ๐Ÿ”– 16 ๐Ÿ”– 17 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 11 ๐Ÿ’ฐ g:2 โš–  11|18 โ•โ•โ• { ๐Ÿ”– 12 ๐Ÿ”– 13 ๐Ÿ”– 14 ๐Ÿ”– 15 ๐Ÿ”– 16 ๐Ÿ”– 17 ๐Ÿ”– 18 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 12 ๐Ÿ’ฐ g:2 โš–  12|19 โ•โ•โ• { ๐Ÿ”– 13 ๐Ÿ”– 14 ๐Ÿ”– 15 ๐Ÿ”– 16 ๐Ÿ”– 17 ๐Ÿ”– 18 ๐Ÿ”– 19 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 13 ๐Ÿ’ฐ g:3 โš–  13|20 โ•โ•โ• { ๐Ÿ”– 14 ๐Ÿ”– 15 ๐Ÿ”– 16 ๐Ÿ”– 17 ๐Ÿ”– 18 ๐Ÿ”– 19 ๐Ÿ”– 20 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 14 ๐Ÿ’ฐ g:3 โš–  14|22 โ•โ•โ• { ๐Ÿ”– 15 ๐Ÿ”– 16 ๐Ÿ”– 17 ๐Ÿ”– 18 ๐Ÿ”– 19 ๐Ÿ”– 20 ๐Ÿ”– 21 ๐Ÿ”– 22 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 15 ๐Ÿ’ฐ g:3 โš–  15|24 โ•โ•โ• { ๐Ÿ”– 16 ๐Ÿ”– 17 ๐Ÿ”– 18 ๐Ÿ”– 19 ๐Ÿ”– 20 ๐Ÿ”– 21 ๐Ÿ”– 22 ๐Ÿ”– 23 ๐Ÿ”– 24 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 16 ๐Ÿ’ฐ g:3 โš–  16|26 โ•โ•โ• { ๐Ÿ”– 17 ๐Ÿ”– 18 ๐Ÿ”– 19 ๐Ÿ”– 20 ๐Ÿ”– 21 ๐Ÿ”– 22 ๐Ÿ”– 23 ๐Ÿ”– 24 ๐Ÿ”– 25 ๐Ÿ”– 26 } 
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 17 ๐Ÿ’ฐ g:3 โš–  17|28 โ•โ•โ• { ๐Ÿ”– 18 ๐Ÿ”– 19 ๐Ÿ”– 20 โ€ฆ ๐Ÿ”– 26 ๐Ÿ”– 27 ๐Ÿ”– 28 } #11
...
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 1273 ๐Ÿ’ฐ g:11 โš–  1273|2107 โ•โ•โ• { ๐Ÿ”– 1274 ๐Ÿ”– 1275 ๐Ÿ”– 1276 โ€ฆ ๐Ÿ”– 2105 ๐Ÿ”– 2106 ๐Ÿ”– 2107 } #834
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 1274 ๐Ÿ’ฐ g:11 โš–  1274|2109 โ•โ•โ• { ๐Ÿ”– 1275 ๐Ÿ”– 1276 ๐Ÿ”– 1277 โ€ฆ ๐Ÿ”– 2107 ๐Ÿ”– 2108 ๐Ÿ”– 2109 } #835
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 1275 ๐Ÿ’ฐ g:11 โš–  1275|2111 โ•โ•โ• { ๐Ÿ”– 1276 ๐Ÿ”– 1277 ๐Ÿ”– 1278 โ€ฆ ๐Ÿ”– 2109 ๐Ÿ”– 2110 ๐Ÿ”– 2111 } #836
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 1276 ๐Ÿ’ฐ g:11 โš–  1276|2113 โ•โ•โ• { ๐Ÿ”– 1277 ๐Ÿ”– 1278 ๐Ÿ”– 1279 โ€ฆ ๐Ÿ”– 2111 ๐Ÿ”– 2112 ๐Ÿ”– 2113 } #837
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 1277 ๐Ÿ’ฐ g:11 โš–  1277|2115 โ•โ•โ• { ๐Ÿ”– 1278 ๐Ÿ”– 1279 ๐Ÿ”– 1280 โ€ฆ ๐Ÿ”– 2113 ๐Ÿ”– 2114 ๐Ÿ”– 2115 } #838
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 1278 ๐Ÿ’ฐ g:11 โš–  1278|2117 โ•โ•โ• { ๐Ÿ”– 1279 ๐Ÿ”– 1280 ๐Ÿ”– 1281 โ€ฆ ๐Ÿ”– 2115 ๐Ÿ”– 2116 ๐Ÿ”– 2117 } #839
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 1279 ๐Ÿ’ฐ g:11 โš–  1279|2119 โ•โ•โ• { ๐Ÿ”– 1280 ๐Ÿ”– 1281 ๐Ÿ”– 1282 โ€ฆ ๐Ÿ”– 2117 ๐Ÿ”– 2118 ๐Ÿ”– 2119 } #840
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 1280 ๐Ÿ’ฐ g:11 โš–  1280|2121 โ•โ•โ• { ๐Ÿ”– 1281 ๐Ÿ”– 1282 ๐Ÿ”– 1283 โ€ฆ ๐Ÿ”– 2119 ๐Ÿ”– 2120 ๐Ÿ”– 2121 } #841
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 1281 ๐Ÿ’ฐ g:11 โš–  1281|2123 โ•โ•โ• { ๐Ÿ”– 1282 ๐Ÿ”– 1283 ๐Ÿ”– 1284 โ€ฆ ๐Ÿ”– 2121 ๐Ÿ”– 2122 ๐Ÿ”– 2123 } #842
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 1282 ๐Ÿ’ฐ g:11 โš–  1282|2125 โ•โ•โ• { ๐Ÿ”– 1283 ๐Ÿ”– 1284 ๐Ÿ”– 1285 โ€ฆ ๐Ÿ”– 2123 ๐Ÿ”– 2124 ๐Ÿ”– 2125 } #843
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 1283 ๐Ÿ’ฐ g:11 โš–  1283|2127 โ•โ•โ• { ๐Ÿ”– 1284 ๐Ÿ”– 1285 ๐Ÿ”– 1286 โ€ฆ ๐Ÿ”– 2125 ๐Ÿ”– 2126 ๐Ÿ”– 2127 } #844
 โ”œโ– โ•โ•คโ• ๐Ÿ”– 1284 ๐Ÿ’ฐ g:11 โš–  1284|2129 โ•โ•โ• { ๐Ÿ”– 1285 ๐Ÿ”– 1286 ๐Ÿ”– 1287 โ€ฆ ๐Ÿ”– 2127 ๐Ÿ”– 2128 ๐Ÿ”– 2129 } #845
 โ”‚  ๐ŸŽฏ  Soluรงรฃo encontrada! ๐Ÿ’ฐ g:12
 โ”‚  .  1  2 
 โ”‚  3  4  5 
 โ”‚  6  7  8 
 โ”œโ”€ Parรขmetros โ”€ P1=1 P2=2 P3=2 P4=10 P5=0 P6=4 P7=0 P8=2 P11=0
โ•โ•งโ• ๐Ÿ  Execuรงรฃo terminada โฑ   8ms  โ•โ•โ•
Puzzle 8
โ”Œโ”€ โš™ Parรขmetros โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ”‚ P1(ALGORITMO): Largura Primeiro | P2(NIVEL_DEBUG): PASSOS | P3(SEMENTE): 2
โ”‚ P4(LIMITE_TEMPO): 10 | P5(LIMITE_ITERACOES): 0 | P6(VER_ACOES): 4 | P7(LIMITE): 0
โ”‚ P8(ESTADOS_REPETIDOS): ascendentes | P11(BARALHAR_SUCESSORES): 0
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
 .  1  2 
 3  4  5 
 6  7  8 
โ”Œโ”€ โš– Indicadores โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ”‚ I1(IND_CUSTO): 12 | I2(Tempo(ms)): 8 | I3(Iteraรงรตes): 0 | I4(IND_EXPANSOES): 1285 | 
โ”‚ I5(IND_GERACOES): 2131 | I6(IND_LOWER_BOUND): 0
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
,,,
Opรงรฃo: 

Foi encontrado um resultado com 12 movimentos, mas foram realizadas 1285 expansรตes, resultando em 2131 geraรงรตes. Notar que a lista de estados gerados nรฃo expandidos foi continuamente crescendo, e no momento em que foi encontrada a soluรงรฃo haviam 845 estados nesta lista.

Vamos confirmar a soluรงรฃo. Introduza 4.

Opรงรฃo: 4
Parte 1, aรงรตes: baixo esq cima cima
 4 (7)(3)
 1  . (2)
 6  8 (5)
Parte 2, aรงรตes: dir baixo baixo dir
(4)(3) 2 
 1 (7) 5 
 6 (8) . 
Parte 3, aรงรตes: cima esq
 .  4  2 
(1)(3) 5 
 6  7  8 
Parte 4, aรงรตes: baixo dir
(1)(4) 2 
 3  .  5 
 6  7  8 
Puzzle 8
...
 .  1  2 
 3  4  5 
 6  7  8 
...
Opรงรฃo: 

Nesta instรขncia foram precisas 4 partes para mostrar a soluรงรฃo com 12 aรงรตes.

Embora o estado inicial tenha sido obtido por 40 movimentos aleatรณrios desde o estado objetivo, alguns dos movimentos acabaram por se inverter resultando numa instรขncia ร  distรขncia 12 do objetivo.

Utilizamos P3(SEMENTE)=2, naturalmente que outra semente aleatรณria poderia gerar um puzzle de 0 a 40 movimentos da soluรงรฃo.

Aรงรฃo 4 - Procura em Profundidade

Vamos ver a procura em profundidade na instรขncia 40, que sabemos ter uma soluรงรฃo de 12. Vamos alterar o algoritmo, colocar a profundidade a 4, debug a completo e visualizaรงรฃo de aรงรตes a 1, para ser ver todos os estados. Introduza: 1; 40; 3; 1; 3; 7; 4; 2; 4; 6; 1; ENTER; 6.

Opรงรฃo: 6
โ•โ•คโ• โ–บ  Execuรงรฃo iniciada โ•โ•โ•
 โ”œโ– โ•โ•คโ• ๐Ÿ’ฐ g:0  โ•โ•โ•
 โ”‚  4  7  3 
 โ”‚  1  .  2 
 โ”‚  6  8  5 
 โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 1 ๐Ÿ’ฐ g:1 โš–  1|4 โ•โ•โ• โšก baixo
 โ”‚  โ”‚  4  .  3 
 โ”‚  โ”‚  1  7  2 
 โ”‚  โ”‚  6  8  5 
 โ”‚  โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 5 ๐Ÿ’ฐ g:2 โš–  2|6 โ•โ•โ• โšก dir
 โ”‚  โ”‚  โ”‚  .  4  3 
 โ”‚  โ”‚  โ”‚  1  7  2 
 โ”‚  โ”‚  โ”‚  6  8  5 
 โ”‚  โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 7 ๐Ÿ’ฐ g:3 โš–  3|7 โ•โ•โ• โšก cima
 โ”‚  โ”‚  โ”‚     1  4  3 
 โ”‚  โ”‚  โ”‚     .  7  2 
 โ”‚  โ”‚  โ”‚     6  8  5 
 โ”‚  โ”‚  โ”‚    ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 6 ๐Ÿ’ฐ g:2 โš–  3|7 โ•โ•โ• โšก esq
 โ”‚  โ”‚     4  3  . 
 โ”‚  โ”‚     1  7  2 
 โ”‚  โ”‚     6  8  5 
 โ”‚  โ”‚     โ””โ– โ•โ•คโ• ๐Ÿ”– 8 ๐Ÿ’ฐ g:3 โš–  4|8 โ•โ•โ• โšก cima
 โ”‚  โ”‚        4  3  2 
 โ”‚  โ”‚        1  7  . 
 โ”‚  โ”‚        6  8  5 
 โ”‚  โ”‚       ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 2 ๐Ÿ’ฐ g:1 โš–  4|8 โ•โ•โ• โšก cima
 โ”‚  โ”‚  4  7  3 
 โ”‚  โ”‚  1  8  2 
 โ”‚  โ”‚  6  .  5 
 โ”‚  โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 9 ๐Ÿ’ฐ g:2 โš–  5|10 โ•โ•โ• โšก dir
 โ”‚  โ”‚  โ”‚  4  7  3 
 โ”‚  โ”‚  โ”‚  1  8  2 
 โ”‚  โ”‚  โ”‚  .  6  5 
 โ”‚  โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 11 ๐Ÿ’ฐ g:3 โš–  6|11 โ•โ•โ• โšก baixo
 โ”‚  โ”‚  โ”‚     4  7  3 
 โ”‚  โ”‚  โ”‚     .  8  2 
 โ”‚  โ”‚  โ”‚     1  6  5 
 โ”‚  โ”‚  โ”‚    ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 10 ๐Ÿ’ฐ g:2 โš–  6|11 โ•โ•โ• โšก esq
 โ”‚  โ”‚     4  7  3 
 โ”‚  โ”‚     1  8  2 
 โ”‚  โ”‚     6  5  . 
 โ”‚  โ”‚     โ””โ– โ•โ•คโ• ๐Ÿ”– 12 ๐Ÿ’ฐ g:3 โš–  7|12 โ•โ•โ• โšก baixo
 โ”‚  โ”‚        4  7  3 
 โ”‚  โ”‚        1  8  . 
 โ”‚  โ”‚        6  5  2 
 โ”‚  โ”‚       ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 3 ๐Ÿ’ฐ g:1 โš–  7|12 โ•โ•โ• โšก dir
 โ”‚  โ”‚  4  7  3 
 โ”‚  โ”‚  .  1  2 
 โ”‚  โ”‚  6  8  5 
 โ”‚  โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 13 ๐Ÿ’ฐ g:2 โš–  8|14 โ•โ•โ• โšก baixo
 โ”‚  โ”‚  โ”‚  .  7  3 
 โ”‚  โ”‚  โ”‚  4  1  2 
 โ”‚  โ”‚  โ”‚  6  8  5 
 โ”‚  โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 15 ๐Ÿ’ฐ g:3 โš–  9|15 โ•โ•โ• โšก esq
 โ”‚  โ”‚  โ”‚     7  .  3 
 โ”‚  โ”‚  โ”‚     4  1  2 
 โ”‚  โ”‚  โ”‚     6  8  5 
 โ”‚  โ”‚  โ”‚    ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 14 ๐Ÿ’ฐ g:2 โš–  9|15 โ•โ•โ• โšก cima
 โ”‚  โ”‚     4  7  3 
 โ”‚  โ”‚     6  1  2 
 โ”‚  โ”‚     .  8  5 
 โ”‚  โ”‚     โ””โ– โ•โ•คโ• ๐Ÿ”– 16 ๐Ÿ’ฐ g:3 โš–  10|16 โ•โ•โ• โšก esq
 โ”‚  โ”‚        4  7  3 
 โ”‚  โ”‚        6  1  2 
 โ”‚  โ”‚        8  .  5 
 โ”‚  โ”‚       ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 4 ๐Ÿ’ฐ g:1 โš–  10|16 โ•โ•โ• โšก esq
 โ”‚     4  7  3 
 โ”‚     1  2  . 
 โ”‚     6  8  5 
 โ”‚     โ”œโ– โ•โ•คโ• ๐Ÿ”– 17 ๐Ÿ’ฐ g:2 โš–  11|18 โ•โ•โ• โšก baixo
 โ”‚     โ”‚  4  7  . 
 โ”‚     โ”‚  1  2  3 
 โ”‚     โ”‚  6  8  5 
 โ”‚     โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 19 ๐Ÿ’ฐ g:3 โš–  12|19 โ•โ•โ• โšก dir
 โ”‚     โ”‚     4  .  7 
 โ”‚     โ”‚     1  2  3 
 โ”‚     โ”‚     6  8  5 
 โ”‚     โ”‚    ๐Ÿƒ ๐Ÿชœ 
 โ”‚     โ””โ– โ•โ•คโ• ๐Ÿ”– 18 ๐Ÿ’ฐ g:2 โš–  12|19 โ•โ•โ• โšก cima
 โ”‚        4  7  3 
 โ”‚        1  2  5 
 โ”‚        6  8  . 
 โ”‚        โ””โ– โ•โ•คโ• ๐Ÿ”– 20 ๐Ÿ’ฐ g:3 โš–  13|20 โ•โ•โ• โšก dir
 โ”‚           4  7  3 
 โ”‚           1  2  5 
 โ”‚           6  .  8 
 โ”‚          ๐Ÿƒ ๐Ÿชœ 
 โ”œโ”€ Parรขmetros โ”€ P1=3 P2=4 P3=2 P4=10 P5=0 P6=1 P7=4 P8=2 P11=0
โ•โ•งโ• ๐Ÿ  Execuรงรฃo terminada โฑ    โ•โ•โ•
Puzzle 8
โ”Œโ”€ โš™ Parรขmetros โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ”‚ P1(ALGORITMO): Profundidade Primeiro | P2(NIVEL_DEBUG): COMPLETO | P3(SEMENTE): 2
โ”‚ P4(LIMITE_TEMPO): 10 | P5(LIMITE_ITERACOES): 0 | P6(VER_ACOES): 1 | P7(LIMITE): 4
โ”‚ P8(ESTADOS_REPETIDOS): ascendentes | P11(BARALHAR_SUCESSORES): 0
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
 4  7  3 
 1  .  2 
 6  8  5 
โ”Œโ”€ โš– Indicadores โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ”‚ I1(IND_CUSTO): -1 | I2(Tempo(ms)): 0 | I3(Iteraรงรตes): 0 | I4(IND_EXPANSOES): 13 | 
โ”‚ I5(IND_GERACOES): 20 | I6(IND_LOWER_BOUND): 0
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
...
Opรงรฃo: 

Foram vistos todos os estados, e nรฃo se encontrou uma soluรงรฃo. No entanto todos os nรณs folha foram cortados devido ao limite, motivo pelo qual tรชm o รญcon da escada. Vamos agora colocar o limite a 0, de modo a executar a iterativa, e debug no nรญvel 2. Introduza: 1; 40; 3; 7; 0; 2; 2; ENTER; 6.

Opรงรฃo: 6
โ•โ•คโ• โ–บ  Execuรงรฃo iniciada โ•โ•โ•
 โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ๐ŸŒณ ๐Ÿชœ 1 โฑ  โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ 
 โ”œโ– โ•โ•คโ• ๐Ÿ’ฐ g:0  โ•โ•โ• โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ๐ŸŒณ ๐Ÿชœ 2 โฑ  โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ 
 โ”œโ– โ•โ•คโ• ๐Ÿ’ฐ g:0  โ•โ•โ•
 โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 1 ๐Ÿ’ฐ g:1 โš–  1|4 โ•โ•โ• โšก baixo โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 2 ๐Ÿ’ฐ g:1 โš–  1|4 โ•โ•โ• โšก cima โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 3 ๐Ÿ’ฐ g:1 โš–  1|4 โ•โ•โ• โšก dir โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 4 ๐Ÿ’ฐ g:1 โš–  1|4 โ•โ•โ• โšก esq โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ๐ŸŒณ ๐Ÿชœ 3 โฑ  โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ 
 โ”œโ– โ•โ•คโ• ๐Ÿ’ฐ g:0 โš–  1|4 โ•โ•โ•
 โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 5 ๐Ÿ’ฐ g:1 โš–  2|8 โ•โ•โ• โšก baixo
 โ”‚  โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 9 ๐Ÿ’ฐ g:2 โš–  3|10 โ•โ•โ• โšก dir โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 10 ๐Ÿ’ฐ g:2 โš–  3|10 โ•โ•โ• โšก esq โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 6 ๐Ÿ’ฐ g:1 โš–  3|10 โ•โ•โ• โšก cima
 โ”‚  โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 11 ๐Ÿ’ฐ g:2 โš–  4|12 โ•โ•โ• โšก dir โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 12 ๐Ÿ’ฐ g:2 โš–  4|12 โ•โ•โ• โšก esq โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 7 ๐Ÿ’ฐ g:1 โš–  4|12 โ•โ•โ• โšก dir
 โ”‚  โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 13 ๐Ÿ’ฐ g:2 โš–  5|14 โ•โ•โ• โšก baixo โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 14 ๐Ÿ’ฐ g:2 โš–  5|14 โ•โ•โ• โšก cima โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 8 ๐Ÿ’ฐ g:1 โš–  5|14 โ•โ•โ• โšก esq
 โ”‚     โ”œโ– โ•โ•คโ• ๐Ÿ”– 15 ๐Ÿ’ฐ g:2 โš–  6|16 โ•โ•โ• โšก baixo โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚     โ””โ– โ•โ•คโ• ๐Ÿ”– 16 ๐Ÿ’ฐ g:2 โš–  6|16 โ•โ•โ• โšก cima โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ๐ŸŒณ ๐Ÿชœ 4 โฑ  โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ 
 โ”œโ– โ•โ•คโ• ๐Ÿ’ฐ g:0 โš–  6|16 โ•โ•โ•
 โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 17 ๐Ÿ’ฐ g:1 โš–  7|20 โ•โ•โ• โšก baixo
 โ”‚  โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 21 ๐Ÿ’ฐ g:2 โš–  8|22 โ•โ•โ• โšก dir
 โ”‚  โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 23 ๐Ÿ’ฐ g:3 โš–  9|23 โ•โ•โ• โšก cima โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 22 ๐Ÿ’ฐ g:2 โš–  9|23 โ•โ•โ• โšก esq
 โ”‚  โ”‚     โ””โ– โ•โ•คโ• ๐Ÿ”– 24 ๐Ÿ’ฐ g:3 โš–  10|24 โ•โ•โ• โšก cima โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 18 ๐Ÿ’ฐ g:1 โš–  10|24 โ•โ•โ• โšก cima
 โ”‚  โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 25 ๐Ÿ’ฐ g:2 โš–  11|26 โ•โ•โ• โšก dir
 โ”‚  โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 27 ๐Ÿ’ฐ g:3 โš–  12|27 โ•โ•โ• โšก baixo โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 26 ๐Ÿ’ฐ g:2 โš–  12|27 โ•โ•โ• โšก esq
 โ”‚  โ”‚     โ””โ– โ•โ•คโ• ๐Ÿ”– 28 ๐Ÿ’ฐ g:3 โš–  13|28 โ•โ•โ• โšก baixo โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 19 ๐Ÿ’ฐ g:1 โš–  13|28 โ•โ•โ• โšก dir
 โ”‚  โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 29 ๐Ÿ’ฐ g:2 โš–  14|30 โ•โ•โ• โšก baixo
 โ”‚  โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 31 ๐Ÿ’ฐ g:3 โš–  15|31 โ•โ•โ• โšก esq โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 30 ๐Ÿ’ฐ g:2 โš–  15|31 โ•โ•โ• โšก cima
 โ”‚  โ”‚     โ””โ– โ•โ•คโ• ๐Ÿ”– 32 ๐Ÿ’ฐ g:3 โš–  16|32 โ•โ•โ• โšก esq โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 20 ๐Ÿ’ฐ g:1 โš–  16|32 โ•โ•โ• โšก esq
 โ”‚     โ”œโ– โ•โ•คโ• ๐Ÿ”– 33 ๐Ÿ’ฐ g:2 โš–  17|34 โ•โ•โ• โšก baixo
 โ”‚     โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 35 ๐Ÿ’ฐ g:3 โš–  18|35 โ•โ•โ• โšก dir โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚     โ””โ– โ•โ•คโ• ๐Ÿ”– 34 ๐Ÿ’ฐ g:2 โš–  18|35 โ•โ•โ• โšก cima
 โ”‚        โ””โ– โ•โ•คโ• ๐Ÿ”– 36 ๐Ÿ’ฐ g:3 โš–  19|36 โ•โ•โ• โšก dir โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ๐ŸŒณ ๐Ÿชœ 5 โฑ  โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ 
...
 โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ๐ŸŒณ ๐Ÿชœ 13 โฑ 6ms  โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ 
 โ”œโ– โ•โ•คโ• ๐Ÿ’ฐ g:0 โš–  2699|4628 โ•โ•โ•
 โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 4629 ๐Ÿ’ฐ g:1 โš–  2700|4632 โ•โ•โ• โšก baixo
 โ”‚  โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 4633 ๐Ÿ’ฐ g:2 โš–  2701|4634 โ•โ•โ• โšก dir
 โ”‚  โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 4635 ๐Ÿ’ฐ g:3 โš–  2702|4635 โ•โ•โ• โšก cima
 โ”‚  โ”‚  โ”‚     โ”œโ– โ•โ•คโ• ๐Ÿ”– 4636 ๐Ÿ’ฐ g:4 โš–  2703|4637 โ•โ•โ• โšก cima
 โ”‚  โ”‚  โ”‚     โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 4638 ๐Ÿ’ฐ g:5 โš–  2704|4638 โ•โ•โ• โšก esq
 โ”‚  โ”‚  โ”‚     โ”‚     โ”œโ– โ•โ•คโ• ๐Ÿ”– 4639 ๐Ÿ’ฐ g:6 โš–  2705|4640 โ•โ•โ• โšก baixo
 โ”‚  โ”‚  โ”‚     โ”‚     โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 4641 ๐Ÿ’ฐ g:7 โš–  2706|4643 โ•โ•โ• โšก baixo
 โ”‚  โ”‚  โ”‚     โ”‚     โ”‚  โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 4644 ๐Ÿ’ฐ g:8 โš–  2707|4645 โ•โ•โ• โšก dir
 โ”‚  โ”‚  โ”‚     โ”‚     โ”‚  โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 4646 ๐Ÿ’ฐ g:9 โš–  2708|4646 โ•โ•โ• โšก cima
 โ”‚  โ”‚  โ”‚     โ”‚     โ”‚  โ”‚  โ”‚     โ”œโ– โ•โ•คโ• ๐Ÿ”– 4647 ๐Ÿ’ฐ g:10 โš–  2709|4648 โ•โ•โ• โšก cima
 โ”‚  โ”‚  โ”‚     โ”‚     โ”‚  โ”‚  โ”‚     โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 4649 ๐Ÿ’ฐ g:11 โš–  2710|4649 โ•โ•โ• โšก esq
 โ”‚  โ”‚  โ”‚     โ”‚     โ”‚  โ”‚  โ”‚     โ”‚     โ”œโ– โ•โ•คโ• ๐Ÿ”– 4650 ๐Ÿ’ฐ g:12 โš–  2711|4651 โ•โ•โ• โšก baixo โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”‚  โ”‚     โ”‚     โ”‚  โ”‚  โ”‚     โ”‚     โ””โ– โ•โ•คโ• ๐Ÿ”– 4651 ๐Ÿ’ฐ g:12 โš–  2711|4651 โ•โ•โ• โšก esq โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”‚  โ”‚     โ”‚     โ”‚  โ”‚  โ”‚     โ””โ– โ•โ•คโ• ๐Ÿ”– 4648 ๐Ÿ’ฐ g:10 โš–  2711|4651 โ•โ•โ• โšก esq
 โ”‚  โ”‚  โ”‚     โ”‚     โ”‚  โ”‚  โ”‚        โ”œโ– โ•โ•คโ• ๐Ÿ”– 4652 ๐Ÿ’ฐ g:11 โš–  2712|4654 โ•โ•โ• โšก baixo
 โ”‚  โ”‚  โ”‚     โ”‚     โ”‚  โ”‚  โ”‚        โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 4655 ๐Ÿ’ฐ g:12 โš–  2713|4656 โ•โ•โ• โšก dir โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
...
 โ”‚  โ”‚  โ”‚                          โ””โ– โ•โ•คโ• ๐Ÿ”– 5056 ๐Ÿ’ฐ g:11 โš–  2942|5060 โ•โ•โ• โšก esq
 โ”‚  โ”‚  โ”‚                             โ”œโ– โ•โ•คโ• ๐Ÿ”– 5061 ๐Ÿ’ฐ g:12 โš–  2943|5062 โ•โ•โ• โšก baixo โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”‚  โ”‚                             โ””โ– โ•โ•คโ• ๐Ÿ”– 5062 ๐Ÿ’ฐ g:12 โš–  2943|5062 โ•โ•โ• โšก cima โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 4634 ๐Ÿ’ฐ g:2 โš–  2943|5062 โ•โ•โ• โšก esq
 โ”‚  โ”‚     โ””โ– โ•โ•คโ• ๐Ÿ”– 5063 ๐Ÿ’ฐ g:3 โš–  2944|5063 โ•โ•โ• โšก cima
 โ”‚  โ”‚        โ”œโ– โ•โ•คโ• ๐Ÿ”– 5064 ๐Ÿ’ฐ g:4 โš–  2945|5065 โ•โ•โ• โšก cima
 โ”‚  โ”‚        โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 5066 ๐Ÿ’ฐ g:5 โš–  2946|5066 โ•โ•โ• โšก dir
 โ”‚  โ”‚        โ”‚     โ”œโ– โ•โ•คโ• ๐Ÿ”– 5067 ๐Ÿ’ฐ g:6 โš–  2947|5068 โ•โ•โ• โšก baixo
 โ”‚  โ”‚        โ”‚     โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 5069 ๐Ÿ’ฐ g:7 โš–  2948|5071 โ•โ•โ• โšก baixo
 โ”‚  โ”‚        โ”‚     โ”‚  โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 5072 ๐Ÿ’ฐ g:8 โš–  2949|5073 โ•โ•โ• โšก dir
 โ”‚  โ”‚        โ”‚     โ”‚  โ”‚  โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 5074 ๐Ÿ’ฐ g:9 โš–  2950|5074 โ•โ•โ• โšก cima
 โ”‚  โ”‚        โ”‚     โ”‚  โ”‚  โ”‚     โ”œโ– โ•โ•คโ• ๐Ÿ”– 5075 ๐Ÿ’ฐ g:10 โš–  2951|5076 โ•โ•โ• โšก cima
 โ”‚  โ”‚        โ”‚     โ”‚  โ”‚  โ”‚     โ”‚  โ””โ– โ•โ•คโ• ๐Ÿ”– 5077 ๐Ÿ’ฐ g:11 โš–  2952|5077 โ•โ•โ• โšก esq
 โ”‚  โ”‚        โ”‚     โ”‚  โ”‚  โ”‚     โ”‚     โ”œโ– โ•โ•คโ• ๐Ÿ”– 5078 ๐Ÿ’ฐ g:12 โš–  2953|5079 โ•โ•โ• โšก baixo โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”‚        โ”‚     โ”‚  โ”‚  โ”‚     โ”‚     โ””โ– โ•โ•คโ• ๐Ÿ”– 5079 ๐Ÿ’ฐ g:12 โš–  2953|5079 โ•โ•โ• โšก esq โ”€โ”€โ”€ ๐Ÿƒ ๐Ÿชœ 
 โ”‚  โ”‚        โ”‚     โ”‚  โ”‚  โ”‚     โ””โ– โ•โ•คโ• ๐Ÿ”– 5076 ๐Ÿ’ฐ g:10 โš–  2953|5079 โ•โ•โ• โšก esq
 โ”‚  โ”‚        โ”‚     โ”‚  โ”‚  โ”‚        โ”œโ– โ•โ•คโ• ๐Ÿ”– 5080 ๐Ÿ’ฐ g:11 โš–  2954|5082 โ•โ•โ• โšก baixo
 โ”‚  โ”‚        โ”‚     โ”‚  โ”‚  โ”‚        โ”‚  โ”œโ– โ•โ•คโ• ๐Ÿ”– 5083 ๐Ÿ’ฐ g:12 โš–  2955|5084 โ•โ•โ• โšก dir
 โ”‚  โ”‚        โ”‚     โ”‚  โ”‚  โ”‚        โ”‚  โ”‚  ๐ŸŽฏ  Soluรงรฃo encontrada! ๐Ÿ’ฐ g:12
 โ”‚  โ”‚        โ”‚     โ”‚  โ”‚  โ”‚        โ”‚  โ”‚  .  1  2 
 โ”‚  โ”‚        โ”‚     โ”‚  โ”‚  โ”‚        โ”‚  โ”‚  3  4  5 
 โ”‚  โ”‚        โ”‚     โ”‚  โ”‚  โ”‚        โ”‚  โ”‚  6  7  8  โ”€โ”€โ”€ ๐ŸŽฏ 12 โ†’ ๐Ÿ“ˆ  โ”€โ”€โ”€  { ๐Ÿ”– 5084 }  โ”€โ”€โ”€  { ๐Ÿ”– 5081 ๐Ÿ”– 5082 }  โ”€โ”€โ”€  { ๐Ÿ”– 5073 }  โ”€โ”€โ”€  { ๐Ÿ”– 5070 ๐Ÿ”– 5071 }  โ”€โ”€โ”€  { ๐Ÿ”– 5068 }  โ”€โ”€โ”€  { ๐Ÿ”– 5065 }  โ”€โ”€โ”€  { ๐Ÿ”– 4630 ๐Ÿ”– 4631 ๐Ÿ”– 4632 } 
 โ”œโ”€ Parรขmetros โ”€ P1=3 P2=2 P3=2 P4=10 P5=0 P6=1 P7=0 P8=2 P11=0
โ•โ•งโ• ๐Ÿ  Execuรงรฃo terminada โฑ   7ms  โ•โ•โ•
Puzzle 8
โ”Œโ”€ โš™ Parรขmetros โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ”‚ P1(ALGORITMO): Profundidade Primeiro | P2(NIVEL_DEBUG): PASSOS | P3(SEMENTE): 2
โ”‚ P4(LIMITE_TEMPO): 10 | P5(LIMITE_ITERACOES): 0 | P6(VER_ACOES): 1 | P7(LIMITE): 0
โ”‚ P8(ESTADOS_REPETIDOS): ascendentes | P11(BARALHAR_SUCESSORES): 0
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
 .  1  2 
 3  4  5 
 6  7  8 
โ”Œโ”€ โš– Indicadores โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ”‚ I1(IND_CUSTO): 12 | I2(Tempo(ms)): 7 | I3(Iteraรงรตes): 0 | I4(IND_EXPANSOES): 2955 | 
โ”‚ I5(IND_GERACOES): 5084 | I6(IND_LOWER_BOUND): 0
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
...
Opรงรฃo: 

A procura em profundidade iterativa encontrou tambรฉm a soluรงรฃo รณtima, com 12 movimentos, na 13ยช iteraรงรฃo. Foram realizadas 2955 expansรตes e 5084 geraรงรตes, um valor superior ร  procura em largura.

Notar no entanto no parรขmetro P8(ESTADOS_REPETIDOS): ascendentes. Significa que nรฃo foram gerados estados, que num dado ramo, jรก tinham ocorrido anteriormente. Esta รฉ a opรงรฃo por omissรฃo para este problema, jรก que foi redefinido CPuzzle8::ResetParametros().

Vamos repetir esta execuรงรฃo, com debug no nรญvel 1, e ignorando repetidos. Introduza: 1; 40; 3; 2; 1; 8; 1; ENTER; 6.

Opรงรฃo: 6
โ•โ•คโ• โ–บ  Execuรงรฃo iniciada โ•โ•โ•#########...###########
 โ”œโ–  ๐ŸŽฏ  Soluรงรฃo encontrada! ๐Ÿ’ฐ g:12
 โ”‚  .  1  2 
 โ”‚  3  4  5 
 โ”‚  6  7  8 
 โ”œโ”€ Parรขmetros โ”€ P1=3 P2=1 P3=2 P4=10 P5=0 P6=1 P7=0 P8=1 P11=0
โ•โ•งโ• ๐Ÿ  Execuรงรฃo terminada โฑ   83ms  โ•โ•โ•
Puzzle 8
โ”Œโ”€ โš™ Parรขmetros โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ”‚ P1(ALGORITMO): Profundidade Primeiro | P2(NIVEL_DEBUG): ATIVIDADE | P3(SEMENTE): 2
โ”‚ P4(LIMITE_TEMPO): 10 | P5(LIMITE_ITERACOES): 0 | P6(VER_ACOES): 1 | P7(LIMITE): 0
โ”‚ P8(ESTADOS_REPETIDOS): ignorar | P11(BARALHAR_SUCESSORES): 0
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
 .  1  2 
 3  4  5 
 6  7  8 
โ”Œโ”€ โš– Indicadores โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ”‚ I1(IND_CUSTO): 12 | I2(Tempo(ms)): 83 | I3(Iteraรงรตes): 0 | I4(IND_EXPANSOES): 156105 | 
โ”‚ I5(IND_GERACOES): 440523 | I6(IND_LOWER_BOUND): 0
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
...
Opรงรฃo: 

Podemos ver que o nรบmero de expansรตes e geraรงรตes รฉ consideravelmente superior. O tempo foi idรชntico mesmo com mais geraรงรตes, mas isso deve-se ao nรญvel de debug utilizado.

A verificaรงรฃo dos estados repetidos, รฉ portanto um parรขmetro bastante importante neste problema, em que o mesmo estado pode surgir vรกrias vezes. Vamos entรฃo testar a eliminaรงรฃo de todos os estados repetidos gerados. Introduza: 1; 40; 3; 8; 3; ENTER; 6.

Opรงรฃo: 6
โ•โ•คโ• โ–บ  Execuรงรฃo iniciada โ•โ•โ•####
 โ”œโ–  ๐ŸŽฏ  Soluรงรฃo encontrada! ๐Ÿ’ฐ g:12
 โ”‚  .  1  2 
 โ”‚  3  4  5 
 โ”‚  6  7  8 
 โ”œโ”€ Parรขmetros โ”€ P1=3 P2=1 P3=2 P4=10 P5=0 P6=1 P7=0 P8=3 P11=0
โ•โ•งโ• ๐Ÿ  Execuรงรฃo terminada โฑ   22ms  โ•โ•โ•
Puzzle 8
โ”Œโ”€ โš™ Parรขmetros โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ”‚ P1(ALGORITMO): Profundidade Primeiro | P2(NIVEL_DEBUG): ATIVIDADE | P3(SEMENTE): 2
โ”‚ P4(LIMITE_TEMPO): 10 | P5(LIMITE_ITERACOES): 0 | P6(VER_ACOES): 1 | P7(LIMITE): 0
โ”‚ P8(ESTADOS_REPETIDOS): gerados | P11(BARALHAR_SUCESSORES): 0
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
 .  1  2 
 3  4  5 
 6  7  8 
โ”Œโ”€ โš– Indicadores โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ”‚ I1(IND_CUSTO): 12 | I2(Tempo(ms)): 22 | I3(Iteraรงรตes): 0 | I4(IND_EXPANSOES): 2647 | 
โ”‚ I5(IND_GERACOES): 4400 | I6(IND_LOWER_BOUND): 0
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
...
Opรงรฃo: 

Podemos ver que o nรบmero de exapansรตes e geraรงรตes รฉ ligeiramente inferior ร  configuraรงรฃo inicial, de remover repetidos ascendentes.

Pergunta: o que acontecia se executarmos a procura em profundidade ilimitada, ao deixar limite com -1, e sem verificar estados repetidos?

Resposta

A procura nรฃo retorna, crasha devido a entrar num ciclo infinito.

โ—€ Passo anterior Prรณximo passo โ–ถ