Prodef-Solution: interfaz para la representación y visualización de soluciones.
Date
2022Abstract
En la actualidad los algoritmos de optimización son utilizados en diferentes campos
de la investigación. Sin embargo su uso en los campos empresariales es reducido, ya
que no es sencillo introducirlo en según qué entorno por la complejidad que conlleva.
Y es así como surge Prodef que tiene como objetivo ir un paso más allá y proporcionar
una herramienta de más alto nivel, a través de la cual cualquier usuario pueda modelar
problemas de optimización y ejecutarlos sin necesidad de tener conocimientos previos
sobre algoritmos evolutivos ni sobre programación. A pesar de que existen algunos
frameworks para optimización con este tipo de meta-heurísticas, su utilización requiere
de un cierto nivel de conocimiento sobre la técnica a emplear y también sobre el lenguaje
de programación utilizado por el propio framework. La estructura general de Prodef se
desarrolló en unos Trabajos de Fin de Grado previos, gracias al cual se dispone de una
API en la que se puede solicitar ejecutar problemas a través de un JSON, especificando
el modelo formal del problema a través de un lenguaje propio denominado ProdefLang,
todo esto se hace de forma gráfica a través de una interfaz ya existente, que permite al
usuario modelar sus problemas haciendo uso de bloques, que conectándolos de ciertas
formas, se puede plantear un problema, dándole la facilidad al usuario de abstraerse del
código que hay por detrás.
En el presente trabajo se ha logrado desarrollar una interfaz gráfica, Prodef-Solution.
Gracias a esta, los usuarios que utilicen la herramienta podrán visualizar los resultados
de una forma más representativa. De esta forma se hace más fácil la comprensión de los
resultados para aquellos usuarios no expertos. Las representaciones de las soluciones
se han agrupado basándonos en el tipo de solución, de las cuales algunas pueden ser
un vector de booleano, una matriz de booleanos, un vector de enteros con permutación,
una matriz de enteros con permutación y una matriz de enteros, permitiendo así agrupar
diferentes problemas para poder darles una representación genérica.
Como resultado de este Trabajo de Fin de Grado se ha logrado crear una interfaz web
capaz de representar los resultados de diferentes problemas adaptándose a los distintos
grupos, permitiendo así poder llevar a cabo una representación genérica, que por un lado
facilita las representaciones de los diferentes problemas tomando los puntos comunes
entre algunos de ellos, mientras que por otro lado tenemos el inconveniente de que no se
puede hacer 100 % representativa a cada problema, ya que esto le aportaría una gran
complejidad, debido a que tendríamos que tener definida cada representación para cada
problema que exista y eso seria muy ineficiente. Currently optimization algorithms are used in different fields of research. However, its
use in business fields is limited, since it is not easy to introduce it in a certain environment
due to the complexity it entails. And this is how Prodef was created, which aims to go one
step further and provide a higher level tool, through which any user can model optimization problems and execute them without the need for prior knowledge of evolutionary
algorithms or programming. Although there are some frameworks for optimization with
this type of meta-heuristics, their use requires a certain level of knowledge about the
technique to be used and also about the programming language used by the framework
itself. The general structure of Prodef was developed in previous Final Degree Projects,
thanks to which an API is available in which problems can be requested to be executed
through a JSON, specifying the formal model of the problem through its own language
called ProdefLang, all this is done graphically through an already existing interface, which
allows the user to model their problems using blocks, which by connecting them in certain
ways, can pose a problem, giving the user the facility to abstract from the code behind.
In the present work it has been possible to develop a graphical interface, ProdefSolution. Thanks to this, users who use the tool will be able to visualize the results
in a more representative way. This makes it easier for non-expert users to understand
the results. The representations of the solutions have been grouped based on the type
of solution, of which some can be a boolean vector, a boolean matrix, a permutation
integer vector, a permutation integer matrix and an integer matrix, thus allowing different
problems to be grouped in order to give them a generic representation.
As a result of this Final Degree Project, it has been achieved to create a web interface
capable of representing the results of different problems adapting to the different groups,
thus allowing a generic representation to be carried out, that on one side facilitates the
representations of the different problems taking the common points between some of
them, while on the other side we have the inconvenience that each problem cannot be
100 % representative, since this would add great complexity, since we would have to
have each representation defined for every problem that exists and that would be very
inefficient