Grafos em planeamento

Tamanho: px
Começar a partir da página:

Download "Grafos em planeamento"

Transcrição

1 Planeamento Enquadramento Linguagens para planeamento Planeamento com procura em espaço de estados Planeamento de ordem parcial Grafos em planeamento Planeamento com lógica proposicional Análise das abordagens para planeamento

2 Grafos de planeamento Estrutura de dados usada para obter estimativas mais precisas para as heurísticas Solução também pode ser directamente extraída usando o algoritmo GRAPHPLAN

3 Grafos de planeamento S 0 A 0 Consiste numa sequência de níveis que correspondem a instantes de tempo no plano S 0 é o estado inicial Cada nível (S i + A i ) consiste num conjunto de literais e num conjunto de acções S i = Literais ( ) = todos os literais que podem ser verdadeiros nesse instante de tempo, dependendo das acções executadas no instante de tempo anterior A i = Acções ( ) = todas as acções que podem ter as suas précondições satisfeitas nesse instante de tempo, dependendo dos literais verdadeiros nesse instante

4 Grafos de planeamento Significado de podem? Registo de apenas um sub-conjunto restrito de possíveis interacções negativas entre acções Funciona apenas para problemas proposicionais Exemplo em STRIPS: Init(Have(Cake)) Goal(Have(Cake) Eaten(Cake)) Action(Eat(Cake), PRECOND: Have(Cake) EFFECT: Have(Cake) Eaten(Cake)) Action(Bake(Cake), PRECOND: Have(Cake) EFFECT: Have(Cake))

5 Exemplo do bolo Início em S 0 Representa o estado inicial A 0 contém as acções cujas pré-condições são satisfeitas por S 0 Inacção é representada pela persistência de acções () (para cada literal C é adicionado ao grafo uma acção C com pré-condições C e efeito C) Conflitos entre acções são representadas por relações mutex Representadas pelas linhas curvas a cinzento Representam exclusividade mútua: neste caso acção Eat(Cake) tem como efeitos Have(Cake) Eaten(Cake)

6 Exemplo do bolo S 1 contém todos os literais resultantes de qualquer subconjunto de acções em A 0 S 1 contém também relações mutex Contradições: Have(Cake) e Have(Cake), Eaten(Cake) e Eaten(Cake) Outros casos: Have(Cake) e Eaten(Cake) (dependendo da escolha de acções em A0, um ou outro, mas não os dois, pode ser o resultado), Have(Cake) e Eaten(Cake) Consequência de só poder ser escolhida uma acção em A 0

7 Exemplo do bolo Em A1 podem ter lugar as duas acções Relações mutex em A1 Contradições: Have(Cake) e Have(Cake), Eaten(Cake) e Eaten(Cake) Outros casos: Bake(Cake) e Have(Cake), Bake(Cake) e Eat(Cake) (por causa das pré-condições, uma ou outra, mas não as duas, é possível), Eaten(Cake) e Eat(Cake)

8 Exemplo do bolo Continuar até que dois níveis consecutivos tenham os mesmos literais: grafo está leveled off Significa que expansão adicional é desnecessária

9 Exemplo do bolo Uma relação mutex é estabelecida entre duas acções quando: Inconsistência: uma acção nega o efeito da outra e.g. acções Eat(Cake) e Have(Cake) (Have(Cake) pode ser vista como uma acção que tem como pré-condição Have(Cake) e como efeito Have(Cake)) Interferência: um dos efeitos de uma acção é a negação da pré-condição de outra e.g. acções Eat(Cake) e Have(Cake) Competição: uma das pré-condições de uma acção é mutuamente exclusiva em relação à pré-condição de outra e.g. acções Eat(Cake) e Bake(Cake)

10 Exemplo do bolo Relação mutex entre dois literais (suporte inconsistente) quando: Um é a negação do outro Cada par de acções possível que podia produzir esses literais é mutex Em S 1 : literais Have(Cake) e Eaten(Cake) não são possíveis porque a única forma de obter Have(Cake) (acção Have(Cake) ) é incompatível com a única forma de obter Eaten(Cake) (acção Eat(Cake)) Em S 2 : literais Have(Cake) e Eaten(Cake) já são possíveis porque podem ser adquiridos por duas acções compatíveis (Eaten(Cake) e Bake(Cake))

11 Relações mutex: resumo Inconsistência: uma acção nega o efeito da outra

12 Relações mutex: resumo Interferência: um dos efeitos de uma acção é a negação da pré-condição de outra

13 Relações mutex: resumo Competição: uma das pré-condições de uma acção é mutuamente exclusiva em relação à pré-condição de outra

14 Relações mutex: resumo Suporte Inconsistente: Um é a negação do outro Cada par de acções possível que podia produzir esses literais é mutex

15 Grafos de planeamento e heurísticas Planeamento com grafos disponibiliza informação sobre o problema Um literal que não aparece no nível final do grafo não pode ser alcançado por nenhum plano Útil para procura por retrocesso (custo = inf) Nível pode ser usado como estimativa do custo de alcançar literais objectivo = custo de nível Problema: podem ocorrer várias acções em cada nível Restrição a uma acção usando grafos em série (adicionar ligações de exclusividade mútua entre cada par de acções, excepto para acções persistentes) Heurísticas: máximo nível (usa o sub-objectivo com mais nº de níveis), soma de níveis (soma os custos de nível de cada sub-objectivo),

16 Problema relaxado Planeamento com grafos pode ser visto como um problema relaxado que é eficientemente resolvido

17 Obter plano a partir de grafo Um plano válido é obtido a partir de um grafo de planeamento nas seguintes condições: Objectivos são satisfeitos Acções num mesmo nível não interferem uma com as outras (não têm ligações mutex) As pré-condições de cada acção são satisfeitas pelo plano

18 Algoritmo GraphPlan: intuição Gerar o grafo de planeamento até que todos os objectivos sejam alcançados e não se excluam mutuamente Se entretanto o grafo fica levelled off sem que tal aconteça significa que não há solução Procurar um plano válido a partir do grafo Se não for encontrado, adicionar mais um nível ao grafo

19 Algoritmo GraphPlan Como extrair uma solução directamente de um grafo? função GRAPHPLAN(problema) devolve solução ou falha grafo GRAFO-INICIAL-PLANEAMENTO(problema) objectivos OBJECTIVOS[problema] loop se objectivos são todos não mutex no último nível do grafo então solução EXTRAI-SOLUÇÃO(grafo,objectivos,COMPRIMENTO(grafo)) se solução falha então devolve solução senão se NÃO-HÁ-SOLUÇÃO-POSSÍVEL(grafo) então devolve falha grafo EXPANDE-GRAFO(grafo, problema)

20 Procura no grafo Objectivos presentes e não mutex: Escolher acção para alcançar cada objectivo Adicionar pré-condições das acções ao conjunto de objectivos

21 Exemplo: Pneu sobresselente Init(At(Flat, Axle) At(Spare,Trunk)) Goal(At(Spare,Axle)) Action(Remove(Spare,Trunk) PRECOND: At(Spare,Trunk) EFFECT: At(Spare,Trunk) At(Spare,Ground)) Action(Remove(Flat,Axle) PRECOND: At(Flat,Axle) EFFECT: At(Flat,Axle) At(Flat,Ground)) Action(PutOn(Spare,Axle) PRECOND: At(Spare,Ground) At(Flat,Axle) EFFECT: At(Spare,Axle) Ar(Spare,Ground)) Action(LeaveOvernight PRECOND: EFFECT: At(Spare,Ground) At(Spare,Axle) At(Spare,Trunk) At(Flat,Ground) At(Flat,Axle) )

22 Exemplo GRAPHPLAN Inicialmente o plano consiste em 5 literais obtidos a partir do estado inicial (assumindo que o mundo é fechado) Adicionar acções cujas pré-condições sejam satisfeitas por EXPANDE- GRAFO (A 0 ) Adicionar acções de persistência e relações mutex Adicionar os efeitos no nível S 1 Repetir até que o objectivo esteja no nível S i

23 Exemplo GRAPHPLAN Em S 2, o literal objectivo existe e é não mutex em relação a qualquer outro literal Solução pode existir e EXTRAI-SOLUÇÃO tentará encontrá-la EXTRAI-SOLUÇÃO usa um algoritmo de procura: Estado inicial = último nível do grafo e objectivos do problema de planeamento Acções = qualquer selecção de acções não conflituosas que cubram os objectivos nesse estado Objectivo = alcançar o nível S 0 tal que os objectivos sejam satisfeitos Custo = 1 por cada acção

24 Exemplo GRAPHPLAN EXPANDE-GRAFO também procura relações mutex Efeitos inconsistentes E.g. Remove(Sobresselente,Bagageira) e DeixarDuranteANoite Interferência E.g. Remover(Furado,Eixo) e DeixarDuranteANoite Competição E.g. Colocar(Sobresselente,Eixo) e Remover(Furado,Eixo) Suporte inconsistente E.g. em S2, Em(Sobresselente,Eixo) e Em(Furado,Eixo)

25 GRAPHPLAN: solução

26 Observações Será que se pode garantir que se um problema não tem solução, não vai ficar em loop eterno? Como evoluem em número ao longo do grafo? Número de literais Número de acções Número de ligações mutex entre literais Número de ligações mutex entre acções Estas observações são importantes para garantir que se pode obter sempre uma solução recorrendo a grafos de planeamento (ideias para uma prova)

27 Observação 1 p p p p q A q A q A q r q r B q r B q r r r Número de literais aumenta monotonicamente literal que aparece uma vez aparece sempre daí para a frente por causa das acções de persistência ( aumentar monotonicamente significa que literais do nível i são subconjunto dos literais do nível i+1)

28 Observação 2 p p p p q A q A q A q r q r B q r B q r r r Número de acções aumenta monotonicamente uma acção que aparece uma vez aparece sempre daí para a frente como consequência dos literais aumentarem monotonicamente

29 Observação 3 p p p q r A q r q r Ligações mutex entre literais diminuem monotonicamente (considerando que acções/literais que não aparecem são mutex) porque número de literais e acções aumenta monotonicamente

30 Exemplo do bolo Note-se que em S1 há um mutex entre Have(Cake) e Eaten(Cake) e em S2 já não há. Isto deve-se a: Em S1, dependendo da escolha de acções em A0, um ou outro, mas não os dois, pode ser o resultado Em S2, podem vir de acções que não são incompatíveis (Bake(Cake) e Eaten(Cake))

31 Observação 4 p q B p q r s p q r s A C B C A p q r s B C A Ligações mutex entre acções diminuem monotonicamente (considerando que acções/literais que não aparecem são mutex) porque número de literais e acções aumenta monotonicamente

32 Observação 5 Grafo de planeamento levels off /nivela Após a expansão de alguns níveis os últimos níveis são todos iguais Como o espaço é finito (lógica proposicional!), o o número de literais nunca dimuniu e o número de relações mutex nunca aumenta

33 Exemplo GRAPHPLAN Portanto: Termina? SIM Grafos de planeamento são monotonamente crescentes ou decrescentes: Literais aumentam monotonamente: um literal que apareça num estado aparece em todos os estados seguintes Acções aumentam monotonamente Mutexes diminuem monotonamente Devido a estas propriedades e ao facto de existir um número limitado de acções e literais, qualquer procura em grafo termina

34 Planeamento O problema de planeamento Linguagens para planeamento Planeamento com procura em espaço de estados Planeamento de ordem parcial Grafos em planeamento Planeamento com lógica proposicional Análise das abordagens para planeamento

35 Planeamento com lógica proposicional (SAT): intuição Traduzir um problema de planeamento para lógica proposicional e aplicar um algoritmo para SAT para encontrar um modelo que corresponde a um plano válido

36 Planeamento com lógica proposicional (SAT) Planeamento com SAT: testar a satisfação de uma frase em lógica proposicional (na forma normal conjuntiva CNF): Frase contém proposições para a ocorrência de qualquer acção initial state " all possible action descriptions " goal Um modelo atribui verdadeiro às acções que fazem parte do plano correcto e falso às outras Uma atribuição que corresponde a uma plano incorrecto não será um modelo porque entrará em conflito com a necessidade do objectivo ser verdadeiro Se não existir nenhum plano possível então a frase será não satisfazível (não há nenhuma solução possível)

37 Algoritmo SATPLAN: intuição Objectivo é encontrar um plano exequível no menor espaço de tempo Em que cada acção ou conjunto de acções realizadas em paralelo corresponde a uma unidade de tempo Começar com T=0 e codificar em CNF o estado inicial, o objectivo e as acções para T=0 Ir incrementando o valor de T até encontrar uma solução usando um algoritmo SAT A partir da solução obter plano

38 SATPlan: arquitectura

39 Algoritmo SATPLAN função SATPLAN(problema, T max ) devolve solução ou falha inputs: problema, um problema de planeamento T max, um limite superior para o comprimento do plano para T = 0 T max cnf, mapeamento TRADUZ-PARA_SAT(problema, T) atribuição SAT-SOLVER(cnf) se atribuição não é vazia então devolve falha devolve EXTRAI-SOLUÇÃO(atribuição, mapeamento)

40 cnf,mapeamento TRADUZ-PARA_SAT(problema,T) Proposições diferentes para factos em cada instante de tempo Cada proposição tem um instante de tempo associado Em(A1,SFO) 0 Em(A2,JFK) 0 Não podemos assumir que o mundo é fechado logo temos que especificar que proposições não são verdadeiras Em(A1,JFK) 0 Em(A2,SFO) 0 Proposições desconhecidas não são especificadas Estado inicial está associado ao instante 0 Objectivo está associado ao instante T (comprimento do plano)

41 cnf,mapeamento TRADUZ-PARA_SAT(problema,T) Como determinar o instante de tempo T em que o objectivo será alcançado? Começar em T=0 Verificar Em(A1,JFK) 0 Em(A2,SFO) 0 Se falha... Tentar T=1 Verificar Em(A1,JFK) 1 Em(A2,SFO) 1 Repetir este processo até que um caminho de comprimento mínimo seja alcançado Terminação é assegurada por T max

42 cnf,mapeamento TRADUZ-PARA_SAT(problema,T) Como codificar acções em lógica proposicional? Versão proposicional dos axiomas de estado sucessor Em(A1,JFK) 1 (Em(A1,JFK) 0 (Voa(A1,JFK,SFO) 0 Em(A1,JFK) 0 )) (Voa(A1,SFO,JFK) 0 Em(A1,SFO) 0 ) Este tipo de axiomas é necessário para cada avião, aeroporto e instante de tempo Se tivermos mais aeroportos temos de acrescentar mais informação Uma vez construídos estes axiomas, um algoritmo para lógica proposicional (SAT) pode começar a procurar um plano

43 atribuição SAT-SOLVER(cnf) MAS... com esta codificação podem ser encontrados vários modelos que NÃO são satisfatórios: (para T=1) Voa(A1,SFO,JFK) 0 Voa(A1,JFK,SFO) 0 Voa(A2,JFK,SFO) 0 A segunda acção não é possível Ainda que o plano seja um modelo da frase initial state " all possible action descriptions " goal Evitar acções impossíveis através de axiomas de précondição Voa(A1,SFO,JFK) 0 Em(A1,JFK) 0 Agora existe apenas um modelo que satisfaz todos os axiomas e para o qual o objectivo é alcançado em T=1

44 atribuição SAT-SOLVER(cnf) E se se acrescentar um terceiro aeroporto? Não devia ser possível um avião voar para dois destinos ao mesmo tempo! Voa(A1,SFO,JFK) 0 Voa(A2,JFK,SFO) 0 Voa(A2,JFK,LAX) 0 A terceira acção não é possível Ainda que um plano possa conter acções irrelevantes Evitar acções irrelevantes: axiomas de exclusividade de acções (Voa(A2,JFK,SFO) 0 Voa(A2,JFK,LAX) 0 ) Evita acções simultâneas Perca de flexibilidade porque o plano tem de ser totalmente ordenado: não podem ocorrer acções no mesmo instante de tempo Usar exclusões parciais limitadas a pré-condições: duas acções não podem ocorrer simultaneamente se uma delas nega a précondição ou efeito da outra

45 Planeamento O problema de planeamento Linguagens para planeamento Planeamento com procura em espaço de estados Planeamento de ordem parcial Grafos em planeamento Planeamento com lógica proposicional Análise das abordagens para planeamento

46 Análise das abordagens de planeamento Planeamento é uma área de grande interesse em IA Procurar uma solução Provar construtivamente a existência de uma solução O maior problema é a possibilidade de uma explosão combinatória no número de estados

Baseado nos slides de T. Lenarts (IRIDIA), L. Zuoquan(PeckingUniversity) e J.L.Ambite(ISI) Planeamento. Capítulo 11 (disponível online)

Baseado nos slides de T. Lenarts (IRIDIA), L. Zuoquan(PeckingUniversity) e J.L.Ambite(ISI) Planeamento. Capítulo 11 (disponível online) Baseado nos slides de T. Lenarts (IRIDIA), L. Zuoquan(PeckingUniversity) e J.L.Ambite(ISI) Planeamento Capítulo 11 (disponível online) O que é o planeamento? Um sistema de planeamento consiste num algoritmo

Leia mais

Baseado nos slides de Tom Lenarts (IRIDIA) Planeamento. Capítulo 11 Online

Baseado nos slides de Tom Lenarts (IRIDIA) Planeamento. Capítulo 11 Online Baseado nos slides de Tom Lenarts (IRIDIA) Planeamento Capítulo 11 Online Planeamento O problema de planeamento: linguagens Planeamento com procura em espaço de estados Planeamento de ordem parcial Grafos

Leia mais

Grafos de Planejamento

Grafos de Planejamento Grafos de Planejamento O planejador Graphplan Grafo de Planejamento [Blum&Furst 1997] Grafo de níveis: seqüência de níveis que correspondem a passos de tempo no plano. Nível 0 é o estado inicial. níveli:

Leia mais

Baseado nos slides de T. Lenarts (IRIDIA), L. Zuoquan(PeckingUniversity) e J.L.Ambite(ISI) Planeamento. Capítulo 11 (disponível online)

Baseado nos slides de T. Lenarts (IRIDIA), L. Zuoquan(PeckingUniversity) e J.L.Ambite(ISI) Planeamento. Capítulo 11 (disponível online) Baseado nos slides de T. Lenarts (IRIDIA), L. Zuoquan(PeckingUniversity) e J.L.Ambite(ISI) Planeamento Capítulo 11 (disponível online) O que é o planeamento? Um sistema de planeamento consiste num algoritmo

Leia mais

Planeamento com procura em espaço de estados

Planeamento com procura em espaço de estados Planeamento Enquadramento Linguagens para planeamento Planeamento com procura em espaço de estados Planeamento de ordem parcial Grafos em planeamento Planeamento com lógica proposicional Análise das abordagens

Leia mais

Planeamento Clássico

Planeamento Clássico Planeamento Clássico Sumário O que é Planeamento (clássico) Linguagens Representação para Planeamento Planeamento com Procura em Espaço de Estados Procura para a frente Procura para trás Heurísticas para

Leia mais

Situações como resultados de ações no mundo. Wumpus

Situações como resultados de ações no mundo. Wumpus Situation Calculus planejamento como dedução em lógica de primeira ordem Estado inicial é uma situação; Result(s, a) é uma situação, para o estado s e a ação a; Estados são situações uma situação é gerada

Leia mais

Planejamento em IA. Blackbox Graphplan + SATplan. Leliane Nunes de Barros

Planejamento em IA. Blackbox Graphplan + SATplan. Leliane Nunes de Barros Planejamento em IA Blackbox Graphplan + SATplan Introdução SATplan métodos para compilar problemas de planejamento em fórmulas proposicionais (CNF) resolvidas por algoritmos SAT sistemáticos e estocásticos.

Leia mais

Grafos de Planejamento. iane Nunes de Barros. Adaptado de Lectures Slides of Automated Planning: theory and practice (

Grafos de Planejamento. iane Nunes de Barros. Adaptado de Lectures Slides of Automated Planning: theory and practice ( Grafos de Planejamento Grafo de Planejamento: motivação Uma das razões da ineficiência dos algoritmos de busca é o fator de ramificação da árvore de busca, isto é, o número de filhos de cada nó Por exemplo:

Leia mais

Planejamento & Escalonamento O algoritmo FF-métrico. Aldebaran Perseke 3 de abril de 2003

Planejamento & Escalonamento O algoritmo FF-métrico. Aldebaran Perseke 3 de abril de 2003 Planejamento & Escalonamento O algoritmo FF-métrico Aldebaran Perseke aldeba@ime.usp.br 3 de abril de 2003 Planejamento & Escalonamento Problemas de planejamento e escalonamento envolvem os seguintes aspectos:

Leia mais

Baseado nos slides de Tom Lenarts (IRIDIA) e Lin Zuoquan(PeckingUniversity) Capítulo 11

Baseado nos slides de Tom Lenarts (IRIDIA) e Lin Zuoquan(PeckingUniversity) Capítulo 11 Baseado nos slides de Tom Lenarts (IRIDIA) e Lin Zuoquan(PeckingUniversity) Planeamento Capítulo 11 Planeamento Enquadramento Linguagens para planeamento Planeamento com procura em espaço de estados Planeamento

Leia mais

PROCURA E PLANEAMENTO

PROCURA E PLANEAMENTO PROCURA E PLANEAMENTO Primeiro Exame 10 de Janeiro de 2012 9:00-11:30 Este exame é composto por 16 páginas contendo 6 grupos de perguntas. Identifique já todas as folhas do exame com o seu nome e número.

Leia mais

Análise e Síntese de Algoritmos

Análise e Síntese de Algoritmos Análise e Síntese de Algoritmos Problemas NP-Completos CLRS, Cap. 34 Contexto Algoritmos em Grafos Estruturas de Dados para Conjuntos Disjuntos Programação Linear Programação Dinâmica Algoritmos Greedy

Leia mais

Lógica Computacional Aula 4

Lógica Computacional Aula 4 Lógica Computacional Aula 4 DCC/FCUP 2017/18 Conteúdo 1 Lógica proposicional 1 1.1 Fórmulas de Horn.......................................... 1 1.2 Satisfazibilidade............................................

Leia mais

Inteligência Artificial Alameda e Taguspark

Inteligência Artificial Alameda e Taguspark Inteligência Artificial Alameda e Taguspark Repescagem do Segundo Teste 13 de Feveiro de 2009 17H00-17H30 Nome: Número: Este teste tem 8 perguntas e 7 páginas. Escreva o número em todas as páginas. Deve

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial INF 1771 Inteligência Artificial Aula 12 Planejamento Edirlei Soares de Lima Introdução Agentes vistos anteriormente: Agentes baseados em busca. Busca cega; Busca heurística; Busca

Leia mais

PROCURA E PLANEAMENTO

PROCURA E PLANEAMENTO PROCURA E PLANEAMENTO Primeiro Exame 20 de Janeiro de 2009 17:00-19:30 Este exame é composto por 14 páginas contendo 6 grupos de perguntas. Identifique já todas as folhas do exame com o seu nome e número.

Leia mais

Métodos de Verificação

Métodos de Verificação Método de Na construção de derivações no sistema de cálculo de sequentes: Na aplicação de cada regra, só a manipulação referente à fórmula principal é informativa. A cópia dos contextos revela-se assim

Leia mais

Análise e Síntese de Algoritmos. Problemas NP-Completos CLRS, Cap. 34

Análise e Síntese de Algoritmos. Problemas NP-Completos CLRS, Cap. 34 Análise e Síntese de Algoritmos Problemas NP-Completos CLRS, Cap. 34 Contexto Revisões [CLRS, Cap. 1-10] Algoritmos em Grafos [CLRS, Cap. 22-26] Algoritmos elementares Árvores abrangentes Caminhos mais

Leia mais

Complexidade de Algoritmos

Complexidade de Algoritmos Compleidade de Algoritmos Prof. Diego Buchinger diego.buchinger@outlook.com diego.buchinger@udesc.br Prof. Cristiano Damiani Vasconcellos cristiano.vasconcellos@udesc.br Reduções de Problemas X NP-Completo

Leia mais

Inteligência Artificial 2008/09 E z D

Inteligência Artificial 2008/09 E z D /Jan/009 9h-h Inteligência Artificial 008/09 DI/FCT/UNL, Duração: 3h Exame: Época Normal GRUP I I.) Considere o seguinte grafo de estados de um problema de procura. s valores apresentados nos arcos correspondem

Leia mais

CAL ( ) MIEIC/FEUP Técnicas de Concepção de Algoritmos, CAL MIEIC/FEUP, Fev. de Técnicas de Concepção de Algoritmos. .

CAL ( ) MIEIC/FEUP Técnicas de Concepção de Algoritmos, CAL MIEIC/FEUP, Fev. de Técnicas de Concepção de Algoritmos. . 1 Técnicas de Concepção de Algoritmos (1ª parte): algoritmos gananciosos R. Rossetti, A.P. Rocha, A. Pereira, P.B. Silva, T. Fernandes CAL, MIEIC, FEUP Fevereiro de 2011 2 Algoritmos gananciosos (greedy

Leia mais

PROCURA E PLANEAMENTO

PROCURA E PLANEAMENTO PROCURA E PLANEAMENTO Primeiro Exame 13 de Janeiro de 2007 11:00-13:30 Este exame é composto por 13 páginas contendo 6 grupos de perguntas. Identifique já todas as folhas do exame com o seu nome e número.

Leia mais

Inteligência Artificial Alameda e Taguspark

Inteligência Artificial Alameda e Taguspark Inteligência Artificial Alameda e Taguspark Segundo Teste 05 de Janeiro de 2009 9H00-10H30 Nome: Número: Este teste tem 8 perguntas e 6 páginas. Escreva o número em todas as páginas. Deve ter na mesa apenas

Leia mais

Lógica Proposicional. LEIC - Tagus Park 2 o Semestre, Ano Lectivo 2007/08. c Inês Lynce c Luísa Coheur

Lógica Proposicional. LEIC - Tagus Park 2 o Semestre, Ano Lectivo 2007/08. c Inês Lynce c Luísa Coheur Capítulo 2 Lógica Proposicional Lógica para Programação LEIC - Tagus Park 2 o Semestre, Ano Lectivo 2007/08 c Inês Lynce c Luísa Coheur Programa Apresentação Conceitos Básicos Lógica Proposicional ou Cálculo

Leia mais

Algoritmos Greedy. Pedro Ribeiro 2014/2015 DCC/FCUP. Pedro Ribeiro (DCC/FCUP) Algoritmos Greedy 2014/ / 40

Algoritmos Greedy. Pedro Ribeiro 2014/2015 DCC/FCUP. Pedro Ribeiro (DCC/FCUP) Algoritmos Greedy 2014/ / 40 Algoritmos Greedy Pedro Ribeiro DCC/FCUP 2014/2015 Pedro Ribeiro (DCC/FCUP) Algoritmos Greedy 2014/2015 1 / 40 Algoritmos Greedy Vamos falar de algoritmos greedy. Em português são conhecidos como: Algoritmos

Leia mais

PCC104 - Projeto e Análise de Algoritmos

PCC104 - Projeto e Análise de Algoritmos PCC104 - Projeto e Análise de Algoritmos Marco Antonio M. Carvalho Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal de Ouro Preto 1 de novembro de 2018 Marco Antonio

Leia mais

Fundamentos de Programação

Fundamentos de Programação Fundamentos de Programação Solução do Segundo Teste 23 de Janeiro de 2012 09:00 10:30 Nome: Número: 1. (1.0) Explique em que consiste a abstracção de dados, usando os termos barreiras de abstracção, encapsulação

Leia mais

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA PARA A COMPUTAÇÃO PROF. DANIEL S. FREITAS UFSC - CTC - INE Prof. Daniel S. Freitas - UFSC/CTC/INE/2007 p.1/26 3 - INDUÇÃO E RECURSÃO 3.1) Indução Matemática 3.2)

Leia mais

Satisfação de Restrições. Capítulo 5 (disponível online)

Satisfação de Restrições. Capítulo 5 (disponível online) Satisfação de Restrições Capítulo 5 (disponível online) Sumário Problemas de Satisfação de Restrições (CSPs) Procura com Retrocesso para CSPs Procura Local para CSPs Estrutura dos CSPs Problemas de Satisfação

Leia mais

Inteligência Artificial - IA. Resolução de problemas por meio de busca

Inteligência Artificial - IA. Resolução de problemas por meio de busca Resolução de problemas por meio de busca 1 Agente reativo - definido por ação reação Agente de resolução de problemas (ou baseado em objetivos) encontra sequencias de ações que leva ao estado desejável.

Leia mais

Satisfação de Restrições. Capítulo 5 (disponível online)

Satisfação de Restrições. Capítulo 5 (disponível online) Satisfação de Restrições Capítulo 5 (disponível online) Sumário Problemas de Satisfação de Restrições (CSPs, do Inglês Constraint Satisfaction Problems ) Procura com Retrocesso para CSPs Procura Local

Leia mais

istemas Inteligentes,

istemas Inteligentes, istemas Inteligentes, 12-13 1 Cap. 11: PLANNING Uma vez tendo estabelecido um conjunto de estados e construído um modelo completo e correto, precisamos traçar um plano de ação de forma que o agente possa

Leia mais

Lógica Proposicional

Lógica Proposicional Lógica Proposicional Lógica Computacional Carlos Bacelar Almeida Departmento de Informática Universidade do Minho 2007/2008 Carlos Bacelar Almeida, DIUM LÓGICA PROPOSICIONAL- LÓGICA COMPUTACIONAL 1/28

Leia mais

1 Lógica de primeira ordem

1 Lógica de primeira ordem 1 Lógica de primeira ordem 1.1 Sintaxe Para definir uma linguagem de primeira ordem é necessário dispor de um alfabeto. Este alfabeto introduz os símbolos à custa dos quais são construídos os termos e

Leia mais

Lógica Computacional

Lógica Computacional Lógica Computacional DCC/FCUP 2018/19 Conteúdo 1 Introdução à Programação em Lógica 1 1.1 Fórmulas de Horn.......................................... 1 1.2 Satisfazibilidade de Cláusulas....................................

Leia mais

Inteligência Artificial Taguspark

Inteligência Artificial Taguspark Inteligência Artificial Taguspark Repescagem do Segundo Teste 22 de Julho de 2006 9H00-10H30 Nome: Número: Este teste tem 10 perguntas e 10 páginas. Escreva o número em todas as páginas. Deve ter na mesa

Leia mais

Busca com informação e exploração. Inteligência Artificial

Busca com informação e exploração. Inteligência Artificial Busca com informação e exploração (Capítulo 4 - Russell) Inteligência Artificial Professor: Rosalvo Ferreira de Oliveira Neto Estrutura Busca pela melhor escolha Busca gulosa pela melhor escolha Busca

Leia mais

CIC 111 Análise e Projeto de Algoritmos II

CIC 111 Análise e Projeto de Algoritmos II CIC 111 Análise e Projeto de Algoritmos II Prof. Roberto Affonso da Costa Junior Universidade Federal de Itajubá AULA 19 Paths and circuits Eulerian paths Hamiltonian paths De Bruijn sequences Knight s

Leia mais

Usar a implementação Prolog do A*

Usar a implementação Prolog do A* Usar a implementação Prolog do A* 2018/09/16 O algoritmo A* serve para resolver problemas. Basicamente, descobre a sequência de passos necessários para converter um estado inicial num estado final (ou

Leia mais

CEFET/RJ Disciplina: Inteligência Artificial Professor: Eduardo Bezerra Lista de exercícios 01

CEFET/RJ Disciplina: Inteligência Artificial Professor: Eduardo Bezerra Lista de exercícios 01 . CEFET/RJ Disciplina: Inteligência Artificial Professor: Eduardo Bezerra Lista de exercícios 01 Créditos: alguns itens desta lista são adaptados do material da disciplina CS188 - Artificial Intelligence

Leia mais

Agentes Lógicos. Capítulo 7 (online)

Agentes Lógicos. Capítulo 7 (online) Agentes Lógicos Capítulo 7 (online) Sumário Agentes baseados em conhecimento O mundo do Wumpus Lógica em geral Lógica proposicional (Booleana) Equivalência, validade, satisfação Regras de inferência e

Leia mais

Lógica Computacional (CC2003)

Lógica Computacional (CC2003) Lógica Computacional (CC2003) Nelma Moreira Lógica Computacional 21 Conteúdo 1 Mais Teorias (decidíveis) 1 1.1 Resolução para a lógica proposicional................ 4 1.2 Cláusulas...............................

Leia mais

Aula 8: Tableaux Analíticos

Aula 8: Tableaux Analíticos Lógica para Computação Segundo Semestre, 2014 Aula 8: Tableaux Analíticos DAINF-UTFPR Prof. Ricardo Dutra da Silva O métodos de Dedução Natural não permite inferir a falsidade de um sequente, ou seja,

Leia mais

Linguagens Não-Regulares

Linguagens Não-Regulares Linguagens Não-Regulares Mário S. Alvim (msalvim@dcc.ufmg.br) Fundamentos de Teoria da Computação (FTC) DCC-UFMG (2018/02) Mário S. Alvim (msalvim@dcc.ufmg.br) Linguagens Não-Regulares DCC-UFMG (2018/02)

Leia mais

Aula 1: Introdução ao curso

Aula 1: Introdução ao curso Aula 1: Introdução ao curso MCTA027-17 - Teoria dos Grafos Profa. Carla Negri Lintzmayer carla.negri@ufabc.edu.br Centro de Matemática, Computação e Cognição Universidade Federal do ABC 1 Grafos Grafos

Leia mais

Exercícios de Procura e Planeamento 2013/2014

Exercícios de Procura e Planeamento 2013/2014 Exercícios de Procura e Planeamento 203/204 Fausto lmeida ula Prática de PP apítulo 2 apítulo 2 Estratégias ásicas de Procura Heurística Exercício onsidere o seguinte espaço de estados, com estado inicial,

Leia mais

Problemas de Fluxo em Redes

Problemas de Fluxo em Redes CAPÍTULO 7 1. Conceitos fundamentais de grafos Em muitos problemas que nos surgem, a forma mais simples de o descrever, é representá-lo em forma de grafo, uma vez que um grafo oferece uma representação

Leia mais

Procura Informada. Capítulo 4

Procura Informada. Capítulo 4 Procura Informada Capítulo 4 Sumário Procura Melhor Primeiro Procura Gananciosa Procura A * Heurísticas Procura local Árvore de Procura Uma estratégia de procura determina a ordem de expansão dos nós As

Leia mais

4 Modelos Propostos para Otimização de Planejamentos com Restrições de Precedência 4.1 Representação com Algoritmos Genéticos

4 Modelos Propostos para Otimização de Planejamentos com Restrições de Precedência 4.1 Representação com Algoritmos Genéticos 46 4 Modelos Propostos para Otimização de Planejamentos com Restrições de Precedência 4.1 Representação com Algoritmos Genéticos Para definir a representação de um modelo para problemas de planejamento

Leia mais

6. QUAIS AS TÉCNICAS E RESPECTIVOS CRITÉRIOS DE TESTE EXISTENTES?

6. QUAIS AS TÉCNICAS E RESPECTIVOS CRITÉRIOS DE TESTE EXISTENTES? 6. QUAIS AS TÉCNICAS E RESPECTIVOS CRITÉRIOS DE TESTE EXISTENTES? Atualmente existem muitas maneiras de se testar um software. Mesmo assim, existem as técnicas que sempre foram muito utilizadas em sistemas

Leia mais

Algoritmos e Estruturas de Dados I

Algoritmos e Estruturas de Dados I Algoritmos e Estruturas de Dados I Conceitos Básicos Profa. Márcia Cristina Moraes Profa.Milene Selbach Silveira Material para estudo: Forbellone, A. e Eberspächer, H. (2005) capítulos 1 e 2 (até atribuição)

Leia mais

Lógica para Computação Segundo Semestre, Aula 10: SAT. Prof. Ricardo Dutra da Silva. ( p (q ( q r))) ( p r) ( p q) ( p q r) p r.

Lógica para Computação Segundo Semestre, Aula 10: SAT. Prof. Ricardo Dutra da Silva. ( p (q ( q r))) ( p r) ( p q) ( p q r) p r. Lógica para Computação Segundo Semestre, 2014 Aula 10: SAT DAINF-UTFPR Prof. Ricardo Dutra da Silva Definição 10.1. SAT é o problema de decidir se existe uma valoração que satisfaça uma fórmula proposicional.

Leia mais

Planejamento em Inteligência Artificial

Planejamento em Inteligência Artificial Planejamento em Inteligência Artificial Anderson Amorim Lucas Leal Maíra Freitas Ricardo Igor Thiago Bomfim Túlio Miranda Departamento de Ciência da Computação Universidade Federal da Bahia (UFBA) Introdução

Leia mais

método de solução aproximada

método de solução aproximada método de solução aproximada Definir - Representação - Objectivo - Função de avaliação 73 Representação do problema - Definição das variáveis de decisão do modelo escolhido para o problema real. Importante

Leia mais

Problema do Caminho Mínimo

Problema do Caminho Mínimo Departamento de Engenharia de Produção UFPR 63 Problema do Caminho Mínimo O problema do caminho mínimo ou caminho mais curto, shortest path problem, consiste em encontrar o melhor caminho entre dois nós.

Leia mais

2.3.4 Algoritmos de SAT

2.3.4 Algoritmos de SAT 114 CAÍTULO 2. LÓGICA ROOSICIONAL 2.3.4 Algoritmos de SAT Os algoritmos de SAT (do inglês satisfiability ) têm o objectivo de determinar se uma dada fbf α é satisfazível ou não; em caso afirmativo, devolvem

Leia mais

Linguagem com sintaxe e semântica precisas: lógica. Mecanismo de inferência: derivado da sintaxe e da

Linguagem com sintaxe e semântica precisas: lógica. Mecanismo de inferência: derivado da sintaxe e da istemas de Apoio à Decisão Clínica, 09-1 1 Linguagem com sintaxe e semântica precisas: lógica. Mecanismo de inferência: derivado da sintaxe e da semântica. Importante: distinguir entre os fatos e sua representação

Leia mais

Processos e Concorrência

Processos e Concorrência Processos e Concorrência Exercícios 14 de Setembro de 2007 1. Considere a seguinte rede de petri elementar que modela um protocolo de conversa cruzada. stop1 wait1 ack1 echo2 start1 idle1 sent1 sent2 idle2

Leia mais

Lógica Proposicional. LEIC - Tagus Park 2 o Semestre, Ano Lectivo 2007/08. c Inês Lynce c Luísa Coheur

Lógica Proposicional. LEIC - Tagus Park 2 o Semestre, Ano Lectivo 2007/08. c Inês Lynce c Luísa Coheur Capítulo 2 Lógica Proposicional Lógica para Programação LEIC - Tagus Park 2 o Semestre, Ano Lectivo 2007/08 c Inês Lynce c Luísa Coheur Programa Apresentação Conceitos Básicos Lógica Proposicional ou Cálculo

Leia mais

O grau de saída d + (v) de um vértice v é o número de arcos que tem

O grau de saída d + (v) de um vértice v é o número de arcos que tem Grafos Direcionados Definição (Grau de Entrada) O grau de entrada d (v) de um vértice v é o número de arcos que tem v como cabeça. Definição (Grau de Saída) O grau de saída d + (v) de um vértice v é o

Leia mais

Matemática para Ciência de Computadores

Matemática para Ciência de Computadores Matemática para Ciência de Computadores 1 o Ano - LCC & ERSI Luís Antunes lfa@ncc.up.pt DCC-FCUP Complexidade 2002/03 1 Teoria de Conjuntos Um conjunto é uma colecção de objectos/elementos/membros. (Cantor

Leia mais

Arquitetura de Sistemas Operativos

Arquitetura de Sistemas Operativos Arquitetura de Sistemas Operativos Sistemas Operativos 2011/2012 1 Requisitos de uma Secção Crítica Requisitos de uma Secção Crítica Antes de analisarmos as várias soluções para assegurar que um bloco

Leia mais

Planeamento em Robótica

Planeamento em Robótica PLANEAMENTO AUTOMÁTICO - Em Inteligência Artificial, Geração Automática de Planos estuda a resolução de um problema original através da decomposição em subproblemas mais elementares, propondo uma resolução

Leia mais

PROCURA E PLANEAMENTO

PROCURA E PLANEAMENTO PROCURA E PLANEAMENTO Primeiro Exame 31 de Janeiro de 2006 17:00-19:00 Este exame é composto por 12 páginas contendo 6 grupos de perguntas. Identifique já todas as folhas do exame com o seu nome e número.

Leia mais

Espaços Euclidianos. Espaços R n. O conjunto R n é definido como o conjunto de todas as n-uplas ordenadas de números reais:

Espaços Euclidianos. Espaços R n. O conjunto R n é definido como o conjunto de todas as n-uplas ordenadas de números reais: Espaços Euclidianos Espaços R n O conjunto R n é definido como o conjunto de todas as n-uplas ordenadas de números reais: R n = {(x 1,..., x n ) : x 1,..., x n R}. R 1 é simplesmente o conjunto R dos números

Leia mais

(Model Checking) Estes slides são baseados nas notas de aula da Profa. Corina

(Model Checking) Estes slides são baseados nas notas de aula da Profa. Corina Verificação de Modelos (Model Checking) Estes slides são baseados nas notas de aula da Profa. Corina Cîrstea Agenda Lógica Temporal Lógica de Árvore de Computação (CTL) Verificação de Modelo do CTL Caminhos

Leia mais

Busca Cega (Exaustiva) e Heurística. Busca Aula 2

Busca Cega (Exaustiva) e Heurística. Busca Aula 2 Busca Cega (Exaustiva) e Heurística Busca Aula 2 Ao final desta aula a gente deve saber: Conhecer as várias estratégias de realizar Busca não-informada (Busca Cega) Determinar que estratégia se aplica

Leia mais

INE Fundamentos de Matemática Discreta para a Computação

INE Fundamentos de Matemática Discreta para a Computação INE5403 - Fundamentos de Matemática Discreta para a Computação ) Fundamentos.1) Conjuntos e Sub-conjuntos.) Números Inteiros.3) Funções.4) Seqüências e Somas.5) Crescimento de Funções Seqüências Uma seqüência

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Primeiro Teste 29 de Outubro de 2014 18:00-19:30 Este teste é composto por 8 páginas contendo 7 grupos de perguntas. Para perguntas com resposta de escolha múltipla, respostas erradas

Leia mais

É neste ponto que entra o conceito de lógica de programação.

É neste ponto que entra o conceito de lógica de programação. AULA 01 OBJETIVO: Desenvolvimento e solução de Algoritmos. LÓGICA DE PROGRAMAÇÃO A lógica é a ciência do pensamento correto. Esta declaração não implica, contudo, em afirmar que ela seja a ciência da verdade.

Leia mais

impossível conclusão falso premissas verdadeiro

impossível conclusão falso premissas verdadeiro Argumento Definição: Um argumento é uma sequência de enunciados(proposições) na qual um dos enunciados é a conclusão e os demais são premissas, as quais servem para provar ou, pelo menos, fornecer alguma

Leia mais

SEBENTA INTRODUÇÃO Á ALGORITMIA

SEBENTA INTRODUÇÃO Á ALGORITMIA SEBENTA INTRODUÇÃO Á ALGORITMIA O desenvolvimento de programas para computador está sempre baseado na tarefa de programar um computador para seja resolvido um problema ou executada uma função e assim dar

Leia mais

lnteligência Artificial

lnteligência Artificial lnteligência Artificial Busca Heurística - Informada Estratégias de Busca Heurística Usam conhecimento específico do problema na busca da solução Mais eficientes que busca não informada Busca Informada

Leia mais

Estruturas de Controlo Repetitivo. APROG (Civil) Aula 8

Estruturas de Controlo Repetitivo. APROG (Civil) Aula 8 Estruturas de Controlo Repetitivo APROG () Aula 8 Estruturas de Controlo Condicional As linguagens de programação, como o VBA, têm estruturas que permitem repetir blocos de instruções. Uma dessas estruturas

Leia mais

Comunicação. Capítulo 22 (Secções 1-3)

Comunicação. Capítulo 22 (Secções 1-3) Comunicação Capítulo 22 (Secções 1-3) Sumário Comunicação Gramática Análise sintáctica (Parsing) Comunicação Perspectiva clássica (anterior a 1953) Linguagem consiste em frases que são V/F Wittgenstein

Leia mais

Complexidade de Algoritmos. Edson Prestes

Complexidade de Algoritmos. Edson Prestes Edson Prestes O limite superior de complexidade de um problema refere-se ao melhor algoritmo que o resolve. nlog 2 n é um limite superior para o problema de classificação. O limite inferior de um problema

Leia mais

Engenharia de Software 2006/2007

Engenharia de Software 2006/2007 Instituto Superior Técnico Engenharia de Software 2006/2007 Segundo Teste (perguntas 5-10, 70 minutos) Primeiro Exame (perguntas 1-10, 120 minutos) 29/6/2007 Nome: Número: Escreva o seu número em todas

Leia mais

Lógica Computacional

Lógica Computacional Aula Teórica 9: Forma Normal Conjuntiva Departamento de Informática 21 de Março de 2011 O problema Como determinar eficazmente a validade de uma fórmula? Objectivo Determinar a validade de raciocínios

Leia mais

Nelma Moreira. Aula 17

Nelma Moreira. Aula 17 Lógica e Programação Nelma Moreira Aula 17 Conteúdo 1 Programação em Lógica 1 1.1 Resolução para a lógica proposicional................ 1 1.2 Cláusulas............................... 3 1.3 Conversão para

Leia mais

Alguns comentários. Segunda prova. Programação dinâmica em grafos. Guloso em grafos. Algoritmos p. 1

Alguns comentários. Segunda prova. Programação dinâmica em grafos. Guloso em grafos. Algoritmos p. 1 Alguns comentários Segunda prova Programação dinâmica em grafos Guloso em grafos Algoritmos p. 1 Problema dos intervalos disjuntos Problema: Dados intervalos [s[1],f[1]),...,[s[n],f[n]), encontrar coleção

Leia mais

INTELIGÊNCIA ARTIFICIAL

INTELIGÊNCIA ARTIFICIAL INTELIGÊNCIA ARTIFICIAL Segundo Exame 11 de Julho de 2006 9:00-11:00 Este exame é composto por 11 páginas contendo 8 grupos de perguntas. Identifique já todas as folhas do exame com o seu nome e número.

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Segundo Teste 15 de Janeiro de 2014 9:00-10:30 Este teste é composto por 11 páginas contendo 7 grupos de perguntas. Para perguntas com resposta de escolha mu ltipla, respostas erradas

Leia mais

Teoria dos Conjuntos. (Aula 6) Ruy de Queiroz. O Teorema da. (Aula 6) Ruy J. G. B. de Queiroz. Centro de Informática, UFPE

Teoria dos Conjuntos. (Aula 6) Ruy de Queiroz. O Teorema da. (Aula 6) Ruy J. G. B. de Queiroz. Centro de Informática, UFPE Ruy J. G. B. de Centro de Informática, UFPE 2007.1 Conteúdo 1 Seqüências Definição Uma seqüência é uma função cujo domíno é um número natural ou N. Uma seqüência cujo domínio é algum número natural n N

Leia mais

Web Presentation Patterns - Controllers

Web Presentation Patterns - Controllers Instituto Superior Técnico 29 de Novembro de 2004 1 2 3 Page Controller Front Controller 4 5 Porquê Usar Web Applications Não necessita instalar software no cliente. Acesso universal fácil. Interface comum

Leia mais

Informática para Ciências e Engenharias 2013/14. Teórica 7

Informática para Ciências e Engenharias 2013/14. Teórica 7 Informática para Ciências e Engenharias 2013/14 Teórica 7 Na aula de hoje... Controlo de execução ciclos condicionais while end Exemplos raiz quadrada histograma fórmula química while while e matrizes

Leia mais

Lógica Computacional

Lógica Computacional Lógica Computacional Frases Quantificadas Quantificadores e Variáveis Fórmulas Bem Formadas: Sintaxe e Semântica Formas Aristotélicas 21 Outubro 2013 Lógica Computacional 1 Frases Quantificadas - Existem

Leia mais

Inteligência Artificial

Inteligência Artificial UFRGS 2 Inteligência Artificial Técnicas de Mineração de Dados Árvores de Decisão Regras de Associação Árvores de Decisão As árvores de decisão (AD) são ferramentas poderosas para classificação cuja maior

Leia mais

Definição 1.1 : Uma árvore é um grafo simples conexo e sem ciclos.

Definição 1.1 : Uma árvore é um grafo simples conexo e sem ciclos. 1 Árvores Definição 1.1 : Uma árvore é um grafo simples conexo e sem ciclos. Um grafo simples sem ciclos mas não conexo (em que cada componente conexa é portanto uma árvore) chama-se uma floresta. Numa

Leia mais

MARCOS ANTONIO SCHREINER PLANEJAMENTO POR SATISFATIBILIDADE CLAUSAL E NÃO-CLAUSAL BASEADO NA REDE DE PLANOS

MARCOS ANTONIO SCHREINER PLANEJAMENTO POR SATISFATIBILIDADE CLAUSAL E NÃO-CLAUSAL BASEADO NA REDE DE PLANOS MARCOS ANTONIO SCHREINER PLANEJAMENTO POR SATISFATIBILIDADE CLAUSAL E NÃO-CLAUSAL BASEADO NA REDE DE PLANOS Dissertação apresentada como requisito parcial à obtenção do grau de Mestre. Programa de Pós-Graduação

Leia mais

anti-simétrica, com elemento mínimo e tal que, dados n, n, n N, se

anti-simétrica, com elemento mínimo e tal que, dados n, n, n N, se 1 Sistema dedutivo T 1.1 Árvores e árvores etiquetadas Informalmente, uma árvore é uma estrutura constituída por um conjunto de elementos, designados nós, ordenados de um modo particular. Quando se faz

Leia mais

MC102 Aula 26. Instituto de Computação Unicamp. 17 de Novembro de 2016

MC102 Aula 26. Instituto de Computação Unicamp. 17 de Novembro de 2016 MC102 Aula 26 Recursão Instituto de Computação Unicamp 17 de Novembro de 2016 Roteiro 1 Recursão Indução 2 Recursão 3 Fatorial 4 O que acontece na memória 5 Recursão Iteração 6 Soma em um Vetor 7 Números

Leia mais

PROCURA E PLANEAMENTO

PROCURA E PLANEAMENTO PROCURA E PLANEAMENTO Primeiro Exame 12 de Janeiro de 2006 17:00-19:00 Este exame é composto por 13 páginas contendo 6 grupos de perguntas. Identifique já todas as folhas do exame com o seu nome e número.

Leia mais

BCC402 Algoritmos e Programação Avançada Prof. Marco Antonio M. Carvalho Prof. Túlio Ângelo M. Toffolo 2011/1

BCC402 Algoritmos e Programação Avançada Prof. Marco Antonio M. Carvalho Prof. Túlio Ângelo M. Toffolo 2011/1 BCC402 Algoritmos e Programação Avançada Prof. Marco Antonio M. Carvalho Prof. Túlio Ângelo M. Toffolo 2011/1 Na aula anterior Prova 2 Na aula de hoje Técnicas básicas de contagem; Tentativa e Erro; Recursividade.

Leia mais

Tarefa Orientada 7 Consultas de selecção

Tarefa Orientada 7 Consultas de selecção Tarefa Orientada 7 Consultas de selecção Objectivos: Consultas de selecção O Sistema de Gestão de Bases de Dados MS Access Consultas As consultas (queries) permitem interrogar a base de dados, de acordo

Leia mais

Introdução à Programação. João Manuel R. S. Tavares

Introdução à Programação. João Manuel R. S. Tavares Introdução à Programação João Manuel R. S. Tavares Sumário 1. Ciclo de desenvolvimento de um programa; 2. Descrição de algoritmos; 3. Desenvolvimento modular de programas; 4. Estruturas de controlo de

Leia mais

INTRODUÇÃO LINGUAGEM C

INTRODUÇÃO LINGUAGEM C INTRODUÇÃO LINGUAGEM C Aula 1 TECNOLOGIA EM JOGOS DIGITAIS LINGUAGEM E TÉCNICAS DE PROGRAMAÇÃO Marcelo Henrique dos Santos Marcelo Henrique dos Santos Mestrado em Educação (em andamento) MBA em Negócios

Leia mais

Lógica Computacional. Normalização e Formas Normais. Literais, Cláusulas e Monómios; Formas Normais NNF, CNF e DNF. Algoritmos de Conversão

Lógica Computacional. Normalização e Formas Normais. Literais, Cláusulas e Monómios; Formas Normais NNF, CNF e DNF. Algoritmos de Conversão Lógica Computacional Normalização e Formas Normais Literais, Cláusulas e Monómios; Formas Normais NNF, CNF e DNF Algoritmos de Conversão 2 Outubro 2014 Lógica Computacional 1 Forma Normal Negativa - NNF

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Program João Manuel R. S. Tavares Sumário 1. Ciclo de desenvolvimento de um programa; 2. Descrição de algoritmos; 3. Desenvolvimento modular de programas; 4. Estruturas de controlo de um programa.

Leia mais