Publication:
Locutor automático de concursos de programación

Research Projects
Organizational Units
Journal Issue
Abstract
En la década de 1970 nació el primer concurso de programación universitario. Hoy en día este concurso se conoce como International Collegiate Programming Contest o ICPC, y se ha expandido a la comunidad universitaria a nivel global. ICPC sentó precedentes sobre los concursos de programación. Desde entonces la programación competitiva ha estado en auge, con diversos concursos celebrándose en distintas partes del mundo. La propia Facultad de Informática de la UCM ha albergado muchas de estas competiciones desde hace años, y se prevé que será la sede de otras tantas en el futuro. La retransmisión de estos concursos de programación suele ir acompañada de una locución de los hechos sucedidos, y esta es generalmente realizada por locutores humanos. No obstante, este tipo de retransmisiones no quedan al alcance de muchos concursos de programación que se celebran a menor escala y que cuentan con menos recursos. Por ello, la creación de un locutor automático de concursos de programación permitiría enriquecer la retransmisión e informar a los espectadores de lo que está ocurriendo en el concurso sin suponer un extra considerable para la organización. Por ello, hemos desarrollado un locutor automático de concursos de programación. Su comportamiento se basa en la recopilación de información estática y dinámica de concursos en tiempo real, y su posterior procesamiento para generar comentarios interesantes y mantener la emoción. La arquitectura de este locutor busca ser extensible, dando la posibilidad de que se añadan nuevos tipos de mensajes fácilmente, ampliando la funcionalidad del programa. Además, ofrece la posibilidad de conectar distintos clientes, ya sea para enriquecer una retransmisión en streaming, publicar tweets periódicos, alimentar bots de Telegram o incluso ayudar a un locutor humano en su labor. Para comprobar la idoneidad de nuestro locutor se realizó una evaluación real en un concurso de programación en directo. El día 28 de abril de 2022 tuvo lugar el concurso Nacional ProgramaMe 2022. En dicho evento, nuestro sistema se encargó de alimentar un bot de Twitter mediante un cliente que se encargaba de narrar el desempeño de los concursantes de un instituto concreto. Adicionalmente, se lanzó otro cliente que se encargaba de informar a los espectadores de la retransmisión de YouTube de los sucesos relevantes que ocurrieron durante el concurso. Los resultados obtenidos fueron positivos, y nuestro locutor automático consiguió amenizar una retransmisión de un concurso que no contaba con un locutor humano.
In the 1970s, the first university programming contest was born. Today this contest is known as the International Collegiate Programming Contest or ICPC, and it has expanded to the university community globally. ICPC set precedents for programming competitions. Since then, competitive programming has been booming, with various competitions held in different parts of the world. Our Faculty itself has hosted many of these competitions for years, and it is expected to host a lot more in the future. The broadcasting of these programming contests is usually accompanied by a locution of the events that take place, and this is usually done by human announcers. However, these types of broadcasts are not in the scope of many smallerscale programming competitions wich have fewer resources. Therefore, the creation of an automatic announcer of programming contests would make it possible to enrich the broadcast and inform the viewers of what is happening in the contest without requiring significant extra effort from the organization. For this reason, we have developed an automatic caster of programming contests. The behavior of the automatic caster is based on the collection of static and dynamic information from programming contests in real time, and its subsequent processing to generate interesting comments and maintain excitement. The architecture of this speaker seeks to be extensible, giving the possibility of adding new message types easily, expanding the functionality of the program. In addition, it offers the possibility of connecting different clients, either to enrich a streaming broadcast, post periodic tweets, feed Telegram bots or even help a human announcer in their labor. To check the suitability of our announcer an evaluation was carried out in a real live programming contest. On April 28, 2022 the ProgramaMe 2022 National Competition took place. In that event, our system was in charge of feeding a Twitter bot through a client wich was in charge of narrating the performance of the contestants of a specific institute. In addition, another client was launched that was responsible for informing viewers of the YouTube broadcast about the relevant events that took place during the contest. The results obtained were positive, and our automatic announcer managed to liven up a broadcast of a contest that did not have a human announcer.
Description
Trabajo de Fin de Grado en Ingeniería del Software, Facultad de Informática UCM, Departamento de Ingeniería del Software e Inteligencia Artificial, Curso 2021/2022. Todo el código asociado a este trabajo puede encontrarse en el siguiente repositorio de GitHub: https://github.com/TFG-locutor/feed-interesante
Unesco subjects
Keywords
Citation