Jogos em Inteligência Artificial

Slides:



Advertisements
Apresentações semelhantes
AULA 02 PROGRAMAÇÃO LINEAR INTEIRA
Advertisements

Software Básico Silvio Fernandes
IA Importância da IA em jogos Aplicações.
Vicente Vieira Filho Orientadora: Patrícia Tedesco
Transmissão de pacotes
Amintas engenharia.
Informática na Educação
Palestras, oficinas e outras atividades
Raphael Gatti Thomás Bryan
Circuitos Lógicos e Organização de Computadores Capítulo 8 –Circuitos Seqüenciais Síncronos Ricardo Pannain
Rational Unified Process
Gerenciamento de Projetos
Protótipo de Simulador de Elevadores
UNIVERSIDADE LUTERANA DO BRASIL COMUNIDADE EVANGÉLICA LUTERANA SÃO PAULO Reconhecida pela Portaria Ministerial nº 681 de 07/12/89 – DOU de 11/12/89 Campus.
03/08/2011 Professor Leomir J. Borba- –
Engenharia de Software
Técnicas de orçamento de capital
Dispositivos lógicos programáveis (DLP)
João Carlos Porto Orientadora: Prof.ª Dr.ª Junia Coutinho Anacleto 26/03/2010 Projeto de interceo.
Capítulo 1 Introdução 1.1 O que é um sistema operacional
Circuitos Lógicos Sequenciais
Amaury Patrick Gremaud Marco Antonio Sandoval de Vasconcellos
1 Complexidade de Algoritmos Complexidade de pior caso Complexidade de melhor caso de uso bem menos freqüente em algumas situações específicas Complexidade.
1 MODELAGEM COM A UML (UNIFIED MODELING LANGUAGE) BREVE HISTÓRICO CARACTERÍSTICAS CONCEITOS DE PROGRAMAÇÃO ORIENTADA A OBJETOS MODELAGEM DE ANÁLISE E DE.
DIAGRAMA DE ATIVIDADES
IA em jogos modelagem de comportamento de personagens
6. Estruturas p/ Sistemas Discretos
Estudo de Caso 1: UNIX e LINUX
Caro Professor, Este material de apoio é gratuito e para uso exclusivo em sala de aula. Não pode ser comercializado. Ele não contém vírus ou qualquer instrumento.
Curso Sistemas de Informação I Disciplina: Arquitetura de Software
Auditoria de Segurança da Informação
Aula 6 Subprogramas Universidade do Vale do Rio dos Sinos
Professor Victor Sotero
Introdução a Programação Orientada a Objetos
INF 1771 – Inteligência Artificial
Utilitários de Redes Prof. Andréa Chicri Torga Adaptações
I.A. – Inteligência Artificial
Aprendizado de Máquina Aula 13
Inteligência Artificial
Cinemática Plana de um Corpo Rígido Cap. 16
Object Oriented Software Construction (MEYER, Bertrand)
Universidade São Marcos Curso: Gestão de Negócios Internacionais
Algoritmos Culturais.
1 António Arnaut Duarte. 2 Sumário: primeiros passos;primeiros passos formatar fundo;formatar fundo configurar apresentação;configurar apresentação animação.
Conversão de um NFA para um DFA com um exemplo
Salas de Matemática.
Estrutura de dados, pseudocódigo
MINISTÉRIO DO PLANEJAMENTO Projeto de Lei Orçamentária 2010 Ministro Paulo Bernardo Silva Brasília, 31 de agosto de 2009.
EXERCÍCIOS PARA GUARDA-REDES
Cinemática de uma Partícula Cap. 12
Arquitetura de computadores
GERENCIAMENTO DE REDES UTILIZANDO O PROTOCOLO SNMP
1.
Projeto de Banco de Dados
ENGA78 – Síntese de Circuitos Digitais
INF 1771 – Inteligência Artificial
1 2 Observa ilustração. Cria um texto. Observa ilustração.
Portugal: Convergência Real Para a União Europeia Abel Moreira Mateus Outubro 2000.
Capítulo 1 Introdução 1.1 O que é um sistema operacional
CALENDÁRIO SEXY Ele & Ela. CALENDÁRIO SEXY Ele & Ela.
1 A COMPUTAÇÃO MODERNA Valdemar W. Setzer Depto. de Ciência da Computação da USP
Resolução de sistemas de equações lineares
Rio Verde - Goiás - Brasil
Máquina de Turing Universal
Inteligência Artificial em Jogos Eletrônicos
GI GARP LEAN OFFICE Visão e Missão
Abr-17 Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto Fluxo de análise e projeto.
Aula 1 – Introdução a Redes de Computadores
UMA ESTRATÉGIA DE REDE NEURAL APLICADA À GAME ESTILO BEAT’EM UP Mendes,T.M. e Almeida, A.G. RESUMO O projeto consiste no desenvolvimento de um jogo 2D.
Evolução da Jogabilidade
Transcrição da apresentação:

Jogos em Inteligência Artificial Inteligência Artificial I Ricardo Borges Cícero Augusto Mauricio Volkweis Professora Andrea Konzen Torres - RS, Junho de 2003

Sumário Introdução 1 Objetivos 2 Histórico 3 Técnicas Atualmente Utilizadas Conclusão

Introdução

1 Objetivos Embutir uma inteligência simulada nos jogos através de técnicas de Inteligência Artificial (IA) Tornar o jogo mais real Por conseqüência, mais envolvente e desafiador para o jogador

2 Histórico Década de 60 Surgimento dos jogos de computador Versões para mainframes Principal preocupação era o visual Sem técnicas de IA Em Space War (1961), os jogadores se confrontavam em naves espaciais com interface em caracteres ASCII

2 Histórico Década de 70 Bom número de jogos em modo texto Também conhecidos como Multi User Dungeons (MDU’s) Primeiro sucesso comercial foi Pong (1972) Pong foi criado por Nolan Bushnell, fundador da Atari

2 Histórico Jogos que marcaram a década de 70: Breakout Space Invaders Asteroids Pac Man

2 Histórico Década de 80 Grande diversidade de jogos Destaque foi Donkey Kong, que deu origem ao personagem Mário de Shigeru Miyamato O sucesso de Mário Brothers (1984) fez de Mário o principal mascote da Nintendo

2 Histórico Década de 90 Melhoria na interface e interação depois do lançamento dos computadores de 16 bits Surgimento de alguns jogos de simulação 3D: Flight Simulator Wing Commander

2 Histórico Década de 90 Revolução na plataforma IBM PC com o lançamento de Doom pela ID Software (1993) Inovação tecnológica Perspectiva em primeira pessoa Evolução tanto na área gráfica como de IA

2 Histórico Década de 90 Duke Nuke em 3D é lançado com ferramenta de IA Extensível A ID Software lança Quake (1996) primeiro jogo em 3D real Desaceleração na aplicação de IA em relação a parte gráfica

2 Histórico Década de 90 Reaperbot, um oponente criado para ser usado em Quake dá novo impulso ao uso de IA em jogos O jogo Unreal (1998) lançado pela Epic Megagames mostrou avanço no uso de IA em jogos usando técnicas como: Finite State Machines Fuzzy State Machines IA Extensível

2 Histórico Atualidade Jogos com gráficos 3D avançados com nível razoável de aplicação de IA A IA do jogo passa a ter tanta importância quanto a parte gráfica Exemplos de jogos atuais: Diablo 2 Quake III: Arena Unreal Tournament

2 Histórico Atualidade Grandes orçamentos para produção de jogos Equipes normalmente compostas de: Projetistas de Jogo Projetistas de Fases Planejador de Software Arquiteto Chefe Gerente de Projeto Programadores Artistas Gráficos Músicos e Sonoplastas

3 Técnicas Atualmente Utilizadas Máquinas de Estados Finitos IA Extensível Técnicas de Busca Máquinas de Aprendizado Vida Artificial Kits de Desenvolvimento

3.1 Máquinas de Estados Finitos Baseadas em regras Implementação relativamente simples Técnica já consolidada no mercado Permite criar elementos com comportamentos relativamente complexos Foi utilizada no jogo Unreal Podem ser: Finite State Machines (FSM) Hierarchical Finite State Machines (HFSM) Fuzzy State Machines (FuSM)

3.1 Máquinas de Estados Finitos Normalmente representadas por um Diagrama de Transição de Estados Uma FSM possui Conjunto de estados Estado inicial Conjunto de entradas Conjunto de saídas Função de transição de estado

3.1 Máquinas de Estados Finitos A função de transição de estados recebe as entradas e o estado atual Retorna o conjunto de saídas e um novo estado que passa a ser o estado atual Entradas Saídas Estado Atual Estado Futuro

3.1 Máquinas de Estados Finitos Uma HFSM são FSM hierarquizadas Usadas para modelagem de comportamentos mais complexos

3.1 Máquinas de Estados Finitos As FuSM’s são baseadas em cadeias de Markov Pesos são associados aos estados e transições Regras são usadas para calcular pesos de estados futuros 3 % 8

3.2 IA Extensível Iniciada com Duke Nuke em 3D e Quake O jogador pode criar seus próprios personagens ou alterar o nível e IA dos existentes É feita através de uma linguagem de script A forma do script pode ser semelhante a linguagens como C e C++ ou até conjuntos de ordens passadas diretamente ao elemento do jogo __________ ________ ____

3.2 IA Extensível Exemplo de script: IF !Range(NearestEnemyOf(Myself),3) and Range(NearestEnemyOf(Myself),8) THEN EquipMostDamagingMelee() AttackReevalutate(NearestEnemyOf (Myself),60)

3.3 Técnicas de Busca Entre os algoritmos existentes, o A-star (A*) é o mais utilizado Utilizado para encontrar um melhor caminho a partir da posição atual Foi aplicado em Age of Empires II: The Age of Kings para análise de terrenos Utiliza uma função heurística para calcular a estimativa de custo de cada rota

3.4 Máquinas de Aprendizado Estão começando a ter mais espaço em jogos No jogo Magic & Mayhem, são gravados dados das jogadas para que o sistema evite usar técnicas com baixo grau de efetividade Entre os enfoques com maior embasamento científico estão: Redes Neurais Algoritmos Genéticos

3.4 Máquinas de Aprendizado Battle Cruiser: 3000 AD foi um dos primeiros jogos a usar redes neurais Foi desenvolvida uma linguagem especialmente para implementar a IA do jogo Denominada Artificial Intelligence and Logistics (AILOG), usava uma rede neural para efetuar tomadas de decisão e busca das melhores rotas AILOG também implementa alguns conceitos de lógica difusa (fuzzy logic)

3.4 Máquinas de Aprendizado Cloak Dagger and DNA (1995) foi um dos primeiros jogos comerciais a utilizar algoritmos genéticos O jogo vêm com quatro “seqüências de DNA” Estas seqüências são conjuntos de características comportamentais dos inimigos A medida que cada um desses conjuntos participa de batalhas recebe pontos pelo desempenho Os melhores conjuntos são combinados gerando novos e melhores comportamentos

3.5 Vida Artificial Também conhecida como A-Life (do inglês Artificial Life) Tem sua origem no estudo de seres vivos do mundo real Tenta simular este comportamento usando uma variedade de técnicas de IA combinadas

3.5 Vida Artificial Estas técnicas são interligadas em uma hierarquia de tomada de decisão Foi utilizada nos jogos The Sims e Creatures

3.6 Kits de Desenvolvimento Software Development Kits (SDK’s) ou simplesmente toolkits Bibliotecas que implementam uma ou mais técnicas de IA Podem ser específicos para jogos ou mais genéricos Agilizam o desenvolvimento da aplicação Exemplos: Motivate Spark! DirectIA

Conclusão