VI Jornadas ASEPUMA Santiago de Compostela, 25 y 26 de Septiembre de 1998 Organización de turnos de trabajo en una instalación de suministro de combustible de un aeropuerto R.Alvarez-Valdés1, E. Crespo2 y J.M. Tamarit1 (1) Dep. d’Estadística i Investigació Operativa (2) Dep. d’Economia Financera i Matemàtica Universitat de València 1.- Introducción El trabajo aquí expuesto consiste en el desarrollo de un sistema informático para organizar los turnos de trabajo de CLH (antigua Campsa) en los aeropuertos. Esta es una compañía del grupo Repsol que entre otras actividades se encarga del suministro de combustible a todos los aviones que aterrizan en los aeropuertos españoles (excepto en Canarias). Hasta ahora la programación de los trabajadores la realiza manualmente el jefe de cada instalación en base a pequeños cambios en calendarios anteriores para ajustar las pequeñas variaciones de demanda o de personal. Sin embargo, la situación está cambiando debido al aumento del tráfico aéreo y a que la compañía quiere abordar este aumento con una utilización más efeciente de la fuerza laboral, y también al hecho de que el nuevo Convenio Colectivo incluye cambios importantes respecto a la situación anterior. Por estas razones la Compañía nos planteó el desarrollo del programa para dar apoyo a los jefes de instalación. El sistema debería poder ser usado por personas no expertas en informática, ser flexible para ajustarse a las diferentes características de cada aeropuerto y producir buenas soluciones en tiempos cortos de computación con los ordenadores existentes en el conjunto de las instalaciones. VI Jornadas ASEPUMA Santiago de Compostela, 25 y 26 de Septiembre de 1998 Como problema test para el desarrollo del proceso la compañía eligió el aeropuerto de Palma de Mallorca ya que es muy grande, con demanda de fuerte contenido estacional, tiene personal con diferentes tipos de contratos y, en general, contiene toda la complejidad de los diversos problemas que se le presentan a la compañía. 2.- Planteamiento del problema El problema de confeccionar automáticamente los turnos de trabajo para los empleados se podría describir sencillamente como determinar la hora de entrada y salida de cada trabajador, durante los días comprendidos en el horizonte de planificación que el administrador decida, cubriendo las necesidades de carga de trabajo del aeropuerto donde se está planificando en cada momento y respetando las normas del convenio colectivo de la compañía. Hay que considerar que los principales aeropuertos, que es donde la planificación automática es más necesaria, permanecen abiertos durante las veinticuatro hora del día y que la carga de trabajo es muy variable a lo largo de la semana y en las diferentes épocas del año. La planificación se realiza por semanas enteras siendo, por tanto, el horizonte de planificación un conjunto de semanas consecutivas. Para poder cumplir las condiciones indicadas en el Convenio Colectivo es necesario antes de planificar una semana tener planificadas las anteriores. El problema es más un problema de factibilidad, para una cantidad dada de fuerza de trabajo con características determinadas, que de optimización , aunque este último aspecto también es importante dados los diversos objetivos a conseguir que más adelante exponemos. Es un problema difícil por la gran cantidad de restricciones que impone el Convenio1 agravado también por la existencia de trabajadores con tres tipos de contratos diferentes ( fijos, fijos discontinuos y eventuales) que impiden que puedan ser utilizados homogéneamente, y por las as- 1 Las condiciones del Convenio son muy variadas y abarcan además de las tradicionales sobre el número de horas a trabajar en cómputo anual, otras como la cantidad máxima de semanas sin descanso en el fin de semana, el tiempo mínimo de descanso entre dos jornadas de trabajo, la existencia de tres tipos básicos de turnos – mañana, tarde o noche- y cuales son las consecutividades autorizadas entre ellos, etc. 2 VI Jornadas ASEPUMA Santiago de Compostela, 25 y 26 de Septiembre de 1998 piraciones de los planificadores que quieren que, además de cumplirse estrictamente las restricciones, se den también un serie de condiciones de equilibrio en otros aspectos 2 que creen un buen ambiente de trabajo. Por último, otra dificultad, y quizás de las de más envergadura, es la ya señalada de la variación de la carga de trabajo a lo largo del año especialmente en los aeropuertos calificados de estacionales que son los que más fluctúan debido al turismo. Aunque no es el objetivo para el que se requirió la confección del programa también se puede usar, como se hace de hecho, para explorar alternativas respecto a la cantidad y las condiciones de la fuerza de trabajo utilizando para ello horizontes anuales de planificación. 3.- Procedimiento de solución Para resolver el problema lo hemos descompuesto en tres etapas claramente diferenciadas: 1. Cálculo de los esquemas de turnos de trabajo necesarios. 2. Asignación de los trabajadores a los esquemas. 3. Determinación de las horas de entrada y salida del personal. En la etapa de cálculo de los esquemas de turnos necesarios se buscan los esquemas de trabajo necesarios para cubrir las necesidades, en función de la carga de trabajo de cada semana incluída en el horizonte de planificación. Un esquema de trabajo es una serie de posiciones de actividad (mañana, tarde, noche o descanso) de un trabajador que cubren su actividad laboral durante una semana como, por ejemplo, NNNDDTT. Todo esquema ha de contener como mínimo un día de descanso, aunque inicialmente trataremos de obtener una solución en base a esquemas que contengan un mínimo de 2 días de descanso semanal. No todas las combinaciones posibles están permitidas por el convenio debido a las horas de descanso que se exigen entre la salida y la nueva incorporación al trabajo. Además, como los cambios de turno no se realizan más que después de un día de descanso pero la programación es por semanas naturales, es necesaria la coherencia entre semanas de manera que el turno del lunes sea el mismo que el del domingo (excepto cuando este último haya sido de descanso). 2 Estos son diversos como el número de noches realizadas al año por cada operario ya que tienen un plus de nocturnidad, la rotación en general de los turnos, la cantidad de fiestas que han de realizarse en fin de semana... 3 VI Jornadas ASEPUMA Santiago de Compostela, 25 y 26 de Septiembre de 1998 Los objetivos que se persiguen en esta etapa son conseguir unos buenos descansos semanales y la rotación de los turnos. El primero de ellos valora que hay dos o más días de descanso en lugar de uno, que estén seguidos y que sean en fin de semana, aspectos todos ellos que nos hablan de la calidad del descanso desde el punto de vista de los operarios. El segundo trata de buscar un equilibrio anual que equipare a los diversos trabajadores especialmente en la cantidad de noches realizadas ya que se abonan con un plus. Así pues, el coste de las diversas soluciones está referido a estas condiciones y además penaliza las soluciones con más de un cambio de turno semanal (cosa que sería posible en los casos de dos descansos si estos no son consecutivos). De manera que, aunque el objetivo principal es minimizar el número total de esquemas, entre las soluciones con un mismo número de esquemas el coste de los otros componentes favorece a aquellos de mejor calidad. La formulación del problema sería la siguiente : S : conjunto de esquemas t : periodos de la semana t=0,...T Variables: Xs = cantidad de apariciones del esquema s Cs = coste del esquema s 1 si s cubre el periodo t 0 en caso contrari o Matriz de restricciones: A ts = Min Σs∈S Cs Xs s.a. Σs∈S Ats Xs ≥ rt ∀ t = 0, ... T Xs entero ≥ min_valor y compatible con la semana anterior 4 VI Jornadas ASEPUMA Santiago de Compostela, 25 y 26 de Septiembre de 1998 donde rt es el nivel de requerimientos de trabajadores activos en un periodo determinado y min_valor es el número de esquemas con fin de semana necesarios para garantizar que cada trabajador descanse, como mínimo, uno de cada 4 como exige el Convenio. Los períodos de la semana vienen determinados por los diversos momentos en los que un grupo de trabajadores pueden incoporarse al trabajo (8, 8’30, 9’15…) y abarcan el lapso de tiempo hasta el inicio del siguiente período (8-8’30, 8’30-9’15…). No todos los días que tenga el mismo turno de trabajo (M,T,N) tiene porque tener el mismo horario. Esta primera etapa es la parte más difícil del problema y se aborda con un procedimiento de Tabu Search en el cual se incluyen técnicas de oscilación estratégica que combinan fases constructivas y destructivas. En las primeras se aumenta el número de esquemas mientras que en las segundas se reduce. Es decir, si empezamos desde una solución infactible vamos aumentando el número de esquemas para producir una solución posible. Recíprocamente, si estamos en la regió de soluciones posibles la fase destructiva nos conducirá a la región infactible. Este proceso está controlado por un paràmetro de amplitud que varía según unas determinadas reglas y que nos indica cuanto podemos adentrarnos en cada una de las dos regiones. El proceso de búsqueda va guiado por una función objetivo donde se ponderan los costes de los esquemas elegidos, costes que son menores según la bondad del esquema, y que tratamos de minimizar. El status tabú de los movimientos viene determinado por la información sobre la distancia en el tiempo y la frecuencia, obtenida cuando encontramos acontecimientos críticos que son aquellas soluciones obtenidas nada más cruzar la frontera. Este tipo de situaciones son consideradas básicas en el proceso y cuando encontramos alguno de ellos, antes de seguir adentrandonos en la nueva región, realizamos una búsqueda local para obtener mejores soluciones factibles. El final de esta etapa nos proporciona una solución con N esquemas para A trabajadores. Si N>A, el problema es infactible si contamos únicamente con esquemas con dos días de descanso por lo que se pregunta al usuario si quiere intentarlo incluyendo esquemas con un solo descanso o prefiere modificar algunas de las restricciones generales del problema. Si N=A pasamos a la segunda fase y si N<A el sistema añade esquemas predefinidos para dedicarlos a actividades de mantenimiento de instalaciones. 5 VI Jornadas ASEPUMA Santiago de Compostela, 25 y 26 de Septiembre de 1998 La posibilidad de resolver el problema para la cantidad deseada de semanas, y la rapidez del procedimiento, permite hacer proyecciones que incluyan todo el año y modificar las restricciones iniciales. Una vez determinados los esquemas necesarios para cubrir la carga de trabajo pasamos la asignación de los trabajadores a los esquemas, es decir a determinar que trabajador concreto ha de realizarlo entre los que están disponibles esa semana. Es un sencillo problema de asignación donde utilizamos un algoritmo clásico para este tipo de casos. La única tarea consiste en ponderar los costes de cada asignación y en evitar las asignaciones que sean imposibles, por violar el convenio o el contrato de cada trabajador, ponderandolas con valores muy altos. A la hora de fijar los costes hay que mirar hacia adelante y considerar varios requerimientos anuales de equilibrio entre los trabajadores en diversos aspectos (noches realizadas hasta el momento, distancia del último descanso que realizó en fin de semana, muchos días seguidos de trabajo sin descansos...). Por tanto, aquí no buscamos solamente la mejor solución para la semana que estamos programando sino soluciones que garantizen que, a medio y largo plazo, se satisfacerán las restricciones. En la tercera etapa se trata de fijar la jornada exacta de cada trabajador, es decir su hora de entrada y salida exacta cada día. Esta etapa tien dos partes diferenciadas. Comenzamos tratando de cubrir todos los requerimientos y cuando esto está conseguido tratamos de mejorar la solución respecto a objetivos secundarios. Para todo esto aplicamos una serie de reglas heurísticas de manera que aseguremos que se cubre la carga de trabajo en los momentos de cambio de turno al tiempo que reducimos al máximo la jornada diaria de cada persona para no sobrepasar la cantidad anual de horas pactada. 4.- Implementación El algoritmo está incluído en un paquete informático llamado PAUTA que está diseñado para ser usado por los jefes de cada instalación. Contiene módulos de entrada, edición y modificación de datos y el de resolución para un número de semanas a elegir, así como un módulo de salida para visualizar e imprimir los resultados según las diversas necesidades del ususario. 6 VI Jornadas ASEPUMA Santiago de Compostela, 25 y 26 de Septiembre de 1998 El programa se ejecuta en ordenadores personales. Para un Pentium a 133 Mhz la planificación de una semana en una instalación con unos 65 trabajadores cuesta alrededor de 30 segundos, la de 4 semanas unos 2 minutos mientras que la anual ronda la media hora. 5.- Bibliografía Morris JG and Showalter MJ (1983) Simple approaches to shift, days-off and tour schedu- ling. Management Sci. 29: 942-950 Betchold SE, Brusco MJ and Showalter MJ (1991) A comparative evaluation of tour scheduling methods. Dec. Sci. 22: 683-699 Glover F and Kochenberger GA (1996) Critical event tabu search for multidimensional knapsack problems. Meta-Heuristics: Theory and applications (Osman IH and Kelly JP eds.) Kluwer Academic Publishing, 407-427 Carpaneto G, Martello S and Toth P (1988) Algorithms and codes for the assignment problem. Annals Operations Res.. 13: 193-223 7