• Nenhum resultado encontrado

regras. O balanceamento provém do ajuste do limite de acordo com o nível do jogador: o limite aumenta quando o nível do jogador está alto e o limite diminui caso contrário. O reajuste de pesos ocorre tanto nas regras que atingem o limite quanto as demais, aproveitando todas as oportunidades de aprendizagem. Essa estratégia se mostrou a mais eficiente dentre as existentes (SPRONCK et al., 2006).

Entre os fatores atrativos para a utilização dessa abordagem estão a similaridade com o uso clássico de script e a simplicidade nos processos de aprendizagem e adaptação. Devido à popularidade do uso de scripting na indústria de jogos, a técnica possui a vantagem de ser facilmente entendida e aplicada pelos desenvolvedores.

Outro destaque da técnica é a inserção de conhecimento explícito por parte do game designer, que pode aproveitar seu conhecimento do domínio na inicialização das regras e dos pesos. Esse aspecto não apenas garante a qualidade esperada do conhecimento que o agente possui para atuar no jogo, como também possibilita maior controle sobre os possíveis comportamentos tomados pelo agente.

A vantagem da técnica em relação à aprendizagem que realiza é a maior previsibilidade da adaptação para os desenvolvedores. Isso se deve ao fato da base de regras ser conhecida desde o início, o que diminui as chances de situações indesejadas ocorrerem inesperadamente.

Por outro lado, a base de regras é criada manualmente, tendendo a aumentar a complexi- dade conforme o comportamento esperado do agente e as interações nas quais está envolvido. Essa complexidade pode resultar na vulnerabilidade da IA, o que permite aos jogadores tomar vantagem ao explorar possíveis falhas no comportamento do agente, prejudicando a experiência com o jogo.

Além disso, a natureza estática das regras não prepara o comportamento dos agentes contra táticas do jogador que não foram previstas durante a etapa de desenvolvimento (PONSEN; SPRONCK, 2004). Esse aspecto torna-se mais evidente quão maior a complexidade do jogo.

3.2

Balanceamento baseado em Algoritmos Genéticos

A abordagem apresentada por DEMASI; OLIVEIRA CRUZ (2003), ao contrário da anterior, não se baseia em regras, mas em algoritmos genéticos coevolucionários de tempo real (WIEGAND; LILES; DE JONG, 2002) que codificam características de comportamento como genes dos agentes aprendizes. Eles são avaliados por uma função heurística dependente do domínio do problema chamada de função facilidade, cujo valor de aptidão indica o quão adaptado está cada agente ao nível do jogador. Essa função é capaz de realizar essa avaliação assim que ela conhece o desempenho de toda a população, sendo a partir dela que se determina se os agentes devem evoluir ou não.

Uma característica desta abordagem é o fato da evolução ser enviesada por um grupo de agentes objetivos, que possuem comportamentos alvos, considerados os melhores para

3.2. BALANCEAMENTO BASEADO EM ALGORITMOS GENÉTICOS 31 determinadas situações. Novos agentes são criados conforme uma das quatro variantes descritas adiante, sendo em geral, a partir dos operadores genéticos (EIBEN; SMITH, 2003) de cruzamento entre os agentes considerados mais aptos (com troca de características codificadas como genes), seguido de mutação (mudança aleatória de genes) em cada indivíduo da prole resultante. Os mais adaptados ao nível do jogador tendem a ser preservados e utilizados como pais na criação de indivíduos para uma nova geração. Ao longo das gerações, os indivíduos objetivos se revezam como reprodutores, conforme demandar a experiência de dificuldade estimada para o jogador.

Quando os agentes são destruídos no contexto do jogo ou ficam estagnados por um período pré-definido de tempo, a função de facilidade decide se a então geração de agentes evolui ou é mantida. Existem duas formas de evoluir: uma se dá através da comparação da quantidade de genes diferentes entre dois agentes e da modificação gradativa dos genes a fim de diminuir sua diferença genética; outra é a evolução através do cruzamento entre os agentes mais aptos e os modelos. Para o problema de DDA, os autores apresentam quatro variantes de produção dos modelos.

A primeira variante consiste na definição manual dos agentes modelos, quando deve exis- tir um modelo para cada nível de dificuldade desejado. A evolução se dá através do cruzamento entre os agentes mais aptos e os modelos.

A segunda variante difere em relação à criação dos modelos, os quais passam a ser gerados através de treinamento offline. O objetivo é fazer com que tenham um bom comportamento inicial sem uso de conhecimento explícito do domínio. O treinamento pode ser realizado testando agentes aprendizes contra agentes de comportamento aleatório, humanos ou outros agentes aprendizes (self-learning).

A terceira variante não utiliza modelos para guiar o processo evolutivo. A evolução acontece apenas com os dados presentes durante a execução (online) e as operações tradicionais de recombinação e mutação. Nessa variante, os agentes mais aptos de uma população são reunidos em um conjunto. Novos agentes são criados a partir da recombinação entre agentes desse conjunto. Esse conjunto é modificado toda vez que um agente for mais apto que o pior do conjunto, de modo que a priorizar os mais adaptados.

A quarta variante corresponde à utilização híbrida das variantes anteriores, obtendo-se modelos manualmente ou por treinamento offline numa primeira etapa (respectivamente primeira e segunda variantes) para então passar a operar em modo online conforme a terceira variante. Assim, é possível acelerar a adaptação dos agentes a partir de conhecimento explícito do domínio, mas permitindo a livre evolução dos agentes, sem a referência de objetivos fixos.

Nesta abordagem, a aprendizagem ocorre simultaneamente à adaptação na medida em que o algoritmo busca novos agentes mais aptos a partir dos agentes mais aptos existentes. A capacidade de gerar novos agentes em modo online permite ao algoritmo adaptar-se a situações imprevistas. Isso resulta na busca por estratégias novas, adaptadas ao jogador, sem a necessidade de inserção explícita de conhecimento, o que diminui o esforço envolvido para a aplicação como solução.

3.3. BALANCEAMENTO BASEADO EM APRENDIZAGEM POR REFORÇO 32