SciELO - Scientific Electronic Library Online

 
vol.24 issue6FACTORS INFLUENCING THE HUMAN ERROR OF WORKERS IN MANUAL ASSEMBLY LINESALUMINOTHERMIC REDUCTION OF TITANIUM OXIDE (TiO2) USING HOLLOW CATHODE PLASMA author indexsubject indexarticles search
Home Pagealphabetic serial listing  

Services on Demand

Journal

Article

Indicators

Related links

Share


Información tecnológica

On-line version ISSN 0718-0764

Inf. tecnol. vol.24 no.6 La Serena  2013

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

ARTÍCULOS: GESTIÓN INDUSTRIAL

 

PROGRAMACIÓN MULTIOBJETIVO EN UN SISTEMA DE FABRICACIÓN TIPO "CONTRA EXISTENCIA" (JOB SHOP)

                   

MULTIOBJECTIVE PROGRAMMING IN A MANUFACTURING SYSTEM OF THE JOB SHOP TYPE

 

Germán A. Coca(1), Omar D. Castrillón(2) y Santiago Ruiz(2)

(1) Escuela de Ingeniería de Antioquia, Alto de las Palmas, Medellín–Colombia (e-mail: pfgeco@eia.edu.co).

(2) Universidad Nacional de Colombia, Campus la Nubia, Manizales–Colombia (e-mail: odcastrillong@unal.edu.co, sruizhe@unal.edu.co)


Resumen

En el presente artículo se analiza el desempeño de las variables tiempo de procesamiento, fracción defectuosa causada por la fatiga del operario y costo de mano de obra directa, en un sistema tipo "contra existencia" (job shop). Con el anterior propósito se comparan dos métodos, el primero toma elementos de los algoritmos VEGA y MOGA (V y M), mientras que el segundo corresponde a un método de sumas ponderadas (MSP). Al aplicar las metodologías se encontró que el método V y M presenta mejor desempeño al compararlo con el MSP. Respecto al tiempo de proceso (en horas) el primero supera al segundo en 7.0 %; respecto al tiempo de proceso (en semanas) el primero supera al segundo en 6.7 % y respecto a la fracción defectuosa, el primero supera al segundo en 1,4 %. En cuanto al costo de mano de obra, ambos métodos presentan igual desempeño.

Palabras clave: multiobjetivo, algoritmos genéticos, moga,  job shop, tiempo de procesamiento


Abstract

In this paper, the performance of the variables: makespan time, defective fraction due to operator fatigue and direct labor cost, in a job shop manufacturing system is presented. Two methods are compared; the first one blends elements from VEGA and MOGA algorithms (V & M), while the second one corresponds to a weighted sums method (WSM). Applying these methodologies, it was found that the method V & M has a better performance than the WSM. Comparing he variable makespan time (in hours) the first is better by 7.0 %; comparing the variable makespan time (in weeks) by 6.7 %; and comparing the variable defective fraction by 1.4 %. Regarding the variable labor costs, both methods have the same performance.

 

Keywords: multiobjective, genetic algorithms, moga, job shop, makespan time


 

INTRODUCCIÓN

Las variables evaluadas en este artículo se relacionan de forma directa con el desempeño de las prioridades competitivas de fabricación: costos, tiempo de entrega, calidad y flexibilidad. De forma específica, se analiza una organización metalmecánica, cuyo sistema de fabricación se categoriza como "Job Shop". Para ésta compañía, se describirá enseguida el comportamiento de las variables: tiempo de proceso, fracción defectuosa causada por la fatiga del operario y costos por mano de obra directa.

En cuanto a la determinación del tiempo de proceso, puede afirmarse que la organización no lo estima de manera confiable, por lo cual se reduce tanto el nivel de servicio como el número de clientes. En cuanto a la fracción defectuosa causada por la fatiga del operario, la organización utiliza mano de obra intensiva, resaltándose en este caso que la probabilidad de obtener artículos no conformes se incrementa al transcurrir la jornada laboral (Estrada, 2000). Al respecto, se muestra en la tabla 5 la proporción de artículos defectuosos originada por la fatiga del operario. Estos valores pueden calificarse como significativos, ya que implican: reducción de la capacidad productiva y asimismo, aumento en los costos de producción.

En cuanto a los costos de mano de obra directa, se hace notar que debido a las fluctuaciones incidentes sobre el renglón económico al cual pertenece la compañía, la demanda de mercado frecuentemente se incrementa o se reduce, dificultándose tomar de forma oportuna la decisión de qué tipo de esquema laboral será adoptado por la organización (determinación del número de horas a ser laboradas en el día al igual que definición del número de días a ser laborados durante la semana), bajo el cual se opere al menor costo posible de mano de obra directa.

De acuerdo con lo expuesto, este artículo tiene como propósito minimizar de forma simultánea el comportamiento de las variables: tiempo de proceso, fracción defectuosa causada por la fatiga del operario y costos de mano de obra directa en un sistema de fabricación "Job Shop". Para éste efecto, se  diseña un algoritmo genético, el cual toma elementos de los algoritmos  genéticos "Vega" y "Moga". Estos algoritmos se describen en Coello (2002). Asimismo, debe anotarse, como se observará más adelante que no existen antecedentes de análisis relacionados con el comportamiento en paralelo de las variables de interés.

Respecto a la cuantificación de las variables en mención, se expresa que la estimación de los valores correspondientes tanto a la fracción defectuosa como al costo de mano de obra directa, requieren establecer de manera previa el tiempo de proceso. La determinación del tiempo de proceso en un sistema de fabricación tipo "Job Shop",  se clasifica como un problema NP difícil. Dado el caso de existir un número de "N" pedidos y un número de "M" centros de trabajo, el total de soluciones a evaluar es M!N (Sipper y Bulfin, 1998). La modelación del anterior problema bajo los conceptos de programación lineal y su descripción cualitativa se ilustran en Binato et al (2002). A su vez, el problema tradicionalmente se ha resuelto al evaluar ciertas combinaciones, las cuales se definen utilizando reglas de programación: operación más larga, operación más corta, primero en llegar primero en procesarse, último en llegar primero en procesarse, entre otras (Sipper y Bulfin,  1998). En caso de cuantificarse la totalidad de combinaciones bajo un software particular, se puede requerir un tiempo de cómputo muy superior a los intervalos de tiempo en los cuales se toman decisiones en el sector real.

Debido a lo anterior, el tratamiento del problema se realiza actualmente de forma oportuna utilizando técnicas fundamentadas en inteligencia artificial, siendo una de ellas la identificada bajo la denominación de algoritmos genéticos. Esta técnica, ha tenido en general recientes avances relacionados con el problema de interés, así:

Problemas generales de la gestión operacional 

Existen cuatro desarrollos recientes en los campos: programación multipropósito en logística (Li et a., 2012), programación de máquinas que procesan en paralelo (Cheng et al., 2012), programación de "N" actividades en una máquina (Mazdeh et al., 2012) y planificación de producción (Frutos y Tohmé, 2012).

Problemas del tipo Job Shop

Las aplicaciones se presentarán en las siguientes categorías: rediseño de operadores, diseño de algoritmos, problemas generales en "Job Shop" y problemas multiobjetivo en "Job Shop".

Rediseño de Operadores. En ésta categoría clasifican dos desarrollos.  En el primero se diseñan algoritmos de selección clonal (Akhshabi y Khalatbari, 2011). En el segundo se obtienen algoritmos híbridos orientados a definir nuevos operadores genéticos (Dao Er Ji y Wang, 2012).

 

Diseño de algoritmos. A ésta categoría pertenecen seis desarrollos. El primero obtiene el menor tiempo de proceso (Rou y Asmuni, 2010). El segundo corresponde a un algoritmo de búsqueda tabú híbrido con una estructura de vecindario eficiente (Li et al., 2011). El tercero cambia la secuencia de programación sin alterar el tiempo de proceso (Thamilselvan y Balasubramanie, 2011). El cuarto permite manejar lotes de transferencia al programar producción (Zhang y Wu,2012). El quinto presenta un método con aplicaciones paralelas (Bozejko, 2012). El sexto minimiza el tiempo de proceso fusionando búsqueda gravitacional y redes de Petri (Barzegar et al., 2012).

Problemas generales en "Job Shop". En ésta categoría clasifican tres desarrollos: El primero reduce el tiempo de procesamiento y el tiempo muerto (Castrillón et al., 2011). El segundo aplica sí una o más máquinas deben realizar operaciones diferentes (Medina et al., 2011). El tercero analiza los problemas de Programación tipo "Job Shop" y "Flow Shop", generando un algoritmo hereditario que minimiza el tiempo de proceso (Anandaraman, 2011).

 

Problemas multiobjetivo en "Job Shop". A la categoría pertenecen seis desarrollos. Estos seis desarrollos pueden clasificarse en técnicas analíticas y técnicas heurísticas. Desde el enfoque analítico, existe un desarrollo reciente, el cual aborda la programación multiobjetivo de los sistemas "Job Shop Flexible" por medio de la aplicación de los siguientes modelos: sistemas de espera, métodos de decisión general, cadenas de Markov y simulación Monte Carlo (Nicoara, 2012).

 

La aplicación de métodos analíticos se complementa con la aplicación de métodos heurísticos. De acuerdo con lo anterior, puede afirmarse  que los cinco desarrollos adicionales pertenecen al campo de la heurística. Específicamente, tres de estos desarrollos utilizan de manera básica algoritmos genéticos, el cuarto desarrollo se orienta a definir un método híbrido entre algoritmos genéticos con otra técnica heurística y, por último el quinto desarrollo, compara  el desempeño entre algoritmos genéticos con una técnica analítica. 

 

Al evaluar las tres aplicaciones estructuradas para utilizar de manera básica algoritmos genéticos, se encuentra que el objetivo común de dos ellas, coincide en la caracterización de ciertas variables no tratadas hasta el momento en la literatura, mientras que la tercera busca mejorar las operaciones de cruzamiento y de mutación. Es así como, la primera aplicación minimiza el comportamiento de las variables: tiempo de proceso, costos por energía y accidentalidad laboral (Ruiz et al., 2011). En la segunda, se diseña un algoritmo denominado NSHA, cuyos resultados superan el desempeño del algoritmo NGSA – II (Ghiasi et al.,2012).  Finalmente, en la tercera se incorporan los principios de entropía y de inmunidad, con el fin de modificar el desempeño de las operaciones de cruzamiento y de mutación (Wang et al., 2010).

 

A nivel del cuarto desarrollo, se obtiene un método híbrido entre algoritmos genéticos con una búsqueda local, cuya aplicación permite incrementar el desempeño de las variables: tiempo de proceso, total de carga de trabajo y máxima carga de trabajo de un sistema del tipo "Job Shop Flexible" (Xiong et al., 2012). Finalmente,  en el quinto desarrollo se aprecia la caracterización de  algunas variables que no han sido objeto de análisis en la literatura; dichas variables son tiempo de procesamiento, costos de mano de obra directa y fracción defectuosa debida a la fatiga del operario. Para este efecto, se compara un método híbrido entre diversos tipos de algoritmos genéticos con un método híbrido entre algoritmos genéticos con una técnica analítica, la cual es conocida bajo el nombre de "suma de factores ponderados" (Coca et al., 2013).

 

MATERIALES Y MÉTODOS

 

Metodología

 

En la metodología los pasos 2 a 8, se encuentran fundamentados en los algoritmos VEGA y MOGA. Esta metodología se propone debido a que en la actualidad la situación analizada no se ha evaluado por medio de la utilización de ningún método heurístico. Por tanto, se busca establecer un algoritmo que fusione aquellos elementos importantes de los algoritmos VEGA y MOGA, de tal manera que sus resultados puedan ser comparables con los resultados obtenidos al aplicar posteriormente sobre la misma situación, los algoritmos NSGA II, SPEA II u otro tipo de heurísticas híbridas. Asimismo, se comenta que el paso 9 corresponde a una búsqueda aleatoria para una función de sumas ponderadas, por medio de la cual se identificará una población de respuesta que será comparada con la población obtenida al aplicar el método híbrido entre VEGA y MOGA. Respecto a lo anterior, cabe anotar que al método híbrido entre VEGA y MOGA, se le denominará en adelante "método uno", mientras que a la búsqueda aleatoria se le denominará "método dos".

 

Finalmente, en el paso 10 se procede a realizar un análisis comparativo de ambos métodos. A continuación, se muestran a nivel general los pasos que integran la metodología:

 

Paso 1 (Caracterización general del problema) → Paso 2 (Generación de la población inicial) → Paso 3 (Generación y evaluación de sub poblaciones) → Paso 4 (Conformar la primera nueva población) → Paso 5 (Ordenar por frentes la primera nueva población) → Paso 6 (Establecer la segunda nueva población) → Paso 7 (Evaluar la población final) → Paso 8 (Ordenar y analizar por frentes la población final) → Paso 9 (Aplicar una búsqueda aleatoria para una función lineal de sumas ponderadas – Método dos) → Paso 10 (Comparar los métodos "uno" y "dos")

 

Paso 1 Caracterización general del problema.

 

De acuerdo con lo expuesto, se analiza un sistema "Job Shop". En la tabla 1, los pedidos se presentan por filas mientras que los centros de trabajo se presentan por columnas. En la intersección entre fila y columna se registra el tiempo de procesamiento de los pedidos en cada centro de trabajo (Koonce, 2000).

 

Tabla 1: Problema General JSSPNxM

Paso 2 Generación de la población inicial.

De acuerdo con las condiciones de la organización analizada existen 9 pedidos a ser programados, los cuales después de permutarse equivalen a 9! individuos. Cada individuo contiene a la vez 6 subindividuos. Un subindividuo estará compuesto por las columnas de  la tabla 2: "Individuo", "turnos de trabajo" y "labora sin o con dominical". Asimismo, en la columna "Individuo", se muestra como ejemplo el individuo: "9-7-5-4-1-6-2-3-8", el cual proviene de una de las 9! permutaciones ya nombradas. En éste individuo, se interpreta  que el "pedido 9" presenta prioridad uno en el orden de programación y así se continúa hasta que al "pedido ocho" le corresponde la prioridad número nueve. Para el individuo identificado, se establecen diferentes esquemas de organización por turnos. Tales esquemas se ilustran en las columnas de la tabla 2: "Turnos de trabajo" al igual que "horas al día". Con base en la información de estas columnas, se determina que un individuo puede proyectarse en tres horizontes de tiempo: día de 8 horas (6 a.m a 2 p.m), día de 16 horas (6 a.m a 2 p.m y 2 p.m  a 10 p.m) o día de 24 horas (6 a.m a 2 p.m, 2 p.m a 10 p.m  y 10 p.m a 6 a.m). A su vez, en la columna:"labora sin o con dominical", se indica que el individuo también puede evaluarse en dos alternativas de tiempo a la semana: 6 días (sin domingo) o siete días (con domingo).

Bajo el marco anterior, se identifica la existencia de 9! x 6 subindividuos (los subindividuos se denotarán en adelante como individuos). Del total de individuos, se toma como población inicial R individuos.

 Tabla 2: Esquemas de organización por turno

La estructura de un individuo al igual que su respectivo ejemplo, se muestran en la tabla 3. En esta estructura se observan 11 campos, de  los cuales se utilizan nueve para almacenar cada uno de los pedidos. Por ejemplo, en la tabla en mención se establece que al "campo 1" se le relaciona el "pedido 9",  significando que este pedido sería el primero en programarse. Al incrementar el número del campo y avanzar hasta el "campo 9", se identifica que a este campo le corresponde el "pedido 8", determinándose para la situación particular que el pedido considerado debe programarse en novena posición. A su vez en el "campo 10", se registran los "Turnos de trabajo", es decir, el número de horas laboradas al día (para el ejemplo mostrado se laborarían 8 horas en el día, se inicia a las 6:00 am y se termina a las 2 pm). Finalmente,  el "campo 11" hace referencia a trabajar o no el día domingo, se considera por tanto en dicha posición, el número de días laborados a la semana (para el ejemplo diseñado, se laborarían 7 días a lasemana, debido a que se encuentra registrada la expresión: "con domingo").

 Tabla 3: Estructura y ejemplo de un individuo.

Paso 3 Generación y evaluación de las subpoblaciones.

Se divide la población en tres subpoblaciones, uno para cada objetivo. Cada subpoblación estará conformada por R/3 individuos. Los individuos de cada subpoblación son evaluados y ordenados de menor valor a mayor valor de acuerdo con la función objetivo correspondiente. Posteriormente, se procede a eliminar de cada subpoblación el 20 % de los individuos que presenten los mayores valores.

 

Para las tres subpoblaciones se requiere determinar en primera instancia el tiempo de proceso, la función de adaptación general para establecer el tiempo de proceso (makespan) se  muestra en la ecuación 1:

 

 

En la ecuación 1, "N" representa el número de pedidos, "M" representa el número de máquinas y "Pij" corresponde al tiempo del pedido i en la máquina j.

 

Para la subpoblación en la cual se establece la fracción defectuosa, se utiliza un mecanismo de penalización. El mecanismo se encuentra basado en la información histórica de la Compañía relacionada con la proporción de producción defectuosa por hora y que a su vez es causada por la fatiga del operario. El valor de esta proporción se multiplica por 100 generándose el número de puntos que serán aplicados, dado el caso que se esté procesando cierto pedido en alguna hora en particular. Posteriormente se suman los puntos de penalización asignados por hora, obteniéndose por tanto la penalización total por producción defectuosa.

 

En cuanto a la subpoblación en la cual se determina el costo por mano de obra directa, se utiliza también un mecanismo de penalización. En éste caso los puntos se asignan de acuerdo con las siguientes categorías: programa de trabajo diurno, programa de trabajo nocturno (10 pm a 6 am), programa de trabajo diurno en día dominical y programa de trabajo nocturno en día dominical (10 pm a 6 am).  A cada uno de estos programas le corresponde una asignación de puntos específica, la cual obedece a los valores de recargo porcentual sobre el valor del salario en tiempo normal. Asimismo, el número de personas requeridas en un turno de 8 horas se racionaliza, garantizando que cada persona labore la mayor proporción posible de tiempo. Una vez definido el número de personas requeridas por turno, se multiplica éste valor por el valor de la penalización correspondiente al programa de trabajo en el cual clasifique el turno. Después de haber definido la anterior penalización, se suma la penalización asignada a los diferentes turnos obteniéndose en éste caso la penalización total por costo de mano de obra directa.

 

Paso 4 Conformar la primera nueva población.

 

La  primera nueva población se conforma así:

 

Cada subpoblación de 0,8R/3i ndividuos, se divide en tres intervalos. De cada intervalo se extraen aleatoriamente 0,0555R individuos. En total las subpoblaciones aportan 0,5R individuos a la nueva población. A los anteriores 0,5R individuos se les aplica con una probabilidad de 96%, la operación de cruzamiento. Esta operación se realiza hasta estimar otro 30 % del tamaño de la población (R). El cruzamiento se realiza intercambiando posiciones entre pedidos. Sí al realizar la operación de cruzamiento se señala una posición correspondiente a un campo alfabético (ver en la tabla 3 los "campos 10 y 11"), se descarta la operación de cruce y se realiza sobre dicho campo la operación de mutación.

 

Otro 10 % de los individuos, se origina en la mutación aleatoria de los anteriores 0,8R individuos. Mientras que el último 10 % de los individuos se obtiene de la exploración aleatoria del total de posibles soluciones.

 

Paso 5 Ordenar por frentes la primera nueva población.

 

La población definida se evalúa en cada una de las tres funciones objetivo y se ordena a nivel ascendente de acuerdo con el valor del tiempo de procesamiento; a partir de ésta clasificación se obtienen los diversos frentes. Con este fin, se procede comparando cada individuo con los demás de la población. Es así como se inicia el análisis con aquel individuo que presenta el menor tiempo de proceso.  Para tal individuo se identifica el valor correspondiente al primer valor de penalización por fracción defectuosa. Una vez identificado el valor de la penalización, se procede analizando el siguiente individuo en el respectivo orden de menor a mayor tiempo de proceso.  De ésta forma, se seleccionan aquellos individuos cuya penalización de fracción defectuosa sea estrictamente menor a la anterior. Después de obtener una primera clasificación de individuos, se aplica el procedimiento ya descrito sobre aquellos individuos seleccionados, pero se utiliza ésta vez como criterio base de ordenamiento, el valor depenalización por costo de mano de obra directa. De acuerdo con lo expuesto, se obtiene el primer frente. El segundo frente se identifica aplicando el procedimiento mencionado sobre los individuos no clasificados en el frente anterior, así se continúa hasta clasificar en frentes los diversos individuos de la primera nueva población.

Paso 6 Establecer la segunda nueva subpoblación.

A esta población ingresarán los mejores resultados agrupados por frentes de la primera nueva población, hasta completar 0,5R individuos. Así mismo, los otros 0,5R individuos se obtendrán de la siguiente forma: Se define  el porcentaje de individuos por frente. Cada valor porcentual identificado, se aplicará a 0,3R individuos. La cantidad de individuos obtenidos constituye la cantidad de nuevos individuos que se originan a partir del cruzamiento de los individuos que constituyen cada frente. Posteriormente, para los 0,8R individuos obtenidos hasta el momento, se aplica la operación de mutación. De ésta forma, se obtiene otro 10% de los individuos que conforman la población. Por último, se obtiene del universo de soluciones y de manera aleatoria el 10% de los individuos restantes. Una vez obtenida la segunda población, se repite desde el paso tres hasta completar 100 iteraciones.

Paso 7 Evaluar la población final.

La población final es evaluada y analizada desde el punto de vista de la variabilidad de los datos.

Paso 8 Ordenar y analizar por frentes la población final.

La población final se ordena por frentes de acuerdo con lo indicado en el paso 5 de la metodología. A su vez, se realiza tanto el análisis general de los diversos frentes como el análisis particular del primer frente.

Paso 9 Aplicar una búsqueda aleatoria para una función lineal de sumas ponderadas.

Para R iteraciones, se realizan en cada iteración las siguientes actividades: Se seleccionan de forma aleatoria 0,4R individuos; para cada individuo se establece el valor correspondiente a las variables objeto de análisis (tiempo de proceso, penalización por costo MOD y penalización por fracción defectuosa); con posterioridad, se calcula el valor de un factor de ponderación lineal por individuo y finalmente, se identifica y graba aquel individuo que haya obtenido el mayor valor del factor de ponderación lineal. Después de haber establecido los R individuos cuyos factores de ponderación lineal presentan los mayores valores, se ordenan a nivel ascendente de acuerdo con el valor tomado por el mencionado factor.

Enseguida se muestran las expresiones utilizadas para calcular el factor de ponderación:

 

Donde: fimax= Valor máximo encontrado para la función en una población; fimin= Valor mínimo encontrado para la función en una población; fi(xj)= Valor de la función  fi para el individuo  Xj; FP= Factor de Ponderación; FP(fi)= Factor de Ponderación de fi (este valor es definido por el agente decisor de acuerdo con el tipo de contexto analizado y varía de 0 a 100); FP(fk)= Factor de Ponderación total (la sumatoria de éste factor es 1); M= Número de Funciones Objetivo; P(Xj)i= Ponderación del Individuo en la Función Objetivo; Xj= Individuo de la población. Una vez calculado P(Xj)i, se obtiene:

 

Donde:  M = Número de Funciones Objetivo; P (Xj)= Factor de ponderación lineal del individuo "j"; P (Xj)i= Ponderación del Individuo en la Función Objetivo; Xj= Individuo de la población.

Paso 10 Comparar los métodos "uno" y "dos".

La evaluación de las poblaciones obtenidas a partir de la aplicación de los métodos "uno" y "dos", se efectúa utilizando como variables de comparación las siguientes: tiempo mínimo de proceso, máximo valor del factor de ponderación, coeficiente de variación y valores tanto mínimos como máximos tomados por las variables analizadas.

EXPERIMENTACIÓN

Para éste efecto, se procedió a evaluar el producto denominado: "base torre". Con el objetivo de ilustrar el desarrollo experimental del problema se caracterizaron nueve pedidos y seis centros de trabajo en la respectiva sección de la empresa analizada. Los datos del problema discriminados por variable a cuantificar, se muestran a continuación.

Determinación del tiempo de procesamiento.

En la tabla 4 se registran los datos correspondientes a la ruta de proceso por pedido y su tiempo de operación en cada centro de trabajo. Cada centro cuenta con una máquina y cada máquina requiere un operario para su manejo y control continuo. De acuerdo con el sistema de producción, se observa que cada pedido sigue una ruta de fabricación diferente. Los centros de trabajo son: A, B, C, D, E y F.

 Tabla 4: Rutas y tiempos de operación por pedido (en horas).

Penalización por fracción defectuosa.

Los datos relacionados con la fracción defectuosa causada por la fatiga del operario a lo largo de la jornada laboral y los puntos de penalización equivalentes se presentan en la tabla 5. La información correspondiente a la fracción defectuosa fue sistematizada y suministrada por la dirección de operaciones de la Compañía.

 Tabla 5: Fracción defectuosa causada por la fatiga del operario y penalización.

Penalización por costos de mano de obra directa. 

La información utilizada para obtener la penalización por costos mano de obra se relaciona en la tabla 6. Los datos correspondientes a aquellas ponderaciones que permiten determinar el nivel salarial como valor adicional al costo del salario en tiempo normal, se tomaron del código laboral (Legis, 2013).

 Tabla 6: Ponderaciones sobre el tiempo normal y penalización.

Determinación del Factor de ponderación por individuo (P(Xj)) en el "método dos".

El valor del factor de ponderación por individuo en el método dos, se determina de acuerdo a las expresiones registradas en el paso nueve de la metodología. En éste caso, se ha establecido igual nivel de importancia para las diversas variables analizadas (tiempo de proceso en semanas, penalización por costo MOD y penalización por fracción defectuosa), es decir el valor del factor de ponderación para cada función objetivo (FP(fi), en la ecuación 2) es de 33,33 %.

RESULTADOS

Población final obtenida por medio de la aplicación del "método uno".

De acuerdo con los pasos uno a ocho de la metodología, se presenta en la tabla 7 el resumen de resultados para 3 individuos seleccionados de una población total de 210 individuos. También se muestra para la totalidad de individuos, el comportamiento de las variables analizadas en cuanto a los parámetros: promedio y coeficiente de variación. Los valores de los coeficientes de variación registrados en la mencionada tabla, permiten concluir que existe una amplia variedad de soluciones. De manera específica, al comparar la solución número 8 con la solución número 27 en lo que respecta a las diversas variables, se observa que la primera supera el desempeño de la segunda a nivel de tiempo de proceso (en horas y en semanas), al igual que en costo MOD, mientras que el desempeño a nivel de fracción defectuosa para los individuos analizados no presenta diferencia.

 Tabla 7: Resumen de resultados (método uno).

A partir del análisis de la tabla 7, se obtiene la clasificación general de individuos por frentes. Esta clasificación se ilustra en seguida: 68 individuos en el frente 1, 57 individuos en el frente 2, 31 individuos en el frente 3, 14 individuos en el frente 4, 10 individuos en el frente 5, 9 individuos en el frente 6, 8 individuos en el frente 7, 6 individuos en el frente 8, 4 individuos en el frente 9 y 3 individuos en el frente 10.

Una vez identificados los 68 individuos que integran el primer frente, se procede a realizar su análisis a nivel de datos agrupados; con este propósito, se decide utilizar como criterio de clasificación el tiempo de procesamiento (en semanas). De acuerdo con lo anterior, se aplica la regla de Sturges, obteniéndose como respuesta un total de 7 intervalos. Posteriormente, se determinan los respectivos valores del rango y de la amplitud. Asimismo, a cada intervalo del tiempo de procesamiento (en semanas), la dirección de operaciones de la organización analizada, le asigna con base en su concepto idóneo, alguno de los siguientes escenarios de mercado: en crecimiento permanente, en crecimiento con épocas de estabilización, estable con épocas de crecimiento, estable, estable con épocas de decrecimiento, en decrecimiento con épocas de estabilización y en decrecimiento permanente. A continuación, se muestra a nivel de datos agrupados, la clasificación de los 68 individuos que integran el primer frente: De la tabla puede afirmarse que ante cierto comportamiento particular del mercado, la empresa seleccionaría alguno de los individuos relacionados con dicho comportamiento; de esta forma, la dirección de operaciones de la organización, procedería a ejecutar el respectivo programa de operaciones.

 Tabla 8: Sistematización de la información del primer frente (individuos no dominados– método uno).

Enseguida se identifican para dos intervalos de la tabla 8, aquellos individuos con menor valor en cuanto a las variables: tiempo de proceso (en semanas), costos de mano de obra al igual que fracción defectuosa. De acuerdo con lo expresado, la dirección de operaciones de la Compañía, podrá seleccionar en cada circunstancia aquel individuo que mejor se adapte a las condiciones particulares del momento analizado. Asimismo, se aclara que los cinco intervalos adicionales no se incluyen en la evaluación, pero su interpretación y estructura, corresponderían a las condiciones establecidas para los otros dos intervalos.(Tabla 9)

Tabla 9: Individuos de valor mínimo en las diversas variables por intervalo del primer frente.

Población final obtenida por medio de la aplicación del "método dos".

De acuerdo con el paso 9 de la metodología, se presenta en la tabla 10 el resumen de resultados para tres individuos seleccionados de una población total de 210 individuos. También se muestra para la totalidad de individuos, el comportamiento de las variables analizadas en cuanto a los parámetros: promedio y coeficiente de variación. Igualmente, se menciona que los valores mínimos y máximos utilizados para calcular la variable "ponderación por individuo", se encuentran registrados en la tabla 12.

 Tabla 10: Resumen de resultados (método dos).

 

Al analizar por frentes la información de la tabla anterior, se identifica un solo frente integrado por 210 individuos. Enseguida, se aprecia a nivel de datos agrupados, la información relacionada con los 210 individuos que integran el primer frente del "método dos". El criterio utilizado para definir los intervalos corresponde al valor tomado por el tiempo de procesamiento (en semanas). Con el propósito de lograr la comparación entre ambos métodos, se conservan los intervalos establecidos para el "método uno".

 Tabla 11: Sistematización de la informacióndel primer frente (individuos no dominados– método dos).

Comparación de los métodos "uno" y "dos".

La comparación de los métodos se realiza siguiendo las indicaciones definidas en el paso 10 de la metodología. Particularmente, al observar la tabla 12 se determina que los valores tomados por la desviación estándar, por el coeficiente de variación y por el valor máximo son mayores al comparar el "método uno" respecto al "método dos". Con base en lo expuesto, se establece que el primer método identifica con mayor certeza la variabilidad inherente a las variables analizadas.

 Tabla 12: Comparación de los parámetros arrojados por los métodos uno y dos.

 

 

De manera específica, al comparar en la tabla 13 los métodos considerados tomando como criterio la variable mínimo tiempo de proceso (en horas), se encuentra que: el primer método supera en desempeño al segundo método respecto a la variable tiempo de proceso (en horas) en 7,01%, el primer método supera en desempeño al segundo método en cuanto a la variable tiempo de proceso (en semanas) en 6,74%, el primer método supera en desempeño al segundo método respecto a la variable penalización por fracción defectuosa en 1,36%. Así, la variable penalización por costos de mano de obra presentan igual desempeño.

También puede decirse que al comparar los métodos bajo análisis (ver tabla 13) tomando como elementos de comparación las variables mínimo tiempo de proceso (método uno) y máximo ponderado (método dos) puede concluirse que: el primer método supera en desempeño al segundo método respecto a la variable tiempo de proceso (en horas) en 9,65%, el primer método supera en desempeño al segundo método respecto a la variable tiempo de proceso (en semanas) en 54,76%, el segundo método supera en desempeño el primer método respecto a la variable fracción defectuosa en 24,68% y finalmente en cuanto a la variable penalización por costos de mano de obra ambos métodos presentan igual desempeño.

 Tabla 13: Comparación de valores mínimos de tiempo de proceso y máximo ponderado

 

Asimismo, debe anotarse que al comparar las tablas 8 y 11 (análisis por datos agrupados del primer frente de ambos métodos), se determina la imposibilidad bajo el "métodos dos" de identificar programas de producción afines a los siguientes comportamientos de mercado: en crecimiento permanente, estable con épocas de crecimiento, estable y en decrecimiento permanente.

Análisis complementario para el "método uno".

En éste punto, se ilustrarán de un lado los aspectos correspondientes al análisis de varianza y del otro los aspectos correspondientes al individuo de menor tiempo de procesamiento. En primer término, con el propósito de evaluar la estabilidad estadística de los datos arrojados por el programa, se realiza el respectivo análisis de varianza. Con relación a lo anterior, el programa se ejecutó de manera consecutiva durante 30 oportunidades, tomando cada vez los valores correspondientes al promedio de las variables de interés. Los valores obtenidos se sometieron al análisis del caso, cuyos resultados en síntesis son:

 Tabla 14: Análisis de Varianza (Variables: Promedio tiempo de Procesamiento (semanas), Promedio costo de  mano de obra directa (puntos), Promedio fracción defectuosa (puntos))

Del análisis de varianza presentado en la tabla 14, se observa que el valor de la distribución F establecida con el siguiente nivel alfa y grados de libertad: (0.05, 2, 27), es superior al valor de las distribuciones F calculadas sobre el mismo punto. Por tanto, se infiere que los datos definidos en los tratamientos, en cuanto al comportamiento de las diversas variables son estadísticamente iguales.

En segundo término, se caracteriza el individuo con menor tiempo de proceso (en horas). A este individuo le corresponde un tiempo de proceso de 159 horas, el cual es equivalente a 1,66 semanas (16 horas cada día, sin laborar los domingos). Igualmente, al estructurarse en el horizonte de programación nombrado (16 horas cada día, sin laborar los domingos), se obtiene un valor de penalización por fracción defectuosa de 1.819 puntos, no existiendo en este caso penalización por costos de mano de obra. Cabe anotar que el individuo identificado se acerca en 98,11% al individuo óptimo o subóptimo estimado, al cual se le asigna un tiempo de procesamiento de 156 horas.

En cuanto al tiempo óptimo o subóptimo estimado, se describe enseguida la metodología de obtención: el tiempo de carga hace referencia a la sumatoria de los tiempos de proceso en las diferentes operaciones. Para el caso particular se detecta que las operaciones con mayores requerimientos de tiempo son en su orden: F, E y D. A su vez, para cada una de estas operaciones, pueden identificarse los pedidos que las utilizan en mayor proporción. De acuerdo con lo anterior, se establece que la operación F es utilizada en mayor grado por los pedidos: 9, 7 y 8; asimismo, la operación E es utilizada en mayor grado por los pedidos: 7, 9 y 8; mientras que la operación D es utilizada en mayor grado por los pedidos: 1, 7 y 4. Posteriormente, se verifica el orden ocupado por las operaciones en la secuencia de proceso de cada pedido, priorizándose en la programación aquellos pedidos que utilicen en los primeros órdenes de tal secuencia, las operaciones más cargadas. Con base en lo descrito, se establece que los pedidos 9 y 8 utilizan en la secuencia de proceso ya sea en segundo o en tercer orden las operaciones E y F, mientras que el pedido 7 las utiliza en las posiciones cuarta y quinta.

Al tomar referencia en lo anteriormente expresado, puede establecerse que los pedidos 9 y 8 deberían programarse con prioridad uno. Igualmente, se determina para estos dos pedidos que el pedido 9 es el primero en utilizar la operación D; es así como, éste pedido se prioriza sobre el pedido 8 en el orden de programación. En cuanto al pedido 7 se identifica que utiliza la operación D en tercer orden en su secuencia de proceso; de ésta manera, dicho pedido se programaría en tercera posición. Los demás pedidos se programan en aquel orden en el cual utilicen con prioridad las operaciones E o F, garantizando que las máquinas usadas en estas operaciones permanezcan el menor tiempo posible detenidas. Con relación a lo expresado se ilustra enseguida, el programa de producción que conduce a obtener el tiempo de proceso óptimo o subóptimo: ingresar con prioridad uno el pedido 9, ingresar con prioridad 2 el pedido 8, ingresar con prioridad 3 el pedido 7, ingresar con prioridad 4 el pedido 4, ingresar con prioridad 5 el pedido 5, ingresar con prioridad 6 el pedido 1, ingresar con prioridad 7 el pedido 6, ingresar con prioridad 8 el pedido 3 e ingresar por último el pedido 2.

También se hace notar que respecto a las metodologías tradicionales de programación de operaciones, se seleccionó como alternativa de comparación la regla denominada: "tiempo de operación más larga". Con relación a lo anterior, se comenta que al obtener el programa de producción utilizando la mencionada regla, se estimó un tiempo de proceso de 187 horas, el cual es superior en 17,61 % al tiempo de proceso establecido en 159 horas.

A continuación, se muestra el diagrama de Gantt correspondiente al menor tiempo de procesamiento detectado. En este diagrama, el número ubicado en el interior de cada cuadro, corresponde al número de cada pedido procesado:(Figura 1)

 

Fig. 1: Diagrama de Gantt para el individuo de menor tiempo de proceso. Tiempo de procesamiento: 159 horas equivalentes a 1,66 semanas. Penalizaciones: 1.819 puntos por defectos y 0 puntos por mano de obra.

DISCUSIÓN DE RESULTADOS

A pesar de que en la literatura evaluada (Wang et al., 2010; Ghiasi et al., 2011; Xiong et al., 2012; Nicoara, 2012) y sus antecedentes, los procesos de investigación de los sistemas Job shop que utilizan técnicas fundamentadas en inteligencia artificial para la solución de problemas multiobjetivo se han extendido durante los últimos años; se resalta que las variables analizadas en el tipo de problema multipropósito, objeto de éste artículo, no han sido tratadas previamente por ningún autor. Asimismo, el problema identificado es de interés relevante debido a que se orienta a consolidar la competitividad de las operaciones de una Organización y consecuentemente a garantizar su permanencia y crecimiento en el mercado global.

Particularmente, la metodología propuesta (método uno) con el fin de evaluar las variables objeto de análisis, puede calificarse como precisa. Respecto a lo anterior, los resultados obtenidos al ejecutar el programa en 30 oportunidades, se consideran estadísticamente iguales con un nivel de confianza de 95 %.

A su vez, al considerar dos aspectos fundamentales, se establece que el "método uno" supera en desempeño al "método dos". El primero de los aspectos, se relaciona con el mayor valor tomado por el coeficiente de variación para las cuatro variables en el "método uno"; de esta manera, se puede afirmar que el "método uno" presenta mejor capacidad para identificar respuestas diversas. El segundo de los aspectos, se relaciona con el comportamiento de la variable tiempo mínimo de procesamiento (en horas) para el individuo obtenido por medio de la aplicación del "método uno"; con relación a lo anterior, se manifiesta que: el primer método supera en desempeño al segundo método respecto a la variable tiempo de proceso (en horas) en 7,01%, el primer método supera en desempeño al segundo método en cuanto a la variable tiempo de proceso (en semanas) en 6,74%, el primer método supera en desempeño al segundo método respecto a la variable penalización por fracción defectuosa en 1,36% y por último en cuanto a la variable penalización por costos de mano de obra ambos métodos presentan igual desempeño.

En cuanto a la conformación de frentes, la estructura del "método uno" le permite identificar 10 frentes, mientras que la estructura del "método dos" sólo le permite identificar un frente. Asimismo, al analizar los frentes como datos agrupados, el equipo de dirección de la compañía relacionó cierto tipo de comportamiento de mercado a cada intervalo; de tal manera, se podrá decidir la implementación de uno u otro programa de producción, dependiendo de las circunstancias particulares existentes en el entorno.

CONCLUSIONES

De acuerdo con los resultados encontrados y su discusión se puede concluir que: 1) La metodología definida presenta ventajas importantes sobre otras metodologías, ya que se obtienen características apropiadas de desempeño (precisión, capacidad de generar soluciones diversas en la población final de respuesta y asimismo, capacidad para identificar diversidad de frentes), en un número de iteraciones relativamente bajo (100 iteraciones). 2) La descripción detallada de la metodología, permite que sea replicada por parte de las personas interesadas en el tema. 3) Al analizar las tendencias del mercado (crecimiento, estabilidad o decrecimiento), la dirección de operaciones de la compañía, puede seleccionar diferentes programas de producción, los cuales proceden de diversos individuos no dominados. 4) El tiempo de procesamiento debe analizarse de forma integral con otras variables, las cuales pueden depender en mayor o menor grado del comportamiento del entorno y de su interpretación por parte del equipo de dirección de la compañía; de ésta manera, en estudios posteriores se podría robustecer la metodología incluyendo elementos provenientes de la dinámica de sistemas y de la teoría de juegos, al igual que incluyendo elementos tomados de la inteligencia artificial (NSGA II, SPEA II, minería de datos, colonia de hormigas y búsqueda tabú).

AGRADECIMIENTOS

Se expresan los más sinceros agradecimientos a la Universidad Nacional de Colombia –sede Manizales–, por su apoyo en la implementación del proyecto que actualmente adelantan los autores del artículo, bajo la reglamentación definida por el programa de maestría investigativa en ingeniería industrial y cuyos resultados parciales se ilustran en el presente trabajo.

REFERENCIAS

Anandaraman, C, An improved sheep flock heredity algorithm for job shop scheduling and flow shop scheduling problems, International Journal of Industrial Engineering Computations, 2 (4), 749-764(2011).         [ Links ] 

 

Akhshabi, M. y Khalatbari, J, Solving flexible job-shop scheduling problem using clonal selection algorithm, Indian Journal of Science & Technology, 4 (10), 1248-1251 (2011).         [ Links ]

 

Binato, S. Hery, W. J. Loewenstern D. M. y Resende, M. G. C, A grasp for job scheduling.  In: Ribeiro, C. C., Hansen, P. (eds.). Essays and Surveys in Metaheuristics. Kluwer Academic Publishers, 2002.         [ Links ]

 

Barzegar, B. Motameni, H. y Bozorgi ,H. Solving flexible Job-Shop Scheduling problem using gravitational search algorithm and colored petri net, Journal of applied mathematics, 2012 (Article ID 651310), 20 (2012).         [ Links ]

 

Bozejko, W, On single-walk parallelization of the job shop problem solving algorithms, Computers & Operations Research, 39 (1), 2258–2264 (2012).         [ Links ]

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

Cheng, B. Yang, S. Hu, X. y Chen, B, Minimizing makespan and total completion time for parallel batch processing machines with non-identical job sizes, Applied Mathematical Modelling, 36 (1), 3161-3167 (2012).         [ Links ]

Coca, G. A. Castrillón, O. D. y Ruiz, S. Metodología basada en los algoritmos VEGA y MOGA para solucionar un problema multiobjetivo en un sistema de producción Job Shop, Revista EIA. (2013) (en prensa).         [ Links ]

Coello, C, Theoretical and Numerical Constraint Handling Techniques used with Evolutionary Algorithms:A Survey of the State of the Art, Comp. Methods in Applied Mechanics & Eng., 191 (11-12), 1245-1287 (2002).         [ Links ]

Dao Er Ji, R. Q. y Wang, Y, A new hybrid genetic algorithm for job shop scheduling problem, Computers & Operations Research. 39 (1), 2291-2299 (2012).         [ Links ]

 

Estrada, J, Ergonomía, 2a Edición. Universidad de Antioquia, Medellín, Colombia (2000).         [ Links ]

 

Frutos, M. y Tohmé, F, Técnicas evolutivas en problemas multiobjetivos en el proceso de planificación de la producción, Ingeniería Industrial, 33, 50-59 (2012).         [ Links ]

 

Ghiasi, H. Damiano, P. y Lessard, L, A, Non-dominated sorting hybrid algorithm for multi-objective optimization of engineering problems,Enginnering Optimization, 43 (1), 39-59 (2011).         [ Links ]

 

Koonce, D. A, Using data mining to find patterns in genetic algorithm solutions to a job Shob schedule, Computer & Industrial Engineering, 38, 361-374 (2000).         [ Links ]

 

Li, J. Pan, Q. Saganthan, P. y Chua, T,  A hybrid tabu search algorithm with an efficient neighborhood structure for the flexible job shop scheduling problem, International Journal of Advanced Manufacturing of Technology, 52 (5), 683-697 (2011).         [ Links ]

 

Li, S. Wang, N. He, Z. Che, A. y Ma, Y, Design of a Multiobjective Reserve Logistics Network Considering the Cost and Service Level, Mathematical problems in Engineering, 2012 (Article ID 928620), (2012).         [ Links ]

 

Mazdeh, M. Esfahani, A. Sakkaki, S. y Pilerood, A, Machine batch scheduling minimizing weighted flow times and delivery costs with job release times, Int. J. of Industrial Eng. Computations, 3 (3), 347-364 (2012).         [ Links ]

 

Medina, R. Pradenas, L. y Parada, V, Un algoritmo genético flexible para el problema Job Shop Flexible, Revista chilena de ingeniería, 19 (1), 53-61 (2011).         [ Links ]

 

Nicoara, E. S, Multi-objective Flexible Job Shop Scheduling Optimization Models, Economic Inshights – Trends and challenges, 49 (2), 79-86 (2012).         [ Links ]

 

Rou, L. Y. Asmuni, H, A Study of Cooperative Co-evolutionary Genetic Algorithm for Solving Flexible Job Shop Scheduling Problem, World Academy of Science, Engineering & Technology, 72, 412-417 (2010)        [ Links ]

 

Ruiz, S. Castrillón, O. D. y Sarache, W. A, Una metodología multiobjetivo para optimizar un ambiente Job Shop, Información Tecnológica, 23 (1), 35-46 (2011).         [ Links ]

 

Salazar, E. y Figueroa, B, Minimización de la tardanza para el flowshop flexible con setup utilizando huerísticas constructivas y un algoritmo genético. Revista chilena de Ingeniería, 20 (1), 89 – 98 (2012).         [ Links ]

 

Sipper, D. y Bulfin, R. Planeación y control de la producción, McGraw-Hill, México D. F, (1998).         [ Links ]

 

Thamilselvan, R. y Balasubramanie, P, Analysis of Various Alternate Crossover Strategies for Genetic Algorithm to Solve Job Shop Scheduling Problems, European J. Scientific Research, 64 (4), 538-554 (2011).         [ Links ]

 

Wang, X. Gao, L. y Zhang, C, A multi-objetive genetic algorithm based on immune and entropy principle for flexible job-shop scheduling problem, Int. J. Advanced Manufacturing Technology, 51, 757-767 (2010).         [ Links ]

 

Xiong, J.  Tan, X. Yang, K. W. Xing, L. N. y Chen, Y. W, A Hybrid Multiobjective Evolutionary Approach for Flexible Job-Shop Scheduling Problems, Mathematical problems in engineering, 2012, (2012)        [ Links ]

Zhang, R. y Wu, C. A, Hybrid local search algorithm for scheduling real-world job shops with batch-wise pending due dates, Engineering Applications of Artificial Intelligence, 25 (1), 209-221(2012)         [ Links ] 30, 2013; Aceptado Mayo. 30,2013; Versión final recibida Junio. 26, 2013

Creative Commons License All the contents of this journal, except where otherwise noted, is licensed under a Creative Commons Attribution License