• Nenhum resultado encontrado

THAIS CARDOSO DA SILVA COMPARAÇÃO DE ALGORITMOS PARA GERAÇÃO PROCEDURAL DE FASES

N/A
N/A
Protected

Academic year: 2021

Share "THAIS CARDOSO DA SILVA COMPARAÇÃO DE ALGORITMOS PARA GERAÇÃO PROCEDURAL DE FASES"

Copied!
35
0
0

Texto

(1)

THAIS CARDOSO DA SILVA

COMPARAÇÃO DE ALGORITMOS PARA GERAÇÃO

PROCEDURAL DE FASES

LONDRINA 2018

(2)
(3)

THAIS CARDOSO DA SILVA

COMPARAÇÃO DE ALGORITMOS PARA GERAÇÃO

PROCEDURAL DE FASES

Versão Preliminar de Trabalho de Conclusão de Curso apresentado ao curso de Bachare-lado em Ciência da Computação da Univer-sidade Estadual de Londrina para obtenção do título de Bacharel em Ciência da Compu-tação.

Orientador: Prof(a). Jacques Duílio Brancher

LONDRINA 2018

(4)

Ficha de identificação da obra elaborada pelo autor, através do Programa de Geração Automática do Sistema de Bibliotecas da UEL

da Silva, Thais Cardoso.

Comparação de algoritmos para geração procedural de fases / Thais Cardoso da Silva. - Londrina, 2018.

20 f.

Orientador: Jacques Duílio Brancher.

Trabalho de Conclusão de Curso (Graduação em Ciência da Computação) -Universidade Estadual de Londrina, Centro de Ciências Exatas, Graduação em Ciência da Computação, 2018.

Inclui bibliografia.

1. Geração Procedural de Contéudo - TCC. I. Brancher, Jacques Duílio . II. Universidade Estadual de Londrina. Centro de Ciências Exatas. Graduação em Ciência da Computação. III. Título.

(5)

THAIS CARDOSO DA SILVA

COMPARAÇÃO DE ALGORITMOS PARA GERAÇÃO

PROCEDURAL DE FASES

Versão Preliminar de Trabalho de Conclusão de Curso apresentado ao curso de Bachare-lado em Ciência da Computação da Univer-sidade Estadual de Londrina para obtenção do título de Bacharel em Ciência da Compu-tação.

BANCA EXAMINADORA

Orientador: Prof(a). Jacques Duílio Brancher

Universidade Estadual de Londrina

Prof. Dr. Segundo Membro da Banca Universidade/Instituição do Segundo Membro da Banca – Sigla instituição

Prof. Dr. Terceiro Membro da Banca Universidade/Instituição do Terceiro Membro da Banca – Sigla instituição

Prof. Ms. Quarto Membro da Banca Universidade/Instituição do Quarto Membro da Banca – Sigla instituição

(6)
(7)

Este trabalho é dedicado às crianças adultas que, quando pequenas, sonharam em se tornar cientistas.

(8)
(9)

AGRADECIMENTOS

Os agradecimentos principais são direcionados à Gerald Weber, Miguel Frasson, Leslie H. Watter, Bruno Parente Lima, Flávio de Vasconcellos Corrêa, Otavio Real Sal-vador, Renato Machnievscz1 e todos aqueles que contribuíram para que a produção de

trabalhos acadêmicos conforme as normas ABNT com LATEX fosse possível.

Agradecimentos especiais são direcionados ao Centro de Pesquisa em Arquitetura da Informação2 da Universidade de Brasília (CPAI), ao grupo de usuários latex-br3 e aos

novos voluntários do grupo abnTEX24 que contribuíram e que ainda contribuirão para a

evolução do abnTEX2.

1

Os nomes dos integrantes do primeiro projeto abnTEX foram extraídos de <http://codigolivre.org. br/projects/abntex/>

2 <http://www.cpai.unb.br/>

3 <http://groups.google.com/group/latex-br>

(10)
(11)

“Não vos amoldeis às estruturas deste mundo, mas transformai-vos pela renovação da mente, a fim de distinguir qual é a vontade de Deus: o que é bom, o que Lhe é agradável, o que é perfeito. (Bíblia Sagrada, Romanos 12, 2))

(12)
(13)

DA SILVA, T. C.. Comparação de algoritmos para geração procedural de fases. 2018. 33f. Trabalho de Conclusão de Curso – Versão Preliminar (Bacharelado em Ciência da Computação) – Universidade Estadual de Londrina, Londrina, 2018.

RESUMO

Em um jogo educacional, é ideal manter a atenção do jogador, para isso o jogo deve continuar a ser interessante durante seus níveis independente do usuário jogador. Para isso é necessário uma forma de gerar conteúdo personalizado, assim, esse trabalho apresenta um estudo em algoritmos para geração de fases em jogos. O seu objetivo é através de teste com jogadores determinar qual algoritmo cria fases mais agradáveis considerando a preferencia humana.

Palavras-chave: Jogos digitais. Conteúdo para jogos digitais. Geração procedural de

(14)
(15)

DA SILVA, T. C.. Comparison of algorithms for procedural generation of game

phases. 2018. 33p. Final Project – Draft Version (Bachelor of Science in Computer

Sci-ence) – State University of Londrina, Londrina, 2018.

ABSTRACT

In an educational game, it’s necessary to keep the attention of the player, the game should continue to be interesting during their levels independent of the user. For this it is necessary a way to generate personalized content, thus, this work presents a study in algorithms for generation of phases in games. The goal is through testing with players determine which algorithm creates more enjoyable phases considering the human prefer-ence.

Keywords: Digital games. Content for digital games. Procedural Content generation.

(16)
(17)
(18)
(19)
(20)
(21)

LISTA DE ABREVIATURAS E SIGLAS

ABNT Associação Brasileira de Normas Técnicas

BNDES Banco Nacional de Desenvolvimento Econômico e Social

IBGE Instituto Nacional de Geografia e Estatística

IBICT Instituto Brasileiro de Informação em Ciência e Tecnologia

(22)
(23)

SUMÁRIO

1 INTRODUÇÃO . . . . 23

2 FUNDAMENTAÇÃO TEÓRICA . . . . 25

2.1 Definição de Conteúdo . . . . 25

2.2 Geração Procedural de Conteúdo(GPC) . . . 25

2.2.1 Taxonomia . . . 26

2.3 Estado da Arte . . . . 26

3 DESENVOLVIMENTO . . . . 27

4 CONTRIBUIÇÕES E/OU RESULTADOS ESPERADOS . . . 29

5 CONCLUSÃO . . . . 31

(24)
(25)

23

1 INTRODUÇÃO

O mercado de jogos atual enfrenta um problema com a demanda dos usuários por cada vez mais conteúdo, uma demanda que eleva o já alto custo de produção monetária, ainda mais considerando que esta produção não é escalável e portanto utiliza um alto número de mão de obra e tempo [1]. Uma solução usada esse problema é a Geração Pro-cedural de Conteúdo (GPC), onde procedimentos computacionais são usados para criar conteúdos (i.e. arvores [2], rios [3], terrenos [4], níveis [5]), que podem ser usados em jogos. Essa solução tem como características promover diversidade à suas saídas [6], permitir que estas saídas sejam controladas através de parâmetros [7], possibilitar em tempo real uma reação do jogo [8], bem como proporcionar uma redução do espaço ocupado pelos dados para seu conteúdo [1].

Uma etapa importante na utilização da GPC em um jogo é selecionar o algoritmo a ser implementado. Para este fim, uma avaliação da performance de diferentes propostas pode ser realizada, analisando a expressividade [6] de cada uma delas ou comparando a preferencia dos usuários pelo conteúdo criado pelos diferentes algoritmos [9]. Baseado neste contexto, o foco desse trabalho é investigar diferentes técnicas para geração procedural de níveis (fases) e identificar qual delas é preferida pelos usuários de jogo educacional, SpaceMath.

(26)
(27)

25

2 FUNDAMENTAÇÃO TEÓRICA

Para o desenvolvimento desse trabalho será usada a geração procedural de con-teúdo. A seguir será apresentado os conceitos necessários para melhor compreensão esse trabalho.

2.1

Definição de Conteúdo

Boa parte dos elementos que compõe um jogo são considerados conteúdo [2], esses são separados em categorias em forma de pirâmide [1].

Na base da pirâmide estaria os Bits de jogo, as unidades elementares do conteúdo de um jogo, são elementos como texturas, sons, vegetação, construções, comportamento e elementos naturais (fogo, água, pedra e nuvens).

Sobre ele estaria o Espaço de jogo, o ambiente onde o jogo se manifesta e que utiliza os Bits de jogo, podendo ser ambientes internos, mapas externos (que podem conter deformações de terreno como montanhas e ravinas, e corpos de água como rios, lagos e oceanos).

Em seguida, temos os Sistemas de jogo, usados para fazer o jogo mais acreditável e assim mais atrativo aos jogadores. Estes podem ser ecossistemas, redes de rotas e estradas, ambientes urbanos e comportamento de entidades.

A próxima classe é o Contexto de jogo, o jeito em que os eventos do jogo se desenrolam. Pode ter como elementos puzzles, histórias, eventos e niveis.

2.2

Geração Procedural de Conteúdo(GPC)

GPC pode ser definida como a geração de conteúdo através de algoritmos com pouca ou nenhuma intervenção do usuário. Muitos jogos utilizam esse sistema atualmente para geração de alguma parte dos seus conteúdos. Spore(2008), Minecraft(2009) e Dwarf Fortress(2006) são exemplos de jogos que utilizam GPC, cada um desses usa geração procedural em uma ou classes de conteúdo especificadas anteriormente [1].

Um dos métodos de uso do GPC é a Geração Procedural baseada em Busca que é utilizada como algoritmo de geração e teste [10]. É um algoritmo evolucionário, baseado na teoria da evolução darwiniana, que consiste no uso da seleção natural numa população formada por candidatos a solução do problema. Na seleção natural os candidatos que pos-suem a maior aptidão em algum parâmetro, determinado pelo programador, tem a maior chance de reprodução. Para a descoberta dessa aptidão todos os indivíduos da população

(28)

26

são testados no parâmetro escolhido. Num algoritmo esse tipo é comum a implementação de crossovers, mistura de características dos indivíduos, e mutações, mudanças aleatórias nas características.

Em um conteúdo gerado por GPC é desejado certas características, sendo algumas delas: a Velocidade, capacidade de criar conteúdo satisfatório rapidamente, a Diversidade, a geração de conteúdo com grande variação e a Controlabilidade, o nível de controle do usuário sobre as saídas dos algoritmos.

2.2.1 Taxonomia

Uma técnica de GPC pode ser definida como offline quando a geração ocorre durante o estado de carregamento inicial do jogo ou previamente ao carregamento, e online quando ela a geração ocorre em tempo real [2].

Os algoritmos também podem ser determinísticos, se diante de uma mesma entrada sempre apresentarem a mesma saída, e estocásticos caso se tenha uma certa dose de variação para a mesma entrada.

(29)

27

3 DESENVOLVIMENTO

Para atingir o objetivo estabelecido o jogo SpaceMath será utilizado como testbed. Este é um jogo educacional sobre matemática, que contém uma versão estática, com 20 fases criadas por um desenvolvedor de jogos, e outra versão dinâmica, onda os níveis são gerados proceduralmente por um algoritmo Construtivo similar ao descrito em [9].

Além disso, o algoritmo evolucionário Baseado em busca apresentado em [9] será usado nas comparações, bem como um outro algoritmo ainda a ser escolhido.

Como a função dos algoritmos escolhidos é criar fases num nível de dificuldade em que o jogador continue se divertindo, o próximo passo é ajustar os algoritmos de forma que a suas fases geradas considerem esse fator.

No que tange a comparação das propostas, a preferencia do usuário será o fator principal. Para coletar essa preferencia, será implementado um sistema de coleta de votos. O formato usado será a comparação todos contra todos, onde cada usuário jogará um fase com um algoritmo e depois uma fase gerada com o outro e votará em qual prefere.

Com os dados coletados, será feito um relatório mostrando os resultados e compa-rando os algoritmos utilizados.

(30)
(31)

29

4 CONTRIBUIÇÕES E/OU RESULTADOS ESPERADOS

Com esse trabalho busca-se, através da comparação de abordagens já estabelecidas na literatura, determinar qual delas é melhor, considerando como melhor o algoritmo que obter suas fases preferidas em comparação as outras, em uma aplicação especifica. Além disso esta pesquisa contribuirá para um projeto de mestrado identificando, entre as propostas do estado da arte, qual delas é melhor para a aplicação analisada em ambos trabalhos.

(32)
(33)

31

(34)
(35)

33

REFERÊNCIAS

[1] HENDRIKX, M. et al. Procedural content generation for games: A survey. TOMCCAP, v. 9, p. 1:1–1:22, 2013.

[2] SHAKER, N.; TOGELIUS, J.; NELSON, M. J. Procedural Content Generation in Games: A Textbook and an Overview of Current Research. [S.l.]: Springer, 2016. [3] GÉNEVAUX, J.-D. et al. Terrain generation using procedural models based

on hydrology. ACM Trans. Graph., ACM, New York, NY, USA, v. 32, n. 4, p. 143:1–143:13, jul. 2013. ISSN 0730-0301. Disponível em: <http: //doi.acm.org/10.1145/2461912.2461996>.

[4] ASHLOCK, D. A.; GENT, S. P.; BRYDEN, K. M. Evolution of l-systems for compact virtual landscape generation. In: IEEE. Evolutionary Computation, 2005. The 2005 IEEE Congress on. [S.l.], 2005. v. 3, p. 2760–2767.

[5] FERREIRA, L.; PEREIRA, L.; TOLEDO, C. A multi-population genetic algorithm for procedural generation of levels for platform games. In: Proceedings of the Companion Publication of the 2014 Annual Conference on Genetic and Evolutionary Computation. New York, NY, USA: ACM, 2014. (GECCO Comp ’14), p. 45–46. ISBN 978-1-4503-2881-4. Disponível em: <http://doi.acm.org/10.1145/2598394.2598489>.

[6] SMITH, G.; WHITEHEAD, J. Analyzing the expressive range of a level generator. In: Proceedings of the 2010 Workshop on Procedural Content Generation in Games. New York, NY, USA: ACM, 2010. (PCGames ’10), p. 4:1–4:7. ISBN 978-1-4503-0023-0. Disponível em: <http://doi.acm.org/10.1145/1814256.1814260>.

[7] TOGELIUS, J. et al. Procedural content generation: goals, challenges and actionable steps. v. 6, p. 61–75, 01 2013.

[8] CABRERA, R. L. et al. Procedural content generation for real-time strategy games. IJIMAI, Universidad Internacional de La Rioja, v. 3, n. 2, p. 40–48, 2015.

[9] KHALIFA, A. et al. General video game level generation. In: ACM. Proceedings of the Genetic and Evolutionary Computation Conference 2016. [S.l.], 2016. p. 253–259. [10] TOGELIUS, J. et al. Search-based procedural content generation: A taxonomy and

survey. IEEE Transactions on Computational Intelligence and AI in Games, v. 3, n. 3, p. 172–186, Sept 2011. ISSN 1943-068X.

Referências

Documentos relacionados

Os navegadores foram surpreendidos pela tempestade – oração subordinante Que viajavam para a Índia – oração subordinada adjetiva relativa

10.. No poema, a palavra “vassoura” surge como um nome mas também como um verbo, tal como podemos confirmar no verso “Uma vassoura vassoura”.. 14. Esta frase é do tipo

demonstraram que: 1 a superfície das amostras tratadas com o glaze pó/líquido foram as que apresentaram uma camada mais espessa de glaze, com superfícies menos rugosas; 2o grupo

Sendo assim, o programa de melhoria contínua baseado no Sistema Toyota de Produção, e realizado através de ferramentas como o Kaizen, poderá proporcionar ao

Na tentativa de avaliar a confiabilidade das medidas lineares realizadas em radiografias panorâmicas, comparando-as com imagens obtidas por meio de TC, Nishikawa et al., 2010

Leite 2005 avaliou duas hipóteses: a diferentes tempos de condicionamento com AFL não influenciariam nos valores de resistência de união entre uma cerâmica e um cimento resinoso; b

 Condições insalubres no ambiente de trabalho  Superexploração do trabalho feminino e infantil  Ausência completa de qualquer assistência

Se você tiver, no mínimo, três anos de vinculação ao Plano, terá direito ao Benefício Proporcional Diferido (BPD), que consiste em manter o saldo de Conta de