Algoritmo de toma de decisiones para la generación de historias en videojuegos usando técnicas de machine learning
Descripción del Articulo
La presente propuesta “Algoritmo de toma de decisiones para la generación de historias en videojuegos usando técnicas de machine learning”, tiene como intención diseñar y desarrollar un videojuego que posea múltiples caminos argumentales sin necesidad de que los desarrolladores tengan que implementa...
| Autores: | , |
|---|---|
| Formato: | tesis de grado |
| Fecha de Publicación: | 2022 |
| Institución: | Universidad Peruana de Ciencias Aplicadas |
| Repositorio: | UPC-Institucional |
| Lenguaje: | español |
| OAI Identifier: | oai:repositorioacademico.upc.edu.pe:10757/660711 |
| Enlace del recurso: | http://hdl.handle.net/10757/660711 |
| Nivel de acceso: | acceso abierto |
| Materia: | Machine Learning Q-learning Matriz Q Aprendizaje por refuerzo Videojuego Generación de historias Generación procedural Toma de decisiones Acciones de NPCs Q-Learning Q-Matrix Reinforcement learning Videogame Story generation Procedural generation Decision making NPC actions http://purl.org/pe-repo/ocde/ford#1.00.00 https://purl.org/pe-repo/ocde/ford#1.02.01 |
| id |
UUPC_71bcfce6a2c70f836537bfa7870e206d |
|---|---|
| oai_identifier_str |
oai:repositorioacademico.upc.edu.pe:10757/660711 |
| network_acronym_str |
UUPC |
| network_name_str |
UPC-Institucional |
| repository_id_str |
2670 |
| dc.title.es_PE.fl_str_mv |
Algoritmo de toma de decisiones para la generación de historias en videojuegos usando técnicas de machine learning |
| title |
Algoritmo de toma de decisiones para la generación de historias en videojuegos usando técnicas de machine learning |
| spellingShingle |
Algoritmo de toma de decisiones para la generación de historias en videojuegos usando técnicas de machine learning Guizado Díaz, Carlos Machine Learning Q-learning Matriz Q Aprendizaje por refuerzo Videojuego Generación de historias Generación procedural Toma de decisiones Acciones de NPCs Q-Learning Q-Matrix Reinforcement learning Videogame Story generation Procedural generation Decision making NPC actions http://purl.org/pe-repo/ocde/ford#1.00.00 https://purl.org/pe-repo/ocde/ford#1.02.01 |
| title_short |
Algoritmo de toma de decisiones para la generación de historias en videojuegos usando técnicas de machine learning |
| title_full |
Algoritmo de toma de decisiones para la generación de historias en videojuegos usando técnicas de machine learning |
| title_fullStr |
Algoritmo de toma de decisiones para la generación de historias en videojuegos usando técnicas de machine learning |
| title_full_unstemmed |
Algoritmo de toma de decisiones para la generación de historias en videojuegos usando técnicas de machine learning |
| title_sort |
Algoritmo de toma de decisiones para la generación de historias en videojuegos usando técnicas de machine learning |
| author |
Guizado Díaz, Carlos |
| author_facet |
Guizado Díaz, Carlos Fernández Samillán, Diego |
| author_role |
author |
| author2 |
Fernández Samillán, Diego |
| author2_role |
author |
| dc.contributor.advisor.fl_str_mv |
Cueva Chávez, Walter Manuel |
| dc.contributor.author.fl_str_mv |
Guizado Díaz, Carlos Fernández Samillán, Diego |
| dc.subject.es_PE.fl_str_mv |
Machine Learning Q-learning Matriz Q Aprendizaje por refuerzo Videojuego Generación de historias Generación procedural Toma de decisiones Acciones de NPCs Q-Learning Q-Matrix Reinforcement learning Videogame Story generation Procedural generation Decision making NPC actions |
| topic |
Machine Learning Q-learning Matriz Q Aprendizaje por refuerzo Videojuego Generación de historias Generación procedural Toma de decisiones Acciones de NPCs Q-Learning Q-Matrix Reinforcement learning Videogame Story generation Procedural generation Decision making NPC actions http://purl.org/pe-repo/ocde/ford#1.00.00 https://purl.org/pe-repo/ocde/ford#1.02.01 |
| dc.subject.ocde.es_PE.fl_str_mv |
http://purl.org/pe-repo/ocde/ford#1.00.00 https://purl.org/pe-repo/ocde/ford#1.02.01 |
| description |
La presente propuesta “Algoritmo de toma de decisiones para la generación de historias en videojuegos usando técnicas de machine learning”, tiene como intención diseñar y desarrollar un videojuego que posea múltiples caminos argumentales sin necesidad de que los desarrolladores tengan que implementarlos de forma manual. Automatizar el desarrollo de la historia de un videojuego ayuda a reducir costos y tiempos de desarrollo, ya que disminuye el trabajo del equipo desarrollador, además de que permite desarrollar un videojuego con miles de caminos argumentales diferentes. A pesar de que se ha logrado crear métodos para automatizar la generación de diferentes contenidos de videojuegos como niveles, mapas, personajes, melodías, gráficos, entre otros, aun no existe una forma comercialmente viable para generar historias de videojuegos. Nosotros planteamos una solución que podría usarse comercialmente. Para lograr esto, descomponemos las acciones posibles en acciones atómicas, y dotamos a cada personaje no jugable (NPC) un modelo de machine learning, para que sea capaz de tomar sus propias decisiones en el mundo del juego, para que cada uno decida como actuar de forma procedural. Si los NPC se comportan de forma diferente, entonces los sucesos ocurrirán de forma distinta. Para armar el modelo de machine learning con el que los NPCs tomaran decisiones hacemos uso de Q-Learning, un algoritmo perteneciente al paradigma de reinforcement learning. A diferencia de otros algoritmos, este es model-free, lo que significa que no requiere de un modelo del entorno para funcionar. Tampoco requiere que se le brinde de un dataset con anterioridad, solo necesita un conjunto de agentes (los NPCs), que estos puedan ejecutar acciones, y que reciban un feedback de su desempeño. Debido a todo esto, este algoritmo se adapta muy bien a nuestro caso. |
| publishDate |
2022 |
| dc.date.accessioned.none.fl_str_mv |
2022-08-24T18:05:44Z |
| dc.date.available.none.fl_str_mv |
2022-08-24T18:05:44Z |
| dc.date.issued.fl_str_mv |
2022-06-27 |
| dc.type.es_PE.fl_str_mv |
info:eu-repo/semantics/bachelorThesis |
| dc.type.other.es_PE.fl_str_mv |
Tesis |
| dc.type.coar.es_PE.fl_str_mv |
http://purl.org/coar/resource_type/c_7a1f |
| format |
bachelorThesis |
| dc.identifier.uri.none.fl_str_mv |
http://hdl.handle.net/10757/660711 |
| dc.identifier.isni.none.fl_str_mv |
0000 0001 2196 144X |
| url |
http://hdl.handle.net/10757/660711 |
| identifier_str_mv |
0000 0001 2196 144X |
| dc.language.iso.es_PE.fl_str_mv |
spa |
| language |
spa |
| dc.relation.ispartof.fl_str_mv |
SUNEDU |
| dc.rights.es_PE.fl_str_mv |
info:eu-repo/semantics/openAccess |
| dc.rights.uri.*.fl_str_mv |
http://creativecommons.org/licenses/by-nc-sa/4.0/ |
| dc.rights.coar.es_PE.fl_str_mv |
http://purl.org/coar/access_right/c_abf2 |
| eu_rights_str_mv |
openAccess |
| rights_invalid_str_mv |
http://creativecommons.org/licenses/by-nc-sa/4.0/ http://purl.org/coar/access_right/c_abf2 |
| dc.format.es_PE.fl_str_mv |
application/pdf application/epub application/msword |
| dc.publisher.es_PE.fl_str_mv |
Universidad Peruana de Ciencias Aplicadas (UPC) |
| dc.publisher.country.es_PE.fl_str_mv |
PE |
| dc.source.es_PE.fl_str_mv |
Universidad Peruana de Ciencias Aplicadas (UPC) Repositorio Académico - UPC |
| dc.source.none.fl_str_mv |
reponame:UPC-Institucional instname:Universidad Peruana de Ciencias Aplicadas instacron:UPC |
| instname_str |
Universidad Peruana de Ciencias Aplicadas |
| instacron_str |
UPC |
| institution |
UPC |
| reponame_str |
UPC-Institucional |
| collection |
UPC-Institucional |
| bitstream.url.fl_str_mv |
https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/8/Guizado_DC.pdf https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/7/Guizado_DC.pdf.jpg https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/10/Guizado_DC_Autorizaci%c3%b3n.pdf.jpg https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/6/Guizado_DC.pdf.txt https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/9/Guizado_DC_Autorizaci%c3%b3n.pdf.txt https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/3/Guizado_DC.pdf https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/4/Guizado_DC.docx https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/5/Guizado_DC_Autorizaci%c3%b3n.pdf https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/2/license.txt https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/1/license_rdf |
| bitstream.checksum.fl_str_mv |
7c0482cfd115c17f42e6f48c0bb07bc3 3395ab40a37bfd21e89251631b872eec 9380eaae6dfdfcedd58596720dcc0072 c5cf63b96c96242cf7de11c0f7ef74f1 8768beac40bbdb7d60fb9b8cdb3ca4ec 945043d2e9c684a63acd31994fbd22b2 e41e9ea9a12c6a9d43f5a371219ea07c 8d49d7fbb5f89ebe65b9f2b3a8462704 8a4605be74aa9ea9d79846c1fba20a33 934f4ca17e109e0a05eaeaba504d7ce4 |
| bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 MD5 MD5 MD5 MD5 MD5 MD5 |
| repository.name.fl_str_mv |
Repositorio académico upc |
| repository.mail.fl_str_mv |
upc@openrepository.com |
| _version_ |
1846065820913893376 |
| spelling |
82fa2aea8756f6fc2950e24476c25e22500Cueva Chávez, Walter Manuel4ea6fc136a53b31778e9e25261676377500301d7bcbef00a46dcb36d12070ba10ed500Guizado Díaz, CarlosFernández Samillán, Diego2022-08-24T18:05:44Z2022-08-24T18:05:44Z2022-06-27http://hdl.handle.net/10757/6607110000 0001 2196 144XLa presente propuesta “Algoritmo de toma de decisiones para la generación de historias en videojuegos usando técnicas de machine learning”, tiene como intención diseñar y desarrollar un videojuego que posea múltiples caminos argumentales sin necesidad de que los desarrolladores tengan que implementarlos de forma manual. Automatizar el desarrollo de la historia de un videojuego ayuda a reducir costos y tiempos de desarrollo, ya que disminuye el trabajo del equipo desarrollador, además de que permite desarrollar un videojuego con miles de caminos argumentales diferentes. A pesar de que se ha logrado crear métodos para automatizar la generación de diferentes contenidos de videojuegos como niveles, mapas, personajes, melodías, gráficos, entre otros, aun no existe una forma comercialmente viable para generar historias de videojuegos. Nosotros planteamos una solución que podría usarse comercialmente. Para lograr esto, descomponemos las acciones posibles en acciones atómicas, y dotamos a cada personaje no jugable (NPC) un modelo de machine learning, para que sea capaz de tomar sus propias decisiones en el mundo del juego, para que cada uno decida como actuar de forma procedural. Si los NPC se comportan de forma diferente, entonces los sucesos ocurrirán de forma distinta. Para armar el modelo de machine learning con el que los NPCs tomaran decisiones hacemos uso de Q-Learning, un algoritmo perteneciente al paradigma de reinforcement learning. A diferencia de otros algoritmos, este es model-free, lo que significa que no requiere de un modelo del entorno para funcionar. Tampoco requiere que se le brinde de un dataset con anterioridad, solo necesita un conjunto de agentes (los NPCs), que estos puedan ejecutar acciones, y que reciban un feedback de su desempeño. Debido a todo esto, este algoritmo se adapta muy bien a nuestro caso.The present proposal, "Decision-making algorithm for generating stories in video games using Machine Learning Techniques", aims to design and develop a video game that has multiple story lines without the need for developers to implement them manually. Automating the development of the story of a video game helps reduce development costs and times, since it reduces the work of the developer team, in addition to allowing the development of a video game with thousands of different story lines. Although it has been possible to create methods to automate the generation of different video game content such as levels, maps, characters, melodies, graphics, among others, there is still no commercially viable way to generate video game stories. We proposed a solution that could be used commercially. To achieve this, we decompose the possible actions into atomic actions, and we endow each non-playable character (NPC) with a machine learning model, so that they are able to make their own decisions in the game world, so that each one decides how to act. procedurally. If NPCs behave differently, then events will happen differently. To build the machine learning model with which the NPCs will make decisions, we use Q-Learning, an algorithm belonging to the reinforcement learning paradigm. Unlike other algorithms, this one is model-free, which means that it does not require a model of the environment to work. Nor does it require that a dataset be provided beforehand, it only needs a set of agents (the NPCs), that they can execute actions, and that they receive feedback on their performance. Due to all this, this algorithm is very well suited to our case.Tesisapplication/pdfapplication/epubapplication/mswordspaUniversidad Peruana de Ciencias Aplicadas (UPC)PEinfo:eu-repo/semantics/openAccesshttp://creativecommons.org/licenses/by-nc-sa/4.0/http://purl.org/coar/access_right/c_abf2Universidad Peruana de Ciencias Aplicadas (UPC)Repositorio Académico - UPCreponame:UPC-Institucionalinstname:Universidad Peruana de Ciencias Aplicadasinstacron:UPCMachine LearningQ-learningMatriz QAprendizaje por refuerzoVideojuegoGeneración de historiasGeneración proceduralToma de decisionesAcciones de NPCsQ-LearningQ-MatrixReinforcement learningVideogameStory generationProcedural generationDecision makingNPC actionshttp://purl.org/pe-repo/ocde/ford#1.00.00https://purl.org/pe-repo/ocde/ford#1.02.01Algoritmo de toma de decisiones para la generación de historias en videojuegos usando técnicas de machine learninginfo:eu-repo/semantics/bachelorThesisTesishttp://purl.org/coar/resource_type/c_7a1fSUNEDUUniversidad Peruana de Ciencias Aplicadas (UPC). Facultad de IngenieríaLicenciaturaCiencias de la ComputaciónLicenciado en Ciencias de la Computación2022-08-24T18:08:37Zhttps://purl.org/pe-repo/renati/type#tesishttps://orcid.org/000-0001-9660-6354https://purl.org/pe-repo/renati/level#tituloProfesional611016CONVERTED2_37795532092-08-24Guizado_DC.pdfGuizado_DC.pdfapplication/pdf5699821https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/8/Guizado_DC.pdf7c0482cfd115c17f42e6f48c0bb07bc3MD58falseTHUMBNAILGuizado_DC.pdf.jpgGuizado_DC.pdf.jpgGenerated Thumbnailimage/jpeg28936https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/7/Guizado_DC.pdf.jpg3395ab40a37bfd21e89251631b872eecMD57false2092-08-24Guizado_DC_Autorización.pdf.jpgGuizado_DC_Autorización.pdf.jpgGenerated Thumbnailimage/jpeg33282https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/10/Guizado_DC_Autorizaci%c3%b3n.pdf.jpg9380eaae6dfdfcedd58596720dcc0072MD510falseTEXTGuizado_DC.pdf.txtGuizado_DC.pdf.txtExtracted texttext/plain183890https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/6/Guizado_DC.pdf.txtc5cf63b96c96242cf7de11c0f7ef74f1MD56false2092-08-24Guizado_DC_Autorización.pdf.txtGuizado_DC_Autorización.pdf.txtExtracted texttext/plain2834https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/9/Guizado_DC_Autorizaci%c3%b3n.pdf.txt8768beac40bbdb7d60fb9b8cdb3ca4ecMD59falseORIGINALGuizado_DC.pdfGuizado_DC.pdfapplication/pdf3528271https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/3/Guizado_DC.pdf945043d2e9c684a63acd31994fbd22b2MD53true2092-08-24Guizado_DC.docxGuizado_DC.docxapplication/vnd.openxmlformats-officedocument.wordprocessingml.document10626753https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/4/Guizado_DC.docxe41e9ea9a12c6a9d43f5a371219ea07cMD54false2092-08-24Guizado_DC_Autorización.pdfGuizado_DC_Autorización.pdfapplication/pdf61343https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/5/Guizado_DC_Autorizaci%c3%b3n.pdf8d49d7fbb5f89ebe65b9f2b3a8462704MD55falseLICENSElicense.txtlicense.txttext/plain; charset=utf-81748https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/2/license.txt8a4605be74aa9ea9d79846c1fba20a33MD52falseCC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-81031https://repositorioacademico.upc.edu.pe/bitstream/10757/660711/1/license_rdf934f4ca17e109e0a05eaeaba504d7ce4MD51false10757/660711oai:repositorioacademico.upc.edu.pe:10757/6607112025-07-20 18:52:43.353Repositorio académico upcupc@openrepository.comTk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo= |
| score |
13.088951 |
Nota importante:
La información contenida en este registro es de entera responsabilidad de la institución que gestiona el repositorio institucional donde esta contenido este documento o set de datos. El CONCYTEC no se hace responsable por los contenidos (publicaciones y/o datos) accesibles a través del Repositorio Nacional Digital de Ciencia, Tecnología e Innovación de Acceso Abierto (ALICIA).
La información contenida en este registro es de entera responsabilidad de la institución que gestiona el repositorio institucional donde esta contenido este documento o set de datos. El CONCYTEC no se hace responsable por los contenidos (publicaciones y/o datos) accesibles a través del Repositorio Nacional Digital de Ciencia, Tecnología e Innovación de Acceso Abierto (ALICIA).