SciELO - Scientific Electronic Library Online

 
vol.23 número1Estudio de la Incertidumbre en la Programación de Actividades usando la Matriz de Estructura DependienteMetodología basada en el Modelo de Referencia para Cadenas de Suministro para Analizar el Proceso de producción de Biodiesel a partir de Higuerilla índice de autoresíndice de materiabúsqueda de artículos
Home Pagelista alfabética de revistas  

Información tecnológica

versión On-line ISSN 0718-0764

Inf. tecnol. vol.23 no.1 La Serena  2012

http://dx.doi.org/10.4067/S0718-07642012000100005 

Información Tecnológica Vol. 23(1), 35-46 (2012)

 

Una Metodología Multiobjetivo para Optimizar un Ambiente Job Shop

 

A Multiobjective Methodology to Optimize a Job Shop Environment

 

Santiago Ruiz, Omar D. Castrillón y William A. Sarache

Universidad Nacional de Colombia. Campus la Nubia. Manizales-Colombia

(e-mail: sruizhe@unal.edu.co, odcastrillong@unal.edu.co, wasarachec@unal.edu.co)


Resumen

Se presenta el desarrollo de una metodología que incluye un modelo metaheurístico basado en el Algoritmo Genético Ordenado Elitista No-Dominado (Elitist Non-Dominated Sorting Genetic Algorithm, NSGA-II) en un ambiente de producción Job Shop. Esto con el fin de minimizar tres variables fundamentales del proceso: tiempo total de proceso (makespan time), costo de energía y accidentalidad laboral. Con la aplicación de la metodología, se logra optimizar las variables objeto de estudio, en un 42%, respecto a las técnicas tradicionales de programación de la producción. Con base en la aplicación de la metodología propuesta, se plantea explorar otras funciones multi objetivo, en las que se analiza el consumo de otros recursos como agua y combustible, en situaciones no deseadas tales como paro de transportadores, deslizamientos de tierra en carreteras y congestión vehicular.

Palabras clave: job shop, multiobjetivo, metaheurística, tiempo total de proceso


Abstract

The development of a methodology that contains a metaheuristic model based on the Elitist Non-Dominated Sorting Genetic Algorithm (NSGA-II) in a job shop production environment. This is to minimize three main process variables: total time of processing (makespan time), energy cost and labor accidents. With the application of this methodology, the variables under study were optimized in 42%, compared with traditional production programming techniques. Based on the application of the proposed methodology, it is suggested to explore other multi objective functions in which the consumption of other resources, such as water and fuel can be analyzed in undesirable situations such as transport strike, landslides and traffic congestion.

Keywords: job shop, multiobjective, metaheuristic, makespan time


 

INTRODUCCIÓN

Según Domínguez et al. (1995), los sistemas Job Shop obedecen a configuraciones productivas en las cuales se manufactura una alta variedad de productos, en lotes que van desde una unidad a pocas unidades, con rutas de fabricación diferentes. Este tipo de sistemas, dadas sus particularidades, ofrecen un alto desempeño en flexibilidad y se ajusta muy bien a empresas cuyo mercado exige la fabricación bajo pedidos en firme (make to order). Igualmente, Domínguez et al. (1995) agregan que en ambientes de manufactura Job Shop, es muy difícil encontrar una solución óptima al problema de la programación de la producción utilizando técnicas tradicionales, especialmente cuando el número de pedidos N y el número de centros de trabajo M, es demasiado grande, dado que las soluciones posibles son del tamaño M!N.

En estos casos de alta complejidad en la programación, las técnicas de inteligencia artificial permiten encontrar mejores soluciones y en menor tiempo. Dichas técnicas y sus derivaciones han sido aplicadas en una gran variedad de campos de la gestión de la,producción (Castrillon et ál., 2011; Castrillon et ál., 2010; Castrillon et ál.,2009), la simulación (Peréz et ál., 2004; Rosa et ál., 2005; Giraldo et ál., 2010), decisiones de reemplazo de equipos, selección de proveedores, comercio colaborativo, optimización de redes (Montoya et al.,2006) y procesos multiobjetivo (Bastidas et al., 2010; Carranza et al., 2008) entre otras.

Bajo este marco, el presente trabajo, tiene como objetivo desarrollar una metodología, apoyada en un algoritmo evolutivo, para minimizar el tiempo total de procesamiento (makespan), el costo energético y la accidentalidad laboral, a partir de soluciones ya existentes. La metodología involucra la aplicación del método NSGA-II (Elitist Non-Dominated Sorting Genetic Algorithm) el cual aporta una técnica de búsqueda multiobjetivo, establecida por Deb et ál (2002) y aplicada por Correa et ál (2008) en el problema clásico de la mochila. Si bien, los algoritmos evolutivos han sido ampliamente usados en la solución de problemas Job Shop, es importante resaltar que la aplicación de estos, en problemas de producción multiobjetivo, ha sido escasa, tal como se puede observar en la Tabla 1.

Por otro lado, es importante resaltar que la aplicación de una metodología de optimización en campos como la accidentalidad laboral y costos de energía, trae como consecuencia, que el desarrollo de esta investigación tenga una mayor importancia. Como lo muestran las diferentes revisiones literarias de la Tabla 1, no existen referencias bibliográficas donde se haya empleado los algoritmos evolutivos bajo el método NSGA- II, en la optimización de un problema multiobjetivo, en las tres variables objeto de estudio que aborda el presente artículo.

El primero factor (accidentalidad laboral) es considerado en el mundo entero como uno de los principales problemas de los trabajadores dado su alto costo en vidas humanas y las secuelas que usualmente produce, ya que además de disminuir la capacidad laboral, genera consecuencias graves en la calidad de vida de los trabajadores, familias y sociedad (Wigoda, 2005). En esta vía, es importante resaltar los aportes de Ibcia, (2006) quien concluye que los accidentes laborales ocurren especialmente en determinadas horas del día, cuando el estado de alerta, concentración y productividad es bajo. En problema de la accidentalidad laboral se acrecienta especialmente en dos periodos de tiempo durante el dia: entre 12:00 m. y. 3:30 p.m. y en las 3:30 a.m. y las 6:30 a.m..

El segundo factor (costo de energía), le permitirá al empresario una mayor competitividad en un nivel nacional e internacional, permitiéndole, destinar los recursos ahorrados, por un menor costo energético, en actividades prioritarias para la empresa. Finalmente, se espera que las soluciones encontradas, sean superiores a las establecidas por medio de las técnicas tradicionales de programación de la producción.

Tabla 1: Técnicas de Inteligencia Artificial en la solución de problemas Job Shop Multi objetivos

MATERIALES Y MÉTODOS

Para el desarrollo de la metodología se proponen los siguientes pasos: Paso 1: Codificación con un cromosoma basado en una permutación. Paso 2: Definición de las bases de datos de consumo de energía eléctrica. Paso 3: Definición de las bases de datos de accidentalidad. Paso 4: Aplicación del Algoritmo de NSGA-II. Paso 5: Ponderación de resultados. Paso 6: comparación de resultados

Paso 1: Codificación con un cromosoma basado en una permutación

Los tiempos de procesos Tp(i,j) de cada pedido en cada máquina son representados en la Tabla 2. La secuencia en que cada pedido debe ser atendido por cada una de las máquinas es representada en forma matricial en la Tabla 3. En dicha tabla, los diferentes valores de las posiciones (i, j) representan la secuencia de máquinas a través de la cual debe pasar un pedido. Así, en la columna uno (sombreada), el pedido 1 (P1) debe pasar por las máquinas en el orden (1, m, 2). Se obtienen así tres asignaciones para este pedido.

Tabla 2: Tiempos de proceso

Tabla 3: Secuencia de pedidos en máquinas

Para un problema de JSSPnxm, el número de asignaciones es NxM. Estas asignaciones pueden ser representadas por medio de un vector de NxM posiciones y dos fila (ver Tabla 4). La primera fila representa las posiciones y la segunda las asignaciones.

Tabla 4: Posiciones y asignaciones

El empleo de las posiciones en la tabla 4, permite que esta tabla pueda ser empleada como un cromosoma. Este cromosoma, puede ser permutado fácilmente y establecida su asignación con base en el vector de asignaciones.

A manera de eiemplo, se ilustra (en un problema JSSP3x4) las secuencias de los pedidos en las maquinas (Tabla 5 y 6) con su respectivo cromosoma inicial (Tabla 7) y diagrama de Gantt (Figura 1). Con base en una serie de permutaciones de la primera fila (Tabla 7), se puede obtener una nueva solución del problema planteado. (Tabla 8)

Tabla 5: Secuencia de pedidos en máquinas para un problema JSSP3x4

Tabla 6: Tiempo invertido por cada pedido en cada máquina JSSP3x4

Tabla 7: Cromosoma inicial para un problema JSSP3x4

Tabla 8: Nueva solución para un problema JSSP3x4

El anterior cromosoma se representa en el diagrama de Gannt de la figura 1, el cual se elabora con base en las Tabla 5 y 6, sombreando secuencialmente el tiempo invertido en cada máquina por cada pedido, así: a) La primera posición es 10, que corresponde al pedido 4 en su primera máquina, que es la 2, el cual requiere de 9 unidades de tiempo. b) La segunda posición es 3, que corresponde al pedido 1 en su primera máquina, que es la 1, el cual requiere de 4 unidades de tiempo. c) La tercera posición es 6, que corresponde al pedido 2 en su primera máquina, que es la 3, el cual requiere de 3 unidades de tiempo. d) La cuarta posición es 9, que corresponde al pedido 3 en su primera máquina, que es la 3, el cual requiere de 3 unidades de tiempo. e) La quinta posición es 2, que corresponde al pedido 1 en su siguiente segunda máquina, que es la 3, el cual requiere de 3 unidades de tiempo. f) Y así sucesivamente.

Fig. 1: Diagrama de Gannt para un problema JSSP3x4

Paso 2: Definición de las bases de datos de consumo de energía eléctrica

Para cada uno de los equipos de la empresa obieto de estudio, se establecen su consumo en Kw/h. Posteriormente y tomando como referencia los costos de la empresa proveedora de energía eléctrica se calcula el consumo y costo de electricidad (por horas) en la empresa obieto de estudio. Finalmente, en este punto, se toman en cuenta los tiempos de cada uno de los pedidos y las rutas de proceso, con el fin de establecer una tabla de consumo en KW/H y costo, por cada trabaio, en cada una de las máquinas.

Paso 3: Definición de las bases de datos de accidentalidad

Tomando como referencia las tablas de accidentalidad de la empresa objeto de estudio, se establece el índice de accidentalidad durante cada una de las horas de la iornada laboral de la empresa; esto es entre 6:00 a.m. y 8:00 p.m.

Paso 4: Aplicación del Algoritmo de NSGA-II

En el desarrollo del algoritmo NSGA-II se debe considerar los siguientes pasos de carácter general: a) definición de variables; b) determinación de los cromosomas de población inicial; c) determinación de las operaciones genéticas a realizar: recombinación PMX (97%) (Murata, Ishibuchi 1995) y mutación. (3%)(Lin, 1973); d) cálculo de la función fitness; e) clasificación de los individuos en frentes, extracción de los mejores individuos y conformación de la población para la siguiente generación y f) definición de una condición de parada.

Este algoritmo utiliza una población descendiente Qt (tamaño N), la cual es creada inicialmente con una población de padres Pt (tamaño N); seguidamente, las dos poblaciones son unidas para formar una población Rt, de tamaño 2N. Posteriormente y por medio un ordenamiento no dominado se clasifica la población Rt en diferentes frentes de Pareto. Esto requiere de un proceso complejo, que permite verificar la dominancia en la población de padres e hijos. Una vez el proceso de ordenamiento no dominado finaliza, la nueva población se extrae de los grupos de frentes no dominados. Usando los individuos de los mejores frentes, se completa una población de tamaño N. Una vez la población es completada, los demás individuos pertenecientes a los frentes de peor calidad, son eliminados. Al momento de decidir qué elementos deben ser eliminados, se utiliza técnicas basadas en distancia de apilamiento (Echeverry, 2009; Deb et ál, 2000; Correa et ál, 2008)).

Paso 5: Ponderación de resultados

Se establece una función fitness que se aplica a cada uno de los tres objetivos a optimizar: a) tiempo de proceso, b) costo de energía eléctrica y c) accidentalidad laboral. Las tres funciones pueden ser modeladas por medio de la ecuación 1, la cual es aplicada al tiempo de proceso:

El objetivo es minimizar esta función Fitness. Donde N representa el número de trabajos, M representa el número de máquinas y Pji es el tiempo de procesamiento del trabajo i, en la máquina j. Para cada una de las mejores secuencias encontradas, se determina el tiempo de proceso, costo de electricidad y la probabilidad de generarse accidentalidad laboral. Esta última se calcula, según información histórica, dividiendo el número de trabajadores accidentados sobre el número de trabajadores expuestos. Se toma como referencia la definición de las bases de datos de electricidad y accidentalidad (pasos 2 y 3). El costo de electricidad se establece según el tiempo en que cada trabajo inicia y termina en cada máquina, teniendo presente su secuencia en las diferentes máquinas que debe pasar. El índice de accidentalidad (probabilidad), se determina según el número trabajadores expuestos por pedido en cada máquina y su accidentalidad esperada según su jornada. Se establece entonces una tabla donde para cada uno de los individuos se muestre el resultado de sus tres funciones objetivo.

Finalmente, se escogen los individuos con mejor desempeño en cada una de las tres funciones y se ponderan según las ecuaciones 2, 3 y 4. En la ponderación se estima un factor de ponderación, para cada uno de los objetivos. En este caso el factor de ponderación es 4,5 y 1 respectivamente, es decir 0.4, 0.5 y 0.1 respectivamente. El nivel de importancia de cada individuo se califica de 0 a 1, al comparar cada individuo con el conjunto de individuos, aplicando las ecuaciones 1, 2 y 3.

Donde: X = Cualquier individuo de la población; j = Número de un individuo de la población; Xj = Individuo j de la población; P(Xj) = Ponderación del Individuo Xj, siempre es un valor entre

0 y 1; i = Contador que va de 1 al número total de Funciones Objetivo; M = Número total de Funciones Objetivo; (Xj)i = Valor de la Función Objetivo i en el individuo j;

P(VR(fi(Xj))) =Ponderación del Valor Relativo de la Función Objetivo f en el Individuosj; VR= Valor Relativo entre 0 y 1.

Si la Función Objetivo fi es de minimizar la Ponderación del Valor Relativo de la Función Objetivo fi en el Individuosj se haya con la ecuación 3.

Donde P = Ponderación; VR= Valor relativo entre 0 y 1; X=Cualquier individuo de la población; j = Número de un individuo en una población; Xj = Individuo j de una población; i = Número de la Función Objetivo; fi (Xj) = Valor de la función fi para el individuo Xj; fimax = Valor máximo encontrado para la función f en una población; fimin = Valor mínimo encontrado para la función fi en una población; FP = Factor de Ponderación; FP(fi) = Factor de Ponderación de la Función Objetivo i (fi). Si la Función Objetivo fi es de maximizar la Ponderación del Valor Relativo de la Función Objetivo fi en el Individuos j se haya con la ecuación 4:

Donde P = Ponderación; VR= Valor relativo entre 0 y 1; X=Cualquier individuo de la población; j = Número de un individuo en una población; Xj=Individuo j de una población; i = Número de la Función Objetivo; fi (Xj) =Valor de la función fi para el individuo Xj; fimax=valor máximo encontrado para la función fi en una población; fimax=valor mínimo encontrado para la función fi en una población; FP = Factor de Ponderación; FP(fi) = Factor de Ponderación de la Función Objetivo i( fi )

Paso 6: comparación de resultados

Con el fin de establecer el porcentaje de superioridad de la mejor solución encontrada, con esta técnica, respecto a la solución establecida por la técnica tradicional de programación de la producción denominada "primero en entrar - primero en salir" (FIFO, por su siglas en inglés), los mejores valores encontrados con esta nueva metodología son comparados con el valor encontrado mediante esta técnica tradicional de programación de la producción.

Experimentación: El desarrollo se llevó a cabo en una empresa metalmecánica, para un problema de 10 trabajos y 10 máquinas. La empresa objeto de estudio se enmarca en los procesos de corte, esmerilado, doblado, deformación volumétrica, laminado, forjado, trefilado, extrusión, fundición, maquinado convencional, maquinado no tradicional, soldadura, ensamble y tratamiento de superficies, entre otros. Así mismo, con base en la información suministrada por los proveedores de maquinaria, se establece el consumo en KW/H en cada uno de los centros de trabajo.

Adicionalmente, tomando como referencia las tarifas de la comisión reguladora de energía y gas CREG, se pudo establecer el costo del consumo energético de los diferentes equipos. Finalmente, en este punto, se emplearon los datos de salud ocupacional de la empresa con el fin de establecer los respectivos índices de accidentalidad. Las Tabla 9 y 10 representan los tiempos de proceso de cada trabajo en cada máquina y las secuencias respectivas que deben seguir los trabajos por las máquinas. Las máquinas de cada uno de los procesos presentan una jornada de 9 horas diarias, entre 10:00 - 19:00 horas.

Tabla 9: Tiempos de proceso

Tabla 10: Secuencias de cada trabajo

RESULTADOS

Paso 1: Codificación con un cromosoma basado en una permutación. Con base en lo establecido en el paso 1 de la metodología, se codifica el siguiente cromosoma inicial. (ver Tabla 11)

Tabla 11: Cromosoma inicial

Paso 2 y 3: Definición de las bases de datos de consumo de energía eléctrica. Para cada una de las diferentes máquinas se establece el consumo en KW/H de los trabajos en las máquinas. (Ver Tabla 12). Igualmente, la Tabla 13 ilustra el índice de accidentes por trabajo y máquina.

Tabla 12: Consumo KW/H en cada máquina (x10-4)

Tabla 13: Índice de accidentalidad (Horas).

Paso 4: Aplicación del Algoritmo de NSGA-II. Inicialmente, el algoritmo está estructurado para encontrar varias soluciones, es decir genera varios individuos considerados óptimos (no dominados). Al final se obtiene un conjunto de soluciones de las cuales se pueden escoger las más indicadas en el cumplimiento de los objetivos planteados (Ver Tabla 14).

Paso 5: Ponderación de resultados. Aplicando el algoritmo explicado en el paso 4, de la metodología, con una condición de parada de 1.000.000 iteraciones, se encuentran los N mejores individuos, los cuales son ponderados conforme se establece en las ecuaciones 1, 2, 3 y 4 obteniéndose los resultados de la tabla 14 :

Los valores obtenidos en las funciones objetivo en la Tabla 13 (Columnas F1- Makespan, F2-índice de energía y F3 - índice de accidentalidad) presentan diferencias considerables en su tamaños; por ejemplo, en el primer individuo, la primera función tiene como resultado 1086, la segunda 27029 y la tercera 5183, lo cual expone una alta diferenciación en los valores obtenidos. Una ponderación con el método tradicional no logra obtener una percepción adecuada de la relevancia de cada función, dado que la segunda función tiene un valor alto, el cual opaca el valor de la primera y la tercera función. Por lo anterior se cambian los valores de cada función (ecuaciones 1, 2,3 y 4), por valores relativos entre 0 y 1, obteniéndose en la Tabla 14 las columnas PD(Xj)1, PD(Xj)2, PD(Xj)3 y la columna P(Xj), siendo esta última la suma de las tres últimas columnas. Así, los individuos con el mejor valor P(Xj) son los elegidos. En este caso, los mejores individuos se encuentran en las filas 4, 6, 9, 10, 15. Finalmente, en la Figura 2, se ilustra el diagrama de Gantt, para el mejor individuo de la Tabla 14. Con el cual se encuentra un tiempo de proceso de 992.

Tabla 14: Mejor individuos encontrados

Paso 6: Calculo de un valor óptimo estimado y comparación de resultados. Una comparación de la mejor solución encontrada bajo esta metodología, con la mejor solución encontrada por algunas técnicas tradicionales de secuenciación de la producción (FIFO), muestra que la nueva metodología propuesta es superior en 42.13%, tal y como se expone en la Figura 3.

DISCUSIÓN

De las diversas revisiones literarias, se puede deducir que el empleo de los algoritmos evolutivos en la solución de un problema Job Shop multi - objetivo no ha sido muy difundido. Si bien, es factible encontrar múltiples técnicas de inteligencia artificial en la solución de problemas Job -Shop multiobjetivos, muy pocas se enfocan en problemas específicos de la empresa y casi ninguna define una función propia de ponderación para las funciones fitness. Siendo importante resaltar que en la bibliografía revisada para el desarrollo de este articulo, no se encontró un documento, el cual contraste la efectividad de una metodología multi-objetivo, con una técnica tradicional de programación de la producción.

Fig. 2: Diagrama de Gantt para el mejor individuo. JSSP 10x10. T. Proceso 992

Fig. 3: Diagrama de Gantt según el metodo FIFO. JSSP 10x10. T. Proceso 1410

CONCLUSIONES

Los resultados y discusiones, sobre la aplicación de la metodología en la solución de un problema Job shop multi-objetivo, permiten obtener las siguientes conclusiones: 1) La metodología propuesta busca mediante un algoritmo genético multi objetivo, la evolución de un cromosoma o individuo que represente la programación de la producción, en un sistema Job Shop, el cual permite programar el mayor número de tareas posibles, (minimizando el makespan) en los horarios donde la probabilidad de generar accidentes y el costo de energía eléctrica sean mínimos. 2) Dicha metodología logra obtener una solución superior en un 42.13% en las variables objeto de estudio, respecto al método FIFO. Se resalta que estudios previos desarrollados por los autores de la presente contribución refuerzan esta afirmación (Castrillon et ál, 2011; Castrillon et ál 2010; Castrillon et ál 2009). 3) El proceso de esta metodología es fácil de replicar, pues para obtener los mismos resultados del presente trabajo, solo es necesario partir de una adecuada codificación inicial, como se describe en la figura 1, con las probabilidades de mutación y combinación genética descritas en este texto. 4) En futuras líneas de investigación, la metodología propuesta puede ser combinada con otras técnicas de inteligencia artificial tales como sistemas expertos, búsqueda tabú, minería de datos, etc., las cuales se espera que permitan mejorar los resultados obtenidos. Par tales fines, se propone abordar el análisis de otras variables tales como el consumo de agua y combustible, en situaciones no deseadas como paro de transportadores, derrumbes y congestión vehicular.

REFERENCIAS

Adibi, M., N., Zandieh y M. Amiri, Multi-objective scheduling of dynamic job shop using variable neighborhood search, Expert Systems with Applications: 37 (1), 282- 287 (2010).         [ Links ]

Bastidas, M. y otros tres autores, Optimización Termoeconómica y Ambiental usando Algoritmos Genéticos Multiobjetivo, Información Tecnológica: 21 (4), 35-44 (2010).         [ Links ]

Billaut, J. y G. Vilcot, A tabu search and genetic algorithm for solving a bicriterio Job Shop Scheduling problem, Discrete optimization, European Journal of Operational Research: 190, 398 - 411 (2008).         [ Links ]

Carranza, H. y otros tres autores, Un Enfoque Multiobjetivo para la Asignación de Canales en Sistemas Celulares, Información Tecnológica: 19 (1), 87-96 (2008).         [ Links ]

Castrillon, O., W. Sarache y J. Giraldo, Aplicación de un algoritmo evolutivo en la solución de problemas Job Shop - Open Shop, Información tecnológica: 22 (1), 83 - 92 (2011).         [ Links ]

Castrillon, O., W. Sarache y J. Giraldo, Design of a hyperheuristic for production scheduling in job shop environments, Revista Chilena de Ingeniería: 18 (10), 203-214 (2010).         [ Links ]

Castrillon, O., W. Sarache y J. Giraldo, Job shop methodology based on an ant colony, Dyna: 76 (159), 177-184 (2009).         [ Links ]

Chen, H., J. Ihlow y C. Lehmann, A genetic algorithm for Flexible Job Shop Scheduling, Proceedings of the IEEE Transactions on Neural Networks, International Conference on Robotics & automation: 2, 1120-1125 (1999).         [ Links ]

Correa, A., R. Bolaños y A. Molina, Algoritmo multiobjetivo NSGA-II aplicado al problema de la mochila, Scientia et Technica: 39, 206-211 (2008).         [ Links ]

Deb, K., y otros 3 autores, A fast and elitist multiobjective genetic algorithm: NSGA-II, IEEE Transactions on evolutionary computation: 6 (2), 182-197 (2002).         [ Links ]

Deming, L., Pareto archive particle swarm optimization for multi-objective fuzzy job shop scheduling problems, International journal of advanced manufacturing technology: 37 (1-2), 157165 (2008).         [ Links ]

Domínguez, M., y otros cuatro autores, Dirección de Operaciones: Aspectos tácticos y operativos en la producción y en los servicios, McGraw Hill, Madrid, España (1995).         [ Links ]

Echeverry, M., Algoritmos evolutivos y técnicas bio - inspiradas. De la teoría a la práctica, Universidad tecnológica de Pereira, Pereira, Colombia (2009).         [ Links ]

Gen, M. y H. Zhang, Multistage- based genetic algorithm for flexible Job Shop Scheduling Problem, Complexity International: 11, 223-232 (2005).         [ Links ]

Giraldo, J., W. Sarache y O. Castrillon, Metodología integral soportada en simulación para el mejoramiento de sistemas de producción Job Shop, Aplicaciones en pymes metalmecánica, Ingeniería e investigación: 30 (1), 97-106 (2010).         [ Links ]

Ibcia, S., Impacto de la jornada laboral en la productividad (2006), http://www.prodem.virtuabyte.cl/prodem/articulos/jornada%20laboral.pdf. Acceso: 1 de febrero (2011).         [ Links ]

Kacem, I., Genetic algorithm for the flexible jobshop scheduling problem, Proceedings of IEEE international conference on systems, man and cybernetics: 4, 3464-3469 (2003).         [ Links ]

Lin, S. y W. Kernighan, Effective heuristic algorithm for the traveling salesman problem, Operations Reserarch: 21, 498-516 (1973).         [ Links ]

Montoya, F., A. Espín y C. Gil, Optimización de Tensión en Redes de Distribución utilizando Técnicas de Optimización Evolutiva, Información Tecnológica: 17 (4), 81-88 (2006).         [ Links ]

Murata, T. y H. Ishibuchi, Moga: Multi-objetive genetic algorithms, Proceedings of the second IEEE international Conference on Evolutionary Computation: 1, 289-294 (1995).         [ Links ]

Pérez, S., Z. Niño y M. Llobregat, Desarrollo de un programa de simulación de procesos para el tratamiento de emisiones atmosféricas, Información Tecnológica: 15 (2), 55-62 (2004).         [ Links ]

Ponnanbalam, S., C. Rajendran y A. Sankar, A multiobjetive genetic algorithm for scheduling a flexible manufacturing system, International of Advanced Manufacturing Technology: 22 (3), 229-236 (2003).         [ Links ]

Rosa, M., y otros tres autores, Selección mediante simulación de una estructura de modelo cinético para la degradación aeróbica de efluentes de una industria láctea, Información tecnológica: 15 (2), 75-78 (2004).         [ Links ]

Wigoda, D., Responsabilidad del gerente moderno en la accidentalidad laboral (2005), http://www.suratep.com/articulos/143/. Acceso: 10 de febrero (2011).         [ Links ]


Recibido Abr. 25, 2011; Aceptado Jun. 24, 2011; Versión Final recibida Ago. 14, 2011