O documento resume as principais técnicas de inteligência artificial aplicadas em jogos, incluindo exemplos práticos. Aborda o estado atual da arte e considerações finais sobre o futuro da IA em jogos.
O documento discute a história e técnicas de inteligência artificial para jogos eletrônicos. Apresenta alguns jogos pioneiros que implementaram primitivas formas de IA, como Space Invaders e Pac-Man, e como a área evoluiu ao longo dos anos até Half-Life, um dos primeiros a usar IA avançada. Também diferencia IA acadêmica de Game IA e explica alguns métodos comuns em jogos, como máquinas de estado finito e sistemas baseados em regras.
Técnicas de Inteligência Artificial em Jogos EletrônicosRoger Ritter
O documento discute as técnicas de inteligência artificial mais utilizadas em jogos eletrônicos, incluindo máquinas de estado finito, scripting, lógica fuzzy e flocking. Ele explica como cada técnica funciona e dá exemplos de jogos populares que as utilizam, como Age of Empires, Half-Life e The Sims. O documento também discute as vantagens, desvantagens e aplicações dessas técnicas para simular comportamentos realistas nos jogos.
Técnicas de inteligência artificial em jogos eletrônicossRoger Ritter
O documento discute técnicas de inteligência artificial utilizadas em jogos eletrônicos, incluindo máquinas de estado finito, lógica nebulosa, árvores de decisão e redes neurais. Exemplos de jogos que usam essas técnicas são fornecidos.
Inteligência Artificial e suas aplicações - A experiência do TECPARBruno Campagnolo
O documento apresenta as atividades da Divisão de Inteligência Artificial (DIA) do TECPAR no Paraná, incluindo aplicações de IA em engenharia do conhecimento, sistemas multiagentes, bioinformática, jogos e robótica. A DIA desenvolve sistemas especialistas para monitoramento industrial e apoio à cadeia do leite, além de pesquisas em redes neurais, controle de robôs e agentes inteligentes para jogos.
Este documento discute a história e aplicações da inteligência artificial em jogos eletrônicos. Aborda a evolução da IA em jogos desde os primeiros padrões de movimento em jogos dos anos 1970 até o uso atual de redes neurais e aprendizado de máquina. Também apresenta alguns tipos comuns de IA em jogos como máquinas de estado finito, sistemas baseados em regras e algoritmos de busca. Por fim, discute brevemente os benefícios e desafios da IA em jogos.
Artigo - Inteligência Artificial e seu uso no CotidianoJoao Martins
O documento discute o uso da inteligência artificial no cotidiano. Ele explica como a IA está presente em diversas áreas como aeroportos, jogos e redes sociais para melhorar a segurança, a jogabilidade e a relevância de conteúdo, respectivamente. O documento também fornece um histórico do desenvolvimento da IA e esclarece mitos comuns sobre o assunto.
O documento discute a história e técnicas de inteligência artificial para jogos eletrônicos. Apresenta alguns jogos pioneiros que implementaram primitivas formas de IA, como Space Invaders e Pac-Man, e como a área evoluiu ao longo dos anos até Half-Life, um dos primeiros a usar IA avançada. Também diferencia IA acadêmica de Game IA e explica alguns métodos comuns em jogos, como máquinas de estado finito e sistemas baseados em regras.
Técnicas de Inteligência Artificial em Jogos EletrônicosRoger Ritter
O documento discute as técnicas de inteligência artificial mais utilizadas em jogos eletrônicos, incluindo máquinas de estado finito, scripting, lógica fuzzy e flocking. Ele explica como cada técnica funciona e dá exemplos de jogos populares que as utilizam, como Age of Empires, Half-Life e The Sims. O documento também discute as vantagens, desvantagens e aplicações dessas técnicas para simular comportamentos realistas nos jogos.
Técnicas de inteligência artificial em jogos eletrônicossRoger Ritter
O documento discute técnicas de inteligência artificial utilizadas em jogos eletrônicos, incluindo máquinas de estado finito, lógica nebulosa, árvores de decisão e redes neurais. Exemplos de jogos que usam essas técnicas são fornecidos.
Inteligência Artificial e suas aplicações - A experiência do TECPARBruno Campagnolo
O documento apresenta as atividades da Divisão de Inteligência Artificial (DIA) do TECPAR no Paraná, incluindo aplicações de IA em engenharia do conhecimento, sistemas multiagentes, bioinformática, jogos e robótica. A DIA desenvolve sistemas especialistas para monitoramento industrial e apoio à cadeia do leite, além de pesquisas em redes neurais, controle de robôs e agentes inteligentes para jogos.
Este documento discute a história e aplicações da inteligência artificial em jogos eletrônicos. Aborda a evolução da IA em jogos desde os primeiros padrões de movimento em jogos dos anos 1970 até o uso atual de redes neurais e aprendizado de máquina. Também apresenta alguns tipos comuns de IA em jogos como máquinas de estado finito, sistemas baseados em regras e algoritmos de busca. Por fim, discute brevemente os benefícios e desafios da IA em jogos.
Artigo - Inteligência Artificial e seu uso no CotidianoJoao Martins
O documento discute o uso da inteligência artificial no cotidiano. Ele explica como a IA está presente em diversas áreas como aeroportos, jogos e redes sociais para melhorar a segurança, a jogabilidade e a relevância de conteúdo, respectivamente. O documento também fornece um histórico do desenvolvimento da IA e esclarece mitos comuns sobre o assunto.
O documento resume o jogo Alien Attack, um jogo de tower defense para Nintendo DS. O jogador assume o controle dos humanos para defender ataques de raças alienígenas em diversos planetas. O jogador constrói e posiciona diferentes tipos de torres de defesa para impedir que ondas de inimigos alcancem a base humana. O documento detalha os elementos do jogo, como mecânicas, personagens, interface e arte.
Mecânica de jogos digitais: documentando com Behaviour Driven Developemnt (BD...Potiguar Indie Games
Palestra ministrada na Cientec (UFRN) em outubro de 2013 nos dias 22 e 23.
O intuito desta palestra é mostrar conceitos básicos de desenvolvimento de jogos e abordar um pouco do processo criativo vinculado a processo de desenvolvimento e documentação de mecânica de jogos digitais.
André Montevecchi graduou-se em Sistemas de Informação e possui mestrado em Informática com foco em Inteligência Artificial. Seu endereço de e-mail é andre@montevecchi.com.br.
O documento discute o uso do game design como ferramenta educacional, apresentando uma proposta de dividir o processo de desenvolvimento de jogos em 7 fases, cobrindo diferentes áreas do conhecimento como artes, matemática, física, literatura e ciências humanas. A última fase trata da utilização de game engines para facilitar a criação de jogos por estudantes.
Inteligência artificial algumas técnicas aplicadas em jogosCRISLANIO MACEDO
1. O documento discute brevemente a história e técnicas comuns de inteligência artificial em jogos eletrônicos, como máquinas de estados finitos, algoritmos genéticos e planejamento. 2. Exemplos de como essas técnicas são usadas em jogos populares como Pac-Man, Resident Evil e StarCraft são dados. 3. O documento fornece referências adicionais para aprender mais sobre o assunto.
Inteligência Artificial e suas aplicações - A experiência do TECPARBruno Campagnolo
O documento apresenta as atividades de pesquisa e desenvolvimento em inteligência artificial realizadas pelo TECPAR e CESI, incluindo sistemas especialistas, inteligência artificial distribuída, bioinformática, game AI e robótica. Também discute a evolução da IA, suas aplicações e tendências futuras, como interfaces mais integradas entre homem e máquina.
Este documento apresenta o desenvolvimento de um jogo de damas utilizando realidade aumentada e inteligência artificial para telefones celulares. O jogo permite uma partida entre um jogador real com peças reais em um tabuleiro e um jogador virtual controlado por um algoritmo de inteligência artificial no celular. O celular captura imagens do tabuleiro, reconhece as peças e posições, e exibe as peças virtuais na tela para o jogador virtual.
This document discusses the evolution of artificial intelligence and the concept of artificial general intelligence (AGI). It covers definitions of intelligence, AI pioneers like Turing and McCarthy, different types of AI systems, technologies being developed for AGI like OpenCog, and predictions that superintelligence may emerge by 2045 leading to a technological singularity.
O documento fornece uma introdução sobre inteligência artificial (IA), discutindo suas definições, aplicações, abordagens como aprendizado de máquina e redes neurais. O texto também descreve como a IA usa ferramentas como matemática, lógica e álgebra para resolver problemas.
O documento discute técnicas de teste para jogos digitais. Primeiramente, apresenta conceitos sobre jogos digitais, testes de software e características de jogos. Em seguida, descreve técnicas como combinatorial testing, test flow diagrams, cleanroom testing e test trees que podem ser usadas para criar e executar testes de jogos de forma sistemática. Finalmente, exemplifica a aplicação dessas técnicas no teste de um jogo fictício.
O documento descreve o sensor de luz do Lego Mindstorms NXT, incluindo suas propriedades, utilizações e vídeos demonstrativos. O sensor pode detectar diferentes níveis de intensidade da luz, mas não distingue cores. Ele é usado para tarefas como fazer um robô seguir uma linha ou uma fonte luminosa.
Sim, coletores de dados em armazéns são bons para um WMS. Alguns benefícios incluem:
- Maior precisão nos inventários, permitindo melhor planejamento da produção e das compras.
- Rastreamento em tempo real dos produtos, facilitando a localização dos itens.
- Integração com sistemas de picking, direcionando os operadores para as localizações corretas.
- Automatização do processo de recebimento e envio de mercadorias, reduzindo erros manuais.
Em frigoríficos, os coletores
O documento descreve o framework OpenNI para desenvolvimento de ambientes virtuais interativos usando dispositivos como o Kinect. O OpenNI fornece uma API padrão para comunicação entre sensores, aplicações e middlewares, permitindo acesso aos dados brutos dos sensores e compatibilidade entre dispositivos. As principais classes da API Java do OpenNI gerenciam dispositivos, fluxos de vídeo, gravação e reprodução de dados, e conversão entre sistemas de coordenadas.
Introdução à Programação com Robôs LegoRayner Pires
1. Este documento introduz conceitos básicos de programação com robôs Lego, incluindo explicações sobre o kit NXT, seus componentes (sensores, motores, visor), e demonstrações práticas de como usá-los.
2. É apresentado cada um dos quatro sensores incluídos no kit - luz, toque, ultrassom e som - explicando o que cada um mede e sugestões de aplicações.
3. Os três servomotores também são explicados, destacando que cada um contém um sensor de rotação interno para cont
Este documento descreve um trabalho realizado na disciplina de Programação Orientada por Objetos utilizando a plataforma Greenfoot. O objetivo era desenvolver um jogo sobre um tema sobrenatural envolvendo dois amigos que descobrem um livro antigo e são transportados para um mundo dos mortos. O documento explica como foram implementados conceitos como animação, manipulação de cores e sons, requisitos do Greenfoot e programação orientada a objetos.
1. O documento introduz os conceitos básicos de programação com robôs Lego Mindstorms NXT, incluindo o que é o NXT, seus componentes e sensores.
2. São explicados os principais componentes do NXT como portas de entrada e saída, visor, alto-falante e botões de navegação.
3. Também são detalhados cada um dos 4 sensores que vêm no kit - luz, toque, ultrassom e som - e sugestões de usos para cada um.
3W1H - Where What Why and How: Uma Abordagem Prática para Desenvolvimento de ...Almerindo Rehem
O documento apresenta uma abordagem chamada "3W1H" para o desenvolvimento de ambientes interativos. A abordagem guia os desenvolvedores a responder quatro perguntas: Onde acontecerá? O que acontecerá? Por que acontecerá? Como acontecerá? A abordagem é validada através de um estudo de caso de controle de TV por gestos. Os resultados indicam que a abordagem 3W1H estrutura melhor o processo de desenvolvimento em comparação a abordagens ad-hoc.
O documento discute os conceitos de inteligência artificial fraca e forte. Ele também aborda as definições de IA, como sistemas que pensam como seres humanos versus sistemas que pensam racionalmente, e os riscos éticos do desenvolvimento da IA.
O documento discute inteligência artificial (IA) e sistemas especialistas. Aborda o que é IA, suas ramificações e como sistemas especialistas funcionam, incluindo componentes como base de conhecimento e motor de inferência. Também discute o desenvolvimento e aplicação de sistemas especialistas.
A rede social pretende unir gamers interessados em jogos, permitindo discussão de ideias, dicas e addons para jogos. Os usuários poderão ver informações sobre jogos, interagir com amigos e mostrar status nos jogos de forma gratuita através de perfis diferenciados.
O documento resume o jogo Alien Attack, um jogo de tower defense para Nintendo DS. O jogador assume o controle dos humanos para defender ataques de raças alienígenas em diversos planetas. O jogador constrói e posiciona diferentes tipos de torres de defesa para impedir que ondas de inimigos alcancem a base humana. O documento detalha os elementos do jogo, como mecânicas, personagens, interface e arte.
Mecânica de jogos digitais: documentando com Behaviour Driven Developemnt (BD...Potiguar Indie Games
Palestra ministrada na Cientec (UFRN) em outubro de 2013 nos dias 22 e 23.
O intuito desta palestra é mostrar conceitos básicos de desenvolvimento de jogos e abordar um pouco do processo criativo vinculado a processo de desenvolvimento e documentação de mecânica de jogos digitais.
André Montevecchi graduou-se em Sistemas de Informação e possui mestrado em Informática com foco em Inteligência Artificial. Seu endereço de e-mail é andre@montevecchi.com.br.
O documento discute o uso do game design como ferramenta educacional, apresentando uma proposta de dividir o processo de desenvolvimento de jogos em 7 fases, cobrindo diferentes áreas do conhecimento como artes, matemática, física, literatura e ciências humanas. A última fase trata da utilização de game engines para facilitar a criação de jogos por estudantes.
Inteligência artificial algumas técnicas aplicadas em jogosCRISLANIO MACEDO
1. O documento discute brevemente a história e técnicas comuns de inteligência artificial em jogos eletrônicos, como máquinas de estados finitos, algoritmos genéticos e planejamento. 2. Exemplos de como essas técnicas são usadas em jogos populares como Pac-Man, Resident Evil e StarCraft são dados. 3. O documento fornece referências adicionais para aprender mais sobre o assunto.
Inteligência Artificial e suas aplicações - A experiência do TECPARBruno Campagnolo
O documento apresenta as atividades de pesquisa e desenvolvimento em inteligência artificial realizadas pelo TECPAR e CESI, incluindo sistemas especialistas, inteligência artificial distribuída, bioinformática, game AI e robótica. Também discute a evolução da IA, suas aplicações e tendências futuras, como interfaces mais integradas entre homem e máquina.
Este documento apresenta o desenvolvimento de um jogo de damas utilizando realidade aumentada e inteligência artificial para telefones celulares. O jogo permite uma partida entre um jogador real com peças reais em um tabuleiro e um jogador virtual controlado por um algoritmo de inteligência artificial no celular. O celular captura imagens do tabuleiro, reconhece as peças e posições, e exibe as peças virtuais na tela para o jogador virtual.
This document discusses the evolution of artificial intelligence and the concept of artificial general intelligence (AGI). It covers definitions of intelligence, AI pioneers like Turing and McCarthy, different types of AI systems, technologies being developed for AGI like OpenCog, and predictions that superintelligence may emerge by 2045 leading to a technological singularity.
O documento fornece uma introdução sobre inteligência artificial (IA), discutindo suas definições, aplicações, abordagens como aprendizado de máquina e redes neurais. O texto também descreve como a IA usa ferramentas como matemática, lógica e álgebra para resolver problemas.
O documento discute técnicas de teste para jogos digitais. Primeiramente, apresenta conceitos sobre jogos digitais, testes de software e características de jogos. Em seguida, descreve técnicas como combinatorial testing, test flow diagrams, cleanroom testing e test trees que podem ser usadas para criar e executar testes de jogos de forma sistemática. Finalmente, exemplifica a aplicação dessas técnicas no teste de um jogo fictício.
O documento descreve o sensor de luz do Lego Mindstorms NXT, incluindo suas propriedades, utilizações e vídeos demonstrativos. O sensor pode detectar diferentes níveis de intensidade da luz, mas não distingue cores. Ele é usado para tarefas como fazer um robô seguir uma linha ou uma fonte luminosa.
Sim, coletores de dados em armazéns são bons para um WMS. Alguns benefícios incluem:
- Maior precisão nos inventários, permitindo melhor planejamento da produção e das compras.
- Rastreamento em tempo real dos produtos, facilitando a localização dos itens.
- Integração com sistemas de picking, direcionando os operadores para as localizações corretas.
- Automatização do processo de recebimento e envio de mercadorias, reduzindo erros manuais.
Em frigoríficos, os coletores
O documento descreve o framework OpenNI para desenvolvimento de ambientes virtuais interativos usando dispositivos como o Kinect. O OpenNI fornece uma API padrão para comunicação entre sensores, aplicações e middlewares, permitindo acesso aos dados brutos dos sensores e compatibilidade entre dispositivos. As principais classes da API Java do OpenNI gerenciam dispositivos, fluxos de vídeo, gravação e reprodução de dados, e conversão entre sistemas de coordenadas.
Introdução à Programação com Robôs LegoRayner Pires
1. Este documento introduz conceitos básicos de programação com robôs Lego, incluindo explicações sobre o kit NXT, seus componentes (sensores, motores, visor), e demonstrações práticas de como usá-los.
2. É apresentado cada um dos quatro sensores incluídos no kit - luz, toque, ultrassom e som - explicando o que cada um mede e sugestões de aplicações.
3. Os três servomotores também são explicados, destacando que cada um contém um sensor de rotação interno para cont
Este documento descreve um trabalho realizado na disciplina de Programação Orientada por Objetos utilizando a plataforma Greenfoot. O objetivo era desenvolver um jogo sobre um tema sobrenatural envolvendo dois amigos que descobrem um livro antigo e são transportados para um mundo dos mortos. O documento explica como foram implementados conceitos como animação, manipulação de cores e sons, requisitos do Greenfoot e programação orientada a objetos.
1. O documento introduz os conceitos básicos de programação com robôs Lego Mindstorms NXT, incluindo o que é o NXT, seus componentes e sensores.
2. São explicados os principais componentes do NXT como portas de entrada e saída, visor, alto-falante e botões de navegação.
3. Também são detalhados cada um dos 4 sensores que vêm no kit - luz, toque, ultrassom e som - e sugestões de usos para cada um.
3W1H - Where What Why and How: Uma Abordagem Prática para Desenvolvimento de ...Almerindo Rehem
O documento apresenta uma abordagem chamada "3W1H" para o desenvolvimento de ambientes interativos. A abordagem guia os desenvolvedores a responder quatro perguntas: Onde acontecerá? O que acontecerá? Por que acontecerá? Como acontecerá? A abordagem é validada através de um estudo de caso de controle de TV por gestos. Os resultados indicam que a abordagem 3W1H estrutura melhor o processo de desenvolvimento em comparação a abordagens ad-hoc.
O documento discute os conceitos de inteligência artificial fraca e forte. Ele também aborda as definições de IA, como sistemas que pensam como seres humanos versus sistemas que pensam racionalmente, e os riscos éticos do desenvolvimento da IA.
O documento discute inteligência artificial (IA) e sistemas especialistas. Aborda o que é IA, suas ramificações e como sistemas especialistas funcionam, incluindo componentes como base de conhecimento e motor de inferência. Também discute o desenvolvimento e aplicação de sistemas especialistas.
A rede social pretende unir gamers interessados em jogos, permitindo discussão de ideias, dicas e addons para jogos. Os usuários poderão ver informações sobre jogos, interagir com amigos e mostrar status nos jogos de forma gratuita através de perfis diferenciados.
O documento discute as plataformas e sistemas de jogos eletrônicos, definindo plataforma como o hardware físico que roda o jogo, como consoles, computadores e celulares, e sistema como o sistema operacional de desenvolvimento, como Android, Windows e iOS. Também resume as principais características e desafios de desenvolvimento para cada plataforma popular, incluindo fliperamas, consoles, computadores, online, portáteis e celulares.
Gabriel Schade Cardoso apresenta seu trabalho com desenvolvimento utilizando o Microsoft Kinect. Ele tem experiência com C# e .NET, além de ser autor de livros sobre Kinect e Windows Phone. O documento explica como o Kinect funciona para reconhecimento de voz, mãos e postura através de sensores e fluxos de esqueleto, bem como técnicas para detecção de gestos.
O documento descreve a evolução dos jogos eletrônicos desde as primeiras ideias na década de 1950 até os jogos modernos. Ele destaca marcos como Spacewar em 1961, o primeiro console Odyssey e o jogo Pong na década de 1970, Pac-Man e Donkey Kong na década de 1980, e o crescimento da indústria dos videogames nas décadas seguintes com franquias como Mario, Sonic, Resident Evil e outros.
A influência de jogos digitais na vida dos adolescentes.E-Proinfo
O documento discute os benefícios e riscos dos jogos digitais para adolescentes, listando problemas potenciais como vício, isolamento social e problemas de saúde, mas também destacando que podem desenvolver habilidades se usados com moderação.
Aprendendo no Meio Digital através Jogos Educativos Computacionais Valquiria Bauer
O documento discute como jogos educacionais no meio digital podem promover aprendizagem fora da sala de aula de forma lúdica e desafiadora, levando os alunos a continuarem aprendendo no seu cotidiano e durante as férias, proporcionando um crescimento mais rico do que apenas decorar informações. A citação reforça que quando o ensino é lúdico e desafiador, a aprendizagem se estende para além da escola.
1) O documento apresenta um manual sobre desenvolvimento de games dividido em 17 aulas. As aulas abordam tópicos como lógica de programação, Scratch, RPG Maker, Construct 2, entre outros.
2) A primeira aula introduz conceitos básicos de lógica de programação e apresenta o Scratch como ferramenta para ensinar lógica de maneira visual e interativa.
3) As aulas subsequentes ensinam sobre objetivos em games, interatividade, produção de RPGs, refinamento de projetos, batalhas, personalização,
O uso da metodologia iterativa na criação de videogames como sistemas emergentesJulia Stateri
Apresentação de artigo no SBgames 2013: "Este artigo pretende tornar clara a premissa de que os videogames podem ser vistos como sistemas complexos dos quais é possível observar a emergência de padrões comportamentais imprevistos quando da elaboração das regras e respectiva programação, sejam estes padrões o resultado de uma resposta à ação do jogador ou da interação social proporcionada pelos jogos coletivos. Parte da definição de complexidade segundo o pensamento de Edgar Morin, contrabalançado pela explicação de John Conway sobre sistemas complexos, passa à definição de emergência segundo a visão científica de Thomas Kuhn, para finalmente tratar dos videogames como possíveis sistemas emergentes. Ainda, oferece uma explicação sobre o uso da metodologia iterativa na criação de videogames enquanto sistemas complexos, com um modelo de prototipagem e avaliação cíclico que privilegia o refinamento e a eficácia do produto final."
Teoria do Processamento da Informação no DesignUTFPR
O documento discute a Teoria do Processamento da Informação no Design e como ela influenciou a compreensão do comportamento humano e o desenvolvimento de interfaces. Ele apresenta modelos como GOMS para prever o tempo de tarefas, análise da tarefa, avaliação heurística e testes de usabilidade para avaliar interfaces com foco no usuário.
1. O documento apresenta as credenciais acadêmicas e experiência profissional do professor João Marcos, incluindo pós-graduações, certificações e anos de experiência com diferentes linguagens de programação.
2. A aula irá apresentar o conteúdo de Algoritmos e Técnicas de Programação, incluindo explicações sobre o que são algoritmos, resolução do problema da Torre de Hanói, e introdução à linguagem de programação Portugol.
3. As formas de avaliação, bibliografias utilizadas e esclarec
O documento apresenta vários frameworks formais de design de jogos, incluindo MDA, DDE e E-MUnDi. Também discute outras ferramentas como beat charts, tokenização e matrizes de interação, átomos de habilidade e cadeias de habilidade. O objetivo é fornecer uma estrutura para planejamento e análise do design de jogos.
Apresentação - Extensão Virtual do Mundo Real: Integração Semântica e InferênciaLuciano Edson Mertins
Este documento discute a extensão do mundo real através de mundos virtuais 3D com semântica. Primeiro, apresenta a motivação e objetivos do trabalho, que são garantir semântica aos mundos virtuais 3D e propor um modelo para extrair novos conhecimentos através da inferência. Em seguida, revisa o estado da arte, incluindo tecnologias de mundos virtuais 3D, lógica de descrição, OWL, SWRL e ferramentas de raciocínio.
Jornada de Iniciação Científica 2008 - SumoCheckers & Dystopia Frameworkyankooliveira
O documento descreve um framework para aplicações cliente-servidor desenvolvido para testar técnicas de inteligência artificial em jogos eletrônicos, como um protótipo chamado Sumo Checkers que mistura jogadas por turnos e ação em tempo real. Redes neurais foram usadas para controlar oponentes virtuais, mostrando bons resultados no jogo por turnos, mas problemas na fase de ação em tempo real devido a inconsistências nos dados de treinamento.
É abordado na palestra conceitos, tecnicas, mercados e afins na criação de jogos em Java, assim como é apresentado o Projeto Parallax, uma engine em Java pioneira e unica no Brasil (No que se propõe).
O documento descreve as principais funções de uma engine de jogos, incluindo renderização, detecção de colisões, scripts, áudio, animação, física e inteligência artificial. Ele também explica componentes-chave como grafos de cena, pipeline gráfico e culling, além de discutir fatores a serem considerados na escolha de uma engine.
Cornucopia é um jogo de cartas gratuito mantido pela OWASP para ajudar times de desenvolvimento a identificar requisitos de segurança e gerar um backlog de segurança. O jogo usa naipes de cartas para descrever ataques comuns e ajuda os jogadores a pontuarem cartas que representem possíveis vulnerabilidades em seu sistema.
Palestra Apresentando Python e Suas AplicaçõesMarcos Thomaz
Python é uma linguagem de programação de alto nível, interpretada e interativa. Foi criada por Guido van Rossum no início dos anos 1990 e atualmente está na versão 3.4.1. Pode ser usada para diversos fins como desenvolvimento web, ciência, inteligência artificial, entre outros. A linguagem é orientada a objetos, dinâmica e fortemente tipada.
O documento descreve o Arduino, uma plataforma de hardware livre para computação física. Ele discute como o Arduino permite "hardware hacking" para todos através de pinos genéricos, microcontroladores baratos e código aberto. Também apresenta exemplos de uso do Arduino na educação e projetos, assim como o Coding Dojo, um treino de programação coletivo e divertido usando o Arduino.
O documento discute a ideia inicial de um jogo sobre organização espacial, com o proponente fazendo várias perguntas para esclarecer melhor os detalhes do jogo. O foco é entender como as mecânicas de organização e otimização espacial poderiam ser implementadas em um jogo eletrônico.
Algoritmos de Percurso Aplicados à RobóticaLucas Oliveira
Este documento descreve um projeto que aplica algoritmos de busca à robótica usando um robô ActivityBot. O objetivo era mapear um ambiente controlado e usar algoritmos como DFS, BFS e Dijkstra para encontrar o caminho ótimo de volta ao ponto inicial evitando obstáculos. Os resultados mostraram que o BFS e Dijkstra foram mais eficientes ao encontrar o caminho mais curto com menos curvas.
Este documento apresenta um resumo de uma oficina de programação para crianças utilizando o Scratch. A oficina ensina sobre o que é o Scratch, como programar, criar animações e jogos. As aulas incluem uma visão geral do Scratch, programação básica, criação de um jogo do tipo Pacman e publicação dos projetos na internet.
[Jose Ahirton Lopes] Inteligencia Artificial - Uma Abordagem VisualAhirton Lopes
O documento discute os conceitos e aplicações da inteligência artificial e aprendizagem profunda, incluindo redes neurais convolucionais, recorrentes e autoencoders. Também aborda tópicos como deep learning, hardware para IA, conclusões e desafios futuros.
O documento discute a diferença entre homens e meninos no desenvolvimento de sistemas para o mundo real. Homens não se preocupam apenas com a estética do código, mas também com aspectos como realidade, administrabilidade, disponibilidade, debugabilidade, escalabilidade e performance no runtime. Falhas inevitavelmente ocorrerão e sistemas precisam ser projetados para lidar com elas.
O documento apresenta uma aula introdutória sobre o Scratch, abordando seus conceitos, funcionalidades, motivos para uso, instalação, interface, comandos, e uma atividade prática para criar um projeto onde o personagem se movimenta na tela.
Este documento descreve um projeto de desenvolvimento de um jogo web do gênero RPG. O jogo tem como objetivo principal contar a história de um jovem que sai em busca da filha do rei. O documento discute aspectos como análise de requisitos, tecnologias, ambientação, personagens e considerações finais sobre o desenvolvimento do jogo em HTML5.
Semelhante a Inteligência Artificial em Jogos Eletrônicos (20)
O documento discute as tendências da era da mobilidade, incluindo o domínio do Android no mercado de smartphones, o crescimento do iOS e a aposta na plataforma Windows Phone. Também aborda o mercado de tablets liderado pelo iOS e o crescimento do Android, assim como as novidades do HTML5 e dos sistemas Android, iOS e Windows 8.
Desenvolvimento de Apps e Games para iOS - Parte 2Erisvaldo Junior
O documento introduz o desenvolvimento de aplicativos para iOS, cobrindo a história do iPhone, iPad e iOS, as ferramentas de desenvolvimento como Xcode e Interface Builder, e conceitos fundamentais como Model-View-Controller. Ele também demonstra um exemplo "Olá Mundo" para começar a desenvolver aplicativos iOS.
Desenvolvimento de Apps e Games para iOS - Parte 1Erisvaldo Junior
Este documento apresenta uma introdução ao Objective-C, incluindo como configurar o ambiente de desenvolvimento, declaração de classes, métodos, gerenciamento de memória, propriedades e categories.
Desenvolvimento de apps e games para android parte 8Erisvaldo Junior
O documento discute o desenvolvimento de aplicativos e jogos para Android, focando em três tópicos: 1) controladores para ler arquivos XML e obter conteúdo de redes sociais, 2) serviços web RESTful e como consumi-los em aplicativos Android, 3) provedores de conteúdo e envio de SMS.
Desenvolvimento de Apps e Games para Android - Parte 7Erisvaldo Junior
O documento fornece instruções sobre como desenvolver um leitor de feeds RSS para Android usando uma arquitetura MVC. Resume as principais classes do aplicativo: Modelo (Feed, Artigo), Visão (Listas de Feeds e Artigos), Controle (NewsDB para banco de dados, RSSHandler para parsing). Explica também como recuperar dados do feed e armazená-los no banco para exibição na interface do usuário.
Desenvolvimento de Apps e Games para Android - Parte 6Erisvaldo Junior
O documento discute o uso do BackupManager para armazenar dados em nuvem, como SharedPreferences, e fornece um exemplo de como implementá-lo. Também aborda o uso do SQLiteOpenHelper para criar e gerenciar bancos de dados SQLite em apps Android.
Desenvolvimento de Apps e Games para Android - Parte 5Erisvaldo Junior
O documento discute vários tópicos sobre desenvolvimento para Android, incluindo:
1) Armazenamento de logs e internacionalização de aplicativos
2) Diferentes opções para armazenamento de dados em dispositivos Android
3) Uso de Intents para navegação entre activities e acesso a outros aplicativos
Desenvolvimento de Apps e Games para Android - Partes 6 e 7 (Preview)Erisvaldo Junior
O documento discute o uso do BackupManager no Android para armazenar dados na nuvem sem necessidade de banco de dados externo. Explica como usar o BackupManager com SharedPreferences para armazenar configurações e informações simples na nuvem e garantir que os dados não sejam perdidos mesmo após reinstalação do aplicativo. Também aborda brevemente o uso de banco de dados SQLite no Android.
Desenvolvimento de Apps e Games para Android - Parte 4Erisvaldo Junior
O documento resume conceitos importantes sobre interfaces gráficas, atividades, intents, internacionalização, armazenamento de dados e persistência em Android. Ele discute como criar views, dialogs e iniciar atividades; como lidar com logs, splash screens e intents; e como armazenar dados usando shared preferences, arquivos internos e externos e SQLite.
Desenvolvimento de Apps e Games para Android - Parte 3Erisvaldo Junior
O documento descreve a estrutura de um projeto Android, incluindo pastas como src/, res/, e arquivos como AndroidManifest.xml. Também discute layouts comuns como LinearLayout, RelativeLayout e TableLayout e como posicionar elementos visuais neles.
Desenvolvimento de Apps e Games para Android - Parte 2Erisvaldo Junior
O documento discute o desenvolvimento de aplicativos para Android. Resume o documento em 3 frases:
1) O Android lidera o mercado mundial de smartphones com 35% de quota em 2011, contra 19% do iOS.
2) O Google App Inventor permite criar aplicativos Android visualmente sem código.
3) O documento explica os principais componentes, layouts e primeiros passos para desenvolvimento de aplicativos para Android.
Desenvolvimento de Apps e Games para Android - Parte 1Erisvaldo Junior
O documento discute a arquitetura do Android, mercados de aplicativos móveis e o futuro da plataforma Android. Ele descreve os principais componentes da arquitetura do Android, como Applications, Application Framework, Libraries e Android Runtime. Também discute as principais versões do Android lançadas e novas funcionalidades como NFC, Google Wallet e Google TV.
O documento resume as principais versões e recursos do SDK para Java da Nokia para dispositivos Series 40, incluindo suporte a APIs como Gesture, Frame Animator, AudioOutputControl, TextEditor e CanvasGraphicsItem.
Este documento fornece instruções sobre como desenvolver aplicações móveis que armazenam dados de forma persistente usando o Record Management System (RMS) do JavaME. O RMS permite que dados sejam armazenados no dispositivo em formato binário usando Record Stores, que contêm unidades de armazenamento chamadas Records. A classe RecordStore fornece métodos para gerenciar registros, enquanto interfaces como RecordComparator e RecordFilter permitem ordenar e filtrar registros. Exemplos de código mostram como construir uma agenda móvel completa que lista, adiciona e
O documento apresenta padrões de projetos e APIs adicionais para desenvolvimento em JavaME. Inclui padrões como Cascading Menu, Wizard Dialog e Pagination, além de APIs como LWUIT, J2ME Polish, Floggy e Microlog. O objetivo é fornecer recursos adicionais para aplicações móveis na plataforma JavaME.
O documento apresenta padrões de projetos e APIs adicionais para desenvolvimento em JavaME. Inclui padrões como Cascading Menu, Wizard Dialog e Pagination, além de APIs como LWUIT, J2ME Polish, Floggy e Microlog. O objetivo é fornecer recursos adicionais para aprimorar aplicações móveis em JavaME.
Este documento fornece instruções sobre como desenvolver aplicações móveis que armazenam dados de forma persistente usando o Record Management System (RMS) do JavaME. O RMS permite que dados sejam armazenados no dispositivo e recuperados mesmo depois de desligado. Ele usa Record Stores para armazenar dados em formato binário em unidades chamadas Records. A documentação descreve as classes e interfaces do RMS e fornece exemplos de código de uma agenda que usa o RMS para listar, adicionar e remover contatos de forma persistente.
O documento apresenta a API Generic Connection Framework (GCF) do JavaME, responsável por suportar diversos tipos de conexão em dispositivos móveis. A GCF define interfaces e classes para conexões baseadas em pacotes e streams. O documento também mostra exemplos de código para enviar, receber dados e imagens usando a GCF.
Este documento apresenta uma introdução à API de baixo nível do JavaME, descrevendo suas principais classes como Canvas e Graphics para desenho na tela de dispositivos móveis. Ele também mostra exemplos básicos de como usar essas classes para criar interfaces simples e sprites animados.
O documento introduz a Game API do JavaME, descrevendo suas principais classes como GameCanvas, Layer, Sprite e TiledLayer. Explica como desenvolver jogos 2D para dispositivos móveis usando essas classes, como gerenciar frames e animações com Sprite e criar mapas com TiledLayer. Por fim, mostra como construir um loop básico de jogo e apresenta a ferramenta Game Builder.
Em um mundo cada vez mais digital, a segurança da informação tornou-se essencial para proteger dados pessoais e empresariais contra ameaças cibernéticas. Nesta apresentação, abordaremos os principais conceitos e práticas de segurança digital, incluindo o reconhecimento de ameaças comuns, como malware e phishing, e a implementação de medidas de proteção e mitigação para vazamento de senhas.
Este certificado confirma que Gabriel de Mattos Faustino concluiu com sucesso um curso de 42 horas de Gestão Estratégica de TI - ITIL na Escola Virtual entre 19 de fevereiro de 2014 a 20 de fevereiro de 2014.
As classes de modelagem podem ser comparadas a moldes ou
formas que definem as características e os comportamentos dos
objetos criados a partir delas. Vale traçar um paralelo com o projeto de
um automóvel. Os engenheiros definem as medidas, a quantidade de
portas, a potência do motor, a localização do estepe, dentre outras
descrições necessárias para a fabricação de um veículo
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...Faga1939
Este artigo tem por objetivo apresentar como ocorreu a evolução do consumo e da produção de energia desde a pré-história até os tempos atuais, bem como propor o futuro da energia requerido para o mundo. Da pré-história até o século XVIII predominou o uso de fontes renováveis de energia como a madeira, o vento e a energia hidráulica. Do século XVIII até a era contemporânea, os combustíveis fósseis predominaram com o carvão e o petróleo, mas seu uso chegará ao fim provavelmente a partir do século XXI para evitar a mudança climática catastrófica global resultante de sua utilização ao emitir gases do efeito estufa responsáveis pelo aquecimento global. Com o fim da era dos combustíveis fósseis virá a era das fontes renováveis de energia quando prevalecerá a utilização da energia hidrelétrica, energia solar, energia eólica, energia das marés, energia das ondas, energia geotérmica, energia da biomassa e energia do hidrogênio. Não existem dúvidas de que as atividades humanas sobre a Terra provocam alterações no meio ambiente em que vivemos. Muitos destes impactos ambientais são provenientes da geração, manuseio e uso da energia com o uso de combustíveis fósseis. A principal razão para a existência desses impactos ambientais reside no fato de que o consumo mundial de energia primária proveniente de fontes não renováveis (petróleo, carvão, gás natural e nuclear) corresponde a aproximadamente 88% do total, cabendo apenas 12% às fontes renováveis. Independentemente das várias soluções que venham a ser adotadas para eliminar ou mitigar as causas do efeito estufa, a mais importante ação é, sem dúvidas, a adoção de medidas que contribuam para a eliminação ou redução do consumo de combustíveis fósseis na produção de energia, bem como para seu uso mais eficiente nos transportes, na indústria, na agropecuária e nas cidades (residências e comércio), haja vista que o uso e a produção de energia são responsáveis por 57% dos gases de estufa emitidos pela atividade humana. Neste sentido, é imprescindível a implantação de um sistema de energia sustentável no mundo. Em um sistema de energia sustentável, a matriz energética mundial só deveria contar com fontes de energia limpa e renováveis (hidroelétrica, solar, eólica, hidrogênio, geotérmica, das marés, das ondas e biomassa), não devendo contar, portanto, com o uso dos combustíveis fósseis (petróleo, carvão e gás natural).
1. UNIVERSIDADE FEDERAL DA PARAÍBA
CENTRO DE CIÊNCIAS EXATAS E DA NATUREZA
Grupo: Bruno Marinho
Erisvaldo Júnior
Josemar Barrêto
Professora: Natasha Queiroz
2. Objetivo ROTEIRO
Introduzir e demonstrar Introdução
as principais técnicas de
IA aplicadas em jogos Técnicas de IA para jogos
acadêmicos e comerciais.
Exemplos Práticos
O Estado da Arte
Considerações Finais
3.
4. Inteligência Artificial em Jogos
Existem diversas interpretações
para o que é considerada IA nos
jogos eletrônicos.
Determinística X
Não-Determinística
Utilizaremos uma definição ampla,
considerando a Game AI uma
"weak AI". Principais Técnicas
Pela nossa definição, qualquer
técnica que forneça a ilusão de
O Futuro
inteligência em um nível
apropriado, tornando o jogo mais
imersivo, desafiador e divertido,
será considerado Game AI.
5. Determínistica X Não-Determinística
• Técnicas fáceis de implementar, • Técnicas difíceis de implementar,
entender e testar; entender e testar;
• Rápidas, quando comparadas às • Lentas, quando comparadas às
técnicas não-determinísticas; técnicas não-determinísticas;
• Previsíveis. Com o passar do • Imprevisíveis. O comportamento
tempo, o jogador é capaz de prever do NPC pode variar de acordo com
com exatidão o comportamento as ações do jogador, aumentando
do NPC, diminuindo a diversão e a diversão e longevidade do jogo.
longevidade do jogo.
6. Principais Técnicas
• Cheating; • Rules-based AI Systems;
• Finite State Machines; • A-Life techniques;
• Fuzzy Logic; • Entre outras.
•Pathfinding;
7. O Futuro
• O próximo grande passo em IA • Alguns jogos comerciais, nos
para jogos é o APRENDIZADO; últimos anos, destacaram-se por
uso de IA não-determinística,
marcando um novo patamar na IA
• Uso cada vez mais intensivo de IA
dos jogos eletrônicos, tais como:
não-determinística;
Creatures, Black & White,
Battlecruiser 3000AD, Dirt Track
• Foco maior na inteligência dos Racing, Fields of Battle e Heavy
jogos, já que a mesma não vem Gear.
acompanhando a notória evolução
nos gráficos.
8.
9. Chasing and Evading
•O problema de Chasing and
Evading se divide em duas partes: • Existem diversas formas de implementar
primeiro, define-se qual dos dois se Chasing/Evading, da mais simples até a
deve fazer. Segundo, executa-se o mais complexa;
algoritmo responsável pelo
movimento; •Uma técnica de Chasing/Evading pode ser
implementada em um mundo contínuo ou
• Pode-se adicionar uma terceira em um mundo tile-based, pouco diferindo
parte no problema, que é o desvio de no código;
obstáculos;
• Dependendo da necessidade do jogo,
• Agora, focaremos na segunda parte escolhe-se a forma mais simples possível
do problema, que é efetuar, de fato, que possa atender aquela situação
a perseguição ou fuga. específica.
14. Pattern Movement
• Muito utilizado para simular
• Arrays de coordenadas podem ser
movimentações complexas dos utilizados para definir as posições-chave do
NPCs, mas que na verdade são pré- movimento;
determinadas;
•Vários padrões podem ser carregados em
• A movimentação do NPC ocorre situações diferentes, fazendo com que a
segundo um determinado padrão movimentação fique variada e pareça de
grande complexidade;
previamente definido;
• Pelo fato de ser uma técnica
• Utilizado na maioria dos jogos, determinística, pode se tornar previsível,
dos mais simples aos mais diminuindo a diversão e longevidade do
complexos; jogo.
17. Basic Pathfinding andWaypoints
• Existem diversas técnicas de
Pathfinding e a utilização de uma delas
depende de uma série de fatores, tais
como: • Para a maior parte dos problemas de
• O destino é estático ou Pathfinding, existe um algoritmo
móvel? bastante conhecido, chamado A*;
• Existem obstáculos no
caminho?
•Em alguns casos, principalmente nos
• Se existem obstáculos,
mais simples, o A* não é a melhor
esses obstáculos são
escolha. Esses casos serão abordados a
móveis?
seguir.
• Como é o terreno?
• O caminho mais curto é
sempre a melhor solução?
26. Scripted AI and Scripting Engines
• Tratam-se de linguagens de
programação extremamente simples que • Os scripts podem ser lidos e executados
são utilizadas para moldar tarefas quando o jogo for iniciado ou durante o
específicas do jogo; próprio jogo, quando um determinado
evento é acionado;
• Podem ser utilizadas pelos
desenvolvedores no momento da •Com os scripts, pode-se alterar atributos,
produção do jogo bem como por comportamentos e respostas dos NPCs,
jogadores após o jogo ter sido lançado, bem como lidar com eventos do jogo;
visando a sua expansão;
•O jogo se torna extremamente expansível
• Pode utilizar uma linguagem de script e manutenível, podendo ser alterado
apropriada, como Lua ou Python, ou ter significativamente sem necessidade de se
uma sintaxe específica para o jogo; desenvolver uma nova versão.
29. FiniteState Machines
• Máquinas de Estados Finitos são
estruturas lógicas compostas por um
conjunto de estados e um conjunto
de regras de transição entre esses
estados;
• No caso dos jogos, são bastante
utilizadas para efetuar o controle do
comportamento de agentes
inteligentes;
• Os dados de entrada e saída, nesse
caso, são eventos e outros sinais
importantes do jogo;
36. Fuzzy Logic
• “A essência da lógica difusa é que
tudo é uma questão de níveis” - Lofti
Zadeh, criador da teoria dos conjuntos
difusos. Aplicações em
•A lógica difusa procura estender a jogos:
lógica booleana, aplicando à ela níveis
de verdade. Navegação de
•Ao invés de 0 ou 1, verdadeiro ou unidades através
falso, a lógica difusa afirma que
tudo é verdade, no seu respectivo de obstáculos,
nível.
waypoints, etc.
•“Sistemas baseados em regras difusas
requerem de 50% a 80% menos regras Controle de
do que sistemas baseados em regras
tradicionais para efetuarem as mesmas
decisão.
tarefas.” - Timothy Masters
38. Fuzzy Logic
Primeira etapa (fuzzification):
Mapear os inputs com valores reais para inputs fuzzy, usando
funções de associação.
Exemplo: uma função de associação para o peso de uma
pessoa.
39. Fuzzy Logic
Segunda etapa:
De posse dos inputs fuzzy, pode-se produzir algum output ou
conclusão combinando certas regras (fuzzy rules).
Uso de axiomas fuzzy:
As regras geram níveis de verdade para cada conjunto de
outputs.
40. Fuzzy Logic
Segunda etapa (Exemplo):
Criatura de um jogo decide se deve atacar um jogador:
Variáveis de entrada: distância, saúde da criatura e ranking do
jogador.
41. Fuzzy Logic
Segunda etapa (Exemplo):
Variáveis de saída (ações): fugir, atacar ou fazer nada.
Algumas possíveis regras:
Output gerado:
42. Fuzzy Logic
Terceira etapa (defuzzification):
Necessária quando se exige um resultado real de um
processamento fuzzy.
Método simples: atribuir valores às variáveis de saída e calcular
a média ponderada.
Exemplo anterior: valor -10 para fugir, 1 para fazer nada e 10
para atacar.
Resultado:
43. Rule-BasedAI
Sistemas baseados em regras consiste em um conjunto
de regras if-then que são usadas para fazer inferências e
tomar decisões.
Possuem dois componentes:
Memória de trabalho;
Armazena fatos ou assertivas feitas pelas regras.
Memória de regras ou simplesmente regras.
Contém regras if-then que operam sobre os fatos
armazenados na memória de trabalho.
44. Rule-BasedAI
Exemplo: descobrir árvore tecnológica de um oponente em um jogo de
estratégia.
Árvore tecnológica:
45. Rule-BasedAI
Inferência pode ser de dois tipos:
Encadeamento para a frente (Forward chaining):
Fase 1: casamento de regras aos fatos atuais.
Fase 2: resolução de conflitos de regras.
Fase 3: executar a regra.
Encadeamento para trás (Backward chaining):
Ao invés de tentar casa a parte if das regras com os fatos,
tenta-se casar a parte else.
A partir daí, tenta-se inferir quais regras foram acionadas
para se atingir aquele fato.
É recursiva e de difícil implementação.
46. Basic Probability
Usado para diversos fins em jogos:
Inserir aleatoriedade;
Calcular probabilidades de acerto, etc;
Definir habilidades de personagens;
Inserir probabilidades em transições de
estado;
Adaptabilidade e tomada de decisões.
47. Basic Probability
Dado um evento E que possa ocorrer de n maneiras dentro de um experimento
que possui N resultados possíveis (espaço amostral N), define-se a probabilidade
de E como:
P(E) = n/N
Propriedades:
0 <= P(A) <= 1;
Se A é o espaço amostral, então P(A) = 1;
P(A') = 1 – P(A);
Se A e B são mutuamente exclusivos, P(A U B) = P(A) + P(B);
Se A e B não são mutuamente exclusivos,
Probabilidade condicional:
Fórmula de Bayes:
49. Bayesian Networks
Exemplo de inferência usando rede bayesiana (NPC decidir se abre um baú em
procura de tesouro, dado que ele pode estar ou não fechado e/ou com
armadilha):
P(armadilha)
Verdadeiro Falso
PT 1 - PT
Rede Bayesiana
P(fechado | armadilha)
Armadilha Verdadeiro Falso
verdadeiro PLt 1 - PLt
falso PLf 1 - PLf
Usando a Fórmula de Bayes, tem-se que:
50. Bayesian Networks
Exemplo de inferência usando rede bayesiana (NPC decidir se abre um baú em
procura de tesouro, dado que ele pode estar ou não fechado e/ou com armadilha):
Digamos que um NPC tenha experimentado abrir 100 baús e obteve
os seguintes resultados: 37 baús tinham armadilhas. Destes, 29
estavam fechados. Dos 63 baús que não tinham armadilhas, 18
estavam fechados. Temos então as seguintes probabilidades:
Então, se um NPC notar que o baú está fechado, temos a seguinte
probabilidade de que este baú contenha uma armadilha:
A inferência estatística melhora o palpite do NPC, simulando uma
aprendizagem.
51. Bayesian Networks
As tabelas de probabilidade crescem
exponencialmente, de acordo com o número de
possíveis valores das variáveis ou de acordo com o
número de nodos parentes, tornado-as
computacionalmente inviável.
Redes bayesianas para usos em jogos
devem ser simples.
52. Neural Networks
Em termos intuitivos, Redes Neurais Artificiais
(RNAs) são modelos matemáticos inspirados nos
princípios de funcionamento dos neurônios
biológicos e na estrutura do cérebro.
Estes modelos têm capacidade de adquirir,
armazenar e utilizar conhecimento experimental.
Buscam simular computacionalmente habilidades
humanas tais como aprendizado, generalização,
associação e abstração.
53. Neural Networks
ESTRUTURA DE UMA REDE NEURAL
camada de entrada: em que as unidades recebem os padrões.
a camada intermediária: onde é feito processamento e a
extração de características.
camada de saída: que conclui e apresenta o resultado final.
Quanto maior o número de camadas, melhor a capacidade de
aprendizado.
54. Neural Networks
Aprendizagem de Estruturas de Redes Neurais
Existem, basicamente, 3 tipos de aprendizado nas redes neurais artificiais:
Supervisionado: neste tipo, a rede neural recebe um conjunto de entradas
padronizados e seus correspondentes padrões de saída, onde ocorrem
ajustes nos pesos sinápticos até que o erro entre os padrões de saída
gerados pela rede tenham um valor desejado;
Não-supervisionado: neste tipo, a rede neural trabalha os dados de forma a
determinar algumas propriedades dos conjunto de dados. A partir destas
propriedades é que o aprendizado é constituído;
Híbrido: neste tipo ocorre uma "mistura" dos tipos supervisionado e não-
supervisionado. Assim, uma camada pode trabalhar com um tipo enquanto
outra camada trabalha com o outro tipo.
55. Neural Networks
Aplicações para Redes Neurais em Jogos
Na área de jogos e de sistemas de
realidade virtual, as redes neurais
apresentam como característica principal
a capacidade de capturar
comportamentos e predisposições em
determinados padrões.
56. GeneticAlgorithms
•A idéia do desenvolvimento dos algoritmos genéticos
partiu dos conhecimentos da biologia, através da
teoria da evolução de Darwin, daí a denominação
desta abordagem de evolutiva;
•Nesta técnica, diversos indivíduos diferentes são
gerados aleatoriamente e somente os mais adaptados
sobrevivem. O fundamento básico desta técnica é criar
indivíduos, pontuá-los de acordo com suas ações e,
após isso, escolher os mais aptos e fazer um
“cruzamento”, gerando assim novos indivíduos
possivelmente mais adaptados.
57. GeneticAlgorithms
Vantagens dos Algoritmos Genéticos
Uma de suas vantagens é a simplificação que permite na
formulação e solução de problemas otimização. Algoritmos
genéticos normalmente com descrições de entradas formadas
por cadeias de bits de tamanho fixo.
Eles possuem um paralelismo implícito decorrente da avaliação
independente de cada uma dessas cadeias de bits, ou seja,
pode-se avaliar paralelamente a viabilidade de um conjunto de
parâmetros para a solução do problema de otimização em
questão.
58. GeneticAlgorithms
Algoritmos Genéticos x Mundo Real
A idéia por trás do algoritmo
genético consiste em gerar,
através de regras específicas, um
grande número de cromossomos
(indivíduos), população, de forma
a promover uma varredura tão
extensa quanto necessária do
espaço de soluções. Vale
salientar que cada cromossomo
corresponde a um ponto no
espaço de soluções do problema
de otimização.
59. GeneticAlgorithms
O Algoritmo dos algoritmos genéticos
Observa-se que cada iteração do algoritmo
genético corresponde à aplicação de um conjunto de
quatro operações básicas: cálculo de aptidão (fitness
evaluation), seleção (selection), cruzamento (crossover) e
mutação (mutation). Ao fim destas operações cria-se
uma nova população, chamada de geração (generation)
que, espera-se, representa uma melhor aproximação da
solução (best solution) do problema de otimização que a
população anterior. A população inicial é gerada
atribuindo-se aleatoriamente valores aos genes (pense
um gene como um repositório que armazena algo) de
cada cromossomo. A aptidão bruta de um indivíduo da
população é medida por uma função de erro, também
chamada de função objetivo (fitness function) do
problema de otimização.
A aptidão bruta é em seguida normalizada (aptidão normalizada), para permitir
um melhor controle do processo de seleção. Como critérios de parada do
algoritmo em geral são usados a aptidão do melhor indivíduo em conjunto com a
limitação do número de gerações. Outros critérios podem envolver, por exemplo,
um erro abaixo de um valor especificado pelo projetista para um determinado
parâmetro do problema.
60. GeneticAlgorithms
Algoritmos Genéticos em Jogos
Interessante em situações onde Os “melhores” irão
não é possível prever o sobreviver
comportamento do jogador;
Exemplo: Multiplayer RPG
É difícil criar NPCs para todas as
situações; O jogador escolhe seu
personagem: cavaleiro,
Os NPCs se adaptam ao longo do mágico, etc
jogo;
O NPC tem que se adaptar
Inicia-se com uma população
aleatória; para enfrentar o adversário
61.
62. Pac-Man
Chasing and
Evading
Pathfinding
Finite State
Machine
63. SilvesterMob PONTOS
ENTIDADE
CARDEAIS
•O que é;
Campo,
Planície, Conceitos LIMITE
CLASSE E
•Proposta; Pântano e Geográficos LIMIAR
Floresta
•Objetivo.
DENSIDADE
E
INTENSIDADE
64. Características do SilvesterMob
Pântano Floresta
•Mapa com quatro
áreas geográficas;
•NPCs inteligentes;
•Salvar jogo;
•Itens, Inimigos e
Sistema de Batalha.
Campo Planície
65. Desafios do SilvesterMob
•"Desculpe, mas você não pode
entrar no Pântano sem botas.";
•"Vi um par de botas na Planície.
Siga na direção noroeste";
•"Existe uma espada na direção
sudeste, no limite do rio";
•"Em que área existe uma
densidade de árvores muito
grande?"
82. Referências
(BOURG, 2004) Bourg, David. Seemann,
Glenn. AI For Game Developers.
O’REILLY. 2004.
(SCHWAB, 2004) SCHWAB, Brian. AI
Game Engine Programming. Hingham:
Charles River Media. 2004.