5. IA - Descrição do 8 Puzzle
PREVISÕES
1. BPM 4D
2. BPM CLOUD & COGNITIVE
3. Startup BPM
6. 8 Puzzle: Formulação do problema
q Estados
q Uma descrição de estado especifica a posição de cada uma das
oito peças e do espaço vazio em um dos nove quadrados.
q Estado inicial
q Qualquer estado pode ser designado como estado inicial.
q Função Sucessor
q Gera os estados válidos que resultam da tentativa de executar
as três ações (o espaço vazio se desloca para a Esquerda, Direita,
Acima ou Abaixo).
IA - Descrição do 8 Puzzle
7. 8 Puzzle: Formulação do problema
q Teste de objetivo
q Verifica se o estado corresponde à configuração de
objetivo mostrada na figura (São possíveis outras
configurações de objetivos)
q Custo de caminho
q Cada passo custa 1, e assim o custo do caminho é o
número de passos do caminho.
q Número de estados acessíveis
q Quebra-cabeça de 8 peças: 9!/2 = 181.440
IA - Descrição do 8 Puzzle
8. 8 Puzzle: Dificuldades a serem superadas
q A principal dificuldade em solucionar o problema é a
grande necessidade de memória e de poder de processamento.
q Cada nodo da estrutura de dados irá gerar novos nodos
de forma sucessiva, e a velocidade de criação destes novos
nodos depende do poder de processamento do computador
em uso.
q Conforme a configuração do estado inicial e do estado
final, a busca pelo caminho entre estes estados pode gerar
uma estrutura de nodos muito grande, o que torna necessário
a disponibilidade de um grande volume de memória.
IA - Descrição do 8 Puzzle
9. 8 Puzzle: Técnicas de Busca
q Dentre os algoritmos utilizados na
tentativa de solucionar este tipo de
problema, destacam-se os algoritmos de
b u s c a e m l a r g u r a , b u s c a e m
profundidade e busca heurística.
IA - Descrição do 8 Puzzle
10. 8 Puzzle: Técnicas de Busca
q Completo: um algoritmo de busca é
completo quando é capaz de encontrar a
solução para o problema, caso exista;
q Ótimo: um algoritmo de busca é considerado
ótimo quando a solução encontrada é a melhor
possível. Por exemplo, a solução possui o
menor caminho ou o caminho de menor custo
entre dois nodos;
IA - Descrição do 8 Puzzle
11. 8 Puzzle: Técnicas de Busca
q Tempo: caracteriza-se pelo tempo que
o algoritmo pode levar para encontrar
a possível solução;
q Espaço: indica a quantidade de
memória necessária para que um
algoritmo possa encontrar a solução em
determinada situação.
IA - Descrição do 8 Puzzle
12. 8 Puzzle: O que deve ser feito?
q Especificação (Caso de Uso, Diagrama de
classes e Diagrama de sequência)
q Implementação do protótipo
q Apresentação da solução
q Fundamentação teórica
q Desenvolvimento do trabalho
q Conclusões
q Referências
IA - Descrição do 8 Puzzle
13. Requisitos Funcionais da Implementação
a) Controle: o protótipo deverá possuir uma interface que permita ao usuário
controlar as configurações desejadas para o problema 8-Puzzle, como por
exemplo, o nível de dificuldade.
b) Tarefas: o protótipo deverá possui uma divisão das tarefas de criação do
estado inicial (embaralhamento) e busca da solução do problema.
c) Estatística: o protótipo deverá informar ao usuário estatísticas de seu
processo de busca quando em andamento, como por exemplo, número de
passos, tempo de busca, tamanho do espaço de armazenamento e ao final
da busca, exibir o custo total do caminho solução;
d) Resposta: o protótipo deverá informar ao usuário a resposta do
problema, caso encontre-a, especificando os passos necessários para
alcançar o estado objetivo a partir do estado inicial.
IA - Descrição do 8 Puzzle
14. Requisitos Não Funcionais da Implementação
a) Linguagem: o protótipo deverá ser desenvolvido em C ou Python.
b) Interface: o protótipo deverá emitir sons para cada uma das ações que
envolvam interação com o usuário e onde mais achar conveniente, além
disso, deverá exibir o estado inicial, o estado atual e o estado objetivo.
c) Plataforma: o protótipo deverá ser compatível com os sistemas
operacionais Microsoft Windows 7 ou superior, Linux Ubuntu.
d) Instruções de uso: o protótipo deverá está todo comentado, cada
estrutura/função utilizada (criada ou importada), além disso, instruções de
como executar/utilizar devem ser informadas (na própria interface ou em um
documento .txt).
e) Desempenho: o protótipo deverá oferecer estabilidade e velocidade de
execução aceitáveis.
IA - Descrição do 8 Puzzle