UM JOGO DE DAMAS EVOLUTIVO

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

Download "UM JOGO DE DAMAS EVOLUTIVO"

Transcrição

1 1 UM JOGO DE DAMAS EVOLUTIVO Leonardo Filipe Batista Silva de Carvalho 1*, Helio Cavalcante Silva Neto 1**, Roberta Vilhena Vieira Lopes 1*** 1 Mestrado em Modelagem Computacional de Conhecimento Universidade Federal de Alagoas (UFAL) Caixa Postal Maceió AL Brasil {*lfilipebsc, **helio.hx}@gmail.com, ***rvvl@fapeal.br Data de Submissão: 10/2009 GT1 - Jogos digitais e desenvolvimento Resumo. O aumento da capacidade computacional e da exigência dos usuários por jogos com comportamentos mais realistas fez crescer a importância das técnicas de Inteligência Artificial no ramo de jogos eletrônicos. Acadêmica e comercialmente, os jogos representam um importante nicho para a aplicação de variadas técnicas de inteligência artificial, devido a seu alto nível de interação com o usuário e sua variedade de gêneros de jogo. Buscando simular um adversário convincente ao usuário, optou-se pela abordagem evolucionária dos Algoritmos Genéticos, AG, que procuram realizar a melhor ação humana possível para uma dada situação. O presente artigo objetiva demonstrar o uso do AG no processo de tomada de decisão de um Jogo de Damas. Palavras-Chaves: Inteligência Artificial, Algoritmos Genéticos, Jogos e Jogo de Damas. 1. Introdução O termo Inteligência Artificial (IA) tem uso muito amplo na indústria de jogos, podendo referir-se a qualquer módulo de software responsável por comportamentos inteligentes realizados por componentes do jogo. Nesse contexto, o comportamento de jogadores virtuais, conhecido como NPCs (Non-Player Characters - personagens não jogáveis), é rotulado como IA (TATAI, 2003). A definição de IA dada por Russuell & Norvig (2004) pode ser entendida como o conjunto de programas de computador capazes de emular ações e pensamentos humanos. Essa definição não satisfaz plenamente a aplicação da IA a jogos, na qual pode-se definir a IA como o código dentro do jogo responsável por controlar jogadores virtuais (oponentes ou aliados) para que os mesmos aparentem tomar decisões inteligentes quando o jogo apresenta diversas opções para uma determinada situação (SCHWAB, 2004). Em tal contexto, o valor atribuído à aplicação de IA é que um jogador humano não consiga fazer diferença entre jogadores reais e virtuais (STERRETT, 2000). Esta perspectiva reflete-se juntamente à evolução da capacidade computacional, que não só tornou os jogos de computador/entretenimento eletrônico um mercado mundial de bilhões de dólares, como também, gradualmente, traz o foco da indústria de jogos para a aplicação de técnicas de IA. Desta forma, o uso de recursos de IA mais elaborados do que simples bases de regras tradicionais 1 pode constituir uma grande vantagem competitiva. Entretanto, a grande maioria dos jogos continua a ter uma

2 2 aplicação de IA baseada em métodos tradicionais como máquinas de estados, sistemas de regras e o uso de scripts, já que a própria estrutura destas técnicas possibilita sua aplicação a uma maior variedade de jogos. Por essa razão, o uso de técnicas mais avançadas em jogos comerciais, como redes neurais, algoritmos genéticos, lógica fuzzy, aprendizado de máquina e tantas outras, costuma restringir-se a casos isolados (TATAI, 2003). Tal evolução aumenta também a capacidade computacional das plataformas utilizadas, o que além dos perceptíveis avanços nas áreas lógicas e gráficas, permite um maior volume de dados processados para a inteligência dos jogos e reforça as afirmações de Peter Molyneux, um dos maiores projetistas de jogos da atualidade, que destaca em entrevistas e conferências que a IA é o futuro dos jogos (D.I.C.E, 2004) (TATAI, 2003). Partindo deste raciocínio, o presente artigo objetiva mostrar como um AG pode ser usado em um ambiente voltado a jogos de tabuleiro, para controlar o comportamento de um jogador virtual que procura, por meio da variação de sua estratégia de jogo, gerar diferentes configurações para uma dada configuração do tabuleiro, forçando seu adversário a considerar novas percepções sobre uma mesma configuração do tabuleiro. Note que o jogador virtual desta aplicação é passível de cometer erros em sua estratégia ou mesmo na avaliação do seu adversário, o que se deve ao foco da aplicação que não está em gerar um jogador virtual expert, ou, muito menos, imbatível. O foco está em gerar um jogador virtual que ajude o seu oponente (jogador humano) a aguçar seu raciocínio e desenvolver novas estratégias para o jogo. Neste contexto, foi desenvolvido um jogo de Damas baseado em computação evolucionária, onde o jogador disputa uma partida contra um oponente controlado por computador, cujo sistema de tomada de decisão para as jogadas é implementado por AG. A interação entre o jogador e a aplicação pode ser abstraída a partir do modelo da Figura 1. Figura 1. Modelo de Jogabilidade. O presente artigo está dividido em 6 seções. A seção 2 trata das regras do Jogo de Damas. A seção 3 discute a aplicação, em particular, suas funcionalidades e técnicas de IA secundárias que foram usadas no seu desenvolvimento. A seção 4 trata especificamente dos conceitos básicos de AG e do AG que foi implementado para esta aplicação, sendo que a seção 5 trata do desempenho da mesma. Por fim, a seção 6 discute as conclusões tiradas a partir do conhecimento adquirido neste artigo. 2. As regras do Jogo de Damas A aplicação de que trata este artigo foi desenvolvida usando o conjunto de regras adotadas no Brasil, sendo tal qual (XADREZ REGIONAL, 2002): i. Utiliza-se um tabuleiro de 64 casas, claras e escuras. A grande diagonal (a mais longa diagonal de casas escuras do tabuleiro) fica à esquerda

3 3 de cada jogador. O objetivo do jogo é imobilizar ou capturar todas as peças 2 do adversário. ii. O jogo é praticado entre dois parceiros: um com 12 pedras brancas de um lado; e outro com 12 pedras pretas do lado oposto. O lance inicial cabe sempre às pedras brancas. A Figura 2 ilustra essa situação. Figura 2. Disposição inicial do tabuleiro. Figura 3. Da captura de peças no Jogo de Damas. iii. A pedra anda para frente apenas uma casa de cada vez. Quando a pedra atinge a oitava linha do tabuleiro, é promovida à dama. iv. A dama anda para frente ou para trás quantas casas desejar. A dama não pode saltar sobre uma peça da mesma cor. v. A captura é obrigatória, não existe sopro (perda de uma peça devido a não realização de uma captura quando possível). Duas ou mais peças juntas na mesma diagonal não podem ser capturadas. Estes dois casos estão ilustrados na Figura 3. A dama ilustra a captura não permitida. vi. A pedra captura a dama e a dama captura a pedra. Pedra e dama têm o mesmo valor para capturar ou ser capturada. vii. A pedra e a dama podem capturar tanto para frente como para trás uma ou mais peças. viii. Se no mesmo lance se apresentar mais de um modo de captura, é obrigatório executar o lance que capture o maior número de peças. ix. A pedra que, durante o lance de captura de várias peças apenas passe por qualquer casa de coroação, sem aí parar, não será promovida à dama, como ilustrado na Figura 4. Figura 4. Captura passando por casa de coroação. Figura 5. Captura de várias peças. x. Na execução do lance de captura, é permitido passar mais de uma vez pela mesma casa vazia, mas não é permitido capturar duas vezes a mesma peça. Esta situação está ilustrada na Figura 5. xi. Além de não ser permitido capturar a mesma peça mais de uma vez na execução do lance de captura, peças que foram capturadas não podem ser retiradas do tabuleiro antes de se completar o lance de captura, como ilustrado na Figura 6. Figura 6. Captura e remoção de várias peças. xii. Após 20 lances sucessivos de damas, sem captura ou deslocamento de pedra, a partida é declarada empatada. xiii. Finais de partida de 2 damas contra 2 damas; 2 damas contra uma dama; 2 damas contra uma dama e uma pedra; uma dama contra uma dama; ou uma dama contra uma dama e uma pedra são declarados empatados após 5 lances.

4 4 Das regras apresentadas, apenas a regra viii conhecida como lei da maioria não foi implementada. A não implementação desta regra visa, principalmente, permitir ao AG uma maior liberdade de escolha da ação a se tomar, de forma a melhor avaliar se a ação que ele venha a escolher é realmente a que lhe trará mais benefícios. 3. Aplicação Ao iniciar a aplicação, o usuário é questionado se deseja ou não realizar o lance inicial. Respondendo sim, são atribuídas a ele as peças amarelas, caso contrário, ele recebe as peças cinza. Pode-se também optar por encerrar a aplicação, selecionando sair. Figura 7. Interface da aplicação. Figura 8. Parte superior esquerda. Iniciado o jogo, o usuário manipula a aplicação por meio da interface gráfica exibida na Figura 7, arrastando suas peças da origem ao destino desejado. Usuário e computador compartilham do mecanismo de validação dos lances, que usa as regras apresentadas na seção 2. A parte superior esquerda da interface exibe o número de peças atuais dos participantes, de 12 a zero para cada um, além de uma miniatura de suas respectivas damas, mostrada na Figura 8. A parte superior direita informa de quem é a jogada atual, bem como o resultado da partida ao seu término. Há também um botão para reiniciar a aplicação, como pode ser visto na Figura 9. A parte central direita exibe o histórico de jogadas de acordo com os caracteres que serão apresentados na seção 4, como ilustrado na Figura 10. Figura 9. Parte superior direita. Figura 10. Parte central direita Do controle da vez atual e do encerramento da partida O modelo tradicional de uma máquina de estados é um modelo de aceitação/reconhecimento de palavras, não trabalhando com ações e não sendo, portanto, adequado ao uso em jogos eletrônicos. Dois modelos incluem o uso de ações, o modelo de Moore e o modelo de Mealy. A definição dos dois modelos difere apenas com relação às saídas (as ações executadas pelos

5 5 estados). Formalmente estes modelos são definidos como uma tupla <Σ, Γ, S, S 0, δ, ω>, onde (Wagner et. al., 2006): Σ é o alfabeto de entrada (um conjunto de símbolos finitos não vazio); Γ é o alfabeto de saída (um conjunto de símbolos finitos não vazio); S é um conjunto finito de estados não vazio; S 0 é o estado inicial, um elemento de S; δ é a função de transição de estados: δ: S x Σ S; ω é a função de saída. Moore: A função de saída depende apenas do estado atual (ω: S Γ); Mealy: A saída é uma função composta pelo estado atual e o alfabeto de entrada (ω: S x Σ Γ). O ato de controlar quem tem a vez de jogar é feito pela máquina de estados finitos da aplicação. Nesta, a vez de cada participante constitui um estado. Foi necessária a implementação de uma estrutura própria ao controle das jogadas em razão de que, características, como qualidade e quantidade das peças do usuário e do computador, em conjunto com o número de lances realizados, deveriam ser verificadas a fim de dar ou não continuidade ao jogo. Figura 11. Modelo de máquina de estado da aplicação. A máquina de estados da aplicação desenvolvida aqui segue o modelo de Moore. É definida pelo modelo da Figura 11 e possui quatro estados de jogo que podem ser identificados como: o início da partida; a vez do usuário; a vez do computador; e o encerramento da partida. A implementação deste modelo respeita as seguintes características: A função de transição entre os estados da aplicação não é explícita, podendo ser considerada como o conjunto das operações de validação de uma jogada. As ações são tomadas pelos estados do jogo, que gerenciam quando e como cada ação é tomada. Cada estado tem seu conjunto de ações implementado em classes privadas da classe da máquina de estados. Início da partida: é o estado inicial da aplicação e questiona o usuário sobre quem deve ter o primeiro lance. A resposta é tomada como entrada e, com base nisso, define-se quem tem a vez de jogada. A vez do usuário: estado que efetiva um movimento realizado pelo usuário na interface gráfica, e verifica se houve ou não a conclusão da jogada. A jogada não é dada como concluída apenas na hipótese de um dos participantes - neste caso o usuário - estar efetuando a captura de vários adversários em uma única jogada. Também se verifica o encerramento da partida.

6 6 A vez do computador: neste estado efetua-se a jogada do computador e as demais operações pertinentes a esta ação. Corresponde à tomada de decisão do computador, realizada por meio de um AG e que será explicado na seção 4. Após a tomada de decisão, o estado verifica se houve o encerramento da partida. O encerramento da partida: a transição para este estado se dá quando o estado da vez usuário ou computador identifica que a partida chegou ao fim. Removem-se do tabuleiro de jogo quaisquer peças capturadas que ainda estejam em campo e encerra-se a execução da máquina de estados finitos, impedindo que os participantes realizem lances posteriores. 4. O algoritmo Genético O algoritmo genético, AG, usa uma metáfora com respeito ao seu material genético básico, de forma que gene e cromossomo são utilizados aqui para representar os insumos do problema em questão. Abaixo é apresentada a definição dos termos biológicos que serão usados no restante deste artigo, tomando como contexto o problema de um Jogo de Damas (CARVALHO, 2008): Indivíduo representação de uma possível configuração do tabuleiro; Cromossomo representação da estrutura de dados que constitui o indivíduo; População vetor de cromossomos, ou seja, o conjunto de possíveis resultados; Adaptação do indivíduo grau de qualidade do cromossomo como resultado para um dado problema; Seleção conjunto de critérios para determinar quais indivíduos da população terão seu material genético reaproveitado na busca de um resultado de melhor qualidade. Um AG atua sobre uma população P de indivíduos, que evolui através da ação de operadores genéticos, de forma a gerar uma nova população P tal que, os indivíduos de P sejam descendentes dos indivíduos de P (LOPES, 2003 apud HOLLAND, 1975). O modelo de AG proposto para este artigo considera uma população inicial formada por indivíduos que correspondem à configuração atual do tabuleiro. Novos indivíduos são gerados por meio da aplicação de operadores genéticos sobre os indivíduos da população atual, cada um correspondendo a uma possível jogada do computador. O AG implementado para este artigo usa de uma convenção para a construção de seus cromossomos, na qual, cada um é representado por um vetor de 64 caracteres, sendo que cada posição do vetor pode assumir um valor equivalente aos caracteres -, B, P, A, E, X ou Y; onde - representa uma casa desocupada; # representa uma casa que não pode ser ocupada; B representa uma casa ocupada com uma pedra branca; P representa uma casa ocupada com uma pedra preta; A representa uma casa ocupada com uma dama branca; E representa uma casa ocupada com uma dama preta; X representa uma casa ocupada com uma peça do jogador computador capturada; e Y representa uma casa ocupada com uma peça do jogador humano capturada. Para esta aplicação, convenciona-se ainda que o cromossomo deve obedecer as seguintes restrições:

7 7 O número de peças pretas ou brancas não pode ultrapassar 12; Cada caractere ocupa uma posição i do vetor que representa o cromossomo, tal que 0 i < 64; Se o quociente de i por 8 for par: As posições ímpares serão ocupadas pelo caractere #; As posições pares poderão ser ocupadas pelos caracteres P, B, A, E, X, Y, -. Se o quociente de i por 8 for impar: As posições pares serão ocupadas pelo caractere #; As posições ímpares poderão ser ocupadas pelos caracteres P, B, A, E, X, Y, -. Assim o cromossomo correspondente a configuração inicial do tabuleiro pode ser representado como <#, P, #, P, #, P, #, P, P, #, P, #, P, #, P, #, #, P, #, P, #, P, #, P, -, #, -, #, -, #, -, #, #, -, #, -, #, -, #, -, B, #, B, #, B, #, B, #, #, B, #, B, #, B, #, B, B, #, B, #, B, #, B, #>, separando-se os caracteres de oito em oito posições e substituindo a vírgula por um espaço em branco. Esta configuração corresponde à exibida na Figura 2. É importante destacar que esta seção utiliza a convenção tradicional de cores adotadas para as peças do Jogo de Damas. Para a aplicação, considere que as peças brancas são representadas na cor amarela e as peças pretas são representadas na cor cinza. Diferente do modelo tradicional de Holland (LOPES, 2003 apud HOLLAND, 1975), nesta aplicação, não há o cálculo do fator de adaptação antes da operação de seleção, visto que uma nova jogada sempre deve ser gerada. Por esta mesma razão, a operação de seleção atua sobre toda população e, basicamente, seleciona os indivíduos que representem peças que possuam ao menos uma casa de suas diagonais para onde seja possível realizar um movimento. No que diz respeito ao uso dos operadores responsáveis por alterar o material genético dos cromossomos da população P, na busca por novos cromossomos que melhor atendam ao problema, o AG deste artigo faz uso apenas do operador de mutação, utilizando dois tipos distintos do operador: a mutação por troca e a mutação por substituição. A mutação por troca (LOPES, 2003), recebe um cromossomo a=<a 1,a 2,...,a i,a j,...,a 64 > e retorna um cromossomo a =<a 1,a 2,...,a j,a i,...,a 64 >, onde 1 i < j 64. Já a mutação por substituição trata-se de uma extensão daquela proposta por Holland com alfabeto binário (LOPES, 2003 apud HOLLAND, 1975). A operação recebe um cromossomo a=<a 1,a 2,...,a i,a j,...,a 64 > e um alfabeto U e devolve um cromossomo a=<a 1,..., a i,..., a j,..., a 64 >, no qual as posições aleatórias i e j selecionadas, com 1 i < j 64, e os caracteres que ocupam tais posições em negrito no cromossomo correspondem aos caracteres complemento dos caracteres a i e a j no alfabeto U. O grau de adaptação de um cromossomo é calculado avaliando o quão bom é o movimento que ele representa, tomando-se pesos cumulativamente maiores para captura de peças adversárias e cumulativamente menores para a perda das próprias peças. Os pesos usados na implementação foram: -5 para uma peça perdida para o usuário; 2 para um lance simples que não resulta em captura; e 3 para um lance que resulta na captura de uma peça do usuário. Tais valores foram atribuídos de acordo com testes que visavam o melhor desempenho do computador em resposta às jogadas do usuário.

8 8 Só após a avaliação do melhor próximo movimento é que ocorre a operação de substituição, que leva em conta dois fatores. O primeiro analisa se é ou não possível mover uma peça. O segundo verifica se há a possibilidade de capturar uma peça adversária e tem prioridade sobre o primeiro fator, sendo que, quando satisfeito, dos cromossomos gerados, apenas aqueles que correspondam a uma captura irão fazer parte da nova população, garantindo a regra v da seção 2. Em ambos os casos, o novo indivíduo mais adaptado corresponderá a jogada do computador Da implementação do Algoritmo Genético. Além do que foi discutido no início desta seção, pontos relevantes ao AG da aplicação dizem respeito à representação do cromossomo, para a qual foi adotado o modelo proposto por Antonisse (1989), que representa o cromossomo por meio de vetores alfanuméricos de comprimento fixo com ou sem repetições, de forma a melhor representar o problema proposto (LOPES, 2003). Destaca-se também que quando o computador realiza a captura de várias peças adversárias em um único lance, ainda que a ação pudesse ser executada de forma continua pelo AG, o efeito visual para o usuário de várias peças desaparecendo do tabuleiro não é o ideal. Em razão disso, dois métodos de geração de cromossomos foram implementados (CARVALHO, 2008). O primeiro deles chama a geração da população e, após a mutação dos cromossomos de cada indivíduo, os encaminha para a avaliação que determinará seu fator de adaptação. Este método possui as seguintes funcionalidades: Varredura do tabuleiro para determinar se há peça do computador que possa capturar um adversário. Em caso afirmativo, a população é gerada unicamente por tal cromossomo ou cromossomos, os quais terão como destinos possíveis apenas as casas que possibilitem essa ação. Do contrário, o algoritmo gera uma população composta por cada peça do computador atualmente no tabuleiro de jogo. Devido ao grande espaço amostral, a aleatoriedade do AG ocorre após a diminuição do domínio de busca, restringindo-o apenas aos espaços diagonais à posição atual da peça. Para garantir um movimento de captura, o AG faz uso de um vetor de objetos com todas as informações sobre a peça ou peças que pode desempenhar tal ação, gerando uma população formada unicamente de cromossomos criados a partir dessa informação. Em ambos os casos, os valores gerados para as casas que a peça poderia acessar são individualmente avaliados de forma a atender as regras do jogo. A ocorrência do segundo método se dá apenas quando existe a possibilidade de continuar a jogada iniciada. Neste caso, cria-se um objeto que contém todas as informações pertinentes à que se está usando em tal jogada, sendo tal objeto usado pelo AG na criação de um indivíduo que possa efetivamente continuar o movimento. 5. Desempenho da Aplicação Na análise do desempenho da aplicação, tomando como base o tipo de peça utilizada nos movimentos do computador, pode-se perceber que as pedras mostram um desempenho superior sobre as damas. Situação que se

9 9 deve ao fato de que a função de adaptação do AG implementado não gerou nenhuma especificidade para a dama, considerando simplesmente o controle do menor raio de ação da dama a ser movimentada. Tal fato pode mesmo gerar jogadas em que o computador entrega sua dama para o adversário, mesmo sendo notável a possibilidade de outro movimento que não resultasse nesta situação. Em outras palavras, ainda que fosse possível realizar uma jogada que mantivesse a dama em segurança, a escolha simplesmente recaiu nesta situação. Esta ocorrência é vista com menor freqüência nas pedras devido ao seu menor raio de ação. De forma análoga, o fator de escolha aleatório, em conjunto com o grande raio de ação de uma dama, dificulta às damas do computador a captura de vários adversários em uma única jogada, uma vez que, para isto, é necessário que o fator aleatório do AG recaia na posição exata do tabuleiro que permita tal ação. Um problema semelhante dificulta que as peças do computador se defendam de uma dama do jogador humano. Este conjunto de fatores levou a constatação de que a aplicação mostrou um desempenho satisfatório quando confrontada por adversários que poderiam ser grosseiramente rotulados como medianos, que seriam aqueles habituados às regras do jogo, mas que o praticam apenas esporadicamente. Para este caso, a aplicação mostrou-se capaz de derrotar o jogador humano na maioria das vezes. De forma análoga, a aplicação mostrou maior dificuldade ao enfrentar adversários mais avançados, que para este artigo, são aqueles que praticam o jogo com uma freqüência maior que os jogadores medianos, ou que simplesmente estão mais habituados a tarefas que exijam a ponderação de uma situação do ponto de vista do raciocínio lógico. Contra tais jogadores, a aplicação apresentou uma maior freqüência de derrotas do que de vitórias. O gráfico da Figura 12 apresenta a relação de vitórias e derrotas do jogador virtual, com base na estimativa de jogadores e partidas que foram presenciadas do momento da concepção da aplicação até a escrita deste artigo. 100% 50% 0% 8% 8% Avançado 84% 52% 22% 26% Mediano Vitória do Jogador Virtual Empate Derrota do Jogador Virtual Figura 12. Estimativa entre as vitórias e derrotas do jogador virtual. 6. Conclusão Este artigo propôs e implementou um AG diretamente na estrutura de tomada de decisão de um jogo eletrônico, no caso um Jogo de Damas baseado no conjunto de regras de jogo adotado no Brasil. Com isso, o que se procurou foi agilizar o tempo de resposta da IA em relação aos lances do usuário e avaliar se o desempenho adquirido é, ou não, suficientemente satisfatório para a adoção da técnica no lugar de outros mecanismos de busca. Contudo, o que se observou foi um jogador virtual instável e capaz de realizar alguns lances que poderiam mesmo ser considerados inadequados. Tais resultados são suficientes para voltarmos à atenção à forma como se deu o desenvolvimento da função de avaliação e da atuação dos operadores

10 10 genéticos, para garantir ao AG um comportamento mais instável e satisfatório no confronto com adversários humanos. Entretanto, isto precisaria ser feito com base em um sistema de aquisição de informação adaptada ao perfil do usurário para não eliminar a ocorrência de erros e enganos do jogador virtual, o que lhe atribui uma importante característica do comportamento humano. Notas 1 Por bases de regras tradicionais, entendam-se as primeiras regras de ação-reação, às quais os primeiros jogos normalmente respondiam, como por exemplo, estruturas if-then-else do tipo hardcoded, prática pouco flexível e que gera várias complicações caso seja necessário realizar alguma alteração no código. 2 Neste artigo, o termo peça pode referir-se a um componente do jogo que foi, ou não, promovido. O termo pedra referencia uma peça que não foi promovida e dama referencia uma peça que foi promovida. Referências ANTONISSE H. J. (1989), A New Interpretation of the Schema Notation that Overturns the Binary Encoding Constraint. Proc. 3 rd International Conf on Genetic Algorithms, Morgan-Kaufmann. CARVALHO, L. F. (2008), Um Jogo de Damas Evolutivo. Trabalho de conclusão de curso, Instituto de Computação - IC, Universidade Federal de Alagoas - UFAL. Maceió, 18 de abril de D.I.C.E. Summit (Design, Innovate, Communicate, Entertain) - Academy of Interactive Arts and Sciences, Las Vegas. Disponível em: < Acessado em 19 out. de LOPES, R. V. V. (2003), Um Algoritmo Genético Baseado em Tipos Abstratos de Dados e sua Especificação em Z. Dissertação de doutorado em informática, Centro de Informática - CI, Universidade Federal de Pernambuco - UFPE. RUSSUEL, S. & NORVIG, P. (2004), Inteligência Artificial, 2ª edição, Campus. SCHWAB, B. (2004), AI Game Engine Programming, 1ª edição, Charles River Media. STERRETT, S. G. (2000), Turing's Two Tests for Intelligence. Minds and Machines 10. pag Holanda, TATAI, V. K. (2003), Técnicas de sistemas inteligentes aplicadas ao desenvolvimento de jogos de computador. Dissertação de mestrado em engenharia elétrica, Faculdade de Engenharia Elétrica e de Computação - Feec, Universidade Estadual de Campinas - UNICAMP. Campinas. WAGNER, F. SCHMUKI, R. WAGNER, T. WOLSTENHOLME, P. (2006), Modeling Software with Finite State Machines: A Practical Approach. CRC Press. XADREZ REGIONAL (2002), Jogo de Damas - Regras Oficias. Disponível em: último acesso em 01 de abril de 2008.

PARCERIA APEA/SP E APCEF/SP

PARCERIA APEA/SP E APCEF/SP PARCERIA APEA/SP E APCEF/SP DATA / LOCAL: 29 e 30/09/2018 / CECOM - APCEF/SP REGULAMENTO TÉCNICO DAMAS Art. 1º. O torneio de Damas do VIII JOGOS DOS APOSENTADOS será realizado de acordo com as regras estabelecidas

Leia mais

LOCAL: ASSOCIAÇÃO ATLÉTICA DO BANCO DO BRASIL A.A.B.B ENDEREÇO: AVENIDA SANTOS DUMONT S/N DATA: 29 DE OUTUBRO HORÁRIO: 8:00 HS

LOCAL: ASSOCIAÇÃO ATLÉTICA DO BANCO DO BRASIL A.A.B.B ENDEREÇO: AVENIDA SANTOS DUMONT S/N DATA: 29 DE OUTUBRO HORÁRIO: 8:00 HS LOCAL: ASSOCIAÇÃO ATLÉTICA DO BANCO DO BRASIL A.A.B.B ENDEREÇO: AVENIDA SANTOS DUMONT S/N DATA: 29 DE OUTUBRO HORÁRIO: 8:00 HS CIDADE: QUERÊNCIA DO NORTE - PR REALIZAÇÃO CONSELHO DAS APAES MICRO-REGIÃO

Leia mais

XADREZ REGRAS BÁSICAS INTRODUÇÃO O xadrez, diferentemente de muitos jogos, não depende de sorte. O desenvolver do jogo não depende do resultado de

XADREZ REGRAS BÁSICAS INTRODUÇÃO O xadrez, diferentemente de muitos jogos, não depende de sorte. O desenvolver do jogo não depende do resultado de XADREZ REGRAS BÁSICAS INTRODUÇÃO O xadrez, diferentemente de muitos jogos, não depende de sorte. O desenvolver do jogo não depende do resultado de dados ou das cartas que são tiradas do baralho. O resultado

Leia mais

Inteligência Computacional para Jogos Eletrônicos

Inteligência Computacional para Jogos Eletrônicos Inteligência Computacional para Jogos Eletrônicos Papéis da IA em Jogos Adversários Aliados Personagens de apoio NPC s (Non-player Character) Comentaristas Controle de câmera Geração de fases Nivelamento

Leia mais

1ª Colocação 10 pontos. 2ª Colocação 08 pontos. 3ª Colocação 06 pontos

1ª Colocação 10 pontos. 2ª Colocação 08 pontos. 3ª Colocação 06 pontos Regras: Jogo do Xadrez 1. Sorteio: Os confrontos serão definido através de sorteio e relacionados no chaveamento da competição; A ordem de disputa será de acordo com a ordem de retira no sorteio. PS: 2

Leia mais

Máquinas de Turing para construção: Foram encontrados dois modelos que se destacaram em nossas pesquisas.

Máquinas de Turing para construção: Foram encontrados dois modelos que se destacaram em nossas pesquisas. Máquina de Turing É um dispositivo imaginário que formou a estrutura para fundamentar a ciência da computação moderna. Seu inventor, o matemático Alan Mathison Turing, mostrou que a computação das operações

Leia mais

Professor: Paulo Adolfo Kepler (Zé)

Professor: Paulo Adolfo Kepler (Zé) Professor: Paulo Adolfo Kepler (Zé) INTRODUÇÃO Caro aluno! Você acaba de ingressar no fascinante mundo do Xadrez, o jogo de tabuleiro mais praticado no mundo. Você estará no comando de um poderoso exército,

Leia mais

Paradigma Simbólico. Sistemas de Informação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 2)

Paradigma Simbólico. Sistemas de Informação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 2) Paradigma Simbólico Sistemas de Informação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 2) Revisão da aula anterior: definição de IA Podemos associar o termo IA com: Parte da ciência da computação

Leia mais

Jogo de Damas. Alunos: Sávio Mendes de Figueiredo Sômulo Nogueira Mafra

Jogo de Damas. Alunos: Sávio Mendes de Figueiredo Sômulo Nogueira Mafra Jogo de Damas Alunos: Sávio Mendes de Figueiredo (savio@cos.ufrj.br) Sômulo Nogueira Mafra (somulo@cos.ufrj.br) Prof.: Inês dutra Inteligência artificial Coppe sistemas - UFRJ 1. Algumas Frases 2. Origens

Leia mais

Algoritmos Genéticos. Princípio de Seleção Natural. Sub-áreas da Computação Evolutiva. Idéias básicas da CE. Computação Evolutiva

Algoritmos Genéticos. Princípio de Seleção Natural. Sub-áreas da Computação Evolutiva. Idéias básicas da CE. Computação Evolutiva Computação Evolutiva Algoritmos Genéticos A computação evolutiva (CE) é uma área da ciência da computação que abrange modelos computacionais inspirados na Teoria da Evolução das Espécies, essencialmente

Leia mais

Manual do Kiriki. Albert Astals Cid Eugene Trounev Tradução: Luiz Fernando Ranghetti

Manual do Kiriki. Albert Astals Cid Eugene Trounev Tradução: Luiz Fernando Ranghetti Albert Astals Cid Eugene Trounev Tradução: Luiz Fernando Ranghetti 2 Conteúdo 1 Introdução 5 2 Como jogar 6 3 Regras do jogo, estratégias e dicas 8 3.1 Regras do jogo........................................

Leia mais

Departamento de Ciência de Computadores - FCUP Primeiro Teste de Inteligência Artificial / Sistemas Inteligentes (Duração: 2 horas)

Departamento de Ciência de Computadores - FCUP Primeiro Teste de Inteligência Artificial / Sistemas Inteligentes (Duração: 2 horas) Departamento de Ciência de Computadores - FCUP Primeiro Teste de Inteligência Artificial / Sistemas Inteligentes (Duração: horas) Nome: Data: 7 de Abril de 016 1) Considere a aplicação da busca em profundidade

Leia mais

ESTUDO DOS PARAMETROS DE UM ALGORITMO GENÉTICO PARA POSTERIOR USO NA SOLUÇÃO DE PROBLEMAS DO TIPO JOB-SHOP

ESTUDO DOS PARAMETROS DE UM ALGORITMO GENÉTICO PARA POSTERIOR USO NA SOLUÇÃO DE PROBLEMAS DO TIPO JOB-SHOP ESTUDO DOS PARAMETROS DE UM ALGORITMO GENÉTICO PARA POSTERIOR USO NA SOLUÇÃO DE PROBLEMAS DO TIPO JOB-SHOP Gilson Rogério Batista, Gideon Villar Leandro Universidade Regional do Noroeste do Estado do Rio

Leia mais

d) A dama pode mover-se para qualquer casa ao longo da coluna, fileira ou diagonal em que se encontra.

d) A dama pode mover-se para qualquer casa ao longo da coluna, fileira ou diagonal em que se encontra. PROCESSO SELETIVO PROGRAMA MONITORIA LAZER E ESPORTE- 2018/2019 Modalidade: XADREZ Nome: Curso: 1. Assinale a alternativa incorreta: a) O jogo de xadrez é disputado entre dois oponentes que movem peças

Leia mais

JOGOS LIVRO REGRAS M AT E M Á T I CO S. 11.º Campeonato Nacional

JOGOS LIVRO REGRAS M AT E M Á T I CO S. 11.º Campeonato Nacional Vila Real JOGOS M AT E M Á T I CO S.º Campeonato Nacional LIVRO DE REGRAS Semáforo Autor: Alan Parr Material Um tabuleiro retangular por. 8 peças verdes, 8 amarelas e 8 vermelhas partilhadas pelos jogadores.

Leia mais

O peão Se um peão consegue chegar até a outra extremidade do tabuleiro(linha 8), ele é promovido. Um peão promovido é substituído, ainda na mesma jogada em que o movimento foi feito, por um cavalo, bispo,torreoudamadamesmacor.

Leia mais

Distribuição de Jogos por Ciclo

Distribuição de Jogos por Ciclo REGRAS DOS JOGOS Distribuição de Jogos por Ciclo 1º CEB 2º CEB 3º CEB Sec. Semáforo x Gatos & Cães x x Rastros x x x Produto x x x Avanço x x Flume x 2 Semáforo Autor: Alan Parr 8 peças verdes, 8 amarelas

Leia mais

livro das regras (provisório)

livro das regras (provisório) livro das regras (provisório) Avanço Autor: Dan Troyka, 2000 Um tabuleiro quadrado 7 por 7; 14 peças brancas e 14 peças negras. Um jogador ganha se chegar com uma das suas peças à primeira linha do adversário,

Leia mais

Semáforo. Um tabuleiro retangular 4 por 3. 8 peças verdes, 8 amarelas e 8 vermelhas partilhadas pelos jogadores.

Semáforo. Um tabuleiro retangular 4 por 3. 8 peças verdes, 8 amarelas e 8 vermelhas partilhadas pelos jogadores. Semáforo Autor: Alan Parr Um tabuleiro retangular por. 8 peças verdes, 8 amarelas e 8 vermelhas partilhadas pelos jogadores. Ser o primeiro a conseguir uma linha de três peças da mesma cor na horizontal,

Leia mais

ALGORITMO GENÉTICO COMO REPRESENTAÇÃO DAS MUTAÇÕES NA BIOLOGIA

ALGORITMO GENÉTICO COMO REPRESENTAÇÃO DAS MUTAÇÕES NA BIOLOGIA Patrocínio, MG, outubro de 2016 ENCONTRO DE PESQUISA & EXTENSÃO, 3., 2016, Patrocínio. Anais... Patrocínio: IFTM, 2016. ALGORITMO GENÉTICO COMO REPRESENTAÇÃO DAS MUTAÇÕES NA BIOLOGIA Igor Acassio Melo

Leia mais

Gatos & Cães Simon Norton, 1970s

Gatos & Cães Simon Norton, 1970s Gatos & Cães Simon Norton, 970s Um tabuleiro quadrado 8 por 8. 8 peças gato e 8 peças cão (representadas respectivamente por peças negras e brancas). Ganha o jogador que realizar a última jogada. zona

Leia mais

Gatos & Cães Simon Norton, 1970s

Gatos & Cães Simon Norton, 1970s Gatos & Cães Simon Norton, 1970s Um tabuleiro quadrado 8 por 8. 28 peças gato e 28 peças cão (representadas respectivamente por peças negras e brancas). Ganha o jogador que realizar a última jogada. zona

Leia mais

3. Resolução de problemas por meio de busca

3. Resolução de problemas por meio de busca Inteligência Artificial - IBM1024 3. Resolução de problemas por meio de busca Prof. Renato Tinós Local: Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3. Resolução de problemas por

Leia mais

Aula 6 TECNOLOGIA EM JOGOS DIGITAIS INTELIGÊNCIA ARTIFICIAL PARA JOGOS. Marcelo Henrique dos Santos

Aula 6 TECNOLOGIA EM JOGOS DIGITAIS INTELIGÊNCIA ARTIFICIAL PARA JOGOS. Marcelo Henrique dos Santos Aula 6 TECNOLOGIA EM JOGOS DIGITAIS INTELIGÊNCIA ARTIFICIAL PARA JOGOS Marcelo Henrique dos Santos Marcelo Henrique dos Santos Mestrado em Educação (em andamento) MBA em Negócios em Mídias Digitais MBA

Leia mais

Aprendendo a jogar Xadrez

Aprendendo a jogar Xadrez O núcleo de xadrez da nossa Escola continua particularmente activo, e dando continuidade ao material produzido para o número anterior da nossa revista, onde detalhou a forma como se procede à anotação

Leia mais

CAPÍTULO 1. Os elementos. O jogo de xadrez é um desafio para a mente. J. W. von Goethe O TABULEIRO DE XADREZ

CAPÍTULO 1. Os elementos. O jogo de xadrez é um desafio para a mente. J. W. von Goethe O TABULEIRO DE XADREZ CAPÍTULO 1 Os elementos O jogo de xadrez é um desafio para a mente. J. W. von Goethe O TABULEIRO DE XADREZ Joga-se xadrez sobre um tabuleiro quadrado, formado por 64 casas quadradas, sendo sua cor, alternadamente,

Leia mais

Inteligência Artificial. Algoritmos Genéticos. Aula I Introdução

Inteligência Artificial. Algoritmos Genéticos. Aula I Introdução Universidade Estadual do Oeste do Paraná Curso de Bacharelado em Ciência da Computação Inteligência Artificial Algoritmos Genéticos Aula I Introdução Roteiro Introdução Computação Evolutiva Algoritmos

Leia mais

REGRAS DOS JOGOS do CNJM15

REGRAS DOS JOGOS do CNJM15 REGRAS DOS JOGOS do CNJM15 Semáforo Autor: Alan Parr 8 peças verdes, 8 amarelas e 8 vermelhas partilhadas pelos jogadores. Ser o primeiro a conseguir uma linha de três peças da mesma cor na horizontal,

Leia mais

APÊNDICE C. Produto da Dissertação: Sequência de Atividades. Encontro 1 ( 2 períodos de 50 minutos)

APÊNDICE C. Produto da Dissertação: Sequência de Atividades. Encontro 1 ( 2 períodos de 50 minutos) 1 APÊNDICE C Produto da Dissertação: Sequência de Atividades Encontro 1 ( 2 períodos de 50 minutos) Jogo trabalhado: PONG HAU K'I Regras do jogo: Cada jogador possui duas peças e o jogo começa com as peças

Leia mais

ABC DO XADREZ GUIA DE APRENDIZAGEM

ABC DO XADREZ GUIA DE APRENDIZAGEM AGRUPAMENTO VERTICAL DE ESCOLAS DE ARCOZELO ABC DO XADREZ GUIA DE APRENDIZAGEM A Coordenadora: Prof. Fernanda Marinho Regras Básicas A posição do Tabuleiro deve ser colocada de uma forma que o jogador

Leia mais

4 Implementação Computacional

4 Implementação Computacional 4 Implementação Computacional 4.1. Introdução Neste capítulo é apresentada a formulação matemática do problema de otimização da disposição das linhas de ancoragem para minimizar os deslocamentos (offsets)

Leia mais

Um Middleware de Inteligência Artificial para Jogos Digitais 105

Um Middleware de Inteligência Artificial para Jogos Digitais 105 6 Conclusão Este capítulo apresenta alguns comentários e considerações gerais sobre o trabalho de pesquisa realizado durante o desenvolvimento desta dissertação, as contribuições alcançadas e sugestões

Leia mais

Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid

Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid 1 Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid Luciana Conceição Dias Campos Resumo Este trabalho consiste da aplicação de um algoritmo genético ao método

Leia mais

Capítulo 9: Linguagens sensíveis ao contexto e autômatos linearmente limitados.

Capítulo 9: Linguagens sensíveis ao contexto e autômatos linearmente limitados. Capítulo 9: Linguagens sensíveis ao contexto e autômatos linearmente limitados. José Lucas Rangel 9.1 - Introdução. Como já vimos anteriormente, a classe das linguagens sensíveis ao contexto (lsc) é uma

Leia mais

Algoritmos Evolutivos Aplicados no Aprendizado em Jogos de Estratégia em Tempo Real

Algoritmos Evolutivos Aplicados no Aprendizado em Jogos de Estratégia em Tempo Real Algoritmos Evolutivos Aplicados no Aprendizado em Jogos de Estratégia em Tempo Real Rodrigo de Freitas Pereira Claudio Fabiano Motta Toledo Marcio Kassouf Crocomo Eduardo do Valle Simões Sumário Trabalhos

Leia mais

IF-705 Automação Inteligente Sistemas de Controle - Fundamentos

IF-705 Automação Inteligente Sistemas de Controle - Fundamentos IF-705 Automação Inteligente Sistemas de Controle - Fundamentos Aluizio Fausto Ribeiro Araújo Universidade Federal de Pernambuco Centro de Informática - CIn Departamento de Sistemas da Computação aluizioa@cin.ufpe.br

Leia mais

Como as aplicações de entretenimento (em especial jogos digitais) têm enfrentado um constante crescimento, tanto em tamanho quanto em complexidade,

Como as aplicações de entretenimento (em especial jogos digitais) têm enfrentado um constante crescimento, tanto em tamanho quanto em complexidade, 1 Introdução Como as aplicações de entretenimento (em especial jogos digitais) têm enfrentado um constante crescimento, tanto em tamanho quanto em complexidade, os desafios encontrados durante o desenvolvimento

Leia mais

Figura: Capa do Livro Hamburger, H., Richards, D. Logic and Language Models for Computer Science, Prentice Hall.

Figura: Capa do Livro Hamburger, H., Richards, D. Logic and Language Models for Computer Science, Prentice Hall. Figura: Capa do Livro Hamburger, H., Richards, D. Logic and Language Models for Computer Science, Prentice Hall. Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado

Leia mais

6 Estudos de Casos Porta Lógica OU de 4 Entradas

6 Estudos de Casos Porta Lógica OU de 4 Entradas 6 Estudos de Casos Com o objetivo de avaliar a síntese automática de circuitos de QCA usando técnicas de Hardware Evolucionário (EHW), alguns circuitos foram sintetizados e serão apresentados a seguir.

Leia mais

Curso: Ciência da Computação Turma: 6ª Série. Teoria da Computação. Aula 5. Aplicação Prática de Autômatos Finitos

Curso: Ciência da Computação Turma: 6ª Série. Teoria da Computação. Aula 5. Aplicação Prática de Autômatos Finitos Curso: Ciência da Computação Turma: 6ª Série Aula 5 Aplicação Prática de Autômatos Finitos Avisos Temos aula na próxima segunda. Na outra temos revisão e na outro temos a avaliação. Somente 19 alunos/alunas

Leia mais

5 Estudo de Caso e Resultados

5 Estudo de Caso e Resultados 5 Estudo de Caso e Resultados 5.1. Introdução Finalizado o desenvolvimento da ferramenta, é indispensável testar suas funcionalidades e a eficácia da aplicação conjunta dos seus módulos de geração de experimentos

Leia mais

Regulamento do Torneio de Matraquilhos

Regulamento do Torneio de Matraquilhos Regulamento do Torneio de Matraquilhos O Plano de Atividades e Orçamento da Associação de Estudantes do Externato Frei Luís de Sousa para o mandato 2013/2014 prevê a organização de um Torneio de Damas.

Leia mais

3 Algoritmos Genéticos

3 Algoritmos Genéticos Técnicas de Inteligência Computacional 33 3 Algoritmos Genéticos Este capítulo resume os principais conceitos sobre o algoritmo evolucionário empregado nesta dissertação. É apresentada uma breve explicação

Leia mais

ENSINO MÉDIO INTEGRADO INFORMÁTICA LINGUAGEM DE PROGRAMAÇÃO Trabalho Semestral

ENSINO MÉDIO INTEGRADO INFORMÁTICA LINGUAGEM DE PROGRAMAÇÃO Trabalho Semestral ENSINO MÉDIO INTEGRADO INFORMÁTICA LINGUAGEM DE PROGRAMAÇÃO Trabalho Semestral CAÇA-PALAVRAS http://www.gileduardo.com.br/ifpr/pci/downloads/referencia.c 1. Introdução O trabalho proposto tem por objetivo

Leia mais

MODELAGEM E IMPLEMENTAÇÃO DE JOGOS APLICADOS A APRENDIZAGEM DE MÁQUINA 1

MODELAGEM E IMPLEMENTAÇÃO DE JOGOS APLICADOS A APRENDIZAGEM DE MÁQUINA 1 MODELAGEM E IMPLEMENTAÇÃO DE JOGOS APLICADOS A APRENDIZAGEM DE MÁQUINA 1 Jean Rafael Reus Da Silva 2, Rafael Zancan Frantz 3, Sandro Sawicki 4. 1 Projeto de Iniciação Científica. 2 Aluno do Curso de Graduação

Leia mais

ATIVIDADES PRÁTICAS SUPERVISIONADAS

ATIVIDADES PRÁTICAS SUPERVISIONADAS ATIVIDADES PRÁTICAS SUPERVISIONADAS 7ª Série Linguagens Formais e Autômatos Ciência da Computação A atividade prática supervisionada (ATPS) é um método de ensino-aprendizagem desenvolvido por meio de um

Leia mais

Tabuleiro. Movimento das peças (torre)

Tabuleiro. Movimento das peças (torre) Tabuleiro Posição inicial ¼¼¼¼ ¼¼¼¼ ¼¼¼¼ ¼¼¼¼ ¼¼¼¼ ¼¼¼¼ ¼¼¼¼ ¼¼¼¼ Uma linha é uma sequencia de oito casas dispostas de forma contigua horizontalmente. ¼¼¼¼ ¼¼¼¼ ¼¼¼¼ ¼¼¼¼ ¼¼¼¼ ¼¼¼¼ ¼¼¼¼ ¼¼¼¼ ÖÑÐÒ ÓÔÓÔÓÔÓÔ

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

Algoritmo Genético. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto

Algoritmo Genético. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto Algoritmo Genético Inteligência Artificial Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Introdução 2. Conceitos Básicos 3. Aplicações 4. Algoritmo 5. Exemplo Introdução São técnicas de busca

Leia mais

USO DE JOGOS LÓGICOS APLICADOS A APRENDIZAGEM DE MÁQUINA. 1

USO DE JOGOS LÓGICOS APLICADOS A APRENDIZAGEM DE MÁQUINA. 1 USO DE JOGOS LÓGICOS APLICADOS A APRENDIZAGEM DE MÁQUINA. 1 Jean Rafael Reus Da Silva 2, Rogerio Samuel De Moura Martins 3, Renato Perez Ribas 4, Rafael Zancan Frantz 5, Sandro Sawicki 6. 1 Projeto de

Leia mais

Inteligência Artificial Agentes Inteligentes

Inteligência Artificial Agentes Inteligentes Inteligência Artificial Jarley P. Nóbrega, Dr. Faculdade Nova Roma Bacharelado em Ciência da Computação jpn@jarley.com Semestre 2018.2 Jarley P. Nóbrega, Dr. (Nova Roma) Inteligência Artificial Semestre

Leia mais

Campeonato de Gamão. 1. Regras. 2. Servidor

Campeonato de Gamão. 1. Regras. 2. Servidor Campeonato de Gamão 1. Regras O campeonato de gamão será disputado de acordo com as regras tradicionais do jogo, facilmente encontradas na Internet. As duas cores tradicionais das pedras do jogo serão

Leia mais

Max Pereira. Inteligência Artificial

Max Pereira. Inteligência Artificial Max Pereira Inteligência Artificial Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. Uma metáfora da teoria da evolução das espécies iniciada pelo Naturalista inglês Charles

Leia mais

Instituto de Informática. Departamento de Informática Aplicada

Instituto de Informática. Departamento de Informática Aplicada UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL Instituto de Informática Departamento de Informática Aplicada INF01048 Inteligência Artificial Prof. Paulo Martins Engel Trabalho Prático - Relatório Final Carlos

Leia mais

PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95

PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95 PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95 Exercícios de revisão Lista 01: a) Monte um mapa conceitual indicando as relações entre os seguintes conceitos, no contexto do assunto visto em aula:

Leia mais

Inteligência Artificial. Resolução de problemas por meio de algoritmos de busca. Aula VI Busca Competitiva

Inteligência Artificial. Resolução de problemas por meio de algoritmos de busca. Aula VI Busca Competitiva Universidade Estadual do Oeste do Paraná Curso de Bacharelado em Ciência da Computação http://www.inf.unioeste.br/~claudia/ia2017.html Inteligência Artificial Resolução de problemas por meio de algoritmos

Leia mais

Aprendizado por Árvores de Decisão

Aprendizado por Árvores de Decisão Universidade Federal de Santa Maria Departamento de Eletrônica e Computação Prof. Cesar Tadeu Pozzer Disciplina de Programação de Jogos 3D E-mail: pozzer@inf.ufsm.br Período: 2006/01 Aprendizado por Árvores

Leia mais

Microsoft Faculty Connection

Microsoft Faculty Connection Microsoft Faculty Connection Plataforma de Jogos como Ferramenta Multidisciplinar Prof. Dr. LucianoAntonio Digiampietri EACH-USP Roteiro Introdução Objetivos Detalhamentodo Projeto Conclusões Introdução

Leia mais

APLICAÇÃO DE ALGORITMOS BIO-INSPIRADOS EM CONTROLE ÓTIMO

APLICAÇÃO DE ALGORITMOS BIO-INSPIRADOS EM CONTROLE ÓTIMO APLICAÇÃO DE ALGORITMOS BIO-INSPIRADOS EM CONTROLE ÓTIMO Profa. Mariana Cavalca Baseado em: Material didático do Prof. Dr. Carlos Henrique V. Moraes da UNIFEI Curso de verão da Profa. Gisele L. Pappa Material

Leia mais

Técnicas de Inteligência Artificial

Técnicas de Inteligência Artificial Universidade do Sul de Santa Catarina Ciência da Computação Técnicas de Inteligência Artificial Aula 9 Algoritmos Genéticos Max Pereira Algoritmos Genéticos São técnicas de busca e otimização. Uma metáfora

Leia mais

O Manual do Kiriki. Albert Astals Cid Eugene Trounev Tradução: José Pires

O Manual do Kiriki. Albert Astals Cid Eugene Trounev Tradução: José Pires Albert Astals Cid Eugene Trounev Tradução: José Pires 2 Conteúdo 1 Introdução 5 2 Como Jogar 6 3 Regras do Jogo, Estratégias e Sugestões 8 3.1 Regras do Jogo........................................ 8 4

Leia mais

Organização e Arquitetura de Computadores

Organização e Arquitetura de Computadores Universidade Federal de Campina Grande Centro de Engenharia Elétrica e Informática Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de

Leia mais

Implementação e Avaliação do Algoritmo MCTS-UCT para o jogo Chinese Checkers. Jhonny Moreira

Implementação e Avaliação do Algoritmo MCTS-UCT para o jogo Chinese Checkers. Jhonny Moreira Implementação e Avaliação do Algoritmo MCTS-UCT para o jogo Chinese Checkers Jhonny Moreira Introdução Introdução Na área da inteligência artificial (IA), a motivação é conseguir colocar os computadores

Leia mais

Jogos. Geralmente o oponente tentará, na medida do possível, fazer o movimento menos benéfico para o adversário.

Jogos. Geralmente o oponente tentará, na medida do possível, fazer o movimento menos benéfico para o adversário. Jogos Os jogos tem atraído a atenção da humanidade, às vezes de modo alarmante, desde a antiguidade. O que o torna atraente para a IA é que é uma abstração da competição (guerra), onde se idealizam mundos

Leia mais

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

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

Leia mais

Técnicas de Inteligência Artificial

Técnicas de Inteligência Artificial Universidade do Sul de Santa Catarina Ciência da Computação Técnicas de Inteligência Artificial Aula 9 Algoritmos Genéticos Max Pereira Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e

Leia mais

Turing to Norma, uma ferramenta para auxiliar o estudo da equivalência entre Máquina de Turing e Máquina Norma

Turing to Norma, uma ferramenta para auxiliar o estudo da equivalência entre Máquina de Turing e Máquina Norma 4ª Jornada Científica e Tecnológica e 1º Simpósio de Pós-Graduação do IFSULDEMINAS 16, 17 e 18 de outubro de 2012, Muzambinho MG Turing to Norma, uma ferramenta para auxiliar o estudo da equivalência entre

Leia mais

Algoritmos Genéticos. Pontos fracos dos métodos tradicionais. Características de alguns problemas. Tamanho do espaço de busca- Ex. caixeiro viajante:

Algoritmos Genéticos. Pontos fracos dos métodos tradicionais. Características de alguns problemas. Tamanho do espaço de busca- Ex. caixeiro viajante: Algoritmos Genéticos Prof. Luis Otavio Alvares INE/UFSC Características de alguns problemas Tamanho do espaço de busca- Ex. caixeiro viajante: 10 cidades: 181.000 soluções 20 cidades: 10.000.000.000.000

Leia mais

Sistemas de Numeração

Sistemas de Numeração Sistemas de Numeração Módulo 1.1 1 Sistemas de Numeração O sistema de numeração com o qual estamos mais familiarizados é o decimal, cujo alfabeto (coleção de símbolos) é formado por 10 dígitos acima mostrados.

Leia mais

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO AULA 06 Algoritmos Genéticos Sumário Introdução Inteligência Artificial (IA) Algoritmos Genéticos Aplicações de

Leia mais

3 Métodos de Otimização

3 Métodos de Otimização 3 Métodos de Otimização Problemas de otimização são relacionados a minimização ou maximização de função de uma ou mais variáveis num determinado domínio, possivelmente com a existência de um conjunto de

Leia mais

XADREZ NA UFG. Módulo I -Introdução. Prof. Dr. André Carlos Silva Profa. MSc. Elenice Maria Schons Silva

XADREZ NA UFG. Módulo I -Introdução. Prof. Dr. André Carlos Silva Profa. MSc. Elenice Maria Schons Silva XADREZ NA UFG Módulo I -Introdução Prof. Dr. André Carlos Silva Profa. MSc. Elenice Maria Schons Silva História do Xadrez Benjamin Franklin disputando uma partida de xadrez, quadro do artista Edward Harrison

Leia mais

PROFESSORA: GEÓRGIA SOARES DISCIPLINA: EDUCAÇÃO FÍSICA CONTEÚDO: XADREZ AULA 2

PROFESSORA: GEÓRGIA SOARES DISCIPLINA: EDUCAÇÃO FÍSICA CONTEÚDO: XADREZ AULA 2 PROFESSORA: GEÓRGIA SOARES DISCIPLINA: EDUCAÇÃO FÍSICA CONTEÚDO: XADREZ AULA 2 Questões 1. Como você conceituaria Jogo? 2. Quais as vantagens dos Jogos? 3. Classifique os tipos de Jogo. 4. Qual a diferença

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial Edirlei Soares de Lima INF 1771 Inteligência Artificial Aula 24 Aprendizado Por Reforço Formas de Aprendizado Aprendizado Supervisionado Árvores de Decisão. K-Nearest Neighbor (KNN).

Leia mais

4 Modelagem do jogador

4 Modelagem do jogador 4 Modelagem do jogador Essa técnica também é conhecida como modelagem de adversários ou oponentes, como usada por alguns autores (Herik05, Bakkes09). Baseada no conceito de modelagem de estudantes usado

Leia mais

UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA

UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Máquina de Turing Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa yandre@din.uem.br Teoria da Computação Ciência da Computação

Leia mais

INF INTELIGÊNCIA ARTIFICIAL TRABALHO 1 BUSCA HEURÍSTICA

INF INTELIGÊNCIA ARTIFICIAL TRABALHO 1 BUSCA HEURÍSTICA INF1771 - INTELIGÊNCIA ARTIFICIAL TRABALHO 1 BUSCA HEURÍSTICA Descrição: Para se tornar um Mestre Pokémon é necessário aventurar-se por terras desconhecidas, capturar novos pokémons, treina-los e derrotar

Leia mais

Projeto Xadrez Entrega 01: Polimorfismo e Herança

Projeto Xadrez Entrega 01: Polimorfismo e Herança Professore: Aluno PAE (Turma A): Aluno PAE (Turma C): João do E.S. Batista Neto (jbatista at icmc.usp.br) Felipe S. L. G. Duarte (fgduarte at icmc.usp.br) Oscar Cuadros Linares (ocuadrosl at gmail.com)

Leia mais

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Prof.ª Danielle Casillo Proposta por Alan Turing em 1936; É universalmente conhecida e aceita como formalização de algoritmo; Teoria

Leia mais

Desde o surgimento dos primeiros jogos eletrônicos em meados dos anos 50, uma infinidade de aparatos eletrônicos foram desenvolvidos, principalmente

Desde o surgimento dos primeiros jogos eletrônicos em meados dos anos 50, uma infinidade de aparatos eletrônicos foram desenvolvidos, principalmente 1 Introdução Desde o surgimento dos primeiros jogos eletrônicos em meados dos anos 50, uma infinidade de aparatos eletrônicos foram desenvolvidos, principalmente referentes a jogos e entretenimento digital.

Leia mais

21090 Programação e-fólio A 2016/2017. E-fólio A

21090 Programação e-fólio A 2016/2017. E-fólio A E-fólio A Alínea A) O e-fólio A é constituído por 4 alíneas, valendo 1 valor cada, devendo as mesmas serem realizadas sequencialmente, e podendo ser reutilizado código entre alíneas. A cotação total do

Leia mais

Agentes Inteligentes. Inteligência Artificial

Agentes Inteligentes. Inteligência Artificial Agentes Inteligentes (Capítulo 2 - Russell) Inteligência Artificial Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Definições 2. Ambiente de Tarefas 3. Exemplos de ambiente de Tarefas 4. Propriedades

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial INF 1771 Inteligência Artificial Apresentação da Disciplina Edirlei Soares de Lima O que é Inteligência Artificial? O que é Inteligência Artificial? Área de pesquisa que tem como

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Algoritmos Genéticos Aluno: Fabricio Aparecido Breve Prof.: Dr. André Ponce de Leon F. de Carvalho São Carlos São Paulo Maio

Leia mais

5ª Lista de Exercícios de Programação I

5ª Lista de Exercícios de Programação I 5ª Lista de Exercícios de Programação I Instrução As questões devem ser implementadas em C. Questões que envolvam leitura de matrizes, a construção dessas matrizes pode ser realizada através da geração

Leia mais

Manual do Bovo. Aron Bostrom Eugene Trounev Tradução: Luiz Fernando Ranghetti BOVO N 5

Manual do Bovo. Aron Bostrom Eugene Trounev Tradução: Luiz Fernando Ranghetti BOVO N 5 Aron Bostrom Eugene Trounev Tradução: Luiz Fernando Ranghetti BOVO N 5 2 Conteúdo 1 Introdução 5 2 Como jogar 6 3 Regras do jogo, estratégias e dicas 7 3.1 Regras do jogo........................................

Leia mais

O JOGO DE XADREZ. Vamos conhecer as peças que compõe o jogo: O Tabuleiro

O JOGO DE XADREZ. Vamos conhecer as peças que compõe o jogo: O Tabuleiro O JOGO DE XADREZ O xadrez é um esporte intelectual, disputado entre duas pessoas que possuem forças iguais (peças) sobre um tabuleiro. Este jogo representa uma batalha em miniatura, onde cada lado comanda

Leia mais

Design de Interface - Avaliação Final

Design de Interface - Avaliação Final Design de Interface - Avaliação Final A proposta deste trabalho era adaptar a interface gráfica de um jogo de tabuleiro clássico tomando como base os conhecimentos de Consistência, Hierarquia e Personalidade.

Leia mais

I1, I2 e In são instruções simples ou estruturadas da linguagem Pascal.

I1, I2 e In são instruções simples ou estruturadas da linguagem Pascal. Capítulo 4 TESTES, ESCOLHAS E MALHAS DE REPETIÇÃO 1. INTRODUÇÃO Em muitos exemplos e exercícios realizados nos capítulos anteriores, não foram raras as vezes em que fizemos uso de elementos disponíveis

Leia mais

Fabrício Jailson Barth BandTec

Fabrício Jailson Barth BandTec Introdução à Inteligência Artificial Fabrício Jailson Barth fabricio.barth@bandtec.com.br BandTec 1 o semestre de 2012 Objetivos e Sumário O que é Inteligência Artificial (IA)? Objetivos da IA. Influência

Leia mais

Jogo de Gamão. Introdução

Jogo de Gamão. Introdução Jogo de Gamão Introdução O Gamão (Backgammon) é um jogo para 2 oponentes, jogado em um tabuleiro que consiste em 24 triângulos chamados pontos (ou casas). Esses triângulos são de cores alternadas e agrupados

Leia mais

Anatomia do motor de um programa de xadrez. Hugo Vinicius M. D. Santana Orientador: José Coelho de Pina

Anatomia do motor de um programa de xadrez. Hugo Vinicius M. D. Santana Orientador: José Coelho de Pina Anatomia do motor de um programa de xadrez Hugo Vinicius M. D. Santana Orientador: José Coelho de Pina Conteúdo Objetivo O que é um motor de xadrez? Arquitetura Entrada e saída Representação do tabuleiro

Leia mais

LINGUAGENS FORMAIS E AUTÔMATOS

LINGUAGENS FORMAIS E AUTÔMATOS LINGUAGENS FORMAIS E AUTÔMATOS O objetivo deste curso é formalizar a idéia de linguagem e definir os tipos de sintaxe e semântica. Para cada sintaxe, analisamos autômatos, ue são abstrações de algoritmos.

Leia mais

Linguagens Regulares. Prof. Daniel Oliveira

Linguagens Regulares. Prof. Daniel Oliveira Linguagens Regulares Prof. Daniel Oliveira Linguagens Regulares Linguagens Regulares ou Tipo 3 Hierarquia de Chomsky Linguagens Regulares Aborda-se os seguintes formalismos: Autômatos Finitos Expressões

Leia mais

Manual do KFourInLine. Martin Heni Eugene Trounev Benjamin Meyer Johann Ollivier Lapeyre Anton Brondz Tradução: Marcus Gama Revisão: Stephen Killing

Manual do KFourInLine. Martin Heni Eugene Trounev Benjamin Meyer Johann Ollivier Lapeyre Anton Brondz Tradução: Marcus Gama Revisão: Stephen Killing Martin Heni Eugene Trounev Benjamin Meyer Johann Ollivier Lapeyre Anton Brondz Tradução: Marcus Gama Revisão: Stephen Killing 2 Conteúdo 1 Introdução 5 2 Como jogar 6 3 Regras, estratégias e dicas do jogo

Leia mais

Inteligência Artificial. Conceitos Gerais

Inteligência Artificial. Conceitos Gerais Inteligência Artificial Conceitos Gerais Inteligência Artificial - IA IA é um campo de estudo multidisciplinar e interdisciplinar, que se apóia no conhecimento e evolução de outras áreas do conhecimento.

Leia mais