IA: Busca Competitiva. Ricardo Britto DIE-UFPI

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

Download "IA: Busca Competitiva. Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br"

Transcrição

1 IA: Busca Competitiva Ricardo Britto DIE-UFPI

2 Sumário Introdução Árvores de Jogos Minimax Antecipação Limitada Poda Alfa-beta

3 Introdução Jogos têm sido continuamente uma importante área de aplicação para algoritmos heurísticos. Jogos para dois ou mais jogadores são mais complicados que quebra-cabeças simples por causa da existência de oponentes e imprevisíveis. Os jogadores jogam para ganhar, maximizando sua chance de e minimizando as chances do adversário.

4 Introdução Os jogos normalmente explorados por estratégias de IA são do tipo determinísticos de revezamento de dois jogadores de soma zero com informações perfeitas. Diz que são jogos de soma zero porque quando o jogador ganha (+1) o adversário tem que perder (-1). A outra possibilidade é quando ocorre o empate (0).

5 Introdução Jogos, como um problema de busca, foram uns dos primeiros problemas a serem estudados pela IA. Exemplo: Dama; Xadrez.

6 Introdução É atraente para os pesquisadores porque: Possui natureza abstrata. São de difícil resolução por técnicas comuns. É fácil representar o estado de um jogo. Em geral os algotitmos se restringem a um pequeno número de ações cujos resultados são definidos por regras precisas.

7 Um Exemplo de Jogo - Xadrez Xadrez é difícil porque existem muito estados. Fator de ramificação 38. Geralmente 50 movimentos para cada jogador estados ou nós. Existe a penalização da ineficiência de forma severa.

8 Jogos como Problemas de Busca Um jogo pode ser definido formalmente como uma espécie de problema de busca com os seguintes componentes: Estado inicial: Configuração do tabuleiro e a identificação do jogador que fará o movimento; Função sucessor: Uma lista de pares (movimento, estado); Teste de término: Determina quando o jogo termina. Estados em que o jogo termina são estados terminais; Função de avaliação estática: Atribui valor numérico aos estados terminais (Ex: +1, -1 ou 0).

9 Árvore de Jogo Diversos jogos para dois jogadores podem ser eficientemente representados utilizando árvores chamadas de árvores de jogos. O estado inicial e os movimentos válidos para cada jogador definem a árvore de jogo correspondente ao jogo.

10 Exemplo 1 Jogo da Velha

11 Minimax Em um problema de busca normal, a solução seria uma sequência de movimentos que levasse a um estado objetivo um estado terminal que representa uma vitória. Nos jogos, o jogador adversário tem relação com esse estado. Adversário (MIN) não deseja que o outro jogador (MAX) ganhe. MAX deve achar uma estratégia de contingência que leve a vitória independentemente dos movimentos de MIN.

12 Minimax MAX deve encontrar uma estratégia de contingência que especifique: O movimento de MAX no estado inicial; Os movimentos de MAX nos estados resultantes de cada resposta possível de MIN; Depois os movimentos de MAX nos estados resultantes de cada resposta possível de MIN a esses movimentos e assim por diante.

13 Minimax O algoritmo minimax é um método para avaliar árvores de jogos. Ele aplica uma função de avaliação estática nos nós terminais da árvore e os valores resultantes são passado para cima na árvore para determinar a melhor jogada para o computador.

14 Exemplo 2

15 Exemplo 2 Max 3 6 Min Max

16 Implementando Minimax Function minimax(no_corrente){! if (eh_folha(no_corrente)){! return avaliacao(no_corrente);! }! if (eh_no_min(no_corrente)){! return min(minimax(filhos(no_corrente)));! }! if (eh_no_max(no_corrente)){! return max(minimax(filhos(no_corrente)));! }! }!

17 Análise de Minimax Completude É completo se a árvore for finita Otimização É otimo contra um oponente ótimo. Complexidade de Tempo O(b m ) Complexidade de Espaço O(bm)

18 Exercício 1

19 Antecipação Limitada O minimax deve expandir a árvore do espaço de estados até os nós folhas. Usualmente isso não é prático. Sugestão: Executar uma busca no espaço de estados até um número de níveis predefinido. A função de avaliação é substituída por uma função heurística. O teste terminal é substituído por um teste de corte.

20 Antecipação Limitada Exemplo: Jogo da velha H(n) = X(n) O(n) H(n) Avaliação total de um estado X(n) Total de linhas vitoriosas de MAX O(n) Total de linhas vitoriosas de MIN X tem 6 linhas vitoriosas possíveis. O tem 5 linha vitoriosas possíveis. H = 6 5 = 1

21 Antecipação Limitada Quando uma heurística é aplicada com antecipação limitada, é possível que a profundidade da antecipação não possa detectar que um caminho promissor seja ruim mais tarde (problema do horizonte). Outra questão é que avaliações heurísticas muito profundas podem ser influenciadas por sua profundidade excessiva Estimativa de minimax (que desejamos) é diferente do minimax das estimativas (o que fazemos).

22 Exemplo 3

23 Implementando Antecipação Limitada Function minimax(no_corrente){! if (eh_folha(no_corrente)){! return avaliacao(no_corrente);! }! if (profundidade(no_corrente) < profund_max){! return avaliacao(no_corrente);! }! If (eh_no_min(no_corrente)){! return min(minimax(filhos(no_corrente)));! }! if (eh_no_max(no_corrente)){! return max(minimax(filhos(no_corrente)));! }! }!

24 Poda Alfa-Beta A estratégia é calcular a decisão minimax correta sem examinar todos os nós da árvore de jogo. Desta forma, poda-se as ramificações que não terão influência possível sobre a decisão final.

25 Poda Alfa-Beta Alfa é uma variável que contém o melhor valor (para MAX) encontrando até o presente momento na busca. Se V for pior do que alfa, MAX irá evitá-lo, podando a respectiva ramificação. Beta é definido da mesma forma (para MIN), sendo o inverso de Alfa.

26 Poda Alfa-Beta - Análise A poda não afeta o resultado final. Bons movimentos ordenados melhoram a efetividade da poda. Se por ventura os nós estivessem ordenados com valor de utilidade de forma perfeita, a complexidade de tempo seria O(b m/2 ). Conseguiria-se explorar o dobro de nós em um mesmo espaço de tempo se comparado com o minimax comum. Nessa situação, o fator de ramificação seria a raiz quadrado do fator de ramificação para o mesmo problema resolvido pelo minimax.

27 Exemplo 4

28 Exemplo 4 Passo Nó Alfa Beta 1 a - inf +inf 2 b - inf +inf 3 d - inf +inf 4 d 1 +inf 5 d 2 +inf 6 d 3 +inf 7 b - inf 3 8 e - inf 3 9 e a 3 +inf 11 c 3 +inf 12 f 3 +inf 13 c 3 3

29 Implementando Poda Alfa- Beta Function alpha_beta(no_corrente){! if (eh_raiz(no_corrente)){! alpha = -infinito;! beta = +infinito;! }! if (eh_folha(no_corrente)){! return avaliacao(no_corrente);! }! if (eh_no_min(no_corrente)){! beta = min(beta, alpha_beta(filhos(no_corrente),alpha, beta));! if beta <= alpha!!cortar_busca_abaixo(no_corrente);! }! if (eh_no_max(no_corrente)){! Alpha = max(alpha, alpha_beta(filhos(no_corrente),alpha, beta));! if alpha >= beta!!cortar_busca_abaixo(no_corrente);! }! }!

30 Deep Blue

31 Deep Blue Buscava em média 126 milhões de nós/s Velocidade máxima de 330 milhões de nós/seg Gerava até 30 bilhões de posições por movimento Profundidade 14 Busca alfa-beta com aprofundamento iterativo; Tabela de transposição; Gerava extensões além do limite de profundidade para linhas interessantes de movimentos forçados, chegando a uma profundidade de 40 jogadas, ajudou no sucesso.

32 Deep Blue Função Aval tinha características; livro de aberturas com posições; Banco de dados de jogos de grandes mestres para recomendações consensuais; Grande banco de dados de finais de jogos com posições resolvidas contendo todas as posições com 5 peças e muitas com 6 peças;

33 Deep Blue Computador paralelo com 30 processadores IBM RS/6000 executando a busca de software. 480 processadores VLSI especializados para xadrez, que executavam: A geração de movimentos ( incluindo a ordenação de movimentos) A busca de hardware para os últimos níveis da árvore A avaliação de nós folhas.

Jogos - aula 2. Xadrez chinês. Exemplo de função de avaliação:

Jogos - aula 2. Xadrez chinês. Exemplo de função de avaliação: Exemplo de jogo: Xadrez chinês Jogos - aula 2 Função de avaliação? Prof. Luis Otavio Alvares 1 2 Xadrez chinês Ligue 4 Exemplo de função de avaliação: o valor das peças é de acordo com a sua posição: 12

Leia mais

Jogos - aula 2. Prof. Luis Otavio Alvares II / UFRGS

Jogos - aula 2. Prof. Luis Otavio Alvares II / UFRGS Jogos - aula 2 Prof. Luis Otavio Alvares II / UFRGS 1 Função de avaliação: Xadrez chines 2 Xadrez chinês Exemplo de função de avaliação: o valor das peças é de acordo com a sua posição: 12 para a última

Leia mais

Busca em Espaço de Estados

Busca em Espaço de Estados Busca em Espaço de Estados Jomi Fred Hübner jomi@inf.furb.br FURB / BCC Introdução 2 Agente orientado a meta O projetista não determina um mapeamento entre percepções e ações, mas determina que objetivo

Leia mais

Jogos vs. Problemas de Procura

Jogos vs. Problemas de Procura Jogos Capítulo 6 Jogos vs. Problemas de Procura Adversário imprevisível" necessidade de tomar em consideração todas os movimentos que podem ser tomados pelo adversário Pontuação com sinais opostos O que

Leia mais

Jogos de Tabuleiro e Busca Competitiva

Jogos de Tabuleiro e Busca Competitiva Jogos de Tabuleiro e Busca Competitiva Fabrício Jailson Barth Curso de Ciência da Computação Centro Universitário SENAC Maio de 2008 Sumário Características e Exemplos Histórico Árvore de busca Avaliação

Leia mais

Jogo de Tabuleiro - Mancala Relatório Final

Jogo de Tabuleiro - Mancala Relatório Final Jogo de Tabuleiro - Mancala Relatório Final Inteligência Artificial 3º ano do Mestrado Integrado em Engenharia Informática e Computação Elementos do Grupo: Bruno Lima 080509068 bruno.lima@fe.up.pt Pedro

Leia mais

Jogos de Tabuleiro e Busca Competitiva

Jogos de Tabuleiro e Busca Competitiva Jogos de Tabuleiro e Busca Competitiva Fabrício Jailson Barth BandTec Março de 2012 Sumário Características e Exemplos Histórico Árvore de busca Avaliação Estática Algoritmo Min Max Poda Alpha Beta Questões

Leia mais

Algoritmo MiniMax. Minimax

Algoritmo MiniMax. Minimax Algoritmo MiniMax Luís Carlos Calado 050509043 João Carlos Sousa 050509027 José Carlos Campos 060509007 Rodolfo Sousa Silva 050509069 1 Minimax Minimax (ou minmax) é um método usado na Teoria da Decisão,

Leia mais

CTC-17 Inteligência Artificial Problemas de Busca. Prof. Paulo André Castro pauloac@ita.br

CTC-17 Inteligência Artificial Problemas de Busca. Prof. Paulo André Castro pauloac@ita.br CTC-17 Inteligência Artificial Problemas de Busca Prof. Paulo André Castro pauloac@ita.br www.comp.ita.br/~pauloac Sala 110, IEC-ITA Sumário Agentes que buscam soluções para problemas: Exemplo Tipos de

Leia mais

MÉTODOS DE RESOLUÇÃO DE PROBLEMAS EM IA. Busca em espaço de estados. Estados e Operadores. Jogo dos 8. Sumário. Exemplo: jogo dos 8

MÉTODOS DE RESOLUÇÃO DE PROBLEMAS EM IA. Busca em espaço de estados. Estados e Operadores. Jogo dos 8. Sumário. Exemplo: jogo dos 8 MÉTODOS DE RESOLUÇÃO DE PROBLEMAS EM IA Sumário busca em espaço de estados redução de problemas Busca em espaço de estados Exemplo: jogo dos 8 2 8 3 1 6 4 7 5 Jogo dos 8 Estados e Operadores Estado: uma

Leia mais

Trabalho de Implementação Jogo Reversi

Trabalho de Implementação Jogo Reversi Trabalho de Implementação Jogo Reversi Paulo Afonso Parreira Júnior {paulojr@comp.ufla.br} Rilson Machado de Olivera {rilson@comp.ufla.br} Universidade Federal de Lavras UFLA Departamento de Ciência da

Leia mais

Estruturas de Dados Árvores

Estruturas de Dados Árvores Estruturas de Dados Árvores Prof. Eduardo Alchieri Árvores (introdução) Importância de estruturas unidimensionais ou lineares (vetores e listas) é inegável Porém, estas estruturas não são adequadas para

Leia mais

PROBLEMAS, ESPAÇO DE PROBLEMAS E BUSCA. Prof. DSc. Marcus Vinicius Lamar Prof. DSc. Alexandre Rasi Aoki

PROBLEMAS, ESPAÇO DE PROBLEMAS E BUSCA. Prof. DSc. Marcus Vinicius Lamar Prof. DSc. Alexandre Rasi Aoki PROBLEMAS, ESPAÇO DE PROBLEMAS E BUSCA Prof DSc Marcus Vinicius Lamar Prof DSc Alexandre Rasi Aoki Sumário Problemas de IA Formulação de Problemas como uma Busca em um Espaço de Estados Estratégias de

Leia mais

Inteligência Artificial. Minimax. Xadrez chinês. Xadrez chinês. Exemplos de Jogos. Exemplo de função de avaliação: Prof. Paulo Martins Engel

Inteligência Artificial. Minimax. Xadrez chinês. Xadrez chinês. Exemplos de Jogos. Exemplo de função de avaliação: Prof. Paulo Martins Engel Xadrez chinês Inteligência Artificial Exemplos de Jogos O objetivo de cada jogador é passar todas as suas peças para o quadrado oposto. Movimenta-se uma peça a cada jogada. O movimento é sempre para uma

Leia mais

Árvore de Jogos Minimax e Poda Alfa-Beta

Árvore de Jogos Minimax e Poda Alfa-Beta Universidade Federal do Espírito Santo Centro de Ciências Agrárias CCA UFES Departamento de Computação Árvore de Jogos Minimax e Poda Alfa-Beta Inteligência Artificial Site: http://jeiks.net E-mail: jacsonrcsilva@gmail.com

Leia mais

Sistemas Inteligentes Lista de Exercícios sobre Busca

Sistemas Inteligentes Lista de Exercícios sobre Busca Sistemas Inteligentes Lista de Exercícios sobre Busca 1) A* - Problema do metrô de Paris Suponha que queremos construir um sistema para auxiliar um usuário do metrô de Paris a saber o trajeto mais rápido

Leia mais

Projeto e Análise de Algoritmos Projeto de Algoritmos Tentativa e Erro. Prof. Humberto Brandão humberto@bcc.unifal-mg.edu.br

Projeto e Análise de Algoritmos Projeto de Algoritmos Tentativa e Erro. Prof. Humberto Brandão humberto@bcc.unifal-mg.edu.br Projeto e Análise de Algoritmos Projeto de Algoritmos Tentativa e Erro Prof. Humberto Brandão humberto@bcc.unifal-mg.edu.br Laboratório de Pesquisa e Desenvolvimento Universidade Federal de Alfenas versão

Leia mais

Jorge Figueiredo, DSC/UFCG. Análise e Técnicas de Algoritmos 2005.1. Jorge Figueiredo, DSC/UFCG. Análise e Técnicas de Algoritmos 2005.

Jorge Figueiredo, DSC/UFCG. Análise e Técnicas de Algoritmos 2005.1. Jorge Figueiredo, DSC/UFCG. Análise e Técnicas de Algoritmos 2005. genda nálise e Técnicas de lgoritmos Jorge Figueiredo onceitos ásicos O Problema das Rainhas Template Genérico Mochila inária acktracking and ranch-and-ound Jogo da Troca de olas Jogo da Troca de olas

Leia mais

Inteligência Artificial. Metodologias de Busca

Inteligência Artificial. Metodologias de Busca Inteligência Artificial Metodologias de Busca 1 Solução de problemas como Busca Um problema pode ser considerado como um objetivo Um conjunto de ações podem ser praticadas para alcançar esse objetivo Ao

Leia mais

Resolução de Problemas Com Procura. Capítulo 3

Resolução de Problemas Com Procura. Capítulo 3 Resolução de Problemas Com Procura Capítulo 3 Sumário Agentes que resolvem problemas Tipos de problemas Formulação de problemas Exemplos de problemas Algoritmos de procura básicos Eliminação de estados

Leia mais

Solução de problemas por meio de busca (com Python) Luis Martí DEE/PUC-Rio http://lmarti.com

Solução de problemas por meio de busca (com Python) Luis Martí DEE/PUC-Rio http://lmarti.com Solução de problemas por meio de busca (com Python) Luis Martí DEE/PUC-Rio http://lmarti.com Python e AI (Re)-introdução ao Python. Problemas de busca e principais abordagens. Exemplos em Python Por que

Leia mais

Busca competitiva. Inteligência Artificial. Profª. Solange O. Rezende

Busca competitiva. Inteligência Artificial. Profª. Solange O. Rezende Profª. Solange O. Rezende 1 O que vimos até agora... Busca não informada Baseada somente na organização de estados e a sucessão entre eles Busca informada Utiliza, também, informações a respeito do domínio

Leia mais

Técnicas para Implementação de Jogos

Técnicas para Implementação de Jogos Técnicas para Implementação de Jogos Solange O. Rezende Thiago A. S. Pardo Considerações gerais Aplicações atrativas para métodos de IA Formulação simples do problema (ações bem definidas) Ambiente acessível

Leia mais

IA: Problemas de Satisfação de Restrições. Prof. Msc. Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br

IA: Problemas de Satisfação de Restrições. Prof. Msc. Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br IA: Problemas de Satisfação de Restrições Prof. Msc. Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br Introdução Um PSR é definido por um conjunto de variáveis X 1, X 2,..., X n, e por um conjunto de restrições,

Leia mais

VINÍCIUS GOMES QUAGLIO TÉCNICAS DE INTELIGÊNCIA ARTIFICIAL APLICADAS AO JOGO OTHELLO: UM ESTUDO COMPARATIVO

VINÍCIUS GOMES QUAGLIO TÉCNICAS DE INTELIGÊNCIA ARTIFICIAL APLICADAS AO JOGO OTHELLO: UM ESTUDO COMPARATIVO VINÍCIUS GOMES QUAGLIO TÉCNICAS DE INTELIGÊNCIA ARTIFICIAL APLICADAS AO JOGO OTHELLO: UM ESTUDO COMPARATIVO LONDRINA PR 2013 VINÍCIUS GOMES QUAGLIO TÉCNICAS DE INTELIGÊNCIA ARTIFICIAL APLICADAS AO JOGO

Leia mais

Best-first search. Pesquisa informada. Best-first search Pesquisa gananciosa (greedy) Best-first search

Best-first search. Pesquisa informada. Best-first search Pesquisa gananciosa (greedy) Best-first search Pesquisa informada Dispomos de informação especifica sobre o problema. Esta informação pode ser disponibilizada por uma função de avaliação que indica o quão desejável é expandir um determinado nó. Best-first

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Introdução Aprendizagem de Máquina Alessandro L. Koerich Introdução Desde que os computadores foram inventados temos nos perguntado: Eles são capazes de aprender? Se pudéssemos programá-los para aprender

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial INF 1771 Inteligência Artificial Aula 02 Agentes Inteligentes Edirlei Soares de Lima Agentes Inteligentes Um agente é algo capaz de perceber seu ambiente por meio de sensores e de

Leia mais

Jogos e Busca. Silvio Lago

Jogos e Busca. Silvio Lago 1 Jogos e Busca Silvio Lago slago@ime.usp.br 2 Sumário Jogos adversariais Algoritmo MINIMAX Algoritmo de poda α-β Função de avaliação e corte Jogos de sorte 3 Jogos Ambientes competitivos, em que as metas

Leia mais

Faculdade Alagoana de Administração FAA Ciência da Computação. (Resolução de Problemas em) Espaço de Estados

Faculdade Alagoana de Administração FAA Ciência da Computação. (Resolução de Problemas em) Espaço de Estados Faculdade Alagoana de Administração FAA Ciência da Computação (Resolução de Problemas em) Espaço de Estados (Adaptado de O.B. Coelho & G. Bittencourt & C. Moraes) Maria Aparecida Amorim Sibaldo maasibaldo@gmail.com

Leia mais

TEORIA DOS JOGOS E APRENDIZADO

TEORIA DOS JOGOS E APRENDIZADO TEORIA DOS JOGOS E APRENDIZADO DE MÁQUINA Estudos Iniciais André Filipe de Moraes Batista Disciplina de Aprendizagem de Máquina UFABC 2010 TEORIA DOS JOGOS Ramo da matemática aplicada estuda situações

Leia mais

Resolução de problemas por meio de busca. Capítulo 3 Russell & Norvig Seções 3.1, 3.2 e 3.3

Resolução de problemas por meio de busca. Capítulo 3 Russell & Norvig Seções 3.1, 3.2 e 3.3 Resolução de problemas por meio de busca Capítulo 3 Russell & Norvig Seções 3.1, 3.2 e 3.3 Agentes de resolução de problemas Agentes reagvos não funcionam em ambientes para quais o número de regras condição-

Leia mais

Respostas dos Exercícios Cap. 2 Russell & Norvig

Respostas dos Exercícios Cap. 2 Russell & Norvig Respostas dos Exercícios Cap. 2 Russell & Norvig 1. (2.2) Uma medida de desempenho e utilizada por um observador externo para avaliar o sucesso de um agente. Uma função de utilidade e utilizada por um

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Prof. Rafael Stubs Parpinelli DCC / UDESC-Joinville parpinelli@joinville.udesc.br www.joinville.udesc.br/portal/professores/parpinelli www2.joinville.udesc.br/~coca/ Agentes Inteligentes:

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial Edirlei Soares de Lima INF 1771 Inteligência Artificial Aula 02 Agentes Inteligentes Agentes Inteligentes Um agente é algo capaz de perceber seu ambiente por meio de sensores e de

Leia mais

Introdução à Simulação

Introdução à Simulação Introdução à Simulação O que é simulação? Wikipedia: Simulação é a imitação de alguma coisa real ou processo. O ato de simular algo geralmente consiste em representar certas características e/ou comportamentos

Leia mais

Problemas de Satisfação de Restrições

Problemas de Satisfação de Restrições Computação Inteligente Problemas de Satisfação de Restrições Lucas Augusto Carvalho Mestrado em Ciência da Computação 2011.1 DCOMP - Universidade Federal de Sergipe 1 Conteúdo Problemas de Satisfação de

Leia mais

Introdução à Inteligência Artificial. Procura em contextos competitivos jogos (cont.)

Introdução à Inteligência Artificial. Procura em contextos competitivos jogos (cont.) Introdução à Inteligência Artificial Procura em contextos competitivos jogos (cont.) Sumário n Vimos Jogos de 2 jogadores n Determinísticos, soma nula, informação perfeita Estratégia óptima minimax Algoritmos

Leia mais

c. Técnica de Estrutura de Controle Teste do Caminho Básico

c. Técnica de Estrutura de Controle Teste do Caminho Básico 1) Defina: a. Fluxo de controle A análise de fluxo de controle é a técnica estática em que o fluxo de controle através de um programa é analisado, quer com um gráfico, quer com uma ferramenta de fluxo

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Licenciatura em Computação Prof. Adriano Avelar Site: www.adrianoavelar.com Email: eam.avelar@gmail.com Agentes Inteligentes Um agente é algo capaz de perceber seu ambiente por

Leia mais

Exemplo de aprendizagem máquina

Exemplo de aprendizagem máquina (Primeiro exemplo) Jogo de damas c/ aprendizagem Tom Mitchell, Machine Learning, McGraw-Hill, 1997 chapter 1 17-Jul-13 http://w3.ualg.pt/~jvo/ml 12 1 Exemplo de aprendizagem máquina 1. Descrição do problema

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às

Leia mais

BCC202 - Estrutura de Dados I

BCC202 - Estrutura de Dados I BCC202 - Estrutura de Dados I Aula 04: Análise de Algoritmos (Parte 1) Reinaldo Fortes Universidade Federal de Ouro Preto, UFOP Departamento de Ciência da Computação, DECOM Website: www.decom.ufop.br/reifortes

Leia mais

Agrupamento de dados

Agrupamento de dados Organização e Recuperação de Informação: Agrupamento de dados Marcelo K. A. Faculdade de Computação - UFU Agrupamento de dados / 7 Overview Agrupamento: introdução Agrupamento em ORI 3 K-médias 4 Avaliação

Leia mais

Cap17 - Tomada de Decisões Complexas

Cap17 - Tomada de Decisões Complexas Cap17 - Tomada de Decisões Complexas Processos de Decisão de Markov Algoritmo de Iteração de Valor Algoritmo de Iteração de Política Processos de Decisão de Markov Parcialmente Observáveis Teoria de Jogos

Leia mais

Jogo de Damas Embarcado Multinível

Jogo de Damas Embarcado Multinível Centro Universitário Positivo - UnicenP Núcleo de Ciências Exatas e Tecnológicas NCET Engenharia da Computação Christiano Grillo Justus Jogo de Damas Embarcado Multinível Curitiba 2006 Centro Universitário

Leia mais

Computação Paralela. Desenvolvimento de Aplicações Paralelas João Luís Ferreira Sobral Departamento do Informática Universidade do Minho.

Computação Paralela. Desenvolvimento de Aplicações Paralelas João Luís Ferreira Sobral Departamento do Informática Universidade do Minho. Computação Paralela Desenvolvimento de Aplicações Paralelas João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Outubro 2005 Desenvolvimento de Aplicações Paralelas Uma Metodologia

Leia mais

Memory Leak em Java?

Memory Leak em Java? 1 Memory Leak em Java? Saiba como memory leaks se manifestam em Java e como evitá-los Sobre o Autor Carlos Eduardo G. Tosin (carlos@tosin.com.br) é formado em Ciência da Computação pela PUC-PR, pós-graduado

Leia mais

PERT/CPM. POP II UDESC Prof. Adelmo A. Martins

PERT/CPM. POP II UDESC Prof. Adelmo A. Martins PERT/CPM POP II UDESC Prof. Adelmo A. Martins PERT/CPM Conjunto de técnicas utilizado para o planejamento e o controle de empreendimentos ou projetos. Utilizado para gerenciar tempo e custos dos empreendimentos

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial Edirlei Soares de Lima INF 1771 Inteligência Artificial Aula 24 Inteligência Artificial em Jogos Introdução Surgiu com a criação dos primeiros jogos (Pac-Man, Space Invaders...).

Leia mais

Tópicos Especiais em Redes: Introdução a Teoria dos Jogos com Aplicações a Redes de Computadores

Tópicos Especiais em Redes: Introdução a Teoria dos Jogos com Aplicações a Redes de Computadores Tópicos Especiais em Redes: Introdução a Teoria dos Jogos com Aplicações a Redes de Computadores Aula passada: Discussão sobre situações de conflito Exemplos de jogos Jogo em aula Aula de hoje: Introdução

Leia mais

Árvores Binárias de Busca

Árvores Binárias de Busca Árvores Binárias de Busca Definição Uma Árvore Binária de Busca possui as mesmas propriedades de uma AB, acrescida da seguinte propriedade: Para todo nó da árvore, se seu valor é X, então: Os nós pertencentes

Leia mais

Busca em Árvores ou Grafos

Busca em Árvores ou Grafos Giga Mundo Computação RSS Sobre a Equipe Mais computacao no seu Email! Nosso forum Politica de Privacidade Busca em Árvores ou Grafos Posted by on March 10th, 2009 in Inteligência Artificial StatSoft Data

Leia mais

Engenharia de Software II: Criando o cronograma do projeto. Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br

Engenharia de Software II: Criando o cronograma do projeto. Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br Engenharia de Software II: Criando o cronograma do projeto Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br Sumário Definição das atividades. Sequenciamento das atividades. Estimativa de recursos

Leia mais

Gerenciamento de Projeto: Criando o Termo de Abertura II. Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br

Gerenciamento de Projeto: Criando o Termo de Abertura II. Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br Gerenciamento de Projeto: Criando o Termo de Abertura II Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br Sumário Priorizando Projetos. Métodos Matemáticos. Métodos de análise de benefícios. Selecionando

Leia mais

1 se n = 0 n (n 1)! se n 1

1 se n = 0 n (n 1)! se n 1 Recursão versus Iteração Problema: Cálculo de n! = n (n 1)... 1 int facti(int n) { int fac=n; while(n>0){ fac=fac*n; n--; } return fac; } [epd94, Cap. 5.13-15] Definição recursiva: n! = { 1 se n = 0 n

Leia mais

IA: Introdução. Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br

IA: Introdução. Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br IA: Introdução Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br Sumário O que é Inteligência Artificial? IA forte e IA fraca Métodos fortes e Métodos fracos De Aristóteles a Babbage Alan Turing e

Leia mais

Problemas de Jogos e Tabuleiros

Problemas de Jogos e Tabuleiros Problemas de Jogos e Tabuleiros Professor Emiliano Augusto Chagas Para esquentar! 01) Duas crianças se revezam em turnos quebrando uma barra retangular de chocolate, com seis quadrados de altura e oito

Leia mais

CAPÍTULO 9 RISCO E INCERTEZA

CAPÍTULO 9 RISCO E INCERTEZA CAPÍTULO 9 9 RISCO E INCERTEZA 9.1 Conceito de Risco Um fator que pode complicar bastante a solução de um problema de pesquisa operacional é a incerteza. Grande parte das decisões são tomadas baseando-se

Leia mais

Aqui você também vai encontrar o botão ""Autocompletar"", que ajuda na criação do alinhamento, caso você não consiga se decidir.

Aqui você também vai encontrar o botão Autocompletar, que ajuda na criação do alinhamento, caso você não consiga se decidir. 1. ATIVAR CARTA Nesta seção, localizada dentro do ""shopping center"", você precisa inserir o código que aparece no verso da sua carta real para adicioná-la à sua coleção virtual. Às vezes, você pode se

Leia mais

Identificação rápida de gargalos Uma forma mais eficiente de realizar testes de carga. Um artigo técnico da Oracle Junho de 2009

Identificação rápida de gargalos Uma forma mais eficiente de realizar testes de carga. Um artigo técnico da Oracle Junho de 2009 Identificação rápida de gargalos Uma forma mais eficiente de realizar testes de carga Um artigo técnico da Oracle Junho de 2009 Identificação rápida de gargalos Uma forma mais eficiente de realizar testes

Leia mais

Busca Estocástica Baseada em Planejamento para Maximizar Metas em Jogos de RTS

Busca Estocástica Baseada em Planejamento para Maximizar Metas em Jogos de RTS Busca Estocástica Baseada em Planejamento para Maximizar Metas em Jogos de RTS Autor:Thiago França Naves 1, Orientador: Carlos Roberto Lopes 1 1 Programa de Pós-Graduação em Ciência da Computação Universidade

Leia mais

Estruturas de Dados com Jogos

Estruturas de Dados com Jogos Estruturas de Dados com Jogos C0075.indd i 27/05/14 4:50 PM C0075.indd ii 27/05/14 4:50 PM Estruturas de Dados com Jogos Roberto Ferrari Marcela Xavier Ribeiro Rafael Loosli Dias Maurício Falvo C0075.indd

Leia mais

Métodos Computacionais. Árvores

Métodos Computacionais. Árvores Métodos Computacionais Árvores Árvores Vetores e Listas são ótimos para representar estrutura de dados lineares, mas não para modelar dados hierárquicos Exemplos de dados hierárquicos: sistema de arquivos

Leia mais

MATERIAL DIDÁTICO: APLICAÇÕES EMPRESARIAIS SISTEMA DE APOIO À DECISÃO (SAD)

MATERIAL DIDÁTICO: APLICAÇÕES EMPRESARIAIS SISTEMA DE APOIO À DECISÃO (SAD) AULA 07 MATERIAL DIDÁTICO: APLICAÇÕES EMPRESARIAIS SISTEMA DE APOIO À DECISÃO (SAD) JAMES A. O BRIEN MÓDULO 01 Páginas 286 à 294 1 AULA 07 SISTEMAS DE APOIO ÀS DECISÕES 2 Sistemas de Apoio à Decisão (SAD)

Leia mais

AGENTES INTELIGENTES. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

AGENTES INTELIGENTES. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com AGENTES INTELIGENTES Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com Agentes Inteligentes Um agente é tudo o que pode ser considerado capaz de perceber seu ambiente por meio de sensores e de agir sobre

Leia mais

Análise e Projeto de Algoritmos

Análise e Projeto de Algoritmos Análise e Projeto de Algoritmos Prof. Eduardo Barrére www.ufjf.br/pgcc www.dcc.ufjf.br eduardo.barrere@ice.ufjf.br www.barrere.ufjf.br Complexidade de Algoritmos Computabilidade: Um problema é computável

Leia mais

Programação de Sistemas para Tempo Real Capítulo 1. Luiz Affonso Guedes DCA-CT-UFRN 2003.1

Programação de Sistemas para Tempo Real Capítulo 1. Luiz Affonso Guedes DCA-CT-UFRN 2003.1 Programação de Sistemas para Tempo Real Capítulo 1 Luiz Affonso Guedes DCA-CT-UFRN 2003.1 Conteúdo Programático Capítulo 1: Introdução aos Sistemas de Tempo Real Definição, caracterização e classificação

Leia mais

Computadores de Programação (MAB353)

Computadores de Programação (MAB353) Computadores de Programação (MAB353) Aula 19: Visão geral sobre otimização de programas 06 de julho de 2010 1 2 3 Características esperadas dos programas O primeiro objetivo ao escrever programas de computador

Leia mais

Inteligência Artificial Prof. Marcos Quinet Pólo Universitário de Rio das Ostras PURO Universidade Federal Fluminense UFF

Inteligência Artificial Prof. Marcos Quinet Pólo Universitário de Rio das Ostras PURO Universidade Federal Fluminense UFF Inteligência Artificial Prof. Marcos Quinet Pólo Universitário de Rio das Ostras PURO Universidade Federal Fluminense UFF No capítulo anterior... Estratégias de busca auxiliadas por heurísticas (A*, BRPM)

Leia mais

O Problema do k-servidor

O Problema do k-servidor Autor: Mário César San Felice Orientador: Orlando Lee 22 de março de 2010, IC-Unicamp Estrutura A seguir temos a estrutura geral da dissertação. Otimização combinatória Computação online Análise competitiva

Leia mais

Pesquisa Sequencial e Binária

Pesquisa Sequencial e Binária Pesquisa Sequencial e Binária Prof. Túlio Toffolo http://www.toffolo.com.br BCC202 Aula 20 Algoritmos e Estruturas de Dados I Pesquisa em Memória Primária Introdução - Conceitos Básicos Pesquisa Sequencial

Leia mais

Árvores Binárias de Busca

Árvores Binárias de Busca Árvores Binárias de Busca Uma Árvore Binária de Busca T (ABB) ou Árvore Binária de Pesquisa é tal que ou T = 0 e a árvore é dita vazia ou seu nó contém uma chave e: 1. Todas as chaves da sub-árvore esquerda

Leia mais

CAMADA DE REDES. Fabrício de Sousa Pinto

CAMADA DE REDES. Fabrício de Sousa Pinto CAMADA DE REDES Fabrício de Sousa Pinto Introdução 2 Está relacionada a transferência de pacotes da origem para o destino. Pode passar por vários roteadores ao longo do percurso Transmissão fim a fim Para

Leia mais

3 ALGORITMOS GENÉTICOS : CONCEITOS BÁSICOS E EXTENSÕES VINCULADAS AO PROBLEMA DE MINIMIZAÇÃO DE PERDAS

3 ALGORITMOS GENÉTICOS : CONCEITOS BÁSICOS E EXTENSÕES VINCULADAS AO PROBLEMA DE MINIMIZAÇÃO DE PERDAS 3 ALGORITMOS GENÉTICOS : CONCEITOS BÁSICOS E EXTENSÕES VINCULADAS AO PROBLEMA DE MINIMIZAÇÃO DE PERDAS 3.1 - Conceitos Básicos Entendemos como algoritmo um conjunto predeterminado e bem definido de regras

Leia mais

Pesquisa em Memória Primária. Algoritmos e Estruturas de Dados II

Pesquisa em Memória Primária. Algoritmos e Estruturas de Dados II Pesquisa em Memória Primária Algoritmos e Estruturas de Dados II Pesquisa em Memória Primária Pesquisa: Recuperação de informação em um grande volume de dados Informação é dividida em registros e cada

Leia mais

Análise e Complexidade de Algoritmos

Análise e Complexidade de Algoritmos Análise e Complexidade de Algoritmos Uma visão de Intratabilidade, Classes P e NP - redução polinomial - NP-completos e NP-difíceis Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com http://www.bolinhabolinha.com

Leia mais

CI202 - Métodos Numéricos

CI202 - Métodos Numéricos CI202 - Métodos Numéricos Lista de Exercícios 2 Zeros de Funções Obs.: as funções sen(x) e cos(x) devem ser calculadas em radianos. 1. Em geral, os métodos numéricos para encontrar zeros de funções possuem

Leia mais

Complemento IV Introdução aos Algoritmos Genéticos

Complemento IV Introdução aos Algoritmos Genéticos Complemento IV Introdução aos Algoritmos Genéticos Esse documento é parte integrante do material fornecido pela WEB para a 2ª edição do livro Data Mining: Conceitos, técnicas, algoritmos, orientações e

Leia mais

INFLUÊNCIA DOS JOGOS NO CAMPO DA INTELIGÊNCIA ARTIFICIAL

INFLUÊNCIA DOS JOGOS NO CAMPO DA INTELIGÊNCIA ARTIFICIAL INFLUÊNCIA DOS JOGOS NO CAMPO DA INTELIGÊNCIA ARTIFICIAL Marcelo de Souza 1 bsi.marcelo@gmail.com Prof. Adilson Vahldick, Inteligência Artificial RESUMO: O desenvolvimento de jogos é um campo que atrai

Leia mais

A SOLUTION OF N-QUEENS PROBLEM BY GENETIC ALGORITHMS

A SOLUTION OF N-QUEENS PROBLEM BY GENETIC ALGORITHMS UMA SOLUÇÃO DO PROBLEMA DAS N RAINHAS ATRAVÉS DE ALGORITMOS GENÉTICOS A SOLUTION OF N-QUEENS PROBLEM BY GENETIC ALGORITHMS Eliane Vendramini de Oliveira Mestre em Engenharia Elétrica UNESP/ Ilha Solteira

Leia mais

Métodos de Pesquisa em Memória Primária

Métodos de Pesquisa em Memória Primária Algoritmos e Estrutura de Dados II Métodos de Pesquisa em Memória Primária Prof Márcio Bueno ed2tarde@marciobueno.com / ed2noite@marciobueno.com Pesquisa Por pesquisa (procura ou busca) entende-se o ato

Leia mais

TORNEIO DE SUECA. CAFÉ CLASSIC Regulamento

TORNEIO DE SUECA. CAFÉ CLASSIC Regulamento TORNEIO DE SUECA CAFÉ CLASSIC Regulamento Torneio de sueca 1º O torneio será em forma de grupos. 2º Exemplo: podendo ser alteradas o número de equipas apuradas, dependendo das equipas inscritas! Grupo

Leia mais

Projeto e Análise de Algoritmos

Projeto e Análise de Algoritmos Projeto e Análise de Algoritmos Aula 10 Distâncias Mínimas Edirlei Soares de Lima Distâncias Mínimas Dado um grafo ponderado G = (V, E), um vértice s e um vértice g, obter o caminho

Leia mais

Algoritmos de Busca Heurística (Parte 1)

Algoritmos de Busca Heurística (Parte 1) Algoritmos de Busca Heurística (PARTE 1) 1 Universidade Federal do Paraná Departamento de Informática Algoritmos de Busca Heurística (Parte 1) Alexandre I. Direne E-mail: alexd@inf.ufpr.br Web: http://www.inf.ufpr.br/~alexd

Leia mais

Inteligência Artificial. Prof. Tiago A. E. Ferreira Aula 11 Problemas com Satisfação de Vínculos

Inteligência Artificial. Prof. Tiago A. E. Ferreira Aula 11 Problemas com Satisfação de Vínculos Inteligência Artificial Prof. Tiago A. E. Ferreira Aula 11 Problemas com Satisfação de Vínculos 1 Constraint Satisfaction Problems (CSP) Conceitos básicos Busca cega simples e refinada Busca heurística

Leia mais

Complexidade de Algoritmos. Edson Prestes

Complexidade de Algoritmos. Edson Prestes Edson Prestes Idéias básicas Um algoritmo guloso seleciona, a cada passo, o melhor elemento pertencente a entrada. Verifica se ele é viável - vindo a fazer parte da solução ou não. Após uma seqüência de

Leia mais

Gerenciamento de Projeto

Gerenciamento de Projeto UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Gerenciamento de Projeto Engenharia de Software 2o. Semestre/ 2005

Leia mais

Índice. Capítulo 2 Estrutura de Dados sequencial com armazenamento sequencial

Índice. Capítulo 2 Estrutura de Dados sequencial com armazenamento sequencial Índice i Índice Capítulo 2 Estrutura de Dados sequencial com armazenamento sequencial 1. A Estrutura Abstrata de Dados Lista... 1 1.1. Definição... 1 1.2. Implementação de Listas utilizando armazenamento

Leia mais

Programação Inteira. Advertência

Programação Inteira. Advertência Departamento de Informática Programação Inteira Métodos Quantitativos LEI 2006/2007 Advertência Autores João Moura Pires (jmp@di.fct.unl.pt) Susana Nascimento (snt@di.fct.unl.pt) Este material pode ser

Leia mais

Introdução à Inteligência Artificial 2007/08

Introdução à Inteligência Artificial 2007/08 Introdução à Inteligência rtificial 2007/08 Procura em contextos competitivos jogos Contexto Um agente vs multiagente mbiente cooperativo vs competitivo Teoria dos jogos (ramo da Economia) Sistema multiagente

Leia mais

Organização de Arquivos

Organização de Arquivos Classificação e Pesquisa de Dados Aula 2 Organização de s: s Sequenciais e s Sequenciais Indexados UFRGS INF01124 Organização de s Propósito Estudo de técnicas de armazenamento e recuperação de dados em

Leia mais

Curso Técnico em Redes

Curso Técnico em Redes Curso Técnico em Redes Prof. Airton Ribeiro - 2012 Histórico das Linguagens de Programação O que é? É um método padronizado para expressar instruções para um computador. É um conjunto de regras sintáticas

Leia mais

Figura 1.1: Exemplo de links patrocinados no Google

Figura 1.1: Exemplo de links patrocinados no Google 1 Links Patrocinados 1.1 Introdução Links patrocinados são aqueles que aparecem em destaque nos resultados de uma pesquisa na Internet; em geral, no alto ou à direita da página, como na Figura 1.1. Figura

Leia mais

Arquiteturas RISC. (Reduced Instructions Set Computers)

Arquiteturas RISC. (Reduced Instructions Set Computers) Arquiteturas RISC (Reduced Instructions Set Computers) 1 INOVAÇÕES DESDE O SURGIMENTO DO COMPU- TADOR DE PROGRAMA ARMAZENADO (1950)! O conceito de família: desacoplamento da arquitetura de uma máquina

Leia mais

Melhorias de Processos de Engenharia de Software

Melhorias de Processos de Engenharia de Software Melhorias de Processos de Engenharia de Software CMMI 1 Profa. Reane Franco Goulart O que é CMMI? O Capability Maturity Model Integration (CMMI) é uma abordagem de melhoria de processos que fornece às

Leia mais

3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias:

3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias: Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Revisão dos conceitos básicos O processador é o componente vital do sistema de

Leia mais

Busca. Pesquisa sequencial

Busca. Pesquisa sequencial Busca Banco de dados existem para que, de tempos em tempos, um usuário possa localizar o dado de um registro, simplesmente digitando sua chave. Uma tabela ou um arquivo é um grupo de elementos, cada um

Leia mais

5COP096 TeoriadaComputação

5COP096 TeoriadaComputação Sylvio 1 Barbon Jr barbon@uel.br 5COP096 TeoriadaComputação Aula 14 Prof. Dr. Sylvio Barbon Junior Sumário - Problemas Exponenciais - Algoritmos Exponenciais usando Tentativa e Erro - Heurísticas para

Leia mais

Processamento e Otimização de Consultas

Processamento e Otimização de Consultas Introdução Processamento e Banco de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM 1 Processamento

Leia mais