problemas e busca tópicos avançados em inteligência artificial
TRANSCRIPT
Problemas e Busca
Tópicos Avançados em Inteligência Artificial
Os problemas da IA
Jogos demonstrações de teoremas problemas de raciocínio do senso comum percepção(visão e fala) compreensão da linguagem natural solução de problemas em domínios
especializados
Para criação de um sistema que solucione um problema precisamos:
definir o problema (estado inicial e estado meta);
analisar o problema (técnicas para a solução);
representar o conhecimento do domínio; escolher e aplicar a melhor técnica para
a solução do problema.
Métodos de Resolução de
Problemas
Definindo o problema como uma busca em um espaço de estados
O problema é definido através de estados– posição inicial,regras (deslocamento de
estados), posição final(vitória, objetivo); Este mecanismo define a solução do
problema através de 2 aspectos:– definição formal do problema;
– definição do processo de seleção através da combinação das técnicas e busca;
É necessário: Definir todas as configurações possíveis que o
problema pode apresentar (espaço de estados). Definir configuração inicial e final. Definir regras (operadores para transformações
de estados). Representação do problema (deve conter a
forma de representar os dados, descrição dos estados inicial e objetivo) e descrição dos operadores.
Exemplo.:Jogo dos 8 :
2 8 3
1 6 4
7 5
1 2 3
8 4
7 6 5
busca é um mecanismo genérico usado quando não há conhecimento do método, ou seja, é necessário a procura de um caminho que vá do estado inicial ao estado meta, solucionando o problema.
Sistemas de Produção
Após a definição do problema e os espaços de estados, definimos como resolve-los:
Conjunto de regras; base de conhecimento; estratégia de controle; aplicador de regras.
Estratégias de controle:
O maneira como as decisões forem tomadas é de suma importância para resolução ou não do problema.
1.Movimento:– aquela que causa movimento: não
iniciando sempre no mesmo local, podendo não obter o resultado favorável ao estado meta do problema.
– escolhe aleatoriamente uma cabeça de regra aplicável, mas por não ser sistemática, há possibilidade de sempre passar por regras desnecessárias e assim não otimiza a busca do problema;
Sistemática: para otimização utiliza-se estratégias de movimento global e local:– Busca em Amplitude:
• Cria-se uma árvore com estado inicial representando a raiz do problema, e as ramificações representando caminhos do estado inicial para o estado meta
• Cria uma lista de nós e a ajusta para o estado inicial;
• Regras criam ramificações gerando novos estado;
• chega-se a uma solução quando uma das ramificações produzir primeiro o estado meta;
(0,0)
(4,0) (0,3)
(0,0)
(4,0)
(4,3) (1,3) (4,3) (3,0)
(0,3)
– Busca em Profundidade:• Cria-se um nó com estado inicial;• Cria-se ramificações;• Desenvolve-se aquela ramificação até ser
encontrado o estado meta;• Se não encontra-se o estado meta, ocorre um
backtraking ao estado anterior utilizando outra regra gerando uma nova ramificação, e assim por diante até encontrar-se o estado meta (solução do problema)
(0,0)
(4,0)
(4,3)
Técnicas de Busca Heurística Problemas da IA complexos demais para serem
solucionados por técnicas diretas: criam-se técnicas de busca apropriados; chamados métodos fracos:
– explosão combinatória;– eficácia limitada na resolução de problemas difíceis;– eficácia depende do domínio do problema;
métodos de busca heurística:– gerar-e-testar;– subida de encosta;
– Busca pela melhor escolha;
– redução de problemas;
– satisfação de restrições;
– análise meios-fins;
Gerar-e-TestarGerar-e-Testar etapas:
– gerar uma solução possível. Para alguns problemas, isto significa gerar um ponto em particular no espaço do problema. Par outros , significa gerar um caminho, a partir de um estado inicial;
– testar e visualizar se a solução gerada é realmente um solução, comparando o ponto escolhido ou o ponto final do caminho
escolhido com o conjunto de estados-meta aceitáveis;– Se a solução tiver sido encontrada, saia. Senão volte ao
passo um; é um tipo de busca em profundidade; soluções completas geradas e, após, testadas; método sistemático de busca:
– busca exaustiva do espaço do problema:• gera soluções aleatórias;• não há garantias que a solução seja encontrada;• se o espaço do problema for muito grande,a solução pode
“eventualmente” ser encontrada rapidamente;
– ex: museu britânico:
• Há referências que dizem que você pode encontrar qualquer objeto nele se vagar por lá aleatoriamente;
método gerar-e-testar sistemático:– arvore de busca em profundidade e retrocesso (as vezes a
solução chega até um ponto da árvore e o sistema “pensa” que não adianta continuar naquela heurística pois a solução , no pondo de vista dele, está muito distante, mas nem sempre o sistema está correto em suas conclusões;
– exemplo: cubo colorido usa o método gerar-e testar de modo eficiente (processamento sistemático do espaço de busca (pequeno) e geração da solução , pela busca exaustiva no espaço de estados até encontrar estado meta);
Subida de encosta
programa que usa eficientemente o método gerar-e- testar:
– DENTRAL: infere a estrutura de componentes orgânicos usando dados de espectrograma de massa e de ressonância magnética nuclear.
Hill climbing: variação do procedimento gerar-e-testar:– realimenta os testes e ajuda a deslocar-se no espaço de busca do
problema;– possui uma função heurística fornecendo uma estimativa da
proximidade de determinado estado em relação ao estado meta do problema;
– Exemplo: se você está em uma cidade desconhecida, sem mapa e quer chegar ao centro:
• procura os prédios mais altos (provavelmente seja o centro da cidade);
• a função heurística é dada pela distância entre o local corrente e o local dos prédios mais altos, e os estados desejáveis dão aqueles nos quais a distância é minimizada;
Soluções Absolutas ou relativas:– soluções absolutas: reconhecer um estado meta por meio
de um simples exame do mesmo. Ex:• chegar ao centro de uma cidade;
– soluções relativas: não existe um estado meta a priori (vários o são);
• Caixeiro-viajante ( percorrer determinadas cidades, pelo menor caminho e menor tempo passando por todas elas)