[en] This project aims to develop a direct interface between a discrete event simulator and optimization software in order to establish a connection between the two. As a demonstration of the validity and usefulness of this work, it will be applied in a real case such as the study of the improvement of a sterilization process through the optimization of planning or scheduling. First, it is necessary to study and understand the operation of the industrial process to later create a mathematical model through mixed-integer linear programming that defines its behavior taking into account the restrictions that these types of systems have. This model will allow obtaining the short-term planning of the sterilization plant. This will be coded using the high-level language, Julia. That in addition to offering a syntax based on Optimization Programming Language, which facilitates the translation of a mixed-integer programming model, it has interfaces with the main optimizers available, both commercial and free (Gurobi, CPLEX, Cbc ...). On the other hand, a simulation will be developed that mimics the real behavior of the process using a discrete event simulation software, Simio. Showing how the program works and the industrial capabilities it allows. The ultimate goal will be to effectively link the simulator and optimizer together so that every time the simulated system has a variance or a certain event occurs, the current state is sent to the optimizer. The mathematical model will return an optimal planning appropriate to the new state of the plant. That is, there will be an iterative update of the system. This will provide a virtual base on which to test different planning strategies without affecting actual plant production.

[es] En este proyecto se pretende desarrollar una interfaz directa entre un simulador de eventos discretos y un software de optimización con el fin de poder establecer una conexión entre ambos. Como demostración de la validez y utilidad de este trabajo, se va a aplicar en un caso real como es el estudio de la mejora de un proceso de esterilizado a través de la optimización de la planificación o scheduling. Primero se deberá estudiar y entender el funcionamiento del proceso industrial para posteriormente, crear un modelo matemático a través de programación lineal mixta-entera que defina su comportamiento teniendo en cuenta las restricciones que tienen este tipo de sistemas. Dicho modelo permitirá obtener la planificación a corto plazo de la planta de esterilizado. Este se codificará usando el lenguaje de alto nivel, Julia. Que además de ofrecer una sintaxis basada en Optimization Programming Language, que facilita la traducción de un modelo de programación mixta-entera, dispone de interfaces con los principales optimizadores disponibles, tanto comerciales como gratuitos (Gurobi, CPLEX, Cbc...). Por otro lado, se desarrollará una simulación que imite el comportamiento real del proceso mediante un software de simulación de eventos discretos, Simio. Mostrando cómo funciona el programa y las capacidades industriales que permite. El objetivo final será el de unir de manera efectiva el simulador y el optimizador de modo que cada vez que el sistema simulado tenga una variación u ocurra un cierto evento, el estado actual se envíe al optimizador. El modelo matemático devolverá una planificación óptima adecuada al nuevo estado de la planta. Es decir, se producirá una actualización iterativa del sistema. Esto aportará una base virtual sobre la que probar distintas estrategias de planificación sin afectar a la producción de la planta real.