Publication:
Explicaciones visuales para la gestión y la recomendación en jueces en línea

Research Projects
Organizational Units
Journal Issue
Abstract
¡Acepta el reto! es un almacén y juez en línea de problemas de programación en español que acepta soluciones en C, C++ y Java. Esta herramienta crea un entorno académico en el que los usuarios pueden poner a prueba sus conocimientos de programación sobre las distintas temáticas que se ofrecen, y recibir feedback de las soluciones que proporcionen. Los problemas almacenados en ¡Acepta el reto! están organizados según categorías y volúmenes, pero esta división puede no ser suficiente para conectar con las necesidades del usuario a la hora de decidir el siguiente problema al cual enfrentarse. Este trabajo surge ante la necesidad de introducir un sistema de recomendación de problemas para los usuarios de jueces en línea para facilitar la selección de problemas que los usuarios consideren relevantes o asequibles. Esto servirá para amenizar la experiencia con los jueces en línea y disminuir la frustración de los usuarios a la hora de intentar resolver problemas que sobrepasan o subestiman su nivel de habilidad. El proyecto diferencia tres partes claras: • Planteamiento de un sistema de puntuación para aproximar el nivel de habilidad de los usuarios y el nivel de dificultad de los problemas disponibles en un juez en línea. • Diseño y desarrollo de un sistema de recomendación capaz de recomendar problemas a usuarios basándose en su habilidad y dificultad de los problemas. • Implementación de un prototipo en el que se pueda comprender y gestionar mediante explicaciones visuales el comportamiento del sistema de puntuación y recomendación.
¡Acepta el reto! is an online automated judge for programming problems in Spanish that accepts solutions in C, C ++ and Java. This site creates an academic environment in which users can test their programming skills under the different kinds of problems offered, and receive feedback for the solutions that they provide. These problems are divided into multiple categories, but this division may not be enough to satisfy the user’s needs when choosing the next problem. This work arises from the need to introduce a recommendation system capable of offering problems to each user that uses online judge programs, so that in this way, he can choose to solve problems that are included in his skill level and knowledge. This will make using online judges a more enjoyable experience and will reduce users’ frustration when trying to solve problems that exceed or underestimate the level of the user. The project differentiates three clear parts: • Build a ranking system capable of measuring skill level and difficulty for both users and problems from any online judge. • Development of a recommender system capable of recommending problems to users based on the user’s skill level and the problem difficulty. • Implementation of a prototype in which the behavior of both the rating system and recommender system can be understood and managed through visual explanations.
Description
Trabajo de Fin de Grado en Ingeniería Informática, Facultad de Informática UCM, Departamento de Ingeniería del Software e Inteligencia Artificial, Curso 2018-2019
Unesco subjects
Keywords
Citation