Redalyc. D'Armas Renault, Mayra

Documentos relacionados
Algoritmos Evolutivos para la Secuenciación de Operaciones con Tiempos de Preparación

PROGRAMACIÓN DE LA SECUENCIA DE LAS ÓRDENES DE PRODUCCIÓN MEDIANTE LA APLICACIÓN DE ALGORITMOS GENÉTICOS

ESTADO DEL ARTE DE LA PROGRAMACIÓN DE OPERACIONES CON TIEMPOS DE PREPARACIÓN: TEMA PARA FUTURAS INVESTIGACIONES, PARTE II

FLOW-SHOP SIN PULMONES:

ALGORITMOS GENÉTICOS

Son una clase particular de los algoritmos evolutivos.

Algoritmos genéticos

Inteligencia Artificial

Flow-Shop Dinámico. Por: Juan Carlos Rivera Samuel De Greiff

Programación Evolutiva

Jhoan Sebastián Cadavid Jaramillo Ingeniero Industrial, Universidad Nacional de Colombia, RESUMEN

UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA SUR. Ingeniería Aplicada TEÓRICA SERIACIÓN 100% DE OPTATIVAS DISCIPLINARIAS

1. Introducción 2. Esquema básico 3. Codificación 4. Evaluación 5. Selección 6. Operadores 7. Ejemplo. Algoritmos genéticos

Introducción la placa alveolar OBJETO Y ALCANCE DE LA TESIS REQUISITOS EXIGIBLES A LOS PRODUCTOS DE CONSTRUCCIÓN...

Modelos predictivos y de optimización de estructuras de hormigón

Secuenciando óptimamente líneas de flujo en sistemas de manufactura

Práctica N o 8 Desigualdades Válidas - Algoritmos de Planos de Corte - Algoritmos Branch & Cut

NP-Completeness: Universidad Autónoma de Nuevo León Facultad de Ingeniería Mecánica y Eléctrica División de Posgrado en Ingeniería de Sistemas

MODELOS DE PLANIFICACIÓN

Aplicación de la heuristica de CDS en la secuenciación de n tareas en m máquinas: un caso de estudio

Secuenciando óptimamente líneas de flujo en sistemas de manufactura

ALGORÍTMICA

1. Introducción RESUMEN

Una permutación eficiente para minimizar la suma de los tiempos de acabado de "n" trabajos en "m" máquinas Freddy Abarca R.

Parte de Algoritmos de la asignatura de Programación Master de Bioinformática. Búsqueda exhaustiva

SECUENCIACIÓN DE SISTEMAS DE TIPO JOB SHOP MEDIANTE APRENDIZAJE AUTOMÁTICO

Optimización de Problemas de Producción

NUEVO METODO DE OPTIMIZACION: BIG BANG BIG CRUNCH

Inicio. Cálculos previos GRASP. Resultados. Fin. Figura 5.1: Diagrama de flujo del algoritmo.

PROGRAMA DE CURSO. Nombre en Inglés. Horas de Trabajo Personal Horas de Cátedra

DISEÑOS EXPERIMENTALES DE DOS GRUPOS Y MULTIGRUPO

Scientia Et Technica ISSN: Universidad Tecnológica de Pereira Colombia

Métodos Constructivos. Empiezan desde una solución vacía (a veces pequeña)

Algoritmos Genéticos. Introducción a la Robótica Inteligente. Álvaro Gutiérrez 20 de abril de

Paz Pérez González, José Manuel Framiñán Torres, Pedro L. González-R, José Miguel León Blanco, Rafael Ruiz-Usano. Resumen

Fundamentos de Inteligencia Artificial

Minería de datos (Algoritmos evolutivos)

Tema 4: Gramáticas independientes del contexto. Teoría de autómatas y lenguajes formales I

Programación de la producción en máquinas en paralelo con lotes de transferencia: un caso de estudio.

ASALBP: Alternative Subgraphs Assembly Line Balancing Problem *

Introducción a los Algoritmos Genéticos. Tomás Arredondo Vidal 17/4/09

2. EL DISEÑO UNIFACTORIAL (COMPARACION DE TRATAMIENTOS)

Diseño y simulación de un algoritmo basado en lógica difusa para el despacho de ascensores en un edificio

Asignación de cargas de trabajo mediante gantt:

Programación de la producción en talleres de flujo con máquinas sin interrupción. Algoritmos y aplicaciones *

Cálculo de la capacidad de fabricación y refabricación óptima para sistemas con logística inversa y demanda determinista constante

ESTIMACIÓN DE TIEMPO Y COSTO DE PRODUCTOS SOFTWARE

ESTUDIO Y ANÁLISIS DE REGLAS Y ALGORITMOS DE PROGRAMACIÓN DE LA PRODUCCIÓN

Horas teoría-horas prácticas-horas trabajo adicional-horas totales-créditos: Edgar O. Reséndiz Flores

Introducción a las RdP. Optimización basada en redes de Petri. Redes de Petri. Son objeto de estudio: RdP. Ejemplos:

METODOLOGÍA MULTIOBJETIVO PARA PROGRAMAR LA PRODUCCIÓN EN UN AMBIENTE JOB SHOP: OPEN SHOP

PROCEDIMIENTO HEURÍSTICO PARA MINIMIZAR EL C max EN CELDAS ROBOTIZADAS CON BUFFERS FINITOS Y PIEZAS DISTINTAS

ARTÍCULO ORIGINAL. ARS Pharmaceutica. Collazo MV 1, Muñiz MM 2, Alonso1 C 1, Frutos G 2

RESOLUCIÓN DE PROBLEMAS DE PACKING EN UNA EMPRESA DE

ALGORITMOS GENÉTICOS PARA LA RESOLUCIÓN DE PROBLEMAS PRÁCTICOS DE SCHEDULING

UNIDAD TEMÁTICA XIII

Algoritmos exactos y heurísticos para minimizar el adelantamiento y retraso ponderados en una máquina con una fecha de entrega común

Scheduling Problem. Cuándo y dónde debo hacer cada trabajo?

Academia de la carrera de Licenciatura en Informática del Instituto Tecnológico de Aguascalientes

de Operaciones Área Académica: Sistemas Computacionales Tema: Tipos de Modelos en Investigación Profesor: I.S.C. Guadalupe Hernández Coca

El método simplex 1. 1 Forma estándar y cambios en el modelo. 2 Definiciones. 3 Puntos extremos y soluciones factibles básicas. 4 El método simplex.

UNIVERSIDAD DE LOS ANDES FACULTAD DE CIENCIAS FORESTALES Y AMBIENTALES ESCUELA DE INGENIERIA FORESTAL RÉGIMEN ANUAL PROGRAMA

Resolución de problemas de búsqueda

Programación de Sistemas Productivos

C a l ses P P y y NP C a l se P C a l se N P N P [No N n o -De D te t rmin i i n s i ti t c i Polynomial-tim i e]

Agro 6998 Conferencia 2. Introducción a los modelos estadísticos mixtos

CAPÍTULO 6 PROGRAMACIÓN DINÁMICA. Programación Dinámica

Comportamiento de los parámetros principales de un Algoritmo Genético para el Flow Shop Scheduling

Alineamiento múltiple de secuencias

Análisis de Algoritmos

Aplicación del orden de mayorización a un problema de producción-inventario. An aplication of majorization order on a production-inventory problem

PROGRAMA DE CURSO. Código Nombre INVESTIGACIÓN DE OPERACIONES Nombre en Inglés OPERATIONS RESEARCH SCT Auxiliar. Personal

Es un conjunto de palabras y símbolos que permiten al usuario generar comandos e instrucciones para que la computadora los ejecute.

FACULTAD DE INGENIERÍAS Y ARQUITECTURA ESCUELA ACADÉMICO PROFESIONAL DE INGENIERÍA DE MINAS INVESTIGACIÓN DE OPERACIONES. SÍLABO

Por lo tanto como un resumen de los aspectos que iremos desarrollando, podemos adelantar los siguientes puntos:

Formulando con modelos lineales enteros

GUÍA DOCENTE Computación Neuronal y Evolutiva. Grado en Ingeniería Informática

Degeneración y ciclaje. Método de las dos fases CO-3411 (S08) 30/03/

Universidad Tec Milenio: Profesional IO04001 Investigación de Operaciones I. Tema # 9

SÍLABO DE METODOLOGÍAS DE PROGRAMACIÓN

Scientia Et Technica ISSN: Universidad Tecnológica de Pereira Colombia

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO. Facultad de Ciencias. Plan de estudios de la Licenciatura en Actuaría. Teoría de Redes

Análisis de diferencias de medias entre centros educativos chilenos según grupo socioeconómico y dependencia administrativa

DISEÑO DE METAHEURÍSTICOS HÍBRIDOS PARA PROBLEMAS DE RUTAS CON FLOTA HETEROGÉNEA (2 Parte) : GRASP Y CONCENTRACIÓN HEURÍSTICA

Extremos en Sucesiones

6.1. Prueba de Wilcoxon. 6.2 Prueba de Kruskal Wallis.

UNIVERSIDAD AUTÓNOMA DE YUCATÁN FACULTAD DE MATEMÁTICAS MISIÓN

Introducción a la Programación Dinámica. El Problema de la Mochila

Diseño de experimentos Hugo Alexer Pérez Vicente

Caso de un Modelo de Optimización para un Problema de Calendarización de Horarios.

Optimización de diseño de rutas de vehículos usando algoritmos genéticos

Selección Diseño de Cribado

Método de cuadrados mínimos

CONTENIDO Prefacio CAPITULO 1: Qué es la investigación de operaciones? CAPITULO 2: Introducción a la programación lineal...

PLE: Optimización Combinatoria

Estado del arte del problema de flujo general flexible con costes en la función objetivo *

SELECCION AUTOMATICA DE ALGORITMO DE ASIGNACION PARA GENERAR CODIGO PARALELO EFICIENTE

Inteligencia Computacional (IA95 021) Algoritmos Simples de Optimización Ciega

HEURISTIC FOR SCHEDULING OF PROJECTS WITH RESTRICTION OF RESOURCES UN HEURÍSTICO PARA PLANEACIÓN DE PROYECTOS CON RESTRICCIÓN DE RECURSOS

Nuevas Tendencias y Retos en Métodos Heurísticos para Problemas de Scheduling

Transcripción:

Redalyc Sistema de Información Científica Red de Revistas Científicas de América Latina, el Caribe, España y Portugal D'Armas Renault, Mayra Algoritmos evolutivos para la secuenciación de operaciones con tiempos de preparación Revista Ingeniería Industrial., núm. 4, enero-junio, 2010, pp. 7-26 Universidad de Carabobo Venezuela Disponible en: http://redalyc.uaemex.mx/src/inicio/artpdfred.jsp?icve=215014949002 Revista Ingeniería Industrial. Actualidad y Nuevas Tendencias ISSN (Versión impresa): 1856-8327 revistaiiaynt@gmail.com Universidad de Carabobo Venezuela Cómo citar? Número completo Más información del artículo Página de la revista www.redalyc.org Proyecto académico sin fines de lucro, desarrollado bajo la iniciativa de acceso abierto

7 Algoritmos Evolutivos para la Secuenciación de Operaciones con Tiempos de Preparación Evolutionary Algorithms for the Scheduling with Setups Times Mayra D Armas Regnault Palabras Claves: Algoritmos Evolutivos, Secuenciación, tiempos de preparación, familia de productos Key Words: Evolutionary Algorithms, Scheduling, setup times, family jobs RESUMEN Este trabajo se enmarca dentro del área de la programación de procesos de producción y tiene como objetivo evaluar, mediante pruebas computacionales, el comportamiento de los Algoritmos Evolutivos en la resolución de un problema de secuenciación de operaciones. El problema estudiado considera una máquina con tiempos de preparación dependientes de la secuencia, familia de productos y fechas de vencimientos, con el objetivo de minimizar el retraso total. Dado que alcanzar la solución óptima requiere un proceso excesivamente largo, se optó por un algoritmo metaheurístico, del grupo de los Algoritmos Evolutivos. La dimensión de la población se tomó en función del número de piezas, se consideró como medida de calidad de un individuo (solución) el valor del retraso total, parejas por bondad de la solución, cruce PMX y probabilidad de mutación del 30% con mutación blanda. Cada uno de los diferentes operadores que configuran el Algoritmo Evolutivo, se implementaron mediante el lenguaje Visual Basic 6.0 y se probaron en una colección de 1000 instancias del problema con un número de familias entre 4 6 y con un número de piezas entre 15 25. Los resultados computacionales obtenidos demuestran que el Algoritmo Evolutivo propuesto arroja mejores resultados que los obtenidos con las reglas de secuenciación. ABSTRACT This work can be located in the production scheduling area and pretends to evaluate, using computational tests, the behavior of Evolutionary Algorithms to solve a scheduling problem. The studied problem considers a single machine with sequencedependent setup times, family jobs and deadlines, with the objective to minimize the total tardiness. Since the optimal solution requires an excessively long time, it is applied a meta heuristic algorithm, within the group of Evolutionary Algorithms. The sample size depends on the number of jobs, individual solutions are selected through the value of total tardiness, pairs by flexibility of the solution, crossover PMX and the mutation probability of 30% with soft mutation. Therefore, each of the different operators used in Evolutionary Algorithms were implemented, by means of Visual Basic language 6.0, and tested on 1000 instances with a total number of families between 4 6 and with a total number of jobs between 15

8 25. The obtained computational results demonstrated that the proposed Evolutionary Algorithm had a better performance than the sequencing rules. INTRODUCCIÓN En muchos ambientes industriales tales como la industria química, textil, del plástico, farmacéutica y del metal, es común que se lleven a cabo diversos tipos de operaciones que requieren un cierto tiempo de preparación entre una operación y otra (D Armas, 2005). También, es muy común la existencia de unas fechas límites para la entrega de los pedidos, lo que puede determinar la presencia de retrasos en las entregas, con lo que el objetivo básico se convierte en la minimización de los retrasos de los pedidos. Muchas de las investigaciones en el área de la secuenciación de operaciones, consideran que cuando una máquina cambia de un trabajo a otro no hay tiempos de preparación, y si los hay, éstos se consideran independientes de la secuencia. No obstante, la suposición de que los tiempos de preparación son insignificantes o forman parte del tiempo de procesamiento no es válida para el caso de tiempos de preparación dependientes de la secuencia, y en el caso de tiempos de preparación independientes de la secuencia puede conducir a un incremento de los tiempos muertos en algunas de las máquinas (Allahverdi, 2000). El problema objeto de estudio es de tipo combinatorio (Morales, 2004). Resolver un problema combinatorio se puede resumir en encontrar la solución óptima dentro de un conjunto finito de alternativas, asumiendo que la calidad de la solución es cuantificable y comparable con cualquier otra solución. Sin embargo, alcanzar la solución óptima requiere un proceso excesivamente largo. Por ejemplo, para resolver un problema combinatorio por enumeración con n=20, se tendrían 20!= 2,43x10 18 posibilidades. Obviamente, no es factible resolver cada una de las posibles soluciones, por lo que en este trabajo se recurrió a otro tipo de métodos de resolución llamados heurísticos. En este trabajo se planteó encontrar una secuencia de n piezas, en una situación de una máquina, con tiempos de preparación dependientes de la secuencia, y familia de productos que minimice el retraso total. Para resolver este problema se programó un Algoritmo Evolutivo (EA, por sus siglas en inglés). Mediante una investigación no experimental se evaluó el comportamiento del algoritmo. La experiencia computacional se realizó en 1000 ejemplares con un número total de piezas entre 15 25 y un número de familias entre 4 6. La importancia del caso tratado en esta investigación radica en que muchas industrias del sector metalmecánico en Venezuela, se caracterizan por una situación casi prototípica reducible a un problema de una máquina con tiempos de preparación dependientes de la secuencia, con familia de productos y fechas de vencimiento, con lo que el objetivo básico

9 se convierte en la minimización de los retrasos de los pedidos. En el desarrollo del trabajo se muestran los antecedentes y trabajos relacionados. Seguidamente se presenta el planteamiento del problema. Posteriormente se describe la metodología aplicada, las reglas de secuenciación que permitieron generar las soluciones iniciales y el algoritmo evolutivo. Finalmente, se muestran los resultados obtenidos en la experiencia computacional y las conclusiones. Antecedentes Según Lee y Pinedo (2002) hay varios ambientes productivos que son de interés. El ambiente más básico es el de una máquina, todas las piezas tienen que procesarse una y solamente una vez en esta máquina. Un ambiente más general es un conjunto con m máquinas idénticas en paralelo, en este conjunto cada pieza tiene que procesarse exactamente una vez y puede hacerlo en cualquier máquina. Un tercer ambiente es el denominado ambiente flowshop, en este ambiente cada pieza tiene que ser sometida al procesamiento en cada una de las m máquinas. Cada pieza se procesa primero en la máquina 1, luego se procesa en la máquina 2, después de finalizado su procesamiento tiene que ir a la máquina 3, y así sucesivamente. Dado que las rutas de todas las piezas en un flowshop son idénticas, las máquinas se organizan en serie. Un cuarto ambiente es una generalización del flowshop, el cual se denomina job shop. Otra vez cada pieza tiene que ser procesada en cada una de las máquinas, pero ahora cada pieza tiene su propia ruta y las rutas pueden ser diferentes. Los trabajos sobre el tema, reflejados en el presente artículo se basan en estudios de una máquina. Siguiendo lo propuesto por Allahverdi, Gupta y Aldowaisan (1999), se clasificaron en problemas con familias y sin familias, con tiempos de preparación que pueden ser dependientes de la secuencia o independientes de la secuencia. De acuerdo con Narasimhan et al (1995), el caso de una máquina es el más sencillo de todos los ambientes industriales y es un caso especial de todos los otros ambientes industriales más complicados. En la figura siguiente se presenta un esquema del ambiente de una máquina. 1 2 3 n 1 Piezas Máquina Figura 1. Configuración de n piezas, una máquina

10 Los modelos de una máquina son importantes por varias razones. Los resultados que puedan obtenerse de modelos de una máquina no solamente proporcionan conocimiento en el ambiente de una máquina, también proporcionan una base para las heurísticas de ambientes industriales más complicados. En la práctica, los problemas de programación en ambientes con más máquinas con frecuencia se descomponen en subproblemas que se ocupan de una máquina (Narasimhan et al, 1995). La investigación sobre la programación de una máquina, desde el punto de vista teórico, es muy útil para compenetrarse en el comportamiento de las reglas de programación según ciertos criterios particulares. Desde el punto de vista práctico tiene aplicación en diversos casos reales en donde existe una sola máquina o instalación compleja funcionando sincronizadamente (industrias químicas y de proceso, detergentes, pinturas, etc.) o bien cuando una sola máquina es el cuello de botella del taller. En la Tabla 1 se resumen los trabajos relacionadas con la secuenciación de operaciones en una máquina, indicando si consideran familias de productos y tiempos de preparación dependientes o independientes de la secuencia, así como también el índice de eficiencia y el método de resolución del problema (la aplicación de diferentes métodos como son la Programación Lineal PL, Programación Lineal Entera Mixta MILP, Algoritmos Branch & Bound B&B, Recocido Simulado SA, Algoritmo Genético GA, Búsqueda Tabú TS, Programación Dinámica PD y Greedy Randomized Adaptive Search Procedure GRASP). A partir de la revisión de la literatura mostrada, se evidencia el interés en investigaciones con consideraciones de tiempos de preparación, la falta de aplicaciones en ambientes industriales reales y que la mayoría de las investigaciones que consideran las familias de productos, asumen que los tiempos de preparación son independientes de la secuencia. Del análisis de los antecedentes se concluye que es un campo abierto para futuras investigaciones que se ocupen de las aplicaciones de sistemas del mundo real, tales como por ejemplo secuenciación de familias, fechas de vencimiento, nowait o limitaciones en los almacenamientos intermedios.

11 AUTOR Tabla 1. Trabajos relacionados con problemas de una máquina. TIEMPOS DE PREPARACIÓN Independientes de la secuencia Dependientes de la secuencia FAMILIAS ÍNDICE DE EFICIENCIA Ng et al (2004) X X Tiempo total de procesamiento de la pieza, Peso total del consumo de recurso Lee y Asllani (2004) X Número de operaciones retrasadas y tiempo de procesamiento Rabadi et al (2004) X Cantidad de adelantos y retrasos MÉTODO APLICADO Algoritmo PL Algoritmo MILP y GA Algoritmo B&B França et al (2001) X Retraso total MA y GA Baker y Magazine (2000) X X Retraso máximo Algoritmo B&B Dunstall et al (2000) X X Peso del tiempo de permanencia Algoritmo B&B Tan et al (2000) X Retraso total Algoritmo B&B, GA, SA Baker (1999) X X Retraso máximo Procedimiento heurístico Sun et al (1999) X Peso del retraso al cuadrado Relajación de Lagrange Kolahan y Liang (1998) X Costos de penalidad por retraso y por adelanto, Costo de incremento del tiempo de operación y de reducción MILP y TS Webster (1998) X Peso total de los retrasos/adelantos de todas las operaciones Chen Z L (1997) X X Adelanto total y retraso total Algoritmo PD Liaee y Emmons (1997) X X X Tiempo total de finalización, tiempo máx. Finalización, retraso máx., nº operaciones retrasadas, costo máx. Tan y Narasimhan (1997) X Retraso total SA GA Clasificación NP Asano y Ohta (1996) X Adelanto total Algoritmo B&B Feo et al (1996) X Suma de penalidades por retraso y costos de preparación GRASP Shutten et al (1996) X X Máximo retraso Algoritmo B&B Zdrzalka (1996) X X Tiempo de procesamiento Algoritmo B&B Gupta y Hob (1995) X X Número de operaciones retrasadas Alg. heurístico y B&B Planteamiento del problema El prototipo del problema de secuenciación se denomina problema del Taller Mecánico (Job Shop Problem). Según Companys (2003), el enunciado básico general del problema es: n piezas (lotes de piezas, pedidos u órdenes de trabajo) deben realizarse en m máquinas (recursos, secciones, puestos de trabajo). La realización de cada pieza implica la ejecución, en cierto orden establecido, de una serie de operaciones prefijadas donde cada operación está asignada a una de las

12 m máquinas y tiene una duración determinada y conocida; debe establecerse un programa, es decir, la secuencia de operaciones en cada máquina y el intervalo temporal de ejecución de las operaciones, con el objetivo de optimizar un índice determinado que mide la eficiencia del programa. Una de las nomenclaturas utilizadas para denotar los problemas del Taller Mecánico es la propuesta por Conway et al (1967) formada por símbolos A / B / C / D, donde: A: número de piezas (n indica un número de piezas arbitrario). B: número de máquinas (m indica un número de máquinas arbitrario). C: patrón de flujo. [F: indica flujo regular (flow shop), todas las piezas tienen esencialmente la misma ruta. P: indica un caso particular del anterior en el que todas las máquinas tienen la misma secuencia de piezas. R: indica rutas aleatorias (randomly routed job shop). G: indica flujo general (jobshop)]. D: se refiere al índice de eficiencia elegido para evaluar los programas. [Cmax: instante de salida de la última pieza del taller. Fmax: tiempo de permanencia de la pieza que permanece más tiempo. Fmed: tiempo medio de permanencia en el taller. Tmax: retraso de la pieza que se retrasa más. Tmed: retraso medio]. Para los diferentes conceptos implicados en los problemas, la notación usada es la siguiente, dada una pieza i: n i p,i bi ri di w,i número de piezas índice de piezas i I ={1,2,3,,n} tiempo de procesamiento de la pieza i (processing time) familia a la que pertenece la pieza i (bach) instante de entrada de la pieza i en el taller (ready time) fecha de vencimiento de la pieza i (due date) tiempo de espera de la pieza i (waiting time) SThi tiempo de preparación de la pieza i cuando h ha sido la pieza anterior de la secuencia ai tiempo concedido para la realización de la pieza i ai d i ri ci instante de salida de la pieza i (completion time) c i ri wi pi STh, i Fi tiempo de permanencia de la pieza i F i ci ri wi pi STh, i Li diferencia entre el instante de salida real y el previsto (lateness) Li ci d i Ti retraso (tardiness) T max L,0 i i

13 De acuerdo con la notación, se trata del caso n/1// T, en que un conjunto de n piezas deben ser secuenciadas en una máquina. Se asume que la máquina puede procesar una sola pieza a la vez y que está disponible en el instante cero. Las piezas están disponibles al inicio del proceso y tienen un tiempo límite de entrega. Se asume que las piezas están clasificadas en familias y que el tiempo de preparación se produce cuando se pasa de una familia a otra. El tiempo de preparación de la máquina depende de la familia de la pieza a ser procesada y la familia de la pieza que la precede. Para cada pieza i se conoce el tiempo de operación; el tiempo de entrega, la familia a la que pertenece dicha pieza y los tiempos de preparación de la máquina al pasar de una familia a otra. Según la secuencia escogida, para cada pieza i el instante en que la pieza sale del taller ci, viene dado por: ci= ri+wi+pi+sthi y su retraso Ti viene dado por: Ti = max{0, ci di}. El objetivo es encontrar una secuencia de las piezas que minimice la suma del retraso de las piezas: n T i i 1 MIN Z (1) METODOLOGÍA El presente trabajo se realizó mediante una investigación no experimental del tipo exploratoria y evaluativa que permitió evaluar, mediante pruebas computacionales, el comportamiento de los Algoritmos Evolutivos para resolver el problema de secuenciación de operaciones. El Algoritmo Evolutivo se codificó en Visual Basic y las pruebas se realizaron en un computador personal Pentium IV 3.00 GHz y 1.00 GB Ram. En la experiencia computacional se probaron 1000 instancias, obtenidas mediante simulación en el Laboratorio de Organización Industrial del Departamento de Organización de Empresas de la Universidad Politécnica de Cataluña, con un número de familias entre 4 6 y con un número de piezas entre 15 25. Las instancias se clasificaron en problemas de: (a) 15 piezas de 4 familias; (b) 20 piezas de 4 familias; (c) 25 piezas de 4 familias; (d) 20 piezas de 5 familias; (e) 25 piezas de 5 familias y (f) 25 piezas de 6 familias. Cada instancia se resolvió usando cuatro reglas de secuenciación diferentes y mediante el Algoritmo Evolutivo propuesto. Los datos dados para cada uno de las instancias: número de piezas, número de familias, tiempo de preparación para pasar de una familia a otra, tiempo de operación de cada pieza, tiempo de entrega de cada pieza, familia a la que pertenece cada pieza y la familia procesada anteriormente (para la cual la máquina está preparada inicialmente). Reglas de secuenciación Se aplicaron cuatro reglas que permitieron generar soluciones directas, las dos

14 primeras estáticas y las dos últimas dinámicas: EDD (earliest due date): consiste en ordenar las piezas, en orden creciente, de acuerdo con la fecha de vencimiento. Para cada pieza i se considera la fecha de vencimiento di y el tiempo de preparación STh,i (dependiente de la familia de la pieza anterior h). Dada las características del problema tratado, esta regla favorece las piezas más prioritarias, sin embargo no aprovecha la ventaja de reducir los tiempos de preparación al procesar, sucesivamente, piezas de la misma familia. SST EDD (shortest setup time earliest due date): consiste en ordenar las piezas por familias de acuerdo con el tiempo de preparación más corto cuando se cambia de una familia a otra (para favorecer un tiempo mínimo de cambios entre familias), y, además, secuenciar las piezas entre familia por orden creciente de fechas de vencimiento. CR1 (Cociente). Índice crítico para cada pieza i, basada en De Castro et al (2003), que consiste en calcular el índice de prioridad por medio de la fecha de vencimiento dividida por la suma entre el tiempo de preparación de la familia de la pieza i (dependiente de la familia de la pieza anterior h) y el tiempo de procesamiento de la pieza i. Las piezas que tienen el CR1 más pequeños se asignan primero. CR1= di/(sthi+pi) (2) CR2 (Suma ponderada). Consiste en asignar las piezas tomando en cuenta el índice de prioridad (α) para cada pieza i, el cual pondera la fecha de vencimiento, el tiempo de preparación de la familia de la pieza i (dependiente de la familia de la pieza anterior h) y el tiempo de procesamiento de la pieza i. Asignando primero las piezas que tienen índices más pequeños. Basado en Companys y D Armas (2005) se utilizó un α= 0,2 CR2 = 0.2 di+ 0.8 (pi+ SThi) (3) En el siguiente ejemplo se aplican las reglas de secuenciación descritas anteriormente, a un ejemplar de 12 piezas con 4 familias, asumiendo que la última familia procesada es la número uno. A continuación se presentan los datos relacionados con el tiempo de procesamiento, vencimiento, familia a la cual pertenece y la matriz de tiempos de preparación: i 1 2 3 4 5 6 7 8 9 10 11 12 SThi 1 2 3 4 pi 5 6 8 9 8 7 6 4 7 9 8 5 1 0 2 2 2 di 22 31 42 50 19 23 29 41 20 31 25 43 2 2 0 2 2 bi 1 1 1 1 2 2 2 2 3 3 4 4 3 2 2 0 2 4 2 2 2 0

15 Si se ordena conforme a la fecha de vencimiento EDD, la secuencia es 5 9 1 6 11 7 2 10 8 3 12 4, y los resultados son los siguientes: i 5 9 1 6 11 7 2 10 8 3 12 4 pi 8 7 5 7 8 6 6 9 4 8 5 9 bi 2 3 1 2 4 2 1 3 2 1 4 1 SThi 2 2 2 2 2 2 2 2 2 2 2 2 ci 10 19 26 35 45 53 61 72 78 88 95 106 di 19 20 22 23 25 29 31 31 41 42 43 50 Li 9 1 4 12 20 24 30 41 37 46 52 56 Ti 0 0 4 12 20 24 30 41 37 46 52 56 Si se ordenan por familia y fecha de vencimiento SST EDD, la secuencia es 1 2 3 4 5 6 7 8 9 10 11 12, obteniéndose los resultados siguientes: i 1 2 3 4 5 6 7 8 9 10 11 12 pi 5 6 8 9 8 7 6 4 7 9 8 5 bi 1 1 1 1 2 2 2 2 3 3 4 4 SThi 0 0 0 0 2 0 0 0 2 0 2 0 ci 5 11 19 28 38 45 51 55 64 73 83 88 di 22 31 42 50 19 23 29 41 20 31 25 43 Li 17 20 23 22 19 22 22 14 44 42 58 45 Ti 0 0 0 0 19 22 22 14 44 42 58 45 Si se ordenan de acuerdo con el índice crítico CR1, la secuencia es 5 9 11 6 10 1 7 2 3 4 12 8, obteniéndose los resultados siguientes: i 5 9 11 6 10 1 7 2 3 4 12 8 CR1 1,90 2,22 2,50 2,56 2,82 3,14 3,63 3,88 5,25 5,56 6,14 6,83 pi 8 7 8 7 9 5 6 6 8 9 5 4 bi 2 3 4 2 3 1 2 1 1 1 4 2 SThi 2 2 2 2 2 2 2 2 0 0 2 2 ci 10 19 29 38 49 56 64 72 80 89 96 102 di 19 20 25 23 31 22 29 31 42 50 43 41 Li 9 1 4 15 18 34 35 41 38 39 53 61 Ti 0 0 4 15 18 34 35 41 38 39 53 61

16 Si se ordenan de acuerdo con el índice crítico CR2 (con α=0,5), la secuencia es 1 5 9 6 7 11 2 10 8 12 3 4, obteniéndose los resultados siguientes: i 1 5 9 6 7 11 2 10 8 12 3 4 CR2 13,5 14,5 14,5 16 17,5 17,5 19,5 21 23,5 25 26 29,5 pi 5 8 7 7 6 8 6 9 4 5 8 9 bi 1 2 3 2 2 4 1 3 2 4 1 1 SThi 0 2 2 2 0 2 2 2 2 2 2 0 ci 5 15 24 33 39 49 57 68 74 81 91 100 di 22 19 20 23 29 25 31 31 41 43 42 50 Li 17 4 4 10 10 24 26 37 33 38 49 50 Ti 0 0 4 10 10 24 26 37 33 38 49 50 Si se comparan los resultados de las cuatro reglas de secuenciación, se puede observar que la secuencia SST EDD ofrece el menor retraso total; esta disminución puede ser debido a que se aprovecha la ventaja de reducir los tiempos de preparación al agrupar las piezas de la misma familia: Índice de eficacia CR1 EDD CR2 SST EDD Tmed 28,17 26,83 23,42 22,17 Tmax 61 56 50 58 T 338 322 281 266 Algoritmos evolutivos (EA) EA es un algoritmo de búsqueda que explora un espacio de soluciones que simula procesos en un sistema natural hacia la evolución, específicamente aquellos que siguen el principio de la supervivencia en función de la adaptabilidad (Adenso et al, 1996). EA fue desarrollado por Holland (1975), y se distingue muy claramente de los métodos Recocido Simulado, Búsqueda Tabú y GRASP, básicamente por el hecho de que en cada iteración se tiene un conjunto de soluciones, o población en curso y no una única solución en curso. Las soluciones sucesoras se obtienen a partir de parejas constituidas con los elementos de la población y no mediante la transformación de la solución en curso.

17 Formalización EA es una clase de metaheurística de búsqueda local que ha sido también propuesta para los problemas de optimización combinatoria. El concepto representa una solución factible como una cadena de genes, es decir cromosomas, que forman una población de soluciones. La evolución de la población se realiza mediante el cruce y la mutación (Goldberg, 1989). Cruce se refiere a la unión de dos soluciones para derivar nuevas individuales, mientras que mutación se refiere a una solución alterada por el cambio de un gen. La solución definida por las cadenas se evalúa mediante un valor de fitness (de adaptación al entorno). El procedimiento de la Metaheurística EA que se ha aplicado se explica cómo sigue. Sea P(g) y D(g) padres y descendientes respectivamente en la generación existente g: FOR g: = 0; Inicialización de la población P(g) Evaluación de P(g) FOR Recombinación de P(g) para generar D(g); Evaluación de D(g); Selección de P(g + 1) de P(g) y D(g); g: = g + 1 END END En cada iteración se obtiene el conjunto de descendientes de la población, y a partir de la reunión de la población y sus descendientes se obtiene la población de la iteración siguiente. Los descendientes se obtienen mediante los procesos de selección, cruce y mutación; la nueva población mediante la regeneración. Población inicial La dimensión de la población se tomó igual al número de piezas de tal manera que la población tiene una relación directamente proporcional con la dimensión del problema a tratar. En cuanto a su composición, la población inicial se dividió en dos partes iguales, las

18 cuales se diferencian entre sí por el esquema de confección de los cromosomas que conforman dicha población. La mitad de la población se forma secuenciando todas las operaciones, en orden creciente, de acuerdo con la fecha de vencimiento. Posteriormente, se generan aleatoriamente, dos genes a permutar en la secuencia dando lugar a una nueva secuencia. La otra mitad, se forma secuenciando todas las operaciones de acuerdo con el Índice Crítico CR2 en orden no decreciente de su índice. Posteriormente, se generan aleatoriamente, dos genes a permutar en la secuencia dando lugar a una nueva secuencia. Se utilizó la Regla CR2 ya que es estadísticamente más efectiva que CR1, EDD y SST EDD. Selección El retraso total ( T) se consideró como la medida de la calidad de un individuo (solución). El proceso de selección se realizó mediante la combinación de las mejores secuencias y de forma aleatoria. Un 50% de las secuencias a cruzar lo conforman las mejores soluciones de la población actual y el otro 50% se elige aleatoriamente. Cruces Las soluciones progenitoras del grupo seleccionado, se emparejaron por orden de bondad de la solución, es decir, la primera solución se empareja con la segunda, la tercera con la cuarta, etc. dentro de la lista de soluciones elegidas ordenadas de acuerdo con el valor de T. A continuación, una vez que se tienen las parejas, se procede a realizar el cruce entre ambas, las cuales generan dos soluciones descendientes. El procedimiento de cruce que se ha aplicado es el Cruce PMX (Partially Matched Crossover). Dadas dos soluciones progenitoras, se eligen dos puntos de cruce al azar, luego, el procedimiento copia los genes de uno de los padres directamente a las mismas posiciones en el hijo. Las posiciones restantes se llenan con los valores que aún no han sido utilizados en el mismo orden en que se encuentran en uno de los padres. Por ejemplo, si se tienen los dos padres siguientes: P1 = <1, 2, 4, 6, 3, 7, 5 8> y P2 = <5, 4, 1, 7, 2, 6, 8, 3>, y si los puntos de cruce seleccionados al azar de P1 para ser insertados en P2 se sitúan entre el 2 3 gen y entre el 5 6, los genes seleccionados de P1 para ser insertados en P2 son <4 6 3>, lo que establece una relación con los genes <1 7 2> que ocupan las mismas posiciones en P2. Entonces, la secuencia de operaciones transformaría P2 en: <5, 4, 4, 6, 3, 6, 8, 3>. Luego, eliminando las repeticiones quedaría: <5, *, 4, 6, 3, *, 8, *>. Reemplazando queda: <5, 1, 4, 6, 3, *, 8, *> ya que el 4 había ocupado el lugar del 1. Continuando, se obtiene: <5, 1, 4, 6, 3, 7, 8, 2> (ver Figura 2)

19 PADRE 1 PADRE 2 1 2 4 6 3 7 5 8 5 4 1 7 2 6 8 3 HIJO 5 1 4 6 3 7 8 2 Figura 2. Ejemplo de solución descendiente Mutaciones Para el problema, se fijó la probabilidad de mutación en un treinta por ciento, de acuerdo con los resultados de Fernández Baños (2003). Es decir, el procedimiento genera un número aleatorio entre 0 y 1, si este valor es inferior al parámetro de probabilidad fijado (0,3) se realiza la mutación en la secuencia. En el supuesto que lo haga, la mutación consiste en intercambiar un gen, seleccionado al azar, con su consecutivo en la secuencia. Siguiendo con el ejemplo anterior, se genera un número aleatorio. Suponiendo que es el cuatro, entonces se intercambia el cuarto gen de la secuencia con el quinto (ver Figura 3): 5 1 4 6 3 7 8 2 5 1 4 3 6 7 8 2 Figura 3. Ejemplo de mutación Regeneración En este proceso de regeneración se seleccionaron las mejores secuencias de las dos poblaciones de soluciones, progenitoras e hijas. Es decir, la nueva población generada para la siguiente iteración está formada por la mitad del total de las soluciones (progenitores + descendientes) (Fernández Baños, 2003). RESULTADOS Y DISCUSIÓN La experiencia computacional se realizó en un total de 1000 instancias, con un número de familias de 4 a 6 y con un número de piezas de 15 a 25. Las instancias se clasificaron en seis

20 colecciones de acuerdo con el número de piezas y familias: 200 instancias de 15 piezas de 4 familias 200 instancias de 20 piezas de 4 familias 200 instancias de 25 piezas de 4 familias 100 instancias de 20 piezas de 5 familias 100 instancias de 25 piezas de 5 familias 200 instancias de 25 piezas de 6 familias Cabe resaltar que los resultados mostrados se obtuvieron con un número de iteraciones igual a 500. Se realizaron corridas 1000, 2000, 3000, 4000 y 5000 iteraciones, encontrándose que la calidad de las soluciones no mejora con el incremento del número de iteraciones y que el esfuerzo computacional es mucho mayor. (Adenso et al, 1996). Con el objeto de determinar cuál es el procedimiento más adecuado para el tipo de problema estudiado, en esta sección se comparan los resultados obtenidos con las reglas de secuenciación y el EA. La Tabla 2 resume los resultados experimentales de las 1000 instancias en términos de cantidad de mejores y peores soluciones. Se puede observar que con los Algoritmos Evolutivos se lograron los mejores resultados en la mayoría de las instancias. Tabla 2. Reglas de secuenciación vs. EA. Cantidad de mejores y peores soluciones Ejemplares: n = 15, b= 4 n = 20, b= 4 Cantidad de soluciones: peores mejores* peores mejores SST EDD 0 15 0 5 EDD 0 1 0 0 CR1 200 0 200 0 CR2 0 27 0 112 Algoritmo Evolutivo: 0 174 0 195 *(17 empates binarios) *(12 empates binarios) Ejemplares: n = 25, b= 4 n = 20, b= 5 Cantidad de soluciones: peores mejores* peores mejores SST EDD 0 3 0 1 EDD 0 1 0 0 CR1 200 0 100 0 CR2 0 9 0 5 Algoritmo Evolutivo: 0 197 0 99 *(10 empate binario) *(5 empates binarios) Ejemplares: n = 25, b= 5 n = 25, b= 6 mejor Cantidad de soluciones: peores es* peores mejores SST EDD 0 0 0 1 EDD 0 0 0 0 CR1 100 0 200 0 CR2 0 5 0 5 Algoritmo Evolutivo: 0 100 0 199 *(5 empates binarios) *(5 empates binarios)

21 Los resultados experimentales en términos del valor medio del retraso total se presentan gráficamente en la Figura 4. Puede observarse que para todas las colecciones, las soluciones con menor valor medio de retraso total se obtienen con EA y los mayores retrasos se obtienen con CR1. 3000 2500 Valor medio del retraso 2000 1500 1000 500 0 n=15, b=4 n=20, b=4 n=25, b=4 n=20, b=5 n=25, b=5 n=25, b=6 GA 85.00 178.60 272.20 213.00 306.80 293.70 CR2 138.22 211.33 313.87 251 365.49 348.12 SST-EDD 252.38 435.88 673.08 481.39 692.26 725.34 EDD 301.22 550.44 884.69 606.03 932.75 926.63 CR1 828.1 1561.5 2503 1554.1 2468.5 2529.6 Figura 4. Comparación del retraso medio. Metaheurística EA Discusión En un primer análisis, cabe decir que el Algoritmo Evolutivo propuesto, proporciona, en general, mejores resultados que las reglas de secuenciación, con un menor valor medio del retraso total. Para probar si existen diferencias significativas entre las medias de las soluciones obtenidas con las reglas de secuenciación y con los EA, se realizó un análisis de varianza (ANOVA) de una vía a un nivel del 5%. De acuerdo con los resultados obtenidos, se demuestra que existen diferencias significativas entre las medias de las soluciones a un nivel de confianza del 95%. (Ver Tabla 3). Tabla 3. Resultados del análisis de varianza PRUEBA: ANOVA F Ratio (P Valor) n =15, b =4 14,0016* (0,0000) n =20, b =4 28,0763* (0,0000) n =25, b =4 29,9568* (0,0000) n =20, b =5 5,56271* (0,0010) n =25, b =5 8,61776* (0,0000) n =25, b =6 12,6027* (0,0000) *Estadísticamente significativo con α=0,05

22 Además, se aplicó el procedimiento de las menores diferencias significativas de Fisher (LSD), lo que permitió determinar cuáles medias son significativamente diferentes de otras (Ver Tabla 4). Los resultados indican que los diez pares muestran diferencias estadísticamente significativas a un nivel de confianza del 95%. Los Algoritmos Evolutivos son estadísticamente más efectivos que las reglas de secuenciación CR2, CR1, EDD, SST EDD y EDD. La Regla de secuenciación CR2 es estadísticamente más efectiva que CR1, EDD y SST EDD. La Regla de secuenciación SST EDD es más efectiva que EDD y CR1. Tabla 4. Resultados de la comparación múltiple de medias CONTRASTE MÚLTIPLE DE RANGO PRUEBA: Diferencias (+/ Límites) Contraste n=15, b=4 n=20, b=4 n=25, b=4 n=20, b=5 n=25, b=5 n=25, b=6 SST_EDD EDD SST_EDD CR1 SST_EDD CR2 SST_EDD EA EDD CR1 EDD CR2 EDD EA CR1 CR2 CR1 EA CR2 EA 48,835 * (27,4714) 114,55* (42,4929) 211,61* (58,6674) 124,64* (62,2383) 575,715 1125,66* 1829,92* 1072,66* * (42,4929) (58,6674) (62,2383) (27,4714) 114,165* 224,555* 359,21* 230,39* (27,4714) (42,4929) (58,6674) (62,2383) 43,525* 48,61* 63,45* 64,74* (27,4714) (42,4929) (58,6674) (62,2383) 526,88* 1011,11* 1618,3* 948,02* (27,4714) (42,4929) (58,6674) (62,2383) 163,0 * 339,105* 570,82* 355,03* (27,4714) (42,4929) (58,6674) (62,2383) 80,555* 115,945* 167,505* 140,61* (27,4714) (42,4929) (58,6674) (62,2383) 689,88 * 1350,22* 2189,13* 1303,05* (27,4714) (42,4929) (58,6674) (62,2383) 39,69* 42,895* 69,48* 85,2* (27,4714) (42,4929) (58,6674) (62,2383) 60,825* 83,905* 126,485* 103,66* (27,4714) (42,4929) (58,6674) (62,2383) * Estadísticamente significativo con α=0,05 240,49* (82,8844) 1776,2* (82,8844) 326,77* (82,8844) 95,65* (82,8844) 1535,71* (82,8844) 567,26* (82,8844) 197,16* (82,8844) 2102,97* (82,8844) 143,84* (82,8844) 140,33* (82,8844) 201,295* (61,2131) 1804,26* (61,2131) 377,21* (61,2131) 84,01* (61,2131) 1602,96* (61,2131) 578,505* (61,2131) 198,995* (61,2131) 2181,47* (61,2131) 145,6* (61,2131) 146,515* (61,2131)

23 CONCLUSIONES Los resultados computacionales obtenidos muestran que el Algoritmo Evolutivo propuesto logra explorar el espacio de búsqueda de forma eficaz, y arroja mejores resultados que los obtenidos con las reglas de secuenciación EDD (earliest due date), SST EDD (shortest setup time earliest due date), Índice CR1 (Cociente) e Índice CR2 (Suma ponderada). Teniendo en cuenta que para lograr la solución óptima del problema estudiado se requiere un proceso excesivamente largo, se concluye que los resultados obtenidos son satisfactorios. Resaltando la adaptabilidad del EA planteado al problema específico estudiado, de una máquina con tiempos de preparación dependientes de la secuencia de las piezas. La investigación presentada en este trabajo puede ser tomada como una base para posibles extensiones enfocadas a considerar otro tipo de variaciones del problema estudiado, incorporando elementos que en ocasiones también aparecen en determinados ambientes industriales reales: introducir restricciones de costos de penalización, modelar el problema teniendo en cuenta la incertidumbre o priorizar las órdenes de producción de acuerdo con la importancia o pesos relativos. En cuanto a la metaheurística EA, se sugiere continuar investigando sobre el impacto de los diferentes elementos que forman el algoritmo propuesto con el fin de medir sus rendimientos, particularmente si se incrementa el número de pedidos n. Así como probar otros métodos de cruces y de mutación. Finalmente, se recomienda resolver este mismo problema mediante otro tipo de metaheurísticas, como pueden ser el Recocido Simulado (SA), la Búsqueda Tabú (TS) o un algoritmo GRASP, y comparar los resultados obtenidos con los Algoritmos Evolutivos. REFERENCIAS Allahverdi A. (2000). Minimizing mean flowtime in a two machine flowshop with sequence independent setup times. Computers & Operations Research, 27, 111 127. Allahverdi A., Gupta J. y Aldowaisan T. (1999). A review of scheduling research involving setup considerations. Omega, International Journal of Management Science, 27, 219 239. Adenso B., Glover F., Ghasiri H., González JL., Laguna M., Moscazo P. y Tseng F. (1996). Optimización Heurística y Redes Neuronales en Dirección de Operaciones e Ingeniería. España: Editorial Paraninfo. Asano M. y Ohta H. (1996). Single machine scheduling using dominance relation to minimize earliness subject to ready and due times. International Journal Production Economics, 44, 35 43.

24 Baker K. y Magazine M. (2000). Minimizing maximum lateness with job families. European Journal of Operational Research, 127, 126 139 Baker K. (1999). Heuristic Procedures for Scheduling Job Families with Setups and Due Dates. Naval Research Logistics, 46, 978 991 Chen Z L. (1997). Heuristic Procedures for Scheduling Job Families with Setups and Due Dates. European Journal of Operational Research, 96, 518 537 Companys R. (2003). Secuenciación. Programación de proyectos y de taller. Equilibrado y secuenciación de líneas. Volumen I. España: CPDA ETSEIB Publicacions d Abast S.L.L. Companys R. y D Armas M. (2005), Programación de operaciones con tiempo de preparación mediante algoritmos de optimización local. Universidad, Ciencia y Tecnología, 9(35), 155 162. Conway R., Maxwell W. y Miller L. (1967). Theory of Scheduling. MA: Addison Wesley. D Armas M. (2005), Estado del arte de la programación de operaciones con tiempos de preparación: tema para futuras investigaciones. Parte I. Universidad, Ciencia y Tecnología, 9(33), 42 48. De Castro R., Companys R. y Mateo M. (2003), Programación de las órdenes de fabricación en una sola máquina con tiempos de preparación, V Congreso de Ingeniería de Organización, Valladolid Burgos, 59 60. Dunstall S., Wirth A. y Baker K. (2000). Lower bound and algorithms for flowtime minimization on a single machine with set up times. Journal of Scheduling, 3, 51 69. Feo T., Sarathy K. y McGahan J. (1996). A grasp for single machine scheduling with sequence dependent setup costs and linear delay penalties. Computers Operations Research, 23, 881 895. Fernández Baños I. (2003), Programación de la secuencia de fabricación en una máquina, con tiempos de preparación variables, mediante la aplicación de Algoritmos Evolutivos. Proyecto de Fin de Carrera. Escuela Técnica Superior de Ingeniería Industrial de Barcelona, España França P., Mendes A. y Moscazo P. (2001). A memetic algorithm for the total tardiness single machine scheduling problem. European Journal of Operational Research, 132, 224 242. Goldberg, D.E. (1989), Genetic Algorithms in Search, Optimization and Machine Learning, Addison Wesley, Reading, MA. Holland J. (1975). Adaptation in Natural and Artificial Systems. Ann Arbor: University of Michigan Press. Gupta J. y Hob J. (1995). Scheduling with two job classes and setup times to minimize the number of tardy jobs. International Journal of Production Economics, 42, 205 216. Kolahan F. y Liang M. (1998). An adaptive TS approach to JIT sequencing with variable processing times and sequence dependent setups. European Journal of Operational Research, 109, 142 159. Lee S. y Asllani A. (2004). Job scheduling with dual criteria and sequence dependent setups: mathematical versus genetic programming. Omega. 32(2), 145 153. Lee C Y. y Pinedo M. (2002). Problems Types, en: Handbook of Applied Optimization. Oxford University Press, Inc. Unites Estates. Liaee M. y Emmons H. (1997). Scheduling families of jobs with setup times. International Journal of Production Economics, 51(3), 165 176.

25 Morales E. (2004). Búsqueda, Optimización y Aprendizaje. Documento en línea. Disponible en: http://ccc.inaoep.mx/~emorales/cursos/busqu eda04/principal.html Narasimhan S., McLeavey D. y Billington P. (1995). Production Planning and Inventory Control, 2da edición. New Jersey: Prentice Hall. Ng C T D, Cheng E. y Kovalyov M. (2004). Single machine batch scheduling with jointly compressible setup and processing times. European Journal of Operational Research, 153(1), 211 219. Rabadi G., Mollaghasemi M. y Anagnostopoulos G. (2004). A branch andbound algorithm for the early/tardy machine scheduling problem with a common due date and sequence dependent setup time. Computers & Operations Research, 31(10), 1727 1751. Shutten J., Van de Velde S. y Zijm W. (1996). Single machine scheduling with release dates, due dates and family setup times. Management Science, 42, 1165 1174. Sun X., Noble J. y Klein C. (1999). Singlemachine scheduling with sequence dependent setup to minimize total weighted squared tardiness. IIE Transactions, 31, 113 124. Tan K C, Narasimhan R., Rubin P., Ragatz G. (2000). A comparison of four methods for minimizing total tardiness on a single processor with sequence dependent setup times. Omega, 28, 313 326. Tan K C y Narasimhan R. (1997). Minimizing Tardiness on a Single Processor with Sequence dependent Setup Times: a Simulated Annealing Approach. Omega, International Journal Management Science, 25, 619 634. Webster S., Jog P. y Gupta A. (1998). A genetic algorithm for scheduling job families on a single machine with arbitrary earliness/tardiness penalties and an unrestricted common due date. International Journal of Production Research, 36, 2543 2551. Zhu Z y Heady R. (2000). Minimizing the sum of earliness/tardiness in multi machine scheduling: a mixed integer programming approach. Computers & Industrial Engineering, 38, 297 305. Autora Mayra D Armas Renault. Ingeniero Industrial, Magister Scientiarum en Ingeniería Industrial, Doctora en Administración y Dirección de Empresas. Docente Investigador adscrita al Departamento de Ingeniería Industrial de la Universidad Nacional Experimental Politécnica Antonio José de Sucre (UNEXPO), Vicerrectorado Puerto Ordaz, Venezuela. E mail: mdarmas@unexpo.edu.ve Recibido: 19/10/2009 Aceptado: 12/01/2010