Escolar Documentos
Profissional Documentos
Cultura Documentos
em
Informtica
da
Pontifcia
CURITIBA
MAIO / 2007
em
Informtica
da
Pontifcia
CURITIBA
MAIO / 2007
D419s
2007
ii
iii
iv
Agradecimentos
Meu primeiro agradecimento para o Professor Doutor Alessandro Koerich. Sem
dvida, alm de um exemplo como Professor, sua pacincia, profissionalismo, e,
principalmente, estmulos nos momentos difceis foram essenciais para o desenvolvimento
deste trabalho. Tambm agradeo a meu co-orientador Professor Doutor Fabrcio Enenbreck
pelas idias, crticas e pela coerncia em todos os momentos.
Registro meus agradecimentos, tambm, algumas pessoas e empresas que apoiaram
direta ou indiretamente minha vida acadmica e profissional nos ltimos anos: da PUCPR, os
Professores Marcos Shmeil, Edson Jos Pacheco, Marco Eleutrio, Henri Eberspcher e
Andreia Malucelli; da Continuum Entertainment, Alexandre Vrubel e demais companheiros;
do CEPIMC, os Professores Joo Batista da Rosa, Daniel Eggert, Gezelda de Moraes , Diogo
Domanski e Dbora Puppin. No posso furtar um agradecimento especial a meus alunos e ao
pessoal do TECPAR por participarem de testes com o prottipo de meu sistema.
A minha me Luci por dedicado toda sua vida a mim e por ter me ensinado a
importncia do estudo. A minha av Flvia pelas oraes e pelo carinho. Ao meu av
Sebastio pelo exemplo de vida e trabalho. A meu pai Dagoberto pela ajuda nos momentos
que precisei. Fica tambm minha gratido a Ccero e Ceclia pela presena alegre e constante.
Aos meus queridos amigos, Rafael Cavichioli, Juliana Dallagnol, Rafael Bardal, Adriane
Granatto e Luiz Cludio Guarita, cuja amizade foi essencial.
Devo irrestrito reconhecimento a minha amada esposa Daniele Bagatoli. Seu amor,
sua inteligncia, carinho e motivao so imprescindveis para minha vida.
SUMRIO
vi
vii
LISTA DE TABELAS
viii
LISTA DE FIGURAS
ix
LISTA DE ABREVIATURAS
ARG
BDI
Befief-Desire-Intention Crena-Desejo-Inteno
CAT
Case-Based Tactician
FPS
GDC
GOAP
GPL
GPS
HTN
IA
Inteligncia Artificial
JA
Jogador Automtico
MMOG
NPC
PBC
PDDL
RBC
RTS
SMS
RESUMO
Desde meados da dcada de 50, jogos tm sido utilizados para examinar e testar
conceitos em diversas reas da Inteligncia Artificial (IA). As primeiras pesquisas foram
baseadas em jogos clssicos como Damas e Xadrez que se caracterizam pela simplicidade das
regras e objetivos. Mais tarde, com o desenvolvimento dos primeiros jogos comerciais
diversas tcnicas foram aplicadas para simular uma inteligncia aos elementos da tela, sendo
que os jogos de estratgia destacam-se como os pioneiros na utilizao de tcnicas de IA e,
um campo de testes para a IA para ambientes em tempo real. O desempenho da IA dos jogos
de estratgia, entretanto, pobre para os padres humanos, no acompanhando a evoluo
apresentada pela IA de jogos clssicos.
Apresenta-se, neste trabalho, a criao de um jogador automtico para a classe dos
jogos de estratgia baseados em imprios (empire-based strategy games). Tal jogador
automtico foi construdo atravs de tcnicas de Planning (Planejamento), mais
especificamente Planejamento Baseado em Casos (PBC - Case-Based Planning). O jogo
escolhido para testes, chamado Promisance, um jogo multiplayer online no qual os
jogadores administram um imprio. Os planos realizados pelos jogadores humanos foram
armazenados em uma base de planos a partir da qual foram gerados jogadores automticos
que imitam as estratgias dos jogadores humanos. Os resultados experimentais mostram que
os jogadores automticos imitam as estratgias dos jogadores humanos de maneira
convincente, povoando o mundo do jogo com jogadores automticos semelhantes ao grupo de
jogadores humanos.
xi
INTRODUO
jogadas serem conhecidas por todos os jogadores envolvidos, no h o fator sorte envolvido.
Tais jogos podem ser classificados como jogos determinsticos de informao completa.
Outros jogos, porm, como Gamo e Banco Imobilirio inserem o fator sorte atravs
do uso de dados. Dessa forma, o nmero de ns da rvore de busca cresce em relao ao
nmero de possibilidades que o dado insere. Jogos deste tipo no deixam de ser classificados
como jogos de informao completa. Entretanto, so classificados como jogos nodeterminsticos.
Por outro lado, existe uma classe de jogos nos quais os jogadores possuem
informaes parciais referentes ao estado do jogo, estes so jogos de informao parcial.
Exemplos de jogos de informao parcial so: poker, bridge, pif e batalha naval. Dentre os
jogos citados apenas o jogo de batalha naval no influenciado pela sorte. Reafirma-se,
assim, a dificuldade para aplicar uma abordagem de busca por fora bruta em diversos tipos
de jogos. Em um jogo de bridge, por exemplo, se cada carta possvel for considerada um n
da rvore de busca sero gerados 5,6x1044 ns no pior caso e 2,3x1024 ns no caso mdio
[SMI1998].
Alm da busca heurstica, outras tcnicas de IA tambm foram utilizadas. Em 1959,
Samuel aplicou conceitos de aprendizagem de mquina para a gerao de um jogador
automtico de damas [SAM1959]. Os resultados obtidos, inclusive, constituram as bases para
a Aprendizagem de Mquina como cincia, sendo que a maioria das idias desenvolvidas por
Samuel para a aprendizagem continua em uso e com grande aplicao na rea de game
playing [FR2000].
Outro exemplo de tcnica aplicada foi o trabalho de [NEW1972] na rea de
solucionadores gerais de problemas (GPS General Problem Solver). Alm de provar
teoremas em lgica e geometria, o GPS tambm foi aplicado em jogos de xadrez.
Alm das tcnicas j citadas, Redes Neurais e Agentes destacam-se entre as tcnicas
mais usuais aplicadas a jogos. Em menor escala, para Algoritmos Genticos e Case-Based
Reasoning tambm existem aplicaes em jogos. Na dcada de 90, segundo Schaffer
[SCH2001], destacaram-se as tcnicas como Simulao de Montecarlo e Aprendizagem por
Diferena Temporal.
Os principais marcos para a IA em jogos clssicos so as vitrias [SCH2001] e, at
mesmo, derrotas dos jogadores automticos. Em 1994, Chinook torna-se o primeiro programa
resolvidos,
ou seja, todas as
suas possibilidades so
discernveis
Tipo do Jogo
Estado atual do jogador automtico
Determinstico
Resolvido
Informao Completa
Go-Moku
Determinstico
Resolvido
Informao Completa
Qubic
Determinstico
Resolvido
Informao Completa
Nine mans Morris (Trilha ou
Determinstico
Resolvido
Moinho)
Informao Completa
Othello
Determinstico
Joga melhor que os seres
Informao Completa
humanos.
Damas
Determinstico
Joga melhor que qualquer ser
Informao Completa
humano vivo.
Gamo
Jogo com Sorte
Joga melhor que todos os seres
Informao Completa
humanos exceto cerca de 10.
Xadrez
Determinstico
Joga melhor que qualquer ser
Informao Completa
humano exceto cerca de 250.
Go
Determinstico
Joga pior que o melhor campeo
Informao Completa
de nove anos de idade.
Bridge
Determinstico
Joga pior que jogadores humanos
Informao Completa
medianos.
Tabela 1 - Desempenho de programas de computador em alguns jogos clssicos.[SMI1998].
Jogo de tabuleiro de duplas, tambm conhecido como Reversi. Em um tabuleiro de 8 x 8 peas, dois jogadores
se alternam de maneira a colocar uma pea de cada vez com o objetivo de transformar as peas do adversrio em
peas de seu time.
dificuldade. Alm de o jogo ter uma rvore de busca bastante profunda, os jogadores humanos
no sabem explicar o motivo de uma configurao ser boa ou ruim. A vantagem do ser
humano to significativa que existe um prmio de um milho de dlares para o primeiro
programa que vencer um campeo tailands jnior [THE2002].
Destaca-se, portanto, a necessidade da continuidade das pesquisas na rea de gerao
de jogadores automticos. O presente trabalho uma contribuio para esta continuidade. A
classe de jogos focalizada, porm, no pertence ao domnio dos jogos clssicos, mas ao
universo dos jogos exclusivamente para computador. Assim, torna-se importante uma sucinta
contextualizao desta rea.
1. 2
aplicadas para simular a inteligncia humana. Uma das primeiras estratgias perceptveis pelo
pblico em geral foi a IA dos fantasmas do jogo Pac-man. O algoritmo utilizado transmitia a
sensao que os fantasmas objetivavam a captura do jogador, perseguindo-o. Este
comportamento implementado atravs de regras. Entretanto, aps algumas partidas, era
perceptvel a previsibilidade de movimento dos fantasmas, pois as regras eram fixas e
simples. Pode-se afirmar, portanto, que os primeiros jogos no utilizavam tcnicas de IA
clssica, apenas tentavam transmitir uma iluso de inteligncia para o jogador.
Jogos de estratgia destacam-se como os pioneiros na utilizao de tcnicas de IA
[TOZ2002]. Tcnicas de pathfinding (busca de caminhos) foram caractersticas neste gnero
atravs da aplicao de algoritmos de busca como o A* [HAR1968]. A IA para jogos de
computador focou-se nesta rea por vrios anos devido ao fato que as restries quanto
velocidade de processamento e quantidade de memria exigida para a busca sempre foram
questes crticas a serem resolvidas. Como o processamento grfico era mais importante,
tcnicas de IA mais caras no poderiam ser aplicadas.
Aos poucos algumas tcnicas mais tradicionais foram utilizadas em gneros
especficos. Por exemplo, jogos de simulao como The Sims e Creatures utilizam conceitos
de vida artificial. FPSs (first-person shooters jogos de tiro em primeira pessoa) como Quake
aplicam mquinas de estado para representar o comportamento dos personagens. Mquinas de
estado do tipo Fuzzy, por sua vez, permitem mais profundidade e aleatoriedade no
comportamento dos personagens sendo utilizadas, tambm, em The Sims.
Um destaque na aplicao bem sucedida de tcnicas de IA, no caso, de Aprendizagem
de Mquina, Black & White2. Tal jogo foi projetado de forma a utilizar a IA como parte
integrante da jogabilidade. Dessa forma, o jogador controla um agente que possui capacidade
de aprender. O jogo merece uma explanao resumida por seu pioneirismo na aplicao
prtica de conceitos-chave de Aprendizagem de Mquina e Agentes. Embora em um jogo
comercial, geralmente, as decises de IA sejam fechadas, o projetista de sua IA disponibilizou
uma viso pessoal sobre a arquitetura utilizada no jogo em [EVA2001]. Os agentes do mundo
do jogo, representados por uma criatura semi-controlvel pelo jogador, deveriam preencher
dois requisitos: i) parecer pessoas, ou seja, serem psicologicamente plausveis, maleveis e
empticas; ii) deveriam ser teis para o jogador, auxiliando na resoluo de desafios no
mundo do jogo, sendo que para isso deveriam poder ser treinadas.
O primeiro requisito preenchido atravs da aplicao de uma arquitetura de agentes
BDI [RAO1995] (Befief-Desire-Intention Crena-Desejo-Inteno). Crenas referentes a
instncias de objetos individuais so representadas simbolicamente como uma lista de pares
atributo-valor, crenas sobre tipos de objetos so representadas atravs de rvores de deciso
e os desejos so representados atravs de perceptrons. Para fazer com que o agente seja
plausvel, h uma explanao clara durante o jogo dos motivos do agente possuir certas
crenas e desejos, sendo estas absorvidas atravs da percepo do ambiente por meio de seus
sentidos. Quanto maleabilidade, o agente tem capacidade de aprender atravs da
realimentao do jogador, atravs de comandos explcitos, observando as atitudes dos outros
agentes e refletindo sobre a sua prpria experincia. Para permitir estes tipos de aprendizagem
a criatura constri dinamicamente uma rvore de deciso para minimizar a entropia do
conhecimento adquirido a partir dos atributos observveis do mundo. Tal tarefa feita
baseando-se no trabalho de Quinlan com o sistema ID3 [QUI1986]. Para que o jogador
pudesse ter empatia pelas criaturas objetivou-se assegurar que estas tivessem empatia
recproca por quem as controla. Dessa forma, a mente da criatura inclui um modelo
simplificado da mente do jogador, construdo atravs das observaes do que ele est fazendo.
Esse modelo mental foi projetado atravs de uma representao com estruturas de dados
2
God game no qual o jogador faz o papel de um deus que possui seu avatar na terra e deve control-lo de forma
a interagir com seus sditos. O avatar aprende conforme as recompensas dadas a ele.
1. 3
DESAFIO
Um dos gneros de jogo de maior sucesso o jogo de estratgia, principalmente, o
sub-gnero da estratgia em tempo real (RTS Real Time Strategy). O desempenho da IA dos
RTSs, entretanto, pobre para os padres humanos, no acompanhando a evoluo
apresentada na IA de jogos clssicos. Tal atraso se deve a uma srie de motivos, segundo Buro
[BURO2003]:
O processamento grfico, com o advento das placas de vdeo 3D, foi movido
do processador central para um processador exclusivo. Dessa forma, mais
processamento pode ser destinado a IA. Tal mudana d mais liberdade ao
pesquisador para justificar a implementao de tcnicas de IA mais caras
computacionalmente.
Por outro lado, a indstria tambm passou a respeitar mais as tcnicas provenientes da
academia. Paul Tozour do estdio Ion Storm discute os fatores que fizeram com que o
desenvolvimento da IA, uma atividade relegada aos ltimos meses do desenvolvimento de um
jogo, passasse a ter papel decisivo com programadores destinados a IA desde o primeiro dia
de um projeto [TOZ2002]. Primeiramente, as restries de hardware tornaram-se menos
proibitivas. O aumento da memria dos consoles e o processamento dos grficos em um
processador em separado tornaram possvel destinar uma proporo maior do processamento
IA. Por fim, a IA est deixando de ser considerada pela indstria como uma subrea da
magia, ou seja, era comum, anteriormente, a separao completa da IA das outras fases do
desenvolvimento de um jogo sem a sua compreenso quanto aos desafios e entendimento. Por
exemplo, era comum a escolha de uma linguagem de scripting para implementar a
inteligncia de um jogo considerando apenas o conhecimento da equipe de desenvolvimento e
sem considerar quais eram os desafios a serem resolvidos por essa linguagem e a sua
adequabilidade resoluo desses desafios.
Persistem, entretanto, alguns problemas quanto aplicao de tcnicas de
Aprendizagem de Mquina no mundo da IA comercial principalmente em um ambiente em
tempo real. Os principais problemas so tambm citados por Tozour [TOZ2002]:
10
11
12
13
para que a evoluo de um jogador seja efetiva, sua dedicao por centenas de horas.
Enfatiza-se, no estilo de jogabilidade dos jogos atuais, a sada do jogador do mundo real em
favor do mundo virtual.
Pode-se questionar que esse nvel de dedicao exigida afugenta os jogadores casuais
dos jogos massivos. Jogos assncronos, por sua vez, surgem como uma maneira de conectar
pessoas em espaos multiplayer com maior flexibilidade e em conformidade com a vida diria
[BOG2004]. As interrupes entre os turnos dos jogadores so partes inerentes ao jogo
assncrono. Assim, os jogadores no precisam estar conectados de maneira sncrona por
diversas horas para se divertir com a sua comunidade, podendo escolher, com liberdade, qual
o melhor momento de jogar e integrar o jogo com sua vida diria.
O modelo assncrono configura-se interessante para jogos de celular, por exemplo.
Justifica-se tal observao referenciando o sucesso da troca de mensagens SMS (Short
Message System) como uma das aplicaes de maior sucesso nas redes celulares devido a sua
natureza rpida e de fcil integrao ao dia-a-dia.
Outro tipo de jogo com um aspecto assncrono bastante forte a classe dos ARGs
(Alternate Reality Games Jogos de Realidade Alternativa), na qual situaes de jogo so
combinadas com a realidade, interagindo com mdias do mundo real como sites, telefonemas
e vdeos. Nestes jogos, semelhantes a gincanas virtuais, geralmente seguem-se pistas com o
objetivo de descobrir novas pistas, caracterizando-se por exigir e encorajar a interao entre
os jogadores. ARGs so uma forma de MMOGs nos quais aproveita-se a mdia online como
uma forma conveniente e barata de distribuio [MAR2006].
Jogos assncronos massivos oferecem uma maneira factvel de inserir os jogadores
casuais no mundo dos jogos massivos online. A aplicao de tcnicas de IA tem aplicabilidade
na gerao de jogadores automticos interessantes para povoar os mundos online assncronos.
Destaca-se que diferentemente dos jogos sncronos, os quais exigem uma resposta em tempo
real, abre-se, em um mundo assncrono persistente, a possibilidade de aplicao de tcnicas
offline de IA.
1.4.6 Jogos de estratgia so um campo de testes para IA em tempo real
Uma grande variedade de problemas fundamentais da pesquisa com IA em tempo real
podem ser estudados atravs dos jogos de estratgia [BURO2003]:
14
Gerenciamento de recursos;
Colaborao;
Pathfinding.
TRABALHO DESENVOLVIDO
Efetuou-se a criao de um jogador automtico para a classe dos jogos de estratgia
15
CONTRIBUIES RELEVANTES
As principais contribuies deste projeto so:
Metodologia que possibilita a utilizao dos planos gerados pelos usurios dos
jogos online para criar jogadores automticos que imitem o estilo de jogo da
comunidade;
16
1. 7
ORGANIZAO DO DOCUMENTO
Este trabalho tem por objetivo, portanto, apresentar um jogador automtico inteligente
para jogos de estratgia baseados em turnos. A inteligncia do jogador automtico ser uma
aplicao de tcnicas de PBC, conforme j citado anteriormente.
Divide-se o documento em cinco partes principais:
Metodologia: descrio das tcnicas e teorias que foram aplicadas para resolver o
problema e quais sero os procedimentos de validao aplicados;
17
REVISO BIBLIOGRFICA
PLANEJAMENTO
Um dos grandes desafios da IA a gerao de um solucionador geral de problemas.
18
19
fixou-se, por muito tempo, em resolver os problemas usando tcnicas de busca e algoritmos
como o MINIMAX. Entretanto, essa abordagem difere da maneira como o ser humano pensa.
A mente humana no busca muitas jogadas a frente e, alm disso, a busca feita de forma
lenta. Por outro lado, a mente humana aprende e cria estratgias facilmente e guiada pela
intuio e por aspectos emotivos. Outro ponto a ser considerado o poder do crebro humano
em reconhecer padres e gerar planos a partir dos padres reconhecidos.
Assim, a ao de reconhecer os padres (o estado do mundo) e escolher um plano a
seguir uma atividade de planejamento. Como a ao de planejamento tambm pode ser feita
de maneira computacional, existem diversas iniciativas que aplicam tcnicas de Planejamento
a jogos clssicos e a jogos de entretenimento. A prxima seo trata das aplicaes clssicas,
relacionadas aos jogos com regras bem definidas como Xadrez e Bridge. Em seguida,
algumas aplicaes de tcnicas de Planejamento em jogos comerciais so citadas.
2.2.1 Tcnicas de planejamento em jogos clssicos
O jogo que obteve maior sucesso na aplicao de mtodos de Planejamento foi o jogo
de bridge [GHA2004]. Seu estudo principal foi o trabalho de Nau, Smith e Throop para o
desenvolvimento do software Bridge Baron [SMI1998]. Bridge um jogo de cartas no qual
quatro jogadores competem entre si sem conhecer as cartas do adversrio. Desta forma, um
jogo de informao parcial. A possibilidade de distribuio inicial das cartas muito grande.
Caso fosse aplicada uma tcnica de busca, no caso mdio 1024 ns de uma rvore de busca
deveriam ser percorridos e no pior caso 1044 ns seriam necessrios [SMI1998].
Alm disso, diferentemente do Xadrez, no qual cada partida dura horas, cada jogada
de Bridge tem um tempo de durao de poucos minutos. Para reduzir o tamanho do espao de
buscas, Nau utilizou uma tcnica de Planejamento Hierrquico (HTN Planning Hierarquical
Task Network Plannning). Nesta abordagem os planos so criados por decomposio de
tarefas (task decomposition). Neste processo, o sistema decompe as tarefas em subtarefas
20
cada vez menores at que sejam encontradas tarefas primitivas que possam ser executadas
diretamente. Tais tarefas so denominadas mtodos.
A abordagem supracitada aplica decomposio HTN para gerar uma rvore de busca
na qual cada movimento corresponde a uma diferente estratgia e no a uma diferente carta.
Assim, a base de conhecimentos do sistema conhece diferentes estratgias, as quais so
colees de mtodos. Caso um movimento no se encaixe em uma estratgia plausvel ele no
considerado na busca. As rvores de busca geradas com a aplicao desta tcnica foram
reduzidas para 26.000 ns no caso mdio e 300.000 ns no pior caso. Destaca-se que o
programa comercial Bridge Baron implementa tal abordagem sendo o vencedor do
campeonato mundial de Bridge por computador em 1997 [GHA2004].
As razes para o sucesso da aplicao de tcnicas de Planejamento em Bridge
exemplificam os tipos de jogos nos quais o Planejamento melhor se encaixa segundo Tella
[TEL1997]. O jogo deve possuir um nmero pequeno de estratgias disponveis as quais
podem ser programadas facilmente. O nmero de interaes dos planos no domnio do jogo
tambm deve ser controlvel e a cada jogada o nmero de esquemas possveis do conjunto de
estratgias deve, tambm, ser pequeno.
Em jogos como Go e Xadrez o conhecimento estratgico no suficiente e, por isso,
apenas a utilizao do Planejamento no suficiente para a construo de um jogador
automtico. Em Xadrez, por exemplo, a quantidade de estratgias possvel da ordem de
dezenas de milhares e, quando uma estratgia escolhida, devem-se considerar dezenas de
possibilidades de resposta para a estratgia. Um cenrio mais difcil ainda se configura em
relao aos jogos comerciais.
2.2.2 Aplicaes de planejamento em jogos comerciais
A necessidade de utilizao de Planejamento em jogos comerciais se baseia em um
desafio prtico. O desenvolvimento de um jogo comercial torna-se cada vez mais complexo.
O jogador tambm espera mais do jogo. Uma das expectativas mais difceis de ser
implementada a jogabilidade no-linear. Para que os jogos sejam mais abertos essencial a
implementao de NPCs, mais inteligentes para interagir com ambientes cada vez mais
dinmicos nos quais devem aprender rapidamente como agir e atuar de forma crvel. Mais que
o meio acadmico, as prprias desenvolvedoras percebem que mquinas de estado e/ou regras
21
fixas no esto mais sendo suficientes para modelar personagens que atuam nos jogos da
prxima gerao [ORK2004]. A aplicao de tcnicas de Planejamento pode ser um caminho
interessante para lidar com esses desafios.
vila [AVI2004] baseia-se na tcnica proposta por Smith, Nau e Throop [SMI1998]
para codificar estratgias que um ou mais NPCs deveriam executar em um ambiente
altamente dinmico. O ambiente escolhido foi o jogo de tiro em primeira pessoa Unreal
Tournment. Dessa forma, as tarefas de alto nvel foram modeladas de forma a indicarem
objetivos complexos que um agente ou time devem ter. Um exemplo de tarefa de alto nvel
Domination(X) a qual pode ser representada na Figura 1. Tais tarefas de alto nvel,
denominadas mtodos, so representados por pr-condies, subtarefas e ordenaes.
Observa-se que as pr-condies no mtodo Domination(X) (responsvel por dominar uma
regio) so relacionadas a um conjunto de agentes e no ao comportamento individual de um
agente. No caso deste mtodo, para sua execuo necessrio, dentre outras pr-condies, a
garantia de um certo nmero de indivduos em cada time (pr-condio numberPlayersTeam )
e a diviso em trs grupos (pr-condio Divide3Groups), dentre outras. Como sub-tarefas a
serem realizadas, tem-se a patrulha (PatrolLocations) e cobertura (CoverLocations) do
terreno. No caso deste mtodo no h nenhum tipo de relao de ordem temporal.
As tarefas de baixo nvel, ou seja, decompostas a partir das de alto nvel, variam desde
objetivos intermedirios como capturar certa localizao at aes concretas como atacar um
inimigo prximo. Deve-se destacar que o uso de HTN Planning justificado pelo fato de que
alm de ser mais expressivo que o STRIPS Planning [FIK1971], o planejamento hierrquico
22
23
24
25
atributo do caso aplicando-se um peso diferente para cada atributo. O clculo da similaridade
utilizado em diversas etapas do ciclo de funcionamento do RBC e, primeiramente, na
recuperao do caso.
A Figura 3, a partir da proposta de Aamondt e Plaza [AA1994],
sumariza o
26
27
2. 4
Como o conhecimento do plano pode ser incompleto um plano falho pode ser gerado.
Para corrigir a falha, o planejador deve explicar como a falha ocorreu e usar a explicao para
encontrar um conjunto de estratgias de reparo na memria, escolhendo uma para executar o
reparo [COX2002]. A estratgia de recuperao dos planos considera, tambm, a antecipao
de falhas, evitando situaes que gerem falhas no futuro.
Os passos caractersticos do PBC podem ser uma especializao dos j citados para o
RBC por Aamodt e Plaza [AA1994]. Em [BER1998] explica tais passos, os quais seguem a
maioria das abordagens para sistemas que usam PBC. As sees seguintes descrevem estes
passos segundo o autor.
28
29
Um dos primeiros jogos de simulao que primou pelo realismo na representao das cidades. Website do jogo:
http://simcity.ea.com/
30
assuma o papel de um prefeito. Com tais poderes, o jogador pode influenciar em diversos
aspectos sociais e econmicos, por exemplo, localizao de indstrias, infra-estrutura dos
transportes e resoluo dos efeitos de desastres naturais.
Grande parte do desafio para o jogador humano, e conseqentemente, para o jogador
automtico, prever quais sero os efeitos das construes nas cidades. No apenas o nmero
de construes influencia no decorrer da simulao, mas, principalmente, a localizao das
construes no terreno e como cada tipo de construo ligada entre si. Como a cidade
grande e complexa, no possvel prever o efeito imediato e exato de uma ao.
O autor construiu, portanto, um planejador baseado em casos chamado MAYOR. Este
agente trata os seguintes problemas, tpicos de um ambiente complexo e dinmico:
31
32
O prximo passo gerar uma estratgia de reparo baseada no fator com maior
contribuio para a falha. Cada fator associado a um mdulo de reparo o qual convocado e
aplica uma estratgia de reparao para a vizinhana do local onde o plano foi aplicado
anteriormente e falhou.
O ltimo passo referente correo do plano age na preveno de falhas e alimentao
da base de casos. O reparador determina se o fator com maior contribuio para falha
descoberto no passo anterior existia em algum nvel antes do plano ser executado. Dessa
forma, antes que o plano seja executado da prxima vez, tal fator verificado e caso esteja
com um valor problemtico a estratgia de reparo disparada antes do plano ser feito.
2.5.2 Reconhecimento de Planos em Space Invaders
A IA nos jogos atuais deve suportar o desenvolvimento de personagens mais crveis.
Dois dos novos desafios para a pesquisa da IA de personagens para jogos, segundo Isla e
Blumberg so a antecipao e a imaginao [ISL2002]. Parecer inteligente no consiste
apenas na habilidade de ser previsvel (agir de forma inteligente para uma certa situao), mas
tambm na habilidade de fazer previses e agir em antecipao aos eventos previstos. Alm
disso, ao confrontar-se com um problema, um personagem inteligente deve analisar mltiplos
cenrios antes de tomar uma deciso, e, segundo algum parmetro, escolher qual o plano a
executar para resolv-lo. O personagem deve ser capaz de imaginar e planejar quais aes
devem ser tomadas/executadas.
Fagan e Cunninghan [FAG2003] remetem aos problemas acima, principalmente
antecipao, para um sistema que prev as prximas aes de um jogador no jogo clssico
Space Invaders. Seu objetivo principal dar suporte a NPCs que tenham um modelo do
comportamento do jogador para se antecipar e se adaptar s aes deste. O sistema, chamado
COMETS, usa reconhecimento de planos baseado em casos [KER2003] para implementar o
poder do NPC em observar o comportamento do jogador e identificar planos recorrentes. Os
planos observados so armazenados em uma biblioteca de planos e, em tempo real, o
comportamento atual do jogador comparado com a os casos na biblioteca para identificar
qual o plano que est sendo seguido. Deve-se comentar que o trabalho de [KER2003]
limitou-se ao problema de reconhecer o plano, ficando para o futuro o suporte a um
comportamento adaptativo por parte dos NPCs.
33
Unsafe (b): a nave est em terreno aberto, mas no est sendo ameaado por
tiros;
Very unsafe (c): a nave est em terreno aberto e ameaada por um tiro.
34
As aes que servem de ligao entre os estados so seis: fire, hide, emerge, dodge,
suicide e exogeneous, respectivamente: atirar, esconder-se, emergir, rodear, suicidar-se e
evento do jogador ficar sob o fogo inimigo. A biblioteca de planos foi construda
dinamicamente aps o jogador interagir com o ambiente por trs sees. Cada plano
dividido em pequenos subplanos caracterizados por um valor de suporte, ou seja, pelo nmero
de vezes que o subplano aparece na base. Os planos com alto valor de suporte so includos
na base. O reconhecimento do plano do jogador feito atravs do matching de trs passos
consecutivos existentes em um subplano na base de planos.
2.5.3 RBC em RTSs
Cheng e Thawonmas
35
Destaca-se que aps cem jogos de teste, o jogador automtico consegue vencer cerca
de 80% dos jogos. Deve-se rememorar, porm, que este resultado embora indique uma
excelente performance, foge do objetivo do presente trabalho, que a criao de um
adversrio que seja desafiador, mas possvel de vencer. De [AHA2005], como trabalho
aproveita-se em parte a estratgia de representao dos casos.
36
Exemplos
Esportes de time
RoboCup
Soccer
[WEN2001]
Descrio
Abordagem
Planejamento
em
tempo
real
Tarefa a ser
Otimizada
Vrias
multiagente
Ao individual
games
em
um
time
Bilestoad
Planejamento
em
Visualizao
[GOO1989], Space
tempo
real
projteis,
reconhecimento de
Invaders
individual
Reconhecimento de
planos
[FAG2003]
God
de
SimCity [FAS1996]
tempo real
de
Inflingir
danos,
planos
Gerenciamento
de
cidade em tempo
Adaptao
de
Planejamento
de
Defender
planos
real
Estratgia
em
Freeciv [ULA2004]
turnos
Gerenciamento
de
Recuperao
civilizao baseado
falhas em planos
em turnos
baseado
uma
cidade
em
reflexo
Estratgia
tempo real
em
Wargus
Gerenciamento
Casos hierrquicos,
Gerenciamento
de
[CHE2004],
limitado de cidades
seleo de planos
sub-tarefas, vencer
[AHA2005]
em tempo real
CONSIDERAES FINAIS
Tratou-se, neste captulo, acerca das tcnicas e teorias que sero aplicadas para a
37
38
METODOLOGIA
39
aplicveis. Por exemplo, o NPC poderia atacar um imprio do jogador at que este estivesse
quase morto. Quando o imprio fica num limite aceitvel, a efetividade do ataque
diminuda. Assim, o jogador tem a oportunidade de revidar e, com o sucesso do revide um
sentimento de desafio vencido estimulado. Esta e outras tcnicas poderiam ser
implementadas para estimular a diverso. Entretanto, deve-se destacar que caso o jogador
percebesse o truque, ao invs de divertir-se, ficaria decepcionado por ter sido enganado e a
sua imerso no jogo seria prejudicada. Alm disso, enquanto em um jogo de tiro, a vida til
de um NPC curta, um imprio de um jogo de estratgia tem suas mincias analisadas por
um tempo considervel pelo jogador humano.
A arquitetura proposta para a classe dos jogos de estratgia baseados em Imprio no
vai deixar de inserir erros e imperfeies. Entretanto, tais erros e imperfeies no sero
codificados no jogador automtico. O jogador automtico imitar os comportamentos e estilos
de jogo dos outros jogadores a partir de uma base de planos criada atravs da captura das
aes dos jogadores.
Deve-se destacar que isso no garante a diverso do jogador. Dessa forma, alm da
imitao dos estilos da comunidade, o jogador automtico tambm criar planos inditos
aprendendo a antecipar as falhas e evit-las. Esse conhecimento, alm de til para a prpria
comunidade de jogadores automticos, tambm pode ser utilizado, futuramente, para auxiliar
jogadores humanos.
3.1.1 Gerao da base de planos
A gerao inicial da base de planos no feita de maneira aleatria e tampouco sob a
responsabilidade de um especialista humano. Assim sendo, inicialmente, existem apenas
jogadores humanos cadastrados no sistema. Todos os jogadores so monitorados e seus planos
armazenados. Deve-se destacar que um plano formado, segundo a arquitetura proposta por
Kerzez [KER2003], por uma seqncia de pares estado-ao. Quanto s variveis de estado,
elas podem ser de dois tipos: algumas delas so usadas no processo de recuperao do caso e
outras no, servindo apenas como quantificadores do estado e, possivelmente, sendo usadas
durante a antecipao de falhas.
Quanto s variveis de ao, podem ser fixas, caracterizando e diferenciando cada uma
das aes, ou quantificadores de ao, ou seja, parmetros da ao que podem ser utilizados
40
no processo de adaptao. Destaca-se a gerao de uma ferramenta que facilita a captura dos
pares estado-ao. Tal ferramenta, com uma de suas telas ilustrada na Figura 8, permite que a
partir da captura dos planos dadas as aes realizadas pelos jogadores, se escolha para cada
varivel capturada quais so as variveis de estado, quantificadores de estado, variveis fixas
de ao e quantificadores de ao. Alm disso, a ferramenta tambm permite a associao de
filtros de entrada e de sada para os valores das variveis. Um ltimo passo explicitado na
Figura 8 que se optou pelo armazenamento destas informaes e das meta-informaes
relacionadas num formato de banco de dados relacional.
Associada a esta ferramenta de gerao de planos, todo o acesso base e ao jogo em si
foi encapsulado em dois web services. O primeiro responsvel por servir ao jogador
automtico de interface de acesso ao jogo permitindo a execuo das aes pelo jogador
automtico. Outro web service disponibiliza consultas base de planos para verificao, por
parte do jogador automtico, das aes mais adequadas em relao ao seu estado.
41
Na Figura 9, o plano formado por cinco pares, representado pelo par (s1/a) at (s5/b) ,
segundo um tamanho de janela de subplano igual a trs pares estado-ao, gerador de trs
subplanos que so colocados em uma base temporria de subplanos. Os subplanos com maior
suporte (os que mais ocorrem) so copiados para a Biblioteca de Planos. Observa-se que a
necessidade deste passo se d apenas quando existe a possibilidade de alta repetio de
42
43
Na Figura 10, por exemplo, esto sendo armazenados os subplanos abstratos quanto s
aes. Por exemplo, a seqncia de s9/b=>s10/b=>s11/b e s2/a=>s2/b=>s5/b, so indexadas
como um mesmo subplano abstrato pois os dois subplanos possuem a mesma distribuio de
aes.
Subplanos com aes diferentes, porm, podem ter objetivos semelhantes. Por
exemplo, o dinheiro de um imprio pode ser aumentado tanto pela venda de itens no mercado
quanto por um ataque bem sucedido a um inimigo. Outra indexao faz-se necessria: o
agrupamento de subplanos semelhantes em relao ao estado inicial e estado final do
subplano. Tal indexao, alm de incrementar o contador de suporte do subplano abstrato,
ser essencial no processo de recuperao do caso. Deve-se recordar que atravs da diferena
entre o estado inicial e o estado final obtm-se qual o objetivo do plano. Voltando Figura
10, a seqncia (s2/a) at (s5/d) indexada no mesmo subplano que a seqncia (s2/a) at
(s5/b), pois possuem o mesmo estado inicial e final. J que o objetivo final o mesmo, a
ordenao do plano mais eficiente pode ser feito atravs do menor plano ou o mais barato
computacionalmente segundo alguma mtrica do domnio.
Os subplanos com maior suporte so candidatos para a incluso na base de planos
(Figura 11). Outro parmetro a ser configurado, portanto, qual o valor de suporte que
justifica a aceitao do subplano. De tal base de planos provem a inteligncia do jogador
automtico.
Outro critrio possvel de ser utilizado para o corte na base de planos o sucesso do
plano. Por exemplo, planos pertencentes a jogadores automticos cuja performance em
44
relao aos outros piorou em um perodo de tempo poderiam ser excludos da base de planos.
Este corte discutvel, pois o objetivo do sistema garantir a credibilidade dos jogadores
automticos. Planos mal sucedidos tambm podem ser interessantes de serem explicitados e
trazem mais humanidade ao comportamento dos jogadores automticos. Destaca-se que a
base de planos compartilhada por todos os jogadores automticos. Dessa forma, os
jogadores automticos podem ter acesso a todos os planos da base de planos tanto gerados
pelos jogadores humanos quanto pelos automticos.
3.1.2
45
for possvel. Uma nova falha implica na inexistncia de um estado em um plano que se adapte
a situao. Neste caso, a segunda camada da IA (Camada Reparadora) fica responsvel por
decidir o comportamento do jogador automtico.
Tal camada baseada no mdulo Neighborhood Repair contido no trabalho de
Fasciano [FAS1996] com o jogo SimCity. O jogador automtico procura verificar as
diferenas entre o estado atual e o estado que era esperado com a execuo do plano. Para os
parmetros com diferenas significativas aplicada uma ou mais estratgias de reparo. Por
exemplo, a ao selecionada pela Camada Planificadora era um ataque a um imprio de
tamanho X, e raa Y, um pouco maior em relao ao imprio do jogador automtico. Tal ao
deveria conquistar as terras desse imprio. Entretanto, o imprio escolhido para o ataque foi
um imprio semelhante ao atacado pelo plano (tamanho X e raa Y), mas as tropas do jogador
automtico desertaram. Nas regras do jogo, essa situao representada por uma diferena
mxima de duas vezes o mximo do nmero de setores do imprio para um ataque ser bem
aceito pelas tropas. Assim, a segunda camada vai perceber-se o motivo do ataque ter sido mal
sucedido est em alguma diferena entre o imprio do plano que foi bem sucedido e o outro e
vai realizar alguma ao para ficar mais semelhante a esse imprio. Neste caso, o jogador
automtico perceberia que a diferena entre o nmero de setores um fator de diferena e
realizaria uma ao cujo objetivo fosse aumentar o nmero de setores. S ento, o jogador
automtico tentaria novamente executar o plano. Se o plano for bem sucedido provvel que
a ao de correo tenha sido eficiente. Neste momento a rotina de preveno realizada
associada tanto ao plano realizado quanto ao. Dessa forma, da prxima vez que o plano
for realizado, previne-se o problema.
Esta estratgia s vlida em jogos com aspecto determinstico ou quase
determinstico e que seja possvel o acesso a maior parte das variveis representativas do
estado. De outra forma, em um jogo cujo resultado das aes fosse dependente da sorte no
seria possvel a certeza que a alterao em um parmetro teria sido a responsvel por corrigir
um problema. A Figura 12 exemplifica o processo descrito. Alm disso, a aplicao da
correo pela camada reparadora tambm s possvel no caso de jogos cujas aes no
impliquem em uma mudana significativa no estado do jogo quando uma ao errada for
realizada. Se for este o caso, ganha prioridade na execuo a Camada Antecipadora e a
Camada de Reparo pode ser usada para, ao invs de aplicar a correo, apenas anotar
hipteses que explicam o fracasso do plano. Na Figura 12, isso representaria a eliminao do
46
47
Um problema detectado pela Camada Reparadora atravs dos valores das diferenas
entre as variveis de estado entre o estado desejado e o estado atual. Cada diferena ser
candidata a ser combatida por uma estratgia de reparo.
As estratgias de reparo bem sucedidas provocam a associao da condio para que a
estratgia seja chamada ao plano cujo reparo foi necessrio. Destaca-se que as aes
realizadas para o reparo do plano e o plano associado, se bem sucedido, tambm podem ser
acrescentados biblioteca de planos. Dessa forma, planos novos no so gerados apenas pela
interveno humana, mas tambm pela aprendizagem dos jogadores automticos, os quais
anotam na base de planos as possveis pr-condies para um plano ser executado.
Na Figura 13, o processo de antecipao de erros caracterizado pela busca de prcondies descobertas pela camada de reparo devido a uma correo bem sucedida ou uma
hiptese para correo da falha no passo 1. Caso a pr-condio seja falsa, executa-se a
estratgia de reparo associada a ela (passo 3). Sendo verdadeira, retorna-se a Camada
Planificadora ao comando, executando a ao desejada antes da execuo da correo,
conforme a Figura 12. Dependendo se houver falha ou sucesso na execuo da ao de reparo
realizada a anotao em relao ao plano se aquela ao de reparo foi bem sucedida ou no.
Tal anotao aumenta ou diminui o suporte pr-condio associada ao de reparo.
Define-se o suporte como a quantidade de vezes que a ao de reparo bem sucedida menos a
quantidade de falhas. Alm dessa informao poder ser utilizada para ordenao na
48
recuperao de aes de reparo, ela tambm importante para povoar e validar a rede de
dependncia entre os parmetros. Ou seja, pode-se inferir quais aes conseguem modificar
quais parmetros do estado do jogador automtico.
A arquitetura proposta foi testada em um jogo online baseado em turnos com interface
web chamado Promisance. A prxima seo descreve este jogo e quais adaptaes foram
necessrias para encaix-lo infra-estrutura descrita.
O JOGO PROMISANCE
3. 2
GPL (General Public Licence). Seu mecanismo de funcionamento por turnos semelhante
ao dos door games, sendo esta classe de jogos sua principal inspirao. Os principais jogos
que precederam o Promisance quanto a mecnica e temtica foram TradeWars, Solar Realms
Elite e Falcons Eye.
Aps se cadastrar no sistema o jogador recebe um imprio. Esse imprio
caracterizado, principalmente, pelos valores de:
Money (Dinheiro): dinheiro que o imprio possui. Dinheiro permite que sejam
feitas construes.
Land (Terra): nmero de setores que o imprio possui. Cada construo ocupa
um setor.
Cada novo imprio recebe inicialmente uma quantidade padro para cada uma das
variveis acima. Independente do momento que o imprio for criado, todos os novos
4
49
Licena de cdigo que libera as modificaes no cdigo contanto que elas tambm sejam liberadas ao pblico.
50
vantagem dos imprios participantes de uma aliana, o novato tende a coligar-se logo de
incio. Para entrar em uma aliana h uma fase de negociao que foge ao ambiente do jogo,
ou seja, geralmente a entrada em uma aliana combinada em frum, por email ou qualquer
outra forma de comunicao fora do ambiente do jogo.
Foge do escopo deste trabalho o desenvolvimento de um jogador automtico apto a
participar de uma negociao neste sentido. Desta forma, todos os tipos de comunicao entre
os jogadores sero impossibilitados dentro da interface do jogo para que tanto o jogador
automtico quanto os jogadores humanos tenham as mesmas aes possveis. Alm disso,
para dificultar a comunicao entre os jogadores humanos em um frum externo, o jogador
humano no ter acesso ao nome e identificador dos imprios inimigos ao acessar o ranking.
Por exemplo, o jogador A visualiza para os imprios B, C e D, os nomes X, Y e Z. O jogador
E, por sua vez, enxerga os nomes Z, X e Y para os imprios citados, respectivamente. A
Figura 14 mostra a nova interface grfica implementada para o jogo e viso que um imprio
tem de seus adversrios.
51
52
3. 4
uma srie de dados numricos referentes ao status do imprio. As variveis de estado que
sero utilizadas no processo de recuperao do caso so: dinheiro, valor, raa, terra, magia,
comida e felicidade. A medida de similaridade utilizada para a recuperao dos planos foi a
distncia Euclidiana entre o estado do jogador automtico e os estados na base de planos.
Nem todas as caractersticas so utilizadas para o processo de indexao dos casos,
tendo, portanto, um peso zero durante o clculo da similaridade. Tais caractersticas sero
utilizadas, se necessrio, pela Camada Reparadora e pela Camada Antecipadora no caso de
falhas no plano e/ou antecipao de erros. As caractersticas usadas por essas duas camadas
so: populao; produo estimada; consumo estimado; porcentagem de aes ofensivas;
porcentagem de aes defensivas; quantidade de reas comerciais, residenciais, militares,
industriais, escolares, agrcolas, defesas nas fronteiras, terra no utilizada, magos, soldados;
catapultas, avies, navios; despesas esperadas; renda per capita; pontos ofensivos e pontos
defensivos. Tais caractersticas so valores inteiros contnuos armazenados na base de dados
relacional. As estratgias de reparo so utilizadas tentando aumentar ou diminuir algum
desses parmetros antes da execuo de um plano.
A Tabela 3 sumariza as aes disponveis para o jogador humano e para os jogadores
automticos. Rememora-se que a descrio mais completa destas aes est disponvel no
Anexo 2.
53
Ao
Gerar Dinheiro
Explorar
Plantar
Construir
Parmetros
Nmero de turnos gastos na especulao.
Nmero de turnos gastos na explorao.
Nmero de turnos gastos na agricultura.
Nmero de reas comerciais, residenciais, militares, industriais,
escolares, agrcolas e defesas nas fronteiras.
Gerenciar Indstria Porcentagem de soldados, catapultas, avies e navios.
Gerenciar Taxas
Mudana na taxa de impostos.
Atacar
Alvo a ser atacado.
Ataque Surpresa
Alvo a ser atacado.
Ataque Terrestre
Alvo a ser atacado.
Ataque Areo
Alvo a ser atacado.
Ataque Martmo
Alvo a ser atacado.
Bola de Fogo
Alvo a ser atacado.
Tufo
Alvo a ser atacado.
Tempestade
Alvo a ser atacado.
Terremoto
Alvo a ser atacado.
Assalto
Alvo a ser atacado.
Login
Email e Senha.
Tabela 3- Aes que os jogadores humanos e automticos podem executar.
3. 5
AVALIAO DO SISTEMA
Trs mtricas principais para verificao do sucesso do sistema foram utilizadas. A
54
nas quais claramente essa revanche pode ser mal sucedida. O jogador humano mais passional,
dessa forma, no avalia os riscos e, mesmo que perca parte de suas tropas, deseja o revide de
alguma maneira. Essa estratgia, mesmo que no to bem sucedida, se tiver alto valor de
suporte poder entrar na base de planos. Ou seja, os jogadores automticos podero ter um
estilo de jogo agressivo como um jogador humano. Justifica-se, portanto, a aplicabilidade do
teste proposto para verificar se os jogadores automticos esto imitando de maneira crvel o
estilo humano.
Entretanto, existe a possibilidade do estilo dos jogadores humanos imitados no ser
divertido ou interessante para alguns jogadores. Como a diverso um fator subjetivo,
prope-se um segundo teste associado ao Teste de Turing: alm de questionar ao jogador
quem um jogador automtico, tambm se questionar uma nota para a experincia que o
jogador teve ao interagir com o imprio adversrio.
Quanto validao do sucesso das tcnicas de planejamento e da infra-estrutura de
jogadores automticos, ser necessrio verificar o posicionamento e distribuio do jogador
automtico no ranking aps a execuo de um plano. O aprendizado de novos planos ocorre
devido ao trabalho das camadas Reparadora e Antecipadora. Para mensurar a qualidade e
ineditismo destes planos, ser necessria a anlise por um especialista humano. No se v
outra mtrica possvel para a medio da criatividade do jogador automtico. Outra alternativa
verificar numericamente a performance do plano gerado, ou seja, o aumento no networth
que a execuo do plano proporciona ignorando possveis influncias dos outros imprios no
momento.
Para verificar se o sistema est efetivamente aprendendo, deve-se verificar a criao de
estratgias de reparo bem sucedidas ou at mesmo, novos jogadores automticos podem ser
acrescentados ao sistema periodicamente e sua performance deve ser comparada com os
anteriores ou com os jogadores humanos. Tal periodicidade de criao, tambm deve ser alvo
de ajustes, mas est estimada em uma ou duas semanas.
Os jogadores automticos novos devem ter acesso a toda a base de planos at o
momento. Novos planos inseridos, contudo, no sero visualizados pelos jogadores
automticos
55
jogadores automticos deve ser maior do que a dos jogadores automticos antigos. Define-se
a velocidade de evoluo de um jogador automtico atravs da quantidade de networth que o
jogador automtico cresce para uma quantidade fixa de turnos ou aes realizadas.
3. 6
CONSIDERAES FINAIS
Esse captulo descreveu os pormenores da implementao do jogador automtico
construdo para interagir com jogos de estratgia baseados em turnos. Descreveu-se, tambm,
sua aplicao ao jogo Promisance. No prximo captulo so descritos os resultados obtidos.
56
RESULTADOS
processo de captura dos planos. Foram obtidos 5.133 pares estado-ao em um perodo de
jogo de trs semanas. O tamanho da janela de subplanos foi o tamanho da prpria seo de
jogo, ou seja, todos os pares entre um login e um logout aos jogadores humanos. Com esse
tamanho de janela de subplanos no houve a necessidade de uma base temporria, conforme
descrito na seo 3.1.1.
A indexao do estado, objetivando a recuperao do plano, foi feita utilizando-se as
seguintes caractersticas: dinheiro, networth (valor do imprio), quantidade de terra,
quantidade de magia, quantidade de comida e felicidade geral do povo. Com estas
caractersticas pode-se extrair 2.357 estados diferentes pelos quais os jogadores passaram.
Esse nmero j considera a normalizao dos valores das variveis de estados aplicando um
filtro nestas caractersticas atravs da retirada dos dois caracteres menos significativos.
Quanto s aes associadas ao estado, foram capturadas dezesseis aes diferentes dentre
aes de gerenciamento e tipos de ataque. Cada ao, exceto a alterao na taxa de impostos e
57
a alterao nas propores de produo de cada tipo de armamento, gasta um certo nmero de
turnos. A Tabela 4, a seguir, sumariza as aes que foram mais executadas pelo grupo.
# de execues
938
793
729
474
247
Ao
Ataque padro a outro imprio
Construo
Gerao de dinheiro
Explorao do terreno
Agricultura
Tabela 4- Aes mais executadas pelo grupo.
54
Dinheiro
Networth
12 milhes
Terra
Mana
1,6 milho
9 mil
960 milhes
19 milhes
11 mil
7 milhes
38
33
270 mil
100 mil
200 mil
150 mil
330
250
31
580 milhes
20 milhes
1,2 mil
500
500
7,7
milhes
Comida
91 milhes
130
milhes
47 mil
10 mil
140
milhes
58
Este primeiro teste, foi relevante no sentido de entender melhor como um grupo de
jogadores interage permitindo prever o comportamento que seria esperado pelos jogadores
automticos. As tendncias do grupo podem ser utilizadas pelos jogadores automticos
tornando bastante comum a ocorrncia desses estados e das aes citadas em jogadores
automticos. Alm disso, esse teste permitiu a delimitao do tamanho da janela de subplanos
como sendo o prprio tamanho do plano (seo completa entre um login e um logout no jogo)
e a verificao de que no era necessria a separao em planos abstratos e concretos. Tal
separao s seria necessria, portanto, quando existisse uma repetio de estados
significativa.
importante destacar que quanto seleo do plano a ser escolhido, no teste realizado
com o Promisance optou-se pela escolha do plano que maximizasse o networth, que o valor
do imprio, calculado atravs da composio entre o dinheiro e a quantidade de terras. Neste
primeiro teste no houve a interao entre os jogadores automticos e os jogadores humanos.
Entretanto, a ttulo de ilustrao, foi executado um jogador automtico em um
ambiente simulado, ou seja, sem a evoluo caracterstica de um ambiente com jogadores
humanos, com o mesmo conjunto de jogadores humanos. O jogador automtico utilizou os
5.133 pares estado-ao do grupo de jogadores do primeiro teste. Tal jogador foi executado
durante quatro mil turnos, ou seja, uma quantidade maior do que a quantidade de turnos gasta
por um jogador humano individualmente durante o teste sem os jogadores automticos. A
Figura 15 demonstra a evoluo do jogador automtico durante estes turnos. interessante
observar a existncia de um patamar no grfico de dinheiro (Figura 16) que explicita a
utilizao do estado 55, ou similar, citado na Tabela 5. Observa-se que o jogador automtico
segue a tendncia de comportamento do Jogador 1. Isso se deve ao fato que ao chegar num
estado com dinheiro nulo, o jogador automtico procurou executar planos de quem: (1) fosse
semelhante a ele e (2) tivesse uma performance com aumento do networth. interessante
destacar que o Jogador 1 usou a falta de dinheiro como estratgia e o jogador automtico
seguiu essa estratgia, pois possvel aumentar o networth mesmo sem dinheiro.
Clarificando-se: se outro jogador humano tambm casse nessa situao, mas fosse perdendo
em networth, o jogador automtico preferiria sempre a estratgia vencedora, seguindo o estilo
de jogo do Jogador 1.
59
Figura 15 Evoluo do networth comparando o jogador automtico simulado com os melhores jogadores
humanos.
Figura 16 Evoluo do Dinheiro comparando o jogador automtico simulado com os melhores jogadores
humanos.
4. 2
60
dois trolls, e dois elfos negros. Cada raa possui caractersticas diferentes. Essa distribuio
foi escolhida para repetir a distribuio dos jogadores no ambiente do jogo.
No fim deste teste, os jogadores foram informados a cerca da existncia de jogadores
automticos e questionados sobre quem eram os jogadores automticos no ambiente. Para
evitar possveis dedues a partir do nome dos jogadores automticos, os nomes foram
criptografados de maneira diferente para cada jogador. Assim, mesmo conversando com outro
jogador fica dificultada a descoberta de quem um jogador automtico.
Primeiramente, deve ser feita uma anlise das caractersticas do ambiente e uma
comparao com o ambiente anterior. Quanto ao nmero de pares estado-ao, obteve-se
cerca de 3427 pares no total. Cada par identifica uma interao de um jogador com o sistema,
ou seja, a realizao de uma ao, e usado na construo da base de casos. O nmero de
estados nicos obtidos foi de 2135 estados diferentes. Assim como no teste anterior, todos os
pares estado-ao foram transportados para a tabela de planos definitiva no apenas os planos
com maior suporte. Da mesma forma, como a janela para a realizao da recuperao dos
casos de tamanho igual seo de jogo, tambm no existiu a indexao em estados
abstratos, muito menos a base temporria de planos. Quanto representao do estado, as
variveis utilizadas para o matching foram, conforme citado anteriormente: dinheiro, networth
(valor do imprio), quantidade de terra, quantidade de magia, quantidade de comida e
felicidade geral da populao. As demais variveis foram utilizadas no processo de
antecipao de erros.
Semelhante ao teste anterior, a informao sobre os estados e aes mais recorrentes
pode ajudar a caracterizar o comportamento do grupo. Quanto s aes prediletas dos
jogadores, diferentemente do outro grupo, a produo de dinheiro foi tarefa mais executada
conforme a Tabela 6. O contato com os jogadores permitiu descobrir que isso se deve ao fato
desta ao ser interpretada como soluo para a diminuio no dinheiro do imprio.
61
517
467
407
378
179
# de execues
Ao
Produo de dinheiro
Ataque padro a outro imprio
Construo
Explorao do Terreno
Ataque terrestre com catapultas
Quanto aos estados mais observveis interessante constatar que o estado com valor
nulo no aparece entre os mais freqentes.
# de
Dinheiro
observaes
116
501 mil
33
100 mil
160 mil
148 mil
300
300
Mil
Mil
19
6,4 milhes
6,1 milhes
8,3 mil
47 mil
18
346 mil
6,2 milhes
8,3 mil
16 mil
15
3,5 milhes
7,6 milhes
5,5 mil
1,4 milhes
Networth
Terra
Mana
Comida
100 mil
10 mil
19,4
milhes
17,5
milhes
70 milhes
Das mtricas citadas no captulo anterior (seo 3. 5), primeiro trata-se da evoluo
dos jogadores automticos e sua velocidade de evoluo. Dois parmetros refletem
diretamente no desempenho do jogador automtico: o valor do imprio (networth) e a
quantidade de terras. Tambm se analisa a evoluo do dinheiro do Imprio, pois a prcondio mais importante para a execuo das aes ser bem sucedida.
62
63
64
65
66
Outro exemplo de estratgia emergente que foi descoberta pelo jogador automtico foi
relacionado a pr-requisitos para a realizao de magias. A realizao de uma magia implica
na necessidade de uma quantidade mnima de poder mgico. Era esperada a utilizao de uma
estratgia de reparo que aumentasse a quantidade de poder mgico, por exemplo, a construo
de escolas de magia. Entretanto, as aes que foram escolhidas pelo jogador automtico eram
aes que sempre aumentavam o lucro esperado pelo imprio (diferena entre o que gasto e
o que arrecadado), como, por exemplo, a construo de reas comerciais. Percebeu-se que o
aumento do lucro, proporcionava um aumento na populao e no nmero de magos o que,
conseqentemente, gerava um aumento no poder mgico do imprio.
Os resultados descritos limitam-se a apresentar uma anlise quantitativa da evoluo
do jogador automtico. essencial, tambm, apresentar uma anlise qualitativa atravs do
questionamento aos jogadores sobre quem so os jogadores automticos. De maneira similar
ao Teste de Turing, os jogadores humanos foram estimulados a responderem quais imprios
so jogadores automticos no fim do perodo de testes. Dos dez jogadores ativos, quatro
responderam pesquisa.
O primeiro jogador constatou a existncia de seis jogadores automticos. Destes,
foram classificados corretamente apenas dois jogadores automticos. Verificando o ranking,
esse jogador sups que os piores jogadores seriam os jogadores automticos.
O segundo jogador, aps tentar atacar diversos imprios no primeiro dia fechou-se em
um regime pacifista, ou seja, no atacou nenhum outro imprio e investiu em defesas. Dessa
forma, no soube responder quais seriam os jogadores automticos por no haver maneira de
diferenci-los. O perfil deste jogador tambm caracterstico em muitos jogos online:
algumas pessoas preferem no interagir com o seu grupo de jogo. Mesmo assim, no se pode
retirar para estes jogadores a importncia de estarem inseridos em um ambiente bem povoado:
o jogador pode usar o ranking para poder comparar sua performance com a de outros
jogadores e sentir-se estimulado e desafiado a continuar a jogar e vencer seus adversrios. E,
o ranking manteve-se coerente, doutra forma o jogador poderia perceber mudanas bruscas e
irreais caso o jogador automtico no fosse crvel.
O terceiro jogador sups que trs outros jogadores humanos fossem jogadores
automticos. Sua justificativa para a escolha de cada jogador foram os ataques mal sucedidos
que recebeu e com os horrios de jogo singulares de um dos jogadores automticos. Um ponto
67
pode ser retirado desta explicao: primeiramente, a IA, nos jogos tradicionais, ainda
associada a um comportamento diferente ao de um grupo de jogadores. Nos testes
implementados, como os jogadores automticos imitaram o comportamento mdio do grupo,
as falhas tambm ficaram na mdia do esperado. Ou seja, o nmero de sucessos e de falhas
nas interaes entre jogadores automticos e humanos deve ser compatvel.
O quarto jogador escolheu dezesseis candidatos a jogador automtico na lista de vinte
e duas opes (doze automticos e dez humanos) disponibilizada. Destes dezesseis, onze eram
realmente os jogadores automticos. Assim, o jogador tambm no conseguiu distinguir
corretamente humanos e jogadores automticos, pois acabou escolhendo a maioria dos
jogadores presentes no sistema, deixando de fora apenas os mais bem sucedidos no ranking.
Novamente, o jogador humano tem a expectativa que os jogadores automticos tenham
sempre uma performance pior que a dos jogadores humanos.
4. 3
68
4. 4
CONSIDERAES FINAIS
Este captulo apresentou os resultados obtidos. Destaca-se a adaptao do jogador
69
70
71
72
73
LUDOGRAFIA
74
75
76
REFERNCIAS BIBLIOGRFICAS
Workshop
on Challenges
in
Game
AI,
2004.
disponvel
em:
http://www.cse.lehigh.edu/%7Emunoz/Publications/AAAIWS04Munozh.PDF. Acesso
em: 26/03/2005.
[BAI1986] BAIN, W. M. Case-Based Reasoning: A Computer Model of Subjective
Assessment. Ph.D. Thesis, Yale University, New Haven, CT, 1986.
[BER1998] BERGMANN, R.; AVILA, H. M.; VELOSO, M. et al. Case-Based
Reasoning applied to Planning Tasks. In: LENZ, M., BARTSCH-SPOERL, B.,
Burkhard, H. D.; WESS, S. Case-Based Reasonig Technology from Foundations
to Applications, Berlim, Springer, 1998. p. 166-199.
[BIG1998] BIGUS, J. P.; BIGUS, J. Constructing intelligent agents with Java: a
programmers guide to smarter applications. New York: Wiley, 1998.
[BOG2004] BOGOST, IAN. Asynchronous Multiplay: Futures for Casual Multiplayer
Experience. Paper presented at the Other Players Conference. Center for
Computer Games Research, IT University of Copenhagen, Denmark, 2004.
Disponvel em: http://itu.dk/op/proceedings.htm. Acesso em: 15/5/2005.
77
BURKA,
L.
P.
The
MUDLine.
Disponvel
em:
2002.
Disponvel
em:
http://www.bbsdocumentary.com/library/PROGRAMS/DOORS/LORD/ehrenreic
h.pdf. Acesso em: 9/1/2005.
[EVA2001] EVANS, R. The Future of AI in Games: A personal view. Game
Developer
Magazine,
Agosto
de
2001.
Disponvel
em:
Games.
In:
ICCBR,
2003.
Disponvel
em:
http://www.cs.tcd.ie/publications/tech-reports/reports.03/TCD-CS-2003-01.pdf
Acesso em: 14/3/2005.
78
Acesso
em:
15/3/2005.
[FIK1971] FIKES, R. E., NILSSON, N. J. STRIPS: A New Approach to the
Application of Theorem Proving to Problem Solving. Artificial Intelligence, 2(34), 1971.
[FRE2002] FREEBURG, N. A Heuristic Search Algorithm for Empire-Based Games.
CS 470 Project, 2002.
[FR2000] FRNKRANZ, J. Machine Learning in Games: a Survey. Nova Science
Publishers, 2000, p. 11-59.
[GEF2002] GEFFNER, H. Perspectives on Artificial Intelligence Planning. In:
Eighteenth National Conference on Artificial Intelligence, 2002, p. 1013-1023.
Disponvel em: http://www.tecn.upf.es/%7Ehgeffner/html/reports/perspectives.ps.
Acesso em: 15/6/2006.
[GHA2004] GHALLAB, M. NAU, D. TRAVERSO, P. Automated Planning: Theory
and Practice. Morgan Kauffmann Publishers, 2004.
[GOO1989] GOODMAN, M. CBR in Battle Planning. In: Proceedings of the Second
Workshop on Case-Based Reasoning, Pensacola Beach, FL, US. 1989. p. 264269.
[GOL2001] GOLDBERG, M. The History of Computer Gaming, 2001. Disponvel
em:
http://www.classicgaming.com/features/articles/computergaminghistory/.
79
[HAR1968] HART, P. E.; NILSSON, N. J.; RAPHAEL, B. A Formal Basis for the
Heuristic Determination of Minimum Cost Paths. IEEE Transactions on Systems
Science and Cybernetics SSC4. 1968, Vol 2., p 100-107.
[HUN2005] HUNTER, W. The Dot Eaters - Player4 Stage1 - Classic Video Game
History. 2005. Disponvel em: http://www.emuunlim.com/doteaters/ . Acesso em:
11/1/2005.
[ISL2002] ISLA , D.; BLUMBERG, B. New Challenges for Character-Based AI for
Games. AAAI Spring Symposium on AI and Interactive Entertainment, Palo Alto,
CA, 2002, p. 41-45.
[KEN2003] KENT, S. L. Alternate Reality: The History of Massively Multiplayer Games.
2003. Disponvel em: http://archive.gamespy.com/amdmmog/week1/index.shtml.
Acesso em: 15/3/2005.
[KER2003] KERKEZ, B. Incremental Case-Based Plan Recognition With Incomplete
Plan Libraries. 2003. Disponvel em:
http://personal.ashland.edu/~bkerkez/Research/public/BKerkez_PhD_Dissertation_WSU_2003.pdf
Acesso em: 16/3/2005.
80
81
82
83
em:
http://www.thinkofit.com/plato/dwplato.htm.
Acesso
em:15/03/2005.
[WOO2005]
WOODCOCK,
S.
MMOPG
Chart.
2005.
Disponvel
em:
84
85
Tcnica
Pathfinding com
A*
Command
Hierarchy
(hierarquia de
comandos)
Dead Reckoning
Principais gneros de
jogo aplicveis
RTS (Real time
strategy - Jogos de
estratgia em tempo
real)
RTS
Exemplos de Jogos (e
desenvolvedores) que
utilizaram cada tcnica
Praticamente todos os
RTSs desde Warcraft
(Blizzard).
Srie Close Combat
(Atom Games)
FPS (First-person
shooter);
jogos de esporte;
jogos online
Emergent
Behaviour
(comportamento
emergente)
Jogos de corrida;
Jogos de simulao
de vida artificial
Downforce (Smartdog)
Flocking
RTS
FPS
Half-life (Valve);
Unreal (Atari)
Formations
(formaes)
RTS
Influence
Mapping
(mapeamento de
influncia)
RTS;
Jogos de simulao
Age of Empires
(Emsemble Studios)
Sim City (Maxis);
Level-of-detail
AI (LOD-AI)
RPG;
RTS;
Jogos de simulao
Republic The
Revolution (Elixir
Studios)
Manager Task
Assignment
(Atribuio de
tarefas por um
gerenciador)
Jogos de esporte
Microsoft Baseball 3D
(Microsoft)
Obstacle
Avoidance
(desvio de
FPS;
RTS
Comentrio
Busca de caminhos atravs de busca
heurstica.
Estratgia para lidar com a IA em
diferentes nveis: do general ao soldado
raso modelados atravs de uma
hierarquia militar.
Mtodo que objetiva a projeo do
movimento futuro de cada agente a partir
de sua velocidade, posio e acelerao.
Em jogos online utilizado para
combater a latncia. Em jogos de esporte
para prever a posio do jogador de
outro time.
Comportamento que no
explicitamente programado mas emerge
devido a interao de comportamentos
mais simples. Flocking o exemplo
clssico de comportamento emergente.
Tcnica inserida em Emergent
Behaviour e responsvel pelo
movimento de grupos de criaturas
atravs da utilizao de regras simples.
Tcnica que objetiva mimetizar as
formaes militares. Diferencia-se de
flocking pois cada unidade guiada a
partir de um objetivo especfico a partir
de sua hierarquia e posio.
Mapeamento de influncia um mtodo
de visualizao da distribuio do poder
em um espao a partir de uma
representao bidimensional que reflete
a influncia de cada unidade na clula
que est contida e em seus vizinhos.
Variao na freqncia de atualizao
das computaes realizadas pela IA
conforme a proximidade do jogador. Por
exemplo, se o personagem no est
sendo visto pelo jogador, a sua IA pode
ser atualizada apenas quando o resultado
for perceptvel.
O gerenciamento de tarefas considera,
para a resoluo de um problema, um
conjunto de tarefas e um grupo de
agentes. Um gerenciador centralizado
prioriza as tarefas e as distribui ao
melhor candidato para resolver cada
tarefa.
Enquanto algoritmos de pathfinding
utilizando A* encaixam em ambientes
estticos, nos jogos os ambientes, muitas
86
obstculos)
Scripting
Todos os gneros
Todos os gneros
Half-Life (Valve)
Stack-based
State Machine
tambm
conhecido como
push-down
automata
Subsumption
Architecture
Todos os gneros
principalmente FPS e
RTS
FPS;
RTS
Jogos cujo
movimento de uma
unidade no pode
conflitar com os
objetivos de altonvel.
Halo (Bungie)
Halo 2 (Bungie)
RTS
FPS
Empire Earth(Stainless
Stell Studios)
Age Of Empires
(Emsemble Studios)
C&C
Renegade(Westwood
Studios)
Terrain Analysis
87
88
E outras atividades.
89
Turnos: Nmero de turnos que voc possui para utilizar durante o jogo.
Cada ao que voc realiza consome um certo nmero de turnos.
De tempos em tempos o imprio recebe mais turnos;
Dinheiro:
Quantidade
de
dinheiro
que
imprio
possui.
Cada construo ou unidade possui um preo para ser obtida ou para ser
mantida. Se o valor de dinheiro ficar com valor negativo, o imprio est em
crise e nenhuma ao pode ser feita at conseguir torn-lo positivo;
Terra: Acres que cada imprio possui. Cada acre permite que se faa uma
construo. Acres so obtidos atravs de explorao ou atacando outros
imprios.
90
Magia: Poder mgico que o imprio possui. Quanto mais magos, maior o
poder mgico do imprio. Magia utilizada para realizar feitios de ataque.
Cada feitio tem um custo varivel, o qual depende da evoluo do imprio.
91
Ataques bem sucedidos: Nmero de ataques realizados por suas tropas que
conseguiram ser bem sucedido. Um ataque bem sucedido quando captura
terra do imprio adversrio;
Defesas bem sucedidas: Nmero de ataques sofridos por seu imprio que
foram repelidos;
92
Terra no utilizada: Cada construo feita em seu imprio deve ser alocada em
um acre de terra livre. Acres so obtidos atravs de explorao ou de ataques.
Acres livres tambm servem de morada para sua populao, embora de
maneira menos efetiva que as reas residenciais;
Gastos esperados: Quantidade estimada de dinheiro que sai dos cofres pblicos
no prximo turno. Depende dos custos para manter as tropas e da quantidade
de terra que um imprio tem para administrar. Para baixar esse valor, sem
diminuir o nmero de tropas, o imprio deve investir em reas militares;
93
Renda per capita: Representa a quantidade de dinheiro que cada civil gera por
turno. A taxa de impostos uma porcentagem aplicada sobre este valor;
94
Ilustrao A3 - Vizinhana.
95
96
97
interessante observar que cada gerao parece ignorar os eventos da anterior, mal
convencionando os seus marcos. Por exemplo, os jogos para BBS, em algumas fontes, nem
so citados em relao linha do tempo dos jogos online.
Em outro exemplo caracterstico, muitos acreditam que o primeiro jogo online foi
Doom em 1993 por causa do grande sucesso e influncia na indstria de jogos. Isto posto,
surpreendente a existncia de conceitos que so reinventados desde a dcada de 70. No caso
citado, os jogos de tiro de 1 pessoa foram criados em 1973. O objetivo desta seo ,
portanto, estabelecer os jogos online como um tipo de jogo e conceito recorrente e
estabelecido no universo ldico.
98
99
100
DND - 1974: No era um jogo multiplayer, mas foi um dos primeiros jogos de
masmorra grficos a serem executados no sistema PLATO. Provavelmente
derivado de um jogo de 1972 de outro sistema. DND serviu de inspirao para
todos os subseqentes. Foi o primeiro jogo a ter incio, meio e fim e a
apresentar lojas para comprar itens e um chefe protegendo o objetivo final.
101
individualmente. Cada cena era composta por uma viso detalhada incluindo a
sala, monstros, portas e corredores, alm da fora e poderes do personagem.
tamanho
complexidade
do
jogo
demandaram
um
102
Empire
Star Trek 1972: Jogo de estratgia por turnos escrito em BASIC por Mike
Mayfield no ano de 1972. Um dos primeiros jogos espaciais a serem criados.
Sua fama e contribuio esto em ser um dos primeiros jogos textuais. Tal fato
implicou na pouca necessidade de recursos computacionais necessrios para
jog-lo [MAR2001]. Devido a sua simplicidade, portanto, Star Trek foi um dos
jogos mais adaptados para computadores pessoais e mainframes da poca.
Empire (do sistema PLATO) se baseia em Star Trek.
Hunt the Wumpus 1972: Escrito por Gregory Yob em 1972, Hunt the
Wumpus um jogo de esconde-esconde em um labirinto com o formato de um
dodecaedro. Pode ser considerado um precursor dos jogos do gnero Adventure
(Aventura, jogos com histrias interativas). Sua inovao est em provar que
um mundo virtual poderia ser em qualquer formato e tamanho diferente do
103
tradicional grid com duas dimenses. Alm disso, demonstrou tambm como o
formato do mundo do jogo tem influncia direta na jogabilidade. Outra
contribuio relevante a introduo perspectiva do jogador em incorporar
um personagem. Em todos os jogos anteriores, o jogador controlava algum
objeto, no Hunt the Wumpus, entretanto, o jogador passou a ser tratado como
voc, ou seja, o jogador algum no mundo do jogo.
Star Trader- 1974: Jogo de nave baseado em setores no qual a nave do jogador
movimenta-se entre esses setores vendendo e comprando combustvel, comida
e equipamento. A principal contribuio desse jogo o fato de ter servido de
base para as dinmicas de trading (negociao) em jogos de estratgia como
Trade Wars e posteriores [PRI2003].
104
105
106
107
108
criador disponibilizava para as outras BBS gratuitamente ou mediante uma taxa. interessante
observar que o modelo de jogos shareware foi aplicvel aos Door Games, ou seja, os sysops
poderiam instalar gratuitamente em seus sistemas uma verso limitada de um jogo e caso ele
fizesse sucesso entre sua comunidade, a verso sem restries seria comprada.
Em 1984, Chris Sherrick escreve Trade Wars para sua BBS. Tal jogo tornou-se um dos
door games mais influentes e um dos primeiros a permitir a interao entre jogadores. Trade
Wars um jogo de imprios espaciais baseado em turnos. No h combate em tempo real.
Cada jogador recebe um nmero limitado de turnos por dia. Quando os turnos acabam, outro
jogador recebe turnos e pode jogar. Embora acredite-se na influncia de DECWAR e
MegaWars como inspirao para Trade Wars, o criador do jogo comenta que no conhecia
tais jogos na poca [PRI2003]. Assim, os conceitos de Trade Wars so originrios de Star
Trader, do boardgame Risk e do jogo Hunt the Wumpus. Como o cdigo do Trade Wars era
aberto o que provocou o surgimento de diversas verses que evoluram o conceito inicial,
implementando, por exemplo, a possibilidade dos jogadores interagirem com o sistema de
forma concorrente.
Com certeza um dos door games mais populares foi LORD (Legend of the Red
Dragon), criado por Seth Able em 1989 [EHR2002]. LORD um RPG com temtica
medieval com um mundo bastante completo. Embora o jogador tivesse um conjunto limitado
de aes disponveis, como a maior parte dos door games, LORD era um jogo textual, o apelo
imersivo era grande pois o mundo do jogo era bem construdo e possua uma srie de
ocorrncias aleatrias que faziam com que cada seo de jogo fosse diferente da outra. Uma
srie de histrias secundrias tambm mantinha o interesse dos jogadores estimulando a sua
imaginao devido riqueza do mundo online apresentado. Na poca, as BBSs comerciais
comearam a crescer. Tais BBSs poderiam disponibilizar dezenas de linhas para seus clientes.
Os jogadores tambm tinham capacidade de se comunicar com outros, fazendo alianas,
lutando entre si ou apenas conversando em uma interface parecida em formato de chat. LORD
foi o primeiro jogo a dar importncia a atividades cotidianas de interao virtual entre os
jogadores humanos. No ambiente do jogo, por exemplo, o jogador poderia conversar em uma
taverna, fazer apostas e, at mesmo, casar.
O sucesso de LORD influenciou o surgimento de outros jogos e trouxe um pblico
diferente para o mundo das BBSs: as pessoas que acessavam as BBSs com o objetivo de
109
Usurper- 1993: RPG online com temtica medieval. Permite que os jogadores
formem times. A caracterstica inovadora deste jogo a presena de NPCs com
as mesmas caractersticas do jogador e com uma IA simples. Dessa forma, o
jogo, em uma BBS comeava menos vazio para os primeiros jogadores.
Uma funcionalidade interessante de alguns destes jogos como, por exemplo, no BRE
a possibilidade de jogos inter-BBS. Utilizando uma tcnica de envio de mensagens anloga
de redes do tipo FidoNet, era possvel organizar campeonatos, nos quais os imprios de uma
BBS competiam com os de outra.
A Internet provocou a perda de interesse pelas das pessoas pelas BBSs. Aos poucos os
sistemas foram fechando e os door games foram esquecidos. Era difcil para os sistemas com
interface essencialmente textual competir com a rica interface grfica do navegador Web. A
principal contribuio dos door games foi a popularizao dos jogos online fora do meio
acadmico e/ou das grandes empresas de jogos.
110
111
112
um MUD grfico com viso em primeira pessoa 2.5 D, ou seja, uma falsa sensao de 3
dimenses como no jogo Doom. No se obteve grande sucesso comercial: o jogo limitou-se a
12000 pessoas.
Ultima Online foi o sucesso que realmente iniciou a era moderna dos jogos online.
Segundos os dados de pesquisa realizada por Woodcock [WOO2005], sobre a quantidade de
assinantes em jogos online massivos, em pouco mais de um ano alcanou a marca de 100000
jogadores pagantes. Seu pico de pagantes foi no primeiro semestre de 2003, quando havia
250.000 assinantes. Oito anos aps seu lanamento manteve uma base de mais de 150000
usurios.
Ultima um RPG online medieval com viso top-down em terceira pessoa. Tal viso,
embora tenha sido utilizada pelo jogo Diablo, anteriormente, foi uma das principais inovaes
e foi aplicada na maioria dos jogos subseqentes. Com Ultima as portas foram abertas para o
lanamento de diversos outros jogos online massivos. A sigla cunhada para classific-los, a
partir de Ultima, MMOG.
Outro jogo online surgido em 1999 foi Everquest. Diferente do mundo totalmente
medieval de Ultima, Everquest um mundo fantstico repleto de magia e raas diferentes.
Everquest mantm uma mdia de 400.000 assinantes. Outro mundo medieval pioneiro foi
Asherons Call, criado pela Microsoft em 1999. Teve seu pico de assinantes em janeiro de
2002 com cerca de 120.000 assinantes. Em sua pesquisa, Woodcock [WOO2005] considera a
era de ouro dos jogos online o perodo at abril de 2001 quando os jogos citados tiveram
grande crescimento e inspiraram outras iniciativas. De maio de 2001 a abril de 2002 um
perodo de transio indicou a saturao do mercado dos MMORPGs de fantasia. Nesse
perodo o nmero de assinantes diminuiu e se espalhou em diversos sistemas. Muitos jogos
foram cancelados, conduzindo a uma fase caracterizada pela competio.
O mercado continua a crescer com mais pessoas interessadas em jogar online. Estimase que de Outubro de 2004 a Janeiro de 2004, nos Estados Unidos, cerca de 1 milho de
pessoas comearam a assinar algum jogo. Entretanto, o processo de canibalizao dos
assinantes caracterstico da atualidade. Dessa forma, os novos jogos roubam a ateno e os
assinantes dos anteriores em um processo de renovao contnua. Como a infra-estrutura para
manter um MMOG cara, a perda de assinantes implica em prejuzo. Nesse cenrio, difcil
acreditar que os jogos online da gerao iniciada por Ultima Online tenham durao to longa
113
quanto os da dcada de 80. Os ambientes esto mais descartveis e o jogador tem inmeras
opes de mundos para compartilhar. S na Coria, por exemplo, existem centenas de jogos
massivos online.
Outro ponto a se destacar a temtica comum maioria dos jogos de sucesso. Embora
existam ambientes como Matrix Online (mundo da franquia Matrix), Eve Online (fico
cientfica), City Of Heroes (cidade com super-heris e viles), The Sims Online (extenso
online ao jogo The Sims) e Star Wars Galaxies (universo da franquia Star Wars), mais de 80%
dos MMOGs so RPGs de fantasia. World of Warcraft (WoW) e Everquest II, lanados no
segundo semestre de 2004, despontam como os principais responsveis pelo crescimento do
mercado e canibalizao dos assinantes dos outros jogos. Ambos tambm contriburam com a
manuteno da proporo destinada ao gnero dos RPGs de fantasia. WoW, inclusive, o
MMORPG com crescimento mais rpido na base de usurios: no primeiro dia, 200,000
jogadores criaram contas no sistema, em dois meses mais de 700,000 unidades do jogo j
haviam sido vendidas nos EUA, Austrlia e Nova Zelndia. Alm disso, em poucos meses o
jogo tambm quebrou o recorde de nmero de usurios concorrentes nos EUA, com mais de
200.000 pessoas simultneas jogando. O jogo tambm foi disponibilizado em fevereiro de
2005 para o mercado europeu e tambm alcanou recordes expressivos com 180000 usurios
concorrentes, distribudos em 80 servidores. Seu sucesso em todas as regies justificado
pelo seu apelo tanto para o jogador casual quanto para o harcore.
At agora, apenas o mercado americano de jogos online foi contextualizado com
destaque. Deve-se discernir, porm, que o maior mercado para jogos online do mundo a
Coria do Sul. Alguns fatores polticos e culturais explicam tal situao [KEN2003]:
114
115
Este anexo apresenta o ranking obtido para as rodadas nas quais os jogadores humanos
e automticos interagiram.
116
Tipo
Networth
Humano
72591982
Humano
19297506
Humano
18655559
Jogador Automtico 6
15483631
Humano
15411470
Jogador Automtico 10
15142742
Jogador Automtico 5
13495338
Jogador Automtico 11
13028227
Jogador Automtico 3
12443893
10
Jogador Automtico 12
12379579
11
Jogador Automtico 4
12078996
12
Jogador Automtico 1
11764931
13
Humano
11382933
14
Jogador Automtico 2
10403998
15
Humano
10389575
16
Jogador Automtico 9
7969393
17
Jogador Automtico 8
6749882
18
Humano
6735699
19
Humano
6587604
20
Jogador Automtico 7
6568127
117
Tipo
Networth
Humano
135072907
Humano
25354862
Humano
19060877
Humano
16831230
Humano
12424323
Humano
11749395
Humano
11192230
Humano
10926308
Jogador Automtico 1
10835310
10
Humano
10059101
11
Humano
9969258
12
Humano
9887671
13
Jogador Automtico 2
9853419
14
Humano
9679473
15
Jogador Automtico 6
8979769
16
Humano
8386124
17
Jogador Automtico 4
7955111
18
Jogador Automtico 3
7256574
19
Jogador Automtico
6350844
20
Humano
6296287
21
Humano
6038672
118
22
Humano
5859799
23
Jogador Automtico 7
5714609
24
Humano
4305934
25
Humano
4209886
26
Jogador Automtico 5
4047388
27
Humano
3806810
28
Humano
3547342
29
Humano
3382718
30
Humano
3066850
31
Humano
2761314