Técnicas de Sistemas Inteligentes Aplicadas ao Desenvolvimento de Jogos de Computador Dissertação de Mestrado Tese de Mestrado apresentada à Faculdade de Engen- haria Elétrica e de Computação como parte dos requi- sitos para obtenção do título de Mestre em Engenharia Elétrica. Áreadeconcentração: EngenhariadeComputação Autor: VictorKazuoTatai BolsistaFapespProcesso00/07631-6 Orientador: Dr. RicardoRibeiroGudwin RESUMO O uso de novas técnicas de sistemas inteligentes em jogos de computador promete am- pliar a interatividade, jogabilidade e escopo dos mesmos, provendo tanto oponentes quanto parceiros mais inteligentes, tornando-os jogadores independentes mas capazes de trabalhar em grupo, seguir objetivos, e de aprenderem. Nessa tese realizamos uma análise do estado daartenoqueconcernejogosdecomputadoresistemasinteligentes,apresentandotambémo trabalho feito para o controle de bots (jogadores automatizados para jogos em primeira pes- soa tridimensionais) utilizando novas técnicas de sistemas inteligentes ainda não exploradas nessa área. Por outro lado, esta tese visa também apresentar uma nova ferramenta formal- computacional,asRP-Nets,demonstrandosuautilizaçãoemumaaplicaçãotemporealcomo oéumjogodecomputador. Palavras-chave: sistemasinteligentes,jogosdecomputador,inteligênciaartificial,RP-Nets, semióticacomputacional. Abstract The use of novel intelligent systems techniques in computer games holds the promise to a whole new level in computer game interactivity and playability, widening the player´s rangeofpossibilitiesandfurtherenhancingthegamingexperience. Thesetechniquesmaybe used to control either intelligent opponents or friends, which should be capable of working independently, following objectives, working as a group and learning from experience. In this dissertation we provide an analysis of the state of the art in computer games under the intelligent systems perspective. We also describe the work developed in the control of bots (automated players on first-person three-dimensional games) using novel intelligent system techniques still not used on this area. This dissertation also introduces a new computational tool,RP-Nets,anddemonstratesitsuseincontrolofareal-timeapplication. Keywords: intelligent systems, computer games, artificial intelligence, RP-Nets, computa- tionalsemiotics. Agradecimentos São muitas as pessoas a agradecer neste trabalho, culminação de vários anos de estudo. Primeiramente,gostariadeagradeceràminhafamíliapelosuporteproporcionadoemtodasas horas,apoiando-meeprovendosempreumambientepropícioarealizaçãodeminhastarefas. Também gostaria de agradecer em especial a meu orientador, por ter me aceito no programa de mestrado e pelo direcionamento proporcionado. Gostaria também de agradecer a todos meus amigos, em especial ao Antônio e ao grupo de Semiótica Computacional, que colab- oraram não só em idéias mas também em companheirismo e distração nas horas de stress. Por fim agradeço ainda à FAPESP pela bolsa concedida e por acreditar em meu trabalho, e à UNICAMP por me acolher tanto durante a graduação quanto a pós-graduação durante os oitoanosmaisenriquecedoresdeminhavida. “Just work and no play made Jack a dumbboy.” Adágiopopularamericano. Índice 1 Introdução 1 1.1 Motivação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 DesenvolvimentodeJogosdeComputador . . . . . . . . . . . . . . . . . . . 3 1.3 Estruturadatese . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2 SistemasInteligentesemJogosdeComputador 7 2.1 MáquinasdeEstadosFinitoseScripts . . . . . . . . . . . . . . . . . . . . . 8 2.2 EstratégiasdeBuscaTradicionais . . . . . . . . . . . . . . . . . . . . . . . 10 2.2.1 Buscaemlargura . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2.2 Buscadecustouniforme . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2.3 Buscaemprofundidade . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.2.4 Buscabidirecional . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.2.5 Buscaheurística . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.2.6 Buscapormelhoriasiterativas . . . . . . . . . . . . . . . . . . . . . 14 2.2.7 Outros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.3 ComputaçãoEvolutiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.4 RedesNeuraisArtificiais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.4.1 Aprendizagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.4.2 Arquiteturas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.4.3 FunçõesdeAtivação . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.5 SistemasNebulosos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.6 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 ix ÍNDICE 3 JogosdeComputador: PanoramaTecnológico 26 3.1 ProdutosComerciais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.1.1 AçãoPrimeira/TerceiraPessoaTridimensionais . . . . . . . . . . . 27 3.1.2 Estratégia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 3.1.3 RPG’seAventura . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 3.1.4 Outros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 3.2 IniciativasAcadêmicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 3.2.1 Blumberg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 3.2.2 Reynolds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 3.2.3 TueTerzopoulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3.2.4 Funge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 3.3 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 4 RP-Nets 48 4.1 Definição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 4.2 Funcionamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 4.3 AnáliseeAplicações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 4.4 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 5 ModeloComputacional 63 5.1 ConsideraçõesPreliminares . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 5.2 OJogoCounter-Strike . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 5.3 DesenvolvimentodeBotsemCounter-Strike . . . . . . . . . . . . . . . . . . 70 5.4 Implementação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 5.4.1 PrimeiraArquitetura . . . . . . . . . . . . . . . . . . . . . . . . . . 75 5.4.2 SegundaArquitetura . . . . . . . . . . . . . . . . . . . . . . . . . . 84 5.4.3 Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 5.5 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 6 ResultadoseTrabalhosFuturos 97 ApêndiceA SitesWWWparaJogosReferenciados 100 x
Description: