AULA TEÓRICA TÉCNICAS DE PROCURA 5ª Aula por Helder Coelho IIA [1/28]
Por Detrás do Espelho, no País das Maravilhas Gatinho Cheshire, começou Alice, Você pode dizer-me que caminho devo tomar? Isso depende de onde você quer chegar, disse o gato. Lewis Carrol IIA [2/28]
OBSERVAÇÃO DO COMPORTAMENTO PROBLEMA Mundo Agente que resolve O que faz, Como, Porquê, Quando Mundo interior Descrição simbólica Manipulação simbólica Actuação/ Resolução Conhecimento Conhecimento Representação Representação Raciocínio Procura IIA [3/28]
PROCURA Q: COMO ENFRENTAR AS SITUAÇÕES? nas quais uma escolha conduz a uma outra? {escolhas ordenadas} R: EXPLORAR AS VÁRIAS ALTERNATIVAS: Encontrar 1 caminho PROCURA CEGA Encontrar o caminho óptimo PROCURA INFORMADA Jogos HEURÍSTICA IIA [4/28]
PROCURA E RESOLUÇÃO Os termos procura e resolução de problemas dizem respeito a ideias nucleares que tratam de: dedução inferência planeamento raciocínio de senso comum demonstração de teoremas processos relacionados IIA [5/28]
PROBLEMAS TÍPICOS Encontrar a solução de um quebra-cabeças. Encontrar a demonstração de um teorema. Encontrar o caminho mais curto que ligue um conjunto de pontos equidistantes. Encontrar uma sequência de lances que levarão à vitória no jogo. Encontrar uma sequência de transformações que resolve um problema de integração simbólica. IIA [6/28]
O LADO DA PSICOLOGIA FORMULAÇÃO DA RESOLUÇÃO DE PROBLEMAS COMO PROCURA: Objectivo: descrição de uma solução desejada. Espaço de procura: conjunto de passos que conduzem das condições iniciais ao objectivo. A resolução de problemas é realizada através da procura no espaço das soluções possíveis até se encontrar aquela que satisfaça o objectivo. Pensamento: processo de procura através de um espaço de sequências de operadores (situações desejadas, soluções de um problema, objectivos) IIA [7/28]
O LADO DA ECONOMIA: Procura como factor de produção O investimento na procura é determinado pelo mesmo princípio marginal que se aplica a qualquer outro investimento. As teorias da procura visam descobrir, ou calcular, quais os comportamentos que são óptimos. Como a procura é realizada vs. como parar a procura quantidade de procura custo cresce com a procura Modelo óptimo: equacionar o custo máximo da procura com a melhoria marginal!(esperada) no conjunto de alternativas para descobrir o ponto de paragem certo. IIA [8/28]
ECONOMIA E IA Modelo satisfatório: o ponto de paragem da procura é achado quando a melhor oferta excede um nível de aspiração que se ajusta gradualmente ao valor das ofertas recebidas. Economia: estudo da atribuição racional de recursos entre usos limitados e competitivos. Por detrás: um subconjunto de comportamentos humanos associados à produção, troca, e consumo de mercadorias e serviços. MÁQUINA DE EXPLICAÇÃO: Maximizar comportamentos. IIA [9/28]
ECONOMIA E IA Racionalidade: processo, produto do penamento. Maximizar uma quantidade (utilidade esperada, lucro), um comportamento Ligada a entidades cognitivas (crenças, decisões, ) Resultados da escolha racional Herbert Simon, Gary Becker Processos (dinâmicos) da escolha sob certeza ou incerteza (Economia) (IA, Psicologia Cognitiva) Influências sobre as escolhas da estrutura da instituição (dinâmica da racionalidade) IIA [10/28]
COMPONENTES de um Sistema de Procura Base de Dados Descreve a situação do domínio da tarefa e o objectivo Consiste numa variedade de tipos diferentes de estruturas de dados Conjunto de Operadores São usados para manipular a BD Demonstrador de teoremas: modus ponens, resolução,... Xadrez: movimentos das peças Estratégia de controle Decide o que fazer em seguida, nomeadamente que operador deve ser aplicado e onde aplicá-lo (procedimento de selecção) IIA [11/28]
OPERADORES Depois de seleccionar uma forma particular de descrição para os estados, deve-se estudar se essa forma conduz ou permite computações fáceis sobre ela com os operadores. Operadores: funções parciais (mudam um estado noutro); regras de re-escrita (produções). IIA [12/28]
OPERADORES Para manipularem tipos de dados/papeis mentais. Para gerarem um hipótese. Para construirem um plano. Para executarem uma acção. IIA [13/28]
FUNÇÕES DE CONTROLE Decide sobre o êxito, Decide sobre o falhanço, Selecione um objectivo, Selecione um espaço de problemas, Selecione um estado (dos disponíveis), Selecione um operador, e Aplique um operador para obter o novo estado. IIA [14/28]
PROBLEMA ESPAÇO DE RESOLUÇÃO Objectivo Conjunto de Meios para Atingir o Objectivo Acções Dados Iniciais IIA [15/28]
PROCURA Processo de explorar o que os meios (operadores) podem fazer (sequências de acções): estratégias e tácticas. Algoritmo: caminho do estado inicial para o estado que satisfaz o teste do objectivo. Receita com garantia de atingir um resultado. Heurística: pseudo-algoritmo (regra de ouro) que não garante que se atinja o resultado, pois apenas ajuda a procurar (resolver) uma solução. IIA [16/28]
PROJECTO: 1. Formula 2. Procura 3. Executa AGENTE Agentes Baseados em Objectivos (resolvem problemas): formulam objectivos, formulam problemas (Estados, Acções), procuram, acham e realizam acções. IIA [17/28]
MÉTODO, MELHOR QUE ALGORITMO MÉTODO: o conhecimento do agente sobre como organizar as suas acções para resolver um problema. Cobre esquemas mais gerais, como os que são parcialmente especificados e os que têm objectivos abertos. P R T P R Problema na T=transforma R em R pela aplicação do método M representação R IIA [18/28]
ESTRATÉGIAS CLÁSSICAS DE RESOLUÇÃO DE PROBLEMAS DIREÇÃO DE RESOLUÇÃO Teleológica: de cima para baixo ( top down ), partindo da conclusão para os factos (justificação); backward chaining Causalística: de baixo para cima ( bottom up ), partindo dos factos para a conclusão (explicação); forward chaining Do meio para fora; análise de meios-fins ( means-ends analysis ) IIA [19/28]
MEIOS-FINS (ALGORITMO do GPS) Envolve a comparação do objectivo corrente com a situação corrente do domínio do problema, a fim de extrair a diferença entre eles. A diferença é usada para indexar o operador mais relevante a fim de reduzir a diferença. Se este operador não pode ser imediatamente aplicado ao estado presente, arranjam-se sub-objectivos para modificar o estado do problema, de modo que o operador relevante possa ser aplicado. Após os sub-objectivos terem sido resolvidos, o operador relevante é aplicado, e a situação resultante modificada torna-se o novo ponto de partida. IIA [20/28]
MÉTODOS BÁSICOS I) Procura cega: primeiro em largura (ou por níveis), primeiro em profundidade. II) Procura heurística. III) Controle explícito do raciocínio: nível meta e nível objecto. [] +C ++C I) II) III) Controle (C): informação adicional para ajudar a restringir a procura. IIA [21/28]
PROCURA CEGA vs. HEURÍSTICA CEGA: corresponde à geração sistemática e ao teste dos elementos do espaço de procura, sem a introdução de informação adicional sobre a especificidade do domínio do problema. HEURÍSTICA: quando é introduzida aquela informação (eg. controle), a procura é reduzida drasticamente. IIA [22/28]
Depth-First Primeiro em profundidade H G D F A B C F B Melhor em árvores largas e superficiais. IIA [23/28]
Breadth-First Primeiro em largura H G D P Melhor em árvores estreitas e profundas. IIA [24/28]
Algoritmo de Procura 1. If GOAL?(initial-state) then return initial-state 2. INSERT(initial-state,FRINGE) 3. REPEAT: If FRINGE is empty then return failure n <-- REMOVE(FRINGE) s <-- STATE(n) For every state s in SUCCESSORS(s) Create a node n If GOAL?(s ) then return path or goal state INSERT(n,FRINGE) IIA [25/28]
Algoritmo de Procura Modificado 1. If GOAL?(initial-state,FRINGE) 2. REPEAT: If FRINGE is empty then return failure n <-- REMOVE(FRINGE) s <-- STATE(n) If GOAL?(s) then return path or goal state For every state s in SUCCESSORS(s) Create a node n INSERT(n,FRINGE) IIA [26/28]
EXEMPLO DE HEURÍSTICAS Regras de Julgamento: H1: Se tiver várias hipóteses alternativas, encontará a correcta através do ensaio sistemático de todas elas. H2: Se todas as hipóteses tiverem sido testadas com excepção de apenas uma, aceite esta como correcta. H3: Se necessitar de escalonar N acontecimentos, coloque o mais condicionado em primeiro lugar. IIA [27/28]
PROBLEMAS BRINQUEDO QUEBRA-CABEÇAS DE 8 ( Eight puzzle ) ENUNCIADO: Existem 8 tijolos numerados e movíveis numa moldura 3x3. Uma célula está sempre vazia, tornando possível o movimento de um tijolo adjacente para a célula vazia. O problema consiste em transformar uma configuração numa outra, através de movimentos. ESTADOS: configurações dos números 0-8 numa grelha 3x3. OPERADORES: 24 operadores, um para cada movimento possível dos tijolos em células adjacentes para cada célula vazia possível. IIA [28/28]