Você está na página 1de 20

Tcnicas de Inteligncia Artificial em StarCraft

UNIVERSIDADE FEDERAL DE PERNAMBUCO


CENTRO DE INFORMTICA

GRADUAO EM CINCIA DA COMPUTAO

Tcnicas de Inteligncia
Artificial em StarCraft
Vincius Vieira Moreira

RECIFE, OUTUBRO DE 2015

Tcnicas de Inteligncia Artificial em StarCraft

Resumo
Esse trabalho visa apresentar uma viso geral da aplicao de tcnicas de IA (Inteligncia
Artificial) em jogos eletrnicos de estratgia em tempo real (Do ingls, Real Time Strategy - RTS),
sendo abordado mais especificamente o jogo StarCraft. Sero apresentados os desafios enfrentados no
desenvolvimento de oponentes controlados pela mquina e as tcnicas utilizadas atualmente para atacar
esses desafios. Esta monografia apresenta os principais desafios e tcnicas construo de agentes de
Inteligncia Artificial para jogos RTS (bots) e ao fim apresenta os problemas em aberto nessa rea de
pesquisa.

Tcnicas de Inteligncia Artificial em StarCraft

Sumrio
1 Introduo.........................................................................................................................1
2 Viso Geral........................................................................................................................2
2.1 Histria.......................................................................................................................2
2.2 Caractersticas e StarCraft..........................................................................................4
3 Inteligncia Artificial em jogos RTS.................................................................................4
3.1 Caractersticas do StarCraft.......................................................................................6
3.2 Ttica e Estratgia em StarCraft................................................................................8
3.3 Questes abertas para IA para jogos RTS................................................................12
4 Concluso........................................................................................................................13
Referncias Bibliogrficas....................................................................................................14

Tcnicas de Inteligncia Artificial em StarCraft

Tcnicas de Inteligncia Artificial em StarCraft

1 Introduo
Atualmente, cada vez mais os jogos eletrnicos esto se fazendo presentes no
cotidiano da populao, seja na forma de jogos para smartphones e tablets, dos tradicionais
consoles de mesa ou dos portteis. Mas alm de toda essa popularidade, os jogos tambm
so verdadeiras foras propulsoras de muitas reas de conhecimento, mas principalmente
em reas relacionadas a computao, que o artifcio que permite toda a interatividade que
faz dos jogos o que eles so na atualidade.
Este trabalho vem apresentar uma viso sobre Inteligncia Articial e em particular
sobre suas tcnicas e implementao no jogo StarCraft. O recorrentemente escolhido
como plataforma de pesquisa para tcnicas de Inteligncia Artificial devido ao seu sucesso
comercial, grande comunidade de pesquisa e at competies entre os agentes jogadores
no-humanos.
Esta monografia comea com o captulo 2 que mostra uma viso geral ao leitor. Este
captulo o far explicando a histria dos jogos eletrnicos, partindo desde o primeiro jogo
eletrnico, passando pelas primeiras tcnicas de Inteligncia Artificial a serem
implementadas nestes at o nascimento do gnero de jogos de estratgia, que foi um dos
maiores impulsos para a pesquisa de Inteligncia Artificial. No captulo 3, a monografia
tratar mais especificamente de conceitos do jogo StarCraft, tcnicas de Ttica e Estratgia
e por fim apresenta algumas das questes em aberto na pesquisa de Inteligncia Artificial
em jogos RTS. A monografia em seguida finalizada com a apresentao das concluses
deste trabalho.

Tcnicas de Inteligncia Artificial em StarCraft

2 Viso Geral
Tcnicas de Inteligncia Artificial (IA) so imprescindveis no desenvolvimento de jogos
atualmente, principalmente em jogos de estratgia. Este captulo abordar a histria da Inteligncia
Artificial em jogos eletrnicos e a sua extrema importncia em jogos de estratgia em tempo real
(Do ingls, Real Time Strategy - RTS).

2.1 Histria
Os primeiros jogos eletrnicos desenvolvidos no utilizavam tcnicas de IA, ou por serem
simples demais ou por serem projetados para dois jogadores humanos. O primeiro jogo eletrnicos que
se tem registro se chamava Tenis for Two e foi desenvolvido por William Higinbotham (Siyuan Xu,
2012) e foi conectando um osciloscpio a um computador analgico. O primeiro jogo a rodar em um
computador foi Spacewar, desenvolvido no MIT. Nenhum desses dois jogos inclua IA, seja por sua
simplicidade ou por terem sido projetados para serem jogador entre oponentes humanos.
Em meados dos anos 70 a Atari lanou o primeiro jogo de fliperama, que se chamava
Computer Space, e foi a que os primeiros game designers comearam a incorporar as primeiras
tcnicas de IA em jogos. O propsito inicial dessas IAs era dificultar a vida dos jogadores para que esses
gastassem mais e mais nas mquinas de fliperama (Siyuan Xu, 2012). Alguns jogos dessa gerao foram
Pong, Space Invaders e Donkey Kong. As primeiras tcnicas de Inteligncia Artificial a serem
incorporadas em jogos eletrnicos eram extremamente rudimentares e nem sequer se aproximavam do
comportamento humano, geralmente eram padres armazenados pre-determinados de movimentao a
serem escolhidos de maneira aleatria pela mquina, para que a movimentao fosse menos previsvel.

Pong foi um dos primeiros jogos que possua uma IA que fazia parecer para os jogadores humanos que
eles estavam enfrentando outra pessoa e o jogo creditado como um dos precursores da real Inteligncia
Artificial nos jogos eletrnicos. A maneira com que Pong foi projetado (duas raquetes de cada lado
da tela, como que simulando uma partida de Ping-Pong)

Tcnicas de Inteligncia Artificial em StarCraft

Figura 2.1 Imagem do jogo Pong.

tornava impossvel o uso da antiga estratgia de IA, ou seja, padres armazenados que eram escolhidos
de maneira aleatria. Dessa vez a IA tinha que fazer decises baseadas nas aes dos jogadores
humanos, que era basicamente realizar clculos para saber a onde a raquete deveria ir para no deixar
que a bola sasse. Hoje em dia esse tipo de IA pode parecer rudimentar, mas foi a primeira vez que o
jogador pde sentir como se tivesse jogando contra um oponente tambm humano.
Em meados dos anos 80, com a chegada dos computadores pessoais, a onda de jogos de
fliperama comeou a desaparecer. Com o desenvolvimento da indstria de computadores pessoais e seu
maior poder de processamento os jogos e consequentemente suas IAs tambm comearam a se tornar
mais complexas. Ainda durante os anos 80 outros gneros emergiram rapidamente, as antigas tcnicas de
IA estavam ultrapassadas. Projetistas tinham agora que tratar o desenvolvimento de IAs muito mais
seriamente, tendo em vista que elas haviam se tornado um aspecto padro dos jogos eletrnicos.
Dentre os novos gneros que estavam tomando forma os jogos de estratgia tiveram um papel
importante no desenvolvimento de IAs, principalmente por conta da necessidade de IAs de alta
qualidade pra esse gnero de jogos e porque uma IA de qualidade contribui muito mais para a qualidade
de um jogo de estratgia em relao a jogos de outros gneros. Jogos de estratgia em tempo real (RTS)
foram introduzidos j no final dos anos 80, IAs altamente competentes e desafiadoras eram o padro

Tcnicas de Inteligncia Artificial em StarCraft

para o gnero de jogos de estratgia e foi a partir da que o projeto IA para jogos de estratgia comeou a
se formar como um campo de pesquisa em computao.

2.2 Caractersticas
Jogos de estratgia em tempo real formam um gnero especfico de jogos eletrnicos em
que o jogador precisa construir uma economia, angariando recursos e construindo uma base militar,
um certo poderio militar, treinando unidades blicas e pesquisando novas tecnologias para
aprimorar as suas unidades, com o objetivo de derrotar seu oponente, objetivo esse alcanado
atravs da destruio total ou parcial do exrcito inimigo e de sua base.
As principais diferenas de um jogo RTS para um jogo de tabuleiro tradicional, tal qual o
Xadrez so as seguintes: Eles so jogos de movimentos simultneos, ou seja, mais de um jogador
pode realizar aes ao mesmo tempo, alm disso, essas aes levam um certo tempo para serem
concretizadas. RTS so em tempo-real, o que significa que as decises tem que ser tomadas em um
tempo muito reduzido, de maneira a aumentar as chances de vitria. A maioria dos RTSs so apenas
parcialmente observveis, ou seja, nem todos os elementos do jogo esto observveis, o que torna
complicada a busca pela deciso tima. E por fim, a complexidade desses jogos, seja no tamanho do
espao de estados possveis ou seja no nmeros de aes disponveis a cada ciclo de tomada de
decises imenso.
O espao de estados no Xadrez normalmente estimado em ordens de 10^50, 10^70 no
Poker e 10^120 em Go, em StarCraft, por exemplo, um mapa comum estimado sendo de muitas
ordens de grandeza acima dos nmeros citados (Ontanon, 2013). Por esses motivos, tcnicas
comuns usadas em jogos de tabuleiro, como rvores de busca, no podem ser diretamente aplicadas
diretamente em jogos RTS. Curiosamente, jogadores humanos so capazes de lidar com a
complexidade desses jogos, por essa razo, uma mirade de tcnicas tem sido testadas para lidar
com esse domnio.

3 Inteligncia Artificial em jogos RTS


A pesquisa na rea de Inteligncia Artificial em jogos RTS de grande importncia e valia,
seja devido ao seu estado imaturo, se comparado com agentes jogadores de jogos clssicos de
tabuleiro, como o Xadrez, seja pela rica plataforma que esses jogos fornecem para o teste e
desenvolvimento de tcnicas de Inteligncia Artificial.
Os principais motivos para a performance fraca da IA utilizada em jogos so os seguintes (Buro,
2004):

Tcnicas de Inteligncia Artificial em StarCraft

Jogos apresentam centenas ou at milhares de objetos interativos, informao imperfeita e


tomada rpida de decises. Em contrapartida, em jogos clssicos de tabuleiro as
possibilidades de interao so de vrias ordens de grandeza menores, a informao
perfeita e completa e as aes so realizadas em turnos.
Companhias de desenvolvimento de jogos comumente trabalham com severas limitaes de
tempo. para o lanamento do jogo, e de recursos, o que torna pouco vivel um grande
investimento em pesquisas na rea de Inteligncia Artificial.
Jogos RTS so complexos, o que indica que no fcil montar uma infraestrutura sobre
esses jogos para a conduo de experimentos em Inteligncia Artificial, alm do mais, a
maioria dos ttulos do gnero no possuem uma interface aberta para o desenvolvimento de
agentes de Inteligncia Artificial para o jogo, principalmente devido a natureza fechada dos
jogos comerciais. Isso resulta em uma falta de competies entre agentes jogadores nesses
jogos, competies essas que so uma das principais foras que impulsionam a pesquisa em
Inteligncia Artificial.
Jogos multijogador frequentemente no precisam de uma IA de alto nvel para serem
comercialmente bem sucedidos, pois, o principalmente aspecto e fonte de entretenimento
nesses jogos o embate entre jogadores humanos de forma online.
Alm do mais, a pesquisa em Inteligncia Artificial em jogos do gnero principalmente
motivada por alguns dos motivos listados abaixo:
O desenvolvimento de agentes jogadores para jogos RTS pode ser limitado em aspectos
especficos, tais quais batalhas locais, construo de fortificaes, como atacar, defender
uma cidade, etc, de maneira eficiente, o que tambm fornece uma forma objetiva de
mensurar o desempenho das tcnicas utilizadas.
Uma Inteligncia Artificial forte est muito mais propensa a fazer a diferena em futuros
jogos comerciais, uma vez que os grficos esto se aproximando de um ponto de saturao.
Alm do mais, agentes jogadores no-humanos contribuem muito para a experincia em
jogo, uma vez que esto sempre disponveis para jogos e treino, o que no acontece com
jogadores humanos.
E finalmente, o desenvolvimento de tcnicas mais refinadas de Inteligncia Artificial para
jogos RTS tambm de interesse militar, que fazem simulaes de batalhas em programas
de treinamento. (Herz & Macedonia, 2002)

Tcnicas de Inteligncia Artificial em StarCraft

3.1 Caractersticas do StarCraft


StarCraft: Brood War um jogo de Estratgia em Tempo Real extremamente popular
lanamento em 1998 pela empresa Blizzard Entertainment. StarCraft ambientado em um universo
de fico cientfica onde o jogador deve escolher uma das trs raas existentes neste universo:
Terran, Zerg ou Protoss. Uma dos principais trunfos de StarCraft que as trs raas, apesar de
bastante diverso, so muito bem balanceadas em seus poderes e fraquezas.

Figura 3.1 Imagem do jogo StarCraft: Brood War.

Os Terrans constituem uma raa bastante flexvel e verstil, sendo assim uma escolha
intermediria entre os Zergs e os Protoss. J a raa Zerg constituda principalmente de unidades de
baixo custo e fracas, que entretanto podem ser produzidas rapidamente, o que encoraja o jogador a
vencer seu oponente a partir de uma imensa quantidade de criaturas fracas. Por outro lado, a raa

Tcnicas de Inteligncia Artificial em StarCraft

Protoss diametralmente oposta dos Zergs, possuindo unidades de maior custo, mas que so mais
fortes e resistentes, essas caractersticas comumente fazem o jogador dessa raa optarem por
estratgias de qualidade em detrimento de um grande nmero de unidades.
A Figura 3.1 mostra uma captura de tela do jogo em que o jogador est a jogar com a raa
Terran. A fim de vencer a partida, o jogador deve reunir recursos (como minerais e gs Vespeno).
Uma vez que os recursos foram adquiridos tem-se que aloc-los para a construo de novos
edifcios (que servem basicamente para fortalecer a economia, criar e disponibilizar unidades mais
poderosas), pesquisar novas tecnologias (para a utilizao de novas hbilidades e o fortalecimento
das unidades j existentes) e para o treino (produo) de novas unidades. As unidades criadas
devem ser divididas de acordo com suas funes na partida, que so reconhecimento de terreno,
ataque e defesa. Enquanto realiza todas essas tarefas, o jogador tambm precisa entender a estrutura
do mapa em que a partida se d, para que esse possa realizar decises como onde construir novos
edificaes (elas devem se concentrar em uma rea ou expandir). Uma vez que unidades ofensivas
de dois oponentes se encontram, esses jogadores devem gerenciar as suas unidades para que essas
tenham vantagem no combate e saiam vitoriosas, o que requer aes rpidas e reativas de acordo
com as aes do oponente. Cada jogador pode controlar at 200 unidades (mais um nmero
ilimitado de edificaes), alm disso, cada raa contm entre 30 e 35 tipos de unidades distintas, a
maioria delas com uma quantidade signitificativa de hbilidades especiais.
Todos os fatores apresentados acima fazem de StarCraft um desafio significativo, onde os
jogadores humanos ainda so significantemente melhores que jogadores no-humanos. Por
exemplo, em StarCraft os jogadores so divididos em ranks que vo de E (que o menor rank
possvel) at A+ e Olmpico, que so respectivamente o segundo maior e o maior rank possveis, os
melhores jogadores no-humanos (bots) esto categorizados entre D e D+, enquanto jogadores
humanos amadores normalmente esto entre C+ e B. Para efeitos de comparao, jogadores
profissional normalmente esto ranquados entre A- e A+ (Ontanon, 2013).
De um ponto de vista terica, o espao de estados possveis e gigantesco. Por exemplo, considere
um mapa comum do jogo (que possui 128 x 128 possveis posies para as unidades). Dado
qualquer momento da partida pode-se ter entre 50 e 400 unidades no mapa, cada uma delas tendo
um estado interno complexo (como energia restante, aes sendo executadas, pontos de vida, etc).
Esse fatores levam rapidamente a um nmero imenso de estados possveis (muito maior que jogos
como Xadrez e Go, sua verso oriental). Por exemplo, considerando apenas o nmero de posies
iniciais (128 x 128 posies possveis por unidade) e 400 unidades, temos um nmero inicial de
16384^400 ou 10^1685 possibilidades (Ontanon, 2013). Se adicionarmos outros fatores do jogo,
obtemos nmeros ainda maiores. Dessa forma fica ilustrado a complexidade do jogo e,
consequentemente, da construo de bots que realizem todas essas tarefas de maneira pelo menos
satisfatria.

Tcnicas de Inteligncia Artificial em StarCraft

3.2 Ttica e Estratgia em StarCraft


Nesta seo sero abordadas algumas tcnicas para a implementao de tticas e estratgia
por um agente de Inteligncia Artificial no jogo StarCraft.
Quando se fala de tticas em StarCraft, basicamente est se mirando em aspectos de microgerenciamento do jogo, como o controle de unidades individuais ou pequenos grupos dessas
unidades durante o curto perodo de tempo. Tais decises tticas podem seguir uma mtrica simples,
como tentar maximizar a quantidade de poder de fogo do oponente que pode ser retirada do campo
de batalha no menor espao de tempo (Davis 1999). Na indstria de jogos, comum o uso de
tcnicas mais simples, como mquinas de estado finitas, que so usadas para a tomada de decises
(Robertson 2014). Entretanto, mesmo nessas decises de pequena escala, muitos fatores podem ser
considerados para tentar realizar a melhor ao possvel, particularmente em se tratando de
unidades diferentes com hbilidades especiais diferentes. Mas o escopo desse problema de microgerenciamento sequer se aproxima do tamanho do problema que envolve o jogo completo. Parece
haver menos interesse de pesquisa nesse aspecto particular do jogo em detrimento de aspectos de
larga escala, estratgias de longo prazo, tomada de decises e aprendizado.

Tcnicas de Inteligncia Artificial em StarCraft

Figura 3.2 Uma batalha em StarCraft. Habilidades de micro-gerenciamento so extremamente


necessrias para aumentar a eficcia dos ataques realizados contra unidades inimigas.
A primeira estratgia de tomada de deciso ttica a ser abordada o Aprendizado por
Reforo, que uma rea de aprendizado de mquina. Essa tcnica basicamente dita que o agente
no-humano deve aprender a partir de tentativa e erro, realizando aes de maneira a aumentar o
valor da funo de recompensa. Atravs de vrias iteraes de aprendizado no-supervisionado,
utilizando-se tcnicas de Aprendizado por Reforo pode-se descobrir novas solues que so
melhores do que as j sabidas previamente. Alm disso, relativamente fcil aplicar o Aprendizado
por Reforo em um novo domnio, preciso apenas de uma descrio da situao, aes possveis e
uma mtrica de recompensa (Manslow, 2004). Essa tcnica no comumente utilizada em tomadas
de deciso estratgicas, uma vez que decises desse tipo possuem um espao de problemas enorme
e normalmente a recompensa no vem de maneira imediata, o que dificulta o ajuste dos pesos do
algoritmo utilizado.

Tcnicas de Inteligncia Artificial em StarCraft

At ento, tcnicas baseadas em rvores de busca tem sido incapazes de lidar com toda a
complexidade estratgica de medidas com recompensa a longo prazo que permeiam as aes de
jogos RTS. Entretanto, essas tcnicas tem tido sucesso ao serem aplicadas a aspectos de menor
escala em jogos RTS, como situaes de combate entre oponentes. Para fins de aplicao dessas
tcnicas de busca, um simulador que permita que o sistema de Inteligncia Artificial avaliar os
resultados das aes possveis rapidamente com objetivo de explorar a rvore de busca (Robertson,
2014).
Entretanto, tcnicas baseadas em rvores de busca so particularmente difceis de se usar
em StarCraft devido a natureza fechada do cdigo-fonte do jogo, e consequentemente, a inabilidade
de se manipular arbitrariamente o estado do jogo. Isso significa que as mecnicas precisas das
regras do jogo so incertas e o jogo no pode ser facilmente utilizado para fazer simulaes a partir
de um estado particular.
Apesar de funcionar muito bem em simulaes, os resultados das tcnicas baseadas em rvores de
busca no se traduzem perfeitamente para o jogo, devido a simplificaes como a falta de coliso de
unidades e acelerao, o que afeta o resultado final (Churchill and Buro 2012;
Churchill, Saffidine, and Buro 2012). O Sistema foi capaz de vencer apenas 84% dos cenrios
contra o bot que j vem programado no jogo, embora a simulao indicasse 100% de chances de
vitria. A principal limitao desse mtodo se d por conta da chamada exploso combinatria de
aes possveis, ou seja, quando o nmero de unidades envolvidas em combate cresce, o nmero de
aes possveis cresce e a simulao se torna invivel quando se tem mais do que 8 unidades de
cada lada, pois essa se torna demasiadamente lenta.
Afim de se criar um sistema que pode realizar aes inteligentes de forma estratgica em um jogo
RTS, muitos pesquisadores criaram um sistema de planejamento. Esses sistemas so capazes de
determinar sequencias de aes a serem tomadas em uma situao especfica para alcanar um
determinado objetivo. Este um problema desafiador devido a natureza dos jogos RTS ser de
informao incompleta, que se traduz ao StarCraft atravs de reas do mapa que no visveis para as
unidades, alm do j conhecido imenso espao de aes possveis e a presena de vrios objetivos
simultneos que no necessariamente tem uma hierarquia.
Como os sistemas de planejamento, os pesquisadores visam tanto desenvolver um agente
jogador no-humano que jogue como um jogador humano como reduzir o esforo de
desenvolvimento requerido pelas tcnicas de desenvolvimento de scripts, que a mais comum na
indstria atualmente (Robertson, 2014). As principais tcnicas usadas na construo de sistemas de
planejamento so: Planejamento Baseado em Casos (do ingls, Case-Based Planning - CBP) e
Autonomia Orientada a Objetivos (do ingls, Goal-Driven Autonomy - GDA)
CBP uma tcnica de planejamento que atravs de situaes passadas semelhantes, extrai
solues potnciais para a atual situao. No caso do sistema CPB, as solues encontradas fazem

Tcnicas de Inteligncia Artificial em StarCraft

parte de um conjunto de planos em potencial ou subplanos que provavelmente sero efetivos na


situao atual. Sistemas CBP podem exibir uma baixa reatividade de um ponto de vista estratgico
(longo prazo) e reatividade excessiva de um ponto de vista de aes (curto prazo), no reagindo a
mudanas de alto nvel at que uma ao de baixo nvel (um escopo mais restrito do problemas,
novamente como exemplo, combates) falhe, assim, descartando um plano inteiro por conta da falha
de uma nica ao (Palma et al. 2011).
Uma das primeiras aplicaes de CBP para jogos RTS foi realizado por Aha, Molineaux,
and Ponsen (2005), que criaram um sistema que estendia o conceito de scripting dinmico (Ponsen
et al., 2005), que seleciona tticas e estratgias baseado na situao atual do jogo. Usando essa
tcnica, o sistema era capaz de jogar contra inimigos no estticos ao invs de precisar realizar
treinamento adicional toda vez que o oponente mudava. Eles reduziram a complexidade dos espaos
de ao e estados. Isso permitiu ao sistema melhorar sua estimativa de performance de cada ttica
em cada situao ao longo de vrios jogos, e eventualmente, aprendesse de maneira consistente a
ganhar de todos os outros oponentes contra os quais ele fora testado.
Autonomia orientada a objetivos, ou GDA, um modelo em que o prprio agente pondera
sobre seus objetivos e identifica quando eles devem ser atualizados, e altera ou adiciona eles como
necessidade de planos ou execues futuras. Essa tcnica lida com tanto com reatividade de eventos
de alto e baixo nvel, ou seja, esse modelo sensvel tanto a mudanas na estratgia no panorama
geral, que recebe recompensas de maneira mais lenta e gradual quanto mudanas imediatas, que so
os casos de baixo nvel, como combate e produo de novas unidades. O modelo ativamente
pondera e age sobre os motivos pelo qual ele est tendo sucesso ou falhando em seus objetivos.
Weber, Mateas e Jhala (2010) descrevem um sistema GDA para StarCraft utilizando uma
linguagem de comportamentos, que capaz de formular planos a partir de suas expectativas de um
desfecho qualquer. Se uma situao ou evento no esperado ocorre, o sistema pode gravar esse dado
como uma discrepncia, gerar uma explicao do porque desse evento ocorrer e formar um novo
objetivo e gerar um novo plano, permitindo assim que o sistema possa reagir bem a circunstncias
no previstas. Esse modelo era previamente incapaz de aprender objetivos, expectativas e mltiplos
objetivos de maneira autnoma, portanto, todas essas informao deviam vir de maneira manual,
atravs de entradas que seriam fornecidas manualmente pelos treinadores do modelo, mas,
melhorias no decorrer do tempo fizeram possvel com que esse sistema aprendesse atravs de
demonstraes de situaes que j ocorreram (Weber, Mateas, e Jhala 2012).
Esse sistema foi utilizado contra jogadores humanos em competies de StarCraft e foi avaliado
baseado em sua taxa de vitria sobre esses jogadores. O resultado obtido indica que esse tcnica na
construo de agentes jogadores no-humanos era superior a jogadores competitivos do jogo em
48% dos casos (Weber, Mateas, e Jhala; 2010; Weber et al. 2010).

Tcnicas de Inteligncia Artificial em StarCraft

3.3 Questes Abertas em IA para jogos RTS


Apesar de existirem alguns aspectos de jogos RTS em que j temos solues timas ou
boas, em alguns outros aspectos do jogo, os agentes no jogadores ainda esto muito aqum dos
jogadores humanos. Muitos desses problemas so decorrentes da falta de raciocnio imediato por
falta desses, pois, as tcnicas de Inteligncia Artificial implementadas at ento no possuem a
capacidade de ler o jogo em tempo real e decidir quais so as melhores tticas para a situao, em
suma, ainda falta um entendimento semntico das situaes enfrentadas pelos jogadores no decorrer
de uma partida. Isso est principalmente conectado quantidade imensa de aes possveis em um
jogo RTS. Os principais problemas relacionados a Inteligncia Artificial nesse gnero de jogo esto
divididos nas seguintes reas:
Aprendizado e adaptao
A adaptao s estratgias do oponente: Observar a estratgia do oponente e
sintetizar um contra-ataque adequado. As tcnicas utilizadas atualmente ou so
fortemente programadas nos seus bots ou so baseadas em estratgias previamente
aprendidas e suas performances com cada oponente, baseadas em disputas passadas,
mas atualmente bot algum cria suas prprias estratgias baseadas nas estratgias
adversrias.
Aprender por experincia em jogos RTS: como podemos desenvolver bots que se
aperfeioem com o tempo? Os bots atualmente aprendem que estratgia (de um
conjunto pr-definido de estratgias) melhor contra determinado oponente, mas
como podemos desenvolver estratgias que realizam um aprendizado mais
genrico? Isso foi alcanado em jogos clssicos como o Xadrez (Tesauro, 2001), no
contexto de rvores de busca (aprendendo a funo de avaliao). Ainda incerto
como fazer isso em jogos RTS
Aprendizado por observao (por demonstrao ou por observao do oponente)
em jogos RTS: como podemos aprender por observar o jogo em si ou os outros
jogadores? Podemos criar um algoritmo que pode automaticamente extrair
estratgias por observao e posteriormente aplic-las? J existe algum trabalho
nessa direo, mas ainda est longe de alcanar a maturidade (S. Ontanon, 2010).
Planejamento
Planejamento sob restries em tempo real: Embora algumas solues para
planejamento em tempo real em escalas menores tenham sido recentemente
propostas, o problema em larga escala sob restries de tempo ainda est em aberto.

Tcnicas de Inteligncia Artificial em StarCraft

Planejamento sob a incerteza de domnios parcialmente observveis: Como


podemos adaptar as tcnicas de planejamento para lidar com a incerteza? Esse
problema tem sido largamente estudado no contextos de jogos mais simples, como
o Gamo ou o Poker, entretanto, as tcnicas desenvolvidas nesse contexto no
escalam para jogos RTS como StarCraft.
Planejamento com recursos: Similarmente, mesmo que existam algoritmos de
planejamento que podem lidar com recursos, eles no so escalveis para o tamanho
dos problemas que jogos RTS como StarCraft precisam lidar.

4 Concluso
Esse trabalho abordou temas desde a origem dos jogos digitais e as primeiras tcnicas de
Inteligncia Artificiais utilizadas no desenvolvimento destes at o nascimento de gneros como RTS
e o impacto que as tcnicas de Inteligncia Artificial tem nesse gnero de jogos.
No incio desse trabalho foram descritos os primeiros jogos eletrnicos, desde os que no
utilizavam tcnica alguma de Inteligncia Artificial, passando pela entrada tmida dessas tcnicas no
processo de desenvolvimento de jogos e, por fim, o nascimento de gneros pra computadores
pessoais que tem nessas tcnicas o centro do entretenimento e da diverso, dando principal nfase
aos jogos de estratgia em tempo real.
Depois disso, so descritas as principais caractersticas dos jogos de estratgia em tempo real,
pontuando as diferenas entre esse gnero de jogos e os jogos clssicos de tabuleiro, a diferena no
escopo do espao de possibilidades em ambos gneros de jogos.
Sendo assim, o principal intuito desse trabalho foi apresentar uma viso geral dessa rea de
pesquisa, que o desenvolvimento de agentes jogadores no-humanos sobre a plataforma de
simulao que so os jogos RTS, mais especificamente, StarCraft.

Referncias Bibliogrficas
AHA, D.; Molineaux, M.; and Ponsen, M. 2005. Learning to
win: Case-based plan selection in a real-time strategy

Tcnicas de Inteligncia Artificial em StarCraft

game. In Munoz-A vila, H., and Ricci, F., eds., CaseBased Reasoning. Research and Development, volume
3620 of Lecture Notes in Computer Science. Springer
Berlin / Heidelberg. 520.
BURO, M. 2004. Call for AI research in RTS games. In
Proceedings of the AAAI Workshop on Challenges in
Game AI, 139142.
CHURCHILL, D., and Buro, M. 2012. Incorporating search
algorithms into RTS game agents. In Proceedings of
the AIIDE Workshop on AI in Adversarial Real-Time
Games, 27. AAAI Press.
CHURCHILL, D.; Saffidine, A.; and Buro, M. 2012. Fast heuristic
search for RTS game combat scenarios. In Proceedings
of the AIIDE Conference, 112117.
DAVIS, I. L. 1999. Strategies for strategy game AI. In Proceedings
of the AAAI Spring Symposium on Artificial
Intelligence and Computer Games, 2427.
G. Tesauro, Comparison training of chess evaluation functions, in
Machines that learn to play games. Nova Science Publishers, Inc.,
2001, pp. 117130.
HERZ, J., and Macedonia, M. 2002. Computer games and
the military: Two views. Defense Horizons, Center for
Technology and National Security Policy, National Defense
University 11.
ONTANON, Santiago et al. A Survey of Real-Time Strategy Game AI Research and Competition in
StarCraft. Ieee Trans. Comput. Intell. Ai Games, [s.l.], v. 5, n. 4, p.293-311, dez. 2013. Institute of
Electrical & Electronics Engineers (IEEE). DOI: 10.1109/tciaig.2013.2286295.
MANSLOW, J. 2004. Using reinforcement learning to solve AI
control problems. In Rabin, S., ed., AI Game Programming
Wisdom, volume 2. Hingham, MA: Charles River
Media. 591601.

PALMA, R.; Sanchez-Ruiz, A.; Gomez-Martn, M.; GomezMartn, P.; and Gonzalez-Calero, P. 2011. Combining
expert knowledge and learning from demonstration in
real-time strategy games. In Ram, A., and Wiratunga,

Tcnicas de Inteligncia Artificial em StarCraft

N., eds., Case-Based Reasoning Research and Development,


volume 6880 of Lecture Notes in Computer
Science. Springer Berlin / Heidelberg. 181195.
PONSEN, M.; Munoz-Avila, H.; Spronck, P.; and Aha, D.
2005. Automatically acquiring domain knowledge for
ROBERTSON, Glen; WATSON, Ian. A Review of Real-Time Strategy Game AI. Ai
Magazine, Auckland, v. 35, n. 4, p.75-104, nov. 2014.
WEBER, B.; Mateas, M.; and Jhala, A. 2010. Applying goaldriven
autonomy to StarCraft. In Proceedings of the
AIIDE Conference, 101106. AAAI Press.
WEBER, B.; Mateas, M.; and Jhala, A. 2012. Learning from
demonstration for goal-driven autonomy. In Proceedings
of the AAAI Conference on AI, 11761182.
WEBER, B.; Mawhorter, P.; Mateas, M.; and Jhala, A. 2010.
Reactive planning idioms for multi-scale game AI. In
Proceedings of the IEEE Conference on Computational
Intelligence and Games, 115122. IEEE.
XU, Siyuan History of AI design in video games and its development - Online, acesso em
22/09/2015 na url https://sites.google.com/site/myangelcafe/articles/history_ai

Tcnicas de Inteligncia Artificial em StarCraft

adaptive game AI using evolutionary learning. In Proceedings


of the Innovative Applications of Artificial Intelligence
Conference, 15351540. AAAI Press.

S. Ontanon, K. Mishra, N. Sugandh, and A. Ram, On-line case-based


planning, Computational Intelligence, vol. 26, no. 1, pp. 84119, 2010.

Você também pode gostar