Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Actualidad y Nuevas
Tendencias
ISSN: 1856-8327
revistaiiaynt@gmail.com
Universidad de Carabobo
Venezuela
Pérez Pérez, Enrique; Pérez Castillo, Ilse J.; Jiménez Bahri, Manuel E.
Algoritmo genético para secuenciación de pedidos en taller de mecanizado con máquinas
en paralelo, recirculación y tiempos de preparación.
Ingeniería Industrial. Actualidad y Nuevas Tendencias, núm. 12, enero-junio, 2014, pp. 38
-53
Universidad de Carabobo
Carabobo, Venezuela
Pérez, Pérez y Jiménez. Algoritmo genético para secuenciación de pedidos en taller, p. 38-53
Ingeniería Industrial. 39
Actualidad y Nuevas Tendencias Año 7, Vol. IV, N° 12
ISSN: 1856-8327
Pérez, Pérez y Jiménez. Algoritmo genético para secuenciación de pedidos en taller, p. 38-53
Ingeniería Industrial. 40
Actualidad y Nuevas Tendencias Año 7, Vol. IV, N° 12
ISSN: 1856-8327
producción y mejorará la visión que tienen los variable de uno o más tipos de piezas. Así, el orden
clientes del taller. La minimización del tiempo total en que son realizados los procesos o secuencia
de fabricación o makespan no necesariamente podrá ser modificado con el objeto de hacer más
implica dar un mejor servicio al cliente, aunque eficiente el desempeño total, evitando los tiempos
relacionados, los objetivos que implican la fecha de de ocio de las máquinas cuando esto favorezca la
completitud y entrega de un pedido permiten disminución del tiempo global de fabricación. En la
optimizar la calidad de servicio. práctica, lo más común es que en estos talleres no
Eventualmente son aceptados pedidos de piezas exista tal programación o bien responde
bajo especificación del propio cliente, lo natural es simplemente a la pericia o experiencia del
que los tipos de piezas que podrán ser fabricados programador de turno, que conociendo los pedidos
están previamente establecidos como también la aceptados y su composición de tipo de piezas
secuencia de procesos a realizar para la fabricación podrá reordenarlos con este propósito. Para
de cada tipo de pieza, la fabricación de una pieza o abordar la situación problemática presentada se
trabajo requiere entonces de una secuencia de requiere establecer una herramienta que permita
operaciones, cada operación requiere de una elaborar el orden en que deberán ser ejecutados los
máquina específica para su realización, pudiendo pedidos de manera que el tiempo total de
repetirse para ciertos casos la misma máquina para fabricación sea el menor posible dentro de ciertas
operaciones distintas. Una operación puede limitaciones. La meta no es obtener necesariamente
comenzar solo cuando todas las operaciones la secuenciación óptima, se desea construir una
precedentes han sido completadas. secuenciación de pedidos que tenga un desempeño
Un típico ambiente de manufactura en un taller de aceptable y poder calcular esta secuenciación con
mecanizado (job shop) implica una gran variedad un esfuerzo computacional y en tiempo razonables.
de productos y un relativo bajo volumen de
productos por tipo. Estos procesos o tareas
establecidas lineal y secuencialmente para cada
producto o “plan maestro” implican el uso de
máquinas y operarios. Para realizarlos se supondrá
en particular que la máquina requerirá una
cantidad de tiempo inicial para su preparación y/o
instalación y un tiempo adicional propio del
proceso, ambos específicos para cada proceso
(Figura 01). De manera que el taller se abocará a la
fabricación simultánea de distintos tipos de piezas
para satisfacer un conjunto de pedidos aceptados,
cada uno de ellos constituidos por lotes de tamaño
Pérez, Pérez y Jiménez. Algoritmo genético para secuenciación de pedidos en taller, p. 38-53
Ingeniería Industrial. 41
Actualidad y Nuevas Tendencias Año 7, Vol. IV, N° 12
ISSN: 1856-8327
para un problema (Giffler y Thompson, 1960). secuenciación “Job-Shop” y también una fusión de
También fue demostrada la validez de un modelo éste junto a un método de búsqueda local para la
enfocado a resolver este problema mediante la construcción de la descendencia (Yamada y
programación lineal entera mixta aunque no fue Nakano, 1997). Diversos algoritmos genéticos para
satisfactorio para problemas reales de gran escala, resolver el job-shop scheduling con variantes sobre
por el tiempo requerido para su ejecución (Manne, la capacidad de la representación de la diversidad
1960). Numerosos métodos exactos y aproximados, de soluciones y operadores de cruce y mutación
basados en diversas técnicas, han sido han sido propuestos a lo largo de los últimos años
desarrollados. Muchos se fundamentan en el (Fissgus, 2000; Lestan et al, 2009; Huang y Lin,
concepto de camino crítico (Shifting Bottleneck) 2010, Li y Chen, 2010; Goncalvez y Resende, 2011;
como el propuesto por Adams, Balas y Zawack en Werner, 2011; Vaghefinezhad, 2012). Hibridación
1988 (Adams et al, 1988). El más relevante es el de algoritmos genéticos con otras técnicas de
algoritmo de ramificación y poda (Branch and búsqueda local (Goncalves et al, 2002; Hasan et al,
Bound) propuesto por Brucker (Brucker et al, 2007). Así como también se han creado algoritmos
1994), basado en técnicas de Carlier y Pinson genéticos que resuelven el problema Job-Shop con
(Carlier y Pinson, 1989), como también el objetivo de optimización multicriterio (Coello,
propuesto por Applegate y Cook que combina 2010). El problema Job-Shop ha sido atacado
técnicas heurísticas con un algoritmo de usando técnicas como el recocido simulado
ramificación y poda (Applegate y Cook, 1991). (Simulated annealing) mejorado con la
incorporación de técnicas de búsqueda local
Los métodos exactos están limitados en el tamaño
(Vaessens, Aarts y Lenstra, 1996; Yamada y
de los problemas que pueden manejar debido a sus
Nakano, 1996; Kammer et al, 2010).
requerimientos de espacio y de tiempo, la
hibridación de éstos con algoritmos de búsqueda Los problemas de secuenciación de tareas
local proporcionan un auxilio fundamental para (scheduling).
manejar los casos de gran tamaño (Duvivier et al,
Los aspectos más relevantes que caracterizan los
1996). Entre los métodos de aproximación iterativa
problemas de secuenciación son: siempre se
destacan las técnicas de búsqueda local como los
consideran finitos tanto el número de máquinas y
algoritmos genéticos y búsqueda tabú (Varela,
de trabajos, como también el tiempo de
2008). Falkenauer y Bouffouix en 1991, están entre
procesamiento de cada trabajo en cada máquina,
los primeros en usar algoritmos genéticos para
estos últimos no siempre se consideran
resolverlo y demostrar la viabilidad de su
determinísticos. Además también es posible
aplicación a problemas reales promoviendo un
encontrar trabajos a los que se les asignan distintas
esquema adecuado de codificación y operadores de
prioridades. Con respecto al ambiente en el taller
cruzamiento y mutación (Falkenauer y Bouffouix,
se tiene: Secuenciación de tareas en una sola
1991). También en 1991, Yamada y Nakano
máquina, está asociada al taller básico de una sola
proponen un método para resolver el problema
máquina con mono-operación por trabajo y su
Job-Shop basado en algoritmos genéticos que
importancia radica en que sirve de fundamento
muestran un desempeño sobresaliente para los
para tratar problemas de mayor complejidad. Flow
difíciles problemas de Muth y Thompson, creados
Shop, el taller dispone de distintas máquinas para
en 1963 y usados desde entonces como prueba
procesar los trabajos que deben circular por todas
(benchmark) (Yamada y Nakano, 1996). Se
las máquinas siempre en el mismo orden para
proponen las permutaciones con repetición como
todos los trabajos, está enfocado en el ambiente de
un enfoque más cercano a la representación de los
producción por líneas, por lo que después de
individuos (Bierwirth, 1995). Se propone un
establecida una permutación las máquinas siempre
operador de cruce adaptado al problema de
Pérez, Pérez y Jiménez. Algoritmo genético para secuenciación de pedidos en taller, p. 38-53
Ingeniería Industrial. 42
Actualidad y Nuevas Tendencias Año 7, Vol. IV, N° 12
ISSN: 1856-8327
recibirán los trabajos en la misma secuencia. Job medida del tiempo de uso del tiempo de
Shop, el taller dispone también de distintas computador como la forma de evaluación del
máquinas, y cada trabajo tiene su propia secuencia desempeño de un algoritmo; los problemas tipo
de recorrido de todas las máquinas, está enfocado usados como punto de referencia (benchmark) son
al ambiente de centros de trabajo. Open Shop, adoptados sin ninguna consideración de sus
están disponibles varias máquinas en el taller y los características individuales propias; la
trabajos deben recorrer todas las máquinas pero sin minimización del tiempo total de procesamiento es
un orden especial. Mixed Shop, los trabajos deben usado consistentemente como principal y a veces
recorrer todas las máquinas, algunos en un orden como única meta de un algoritmo (Beck et al, 1997).
específico y los demás no. Esta sucinta El modelo Job-shop flexible de minimización del
simplificación puede incluir la posibilidad de tiempo total de procesamiento con recirculación y
varias máquinas iguales en paralelo (por algunos tiempos de preparación independientes de la
autores denominado flexible y a veces híbrido), las secuencia se cuenta en el conjunto de los ambientes
tareas no tienen que visitar todas las máquinas, de secuenciación más complejos y es común
posibilidad de que la misma tarea circule por la encontrarlo en la industria mecánica y electrónica
misma máquina para realizar distintos procesos (Brucker, 2007; Magalháes-Mendes, 2013).
(recirculación), máquinas multipropósito que
pueden realizar varios o hasta todos los procesos, Los algoritmos genéticos.
estaciones de trabajo y otras. Con respecto a Los algoritmos genéticos fueron propuestos por
detalles de las características del tiempo de John Holland y desarrollados por él conjuntamente
procesamiento y restricciones a las tareas se con sus alumnos en la Universidad de Michigan en
permite interrumpir el procesamiento de un trabajo las décadas de los 60’s y 70’s, su interés inicial no
para reanudarlo posteriormente con el propósito respondía en crear una forma de resolver un
de emplear la máquina en otro trabajo problema específico, sino más bien estudiar
(preemption), existen restricciones de precedencia formalmente el fenómeno de la adaptación natural
entre trabajos, a los trabajos se les puede asignar un para desarrollar formas en que estos mecanismos
tiempo mínimo para poder ser iniciados, cantidad pudieran ser incorporados a los sistemas
de tiempo de procesamiento, a los trabajos se les informáticos. Los AG son algoritmos de
puede asignar un tiempo máximo para su optimización, tratan de encontrar la mejor solución
finalización y la posibilidad de agrupar conjuntos a un problema de entre un conjunto de soluciones
de trabajos en bloques. Finalmente, el criterio de posibles dadas. Las herramientas usadas en esta
optimización es generalmente la minimización del búsqueda pretenden emular artificialmente el
tiempo total de procesamiento y/o minimización proceso natural de la evolución biológica. En la
del tiempo total de flujo de los trabajos en el naturaleza los individuos de una población se ven
sistema. Obviamente, éstos son modelos generales afectados por su entorno y por individuos de otras
ideales que en la literatura científica se describen y especies e incluso por los de su misma especie.
formulan de una forma abstracta, en el mundo real Aquellos que tengan éxito en esta competencia por
los problemas de secuenciación de tareas son la supervivencia tienen mayor probabilidad de
frecuentemente mucho más complejos generar descendientes, por el contrario individuos
involucrando factores y restricciones adicionales poco dotados producirán menos o ningún
(Pinedo, 2009; Baker y Trietsch, 2009; Zäpfel, 2.010; descendiente. Esto significa que los genes de los
Pinedo, 2012). individuos mejor adaptados se propagarán en
Tradicionalmente las heurísticas de secuenciación sucesivas generaciones hacia un número de
son vistas como un todo absoluto y no como la individuos creciente. La combinación de buenas
asociación de diversos elementos que colaboran en características provenientes de diferentes ancestros,
la búsqueda de un fin; es generalmente aceptada la generación tras generación desembocará en
Pérez, Pérez y Jiménez. Algoritmo genético para secuenciación de pedidos en taller, p. 38-53
Ingeniería Industrial. 43
Actualidad y Nuevas Tendencias Año 7, Vol. IV, N° 12
ISSN: 1856-8327
especies evolucionadas con características cada vez Los elementos necesarios para poder aplicar un
mejor adaptadas al entorno en el que viven algoritmo genético simple a un problema son los
(Goldberg, 1989; Mitchell, 1996). siguientes: Poder representar una solución al
problema o individuo, que no es más que una
Estas ideas pueden ser transferidas sin trauma
manera de codificar de forma preferiblemente
hacia los problemas de optimización. Así, el
biunívoca una solución al problema por medio de
conjunto de las soluciones de un problema
una cadena de bits, números o hasta caracteres.
específico corresponderán a los miembros de una
También son llamados comúnmente cromosomas y
población en particular y donde la aptitud de cada
a sus elementos como genes o también alelos. Y
individuo de la población equivaldrá a la calidad
alguna forma de evaluar la bondad de este
de cada solución del conjunto. Siguiendo con la
individuo, que se le denomina función objetivo o
metáfora de la evolución biológica las soluciones
aptitud. De manera, que la aplicación de esta
con mejores desempeños muy probablemente
función sobre un individuo debe poder calificar sus
serán seleccionadas para emparejarlas y generar
virtudes en conjunto con el objeto de su
nuevas soluciones e incluso podrán cambiarse
comparación con la aptitud de cualquier otro
también algunas de sus características de manera
(Michalewicz, 1996).
aleatoria simulando mutaciones, todo esto con la
esperanza de que estas nuevas soluciones alcancen Por otra parte, el funcionamiento general de este
mejores desempeños que sus ascendientes algoritmo podrá ser resumido así:
(Goldberg, 1989; Mitchell, 1996). - Generar una población inicial.
- Repetir hasta que se cumpla un criterio de
El poder de estos algoritmos reside en el hecho de
parada.
que se trata de una técnica estable que puede tratar
- Evaluar cada individuo de la población.
con éxito una amplia gama de problemas de
- Seleccionar los progenitores.
diversas áreas, incluyendo aquellos en los que
- Aplicar el operador de cruce o recombinación
otros métodos encuentran dificultades. Si bien no
y mutación a estos progenitores.
se garantiza que el algoritmo genético encuentre la
- Incluir la nueva descendencia para formar una
solución óptima del problema, existe evidencia
nueva generación (Michalewicz, 1996).
empírica de que se encuentran soluciones de un
Hay muchas variantes de los algoritmos genéticos
nivel aceptable en tiempos competitivos. El
y son obtenidas tanto por el tamaño de la
investigador que seleccione esta técnica en
población inicial y los criterios de selección de
principio no tendrá que ser experto en el área
individuos para ser objeto de recombinación y
específica en que se aplicarán y de alguna manera
mutación como mediante la manipulación
se convierten en un instrumento ciego y sin sesgos
voluntaria de los parámetros de los operadores
en la búsqueda del óptimo.
cruce y la mutación. Estos operadores
En el caso de que existan técnicas especializadas determinarán como se intercambiará la
para resolver un determinado problema, lo más información de los individuos seleccionados como
probable es que los algoritmos genéticos sean padres y así obtener las nuevas soluciones o hijos.
superados, tanto en rapidez como en eficacia. El Y también como se alterarán los individuos por
gran campo de aplicación de éstos es la de efecto de la mutación. Los primeros tienden a
problemas para los cuales no existen técnicas aumentar la calidad de las poblaciones y la
especializadas, incluso en el caso en que dichas tendencia a converger a un solo individuo, con el
técnicas existan y funcionen bien, pueden consiguiente peligro de convergencia de la
efectuarse mejoras de las mismas hibridándolas población a un mínimo local. En contraposición, la
con los algoritmos genéticos (Sivanamdam y mutación se opone a la convergencia y crea nuevas
Deepa, 2008). soluciones a veces no exploradas (Mitchell, 1996;
Coello, 2010).
Pérez, Pérez y Jiménez. Algoritmo genético para secuenciación de pedidos en taller, p. 38-53
Ingeniería Industrial. 44
Actualidad y Nuevas Tendencias Año 7, Vol. IV, N° 12
ISSN: 1856-8327
Pérez, Pérez y Jiménez. Algoritmo genético para secuenciación de pedidos en taller, p. 38-53
Ingeniería Industrial. 45
Actualidad y Nuevas Tendencias Año 7, Vol. IV, N° 12
ISSN: 1856-8327
- Cuando varios procesos estén en cola esperando defectuosas estadísticamente estimable que, o bien
por la desocupación de una máquina no habrá son reparadas con retrabajo que obviamente
prioridad entre ellas a menos que pertenezcan a requiere de la incorporación de más recursos o tal
pedidos distintos, en ese caso el proceso que vez pueden ser desechadas definitivamente por
pertenezca a un pedido que esté en posición que no puede ser reparada. Fueron ignoradas estas
prioritaria dentro de la programación será situaciones en la programación.
atendido por excelencia.
- Los tiempos de preparación o alistamiento y de
procesamiento son conocidos y determinísticos.
Además se consideran independientes de la
secuencia. En la realidad no son constantes como se
ha supuesto, debido en primer lugar a la pericia de
los operarios, materiales de distinta calidad y por
supuesto un componente aleatorio natural en estos
tipos de procesos donde se implican máquinas.
Esto se ha hecho por simplicidad, fueron tomados
estos tiempos sistemáticamente con 50 repeticiones
y se han estimado sus medias, estas medias han
sido consideradas como los tiempos de
preparación y de procesamiento.
- Cuando una máquina reciba piezas del mismo
tipo de la que acaba de terminar de procesar se
ignorará el tiempo de preparación.
- Cuando una pieza que termina de ser procesada Operacionalización del algoritmo genético.
requiere de una máquina de otro tipo y existen Instancias del problema: En el taller donde se
varias desocupadas de ese tipo se tomará realizó el estudio se fabrican piezas de 124 distintos
cualquiera de ellas, a menos que entre las tipos, pero fue constatado que normalmente el 85%
máquinas libres alguna ya este preparada para de las piezas fabricadas pertenece a un pequeño
recibir ese tipo de piezas y entonces esa será sub-conjunto de apenas 12 piezas. Se usan
preferida. máquinas de 8 tipos pero hay varias de algunas de
- Cuando una máquina esté ociosa podrá activarse ellas por lo que el número asciende a 14 máquinas
el proceso de preparación para la próxima pieza en total (Figura 02). Fueron seleccionados 5
que será procesada ya que es perfectamente instancias de problemas reales que estuviesen
previsible el momento de terminación del proceso formadas por exactamente 20 pedidos, que fueron
precedente y así hacer más eficiente la parcialmente modificados para excluir piezas fuera
programación. de las 12 consideradas (si fuese el caso). Éstas
- Fue considerado tiempo de enfriamiento en corresponden al trabajo que normalmente se
ciertos casos, ya que algunas de las piezas al realiza en una semana de 6 días con un turno de 8
terminar un proceso requieren de enfriamiento no horas diarias, es decir, aproximadamente 3.000
inducido para que conserve sus propiedades minutos de labor.
deseables, antes de comenzar con el proceso
siguiente, durante este período de tiempo se
realizará en la máquina que recibirá esta pieza el
proceso de preparación para hacerlo más eficiente.
- En ese tipo de procesos de manufactura de piezas
mecánicas es natural la producción de piezas
Pérez, Pérez y Jiménez. Algoritmo genético para secuenciación de pedidos en taller, p. 38-53
Ingeniería Industrial. 46
Actualidad y Nuevas Tendencias Año 7, Vol. IV, N° 12
ISSN: 1856-8327
Representación de las soluciones: Representación ventaja que ofrece tener individuos de tamaño
por permutación de 20 objetos, esta representación constante y muy pequeños contrarresta a todas
es por supuesto la forma más natural de presentar luces esta desventaja.
una solución para el problema de secuenciar Tamaño y Generación de la población inicial: El
procesos, donde los procesos son listados en el tamaño de la población debe estar relacionado a la
orden en el cual son realizados. El uso de esta longitud del cromosoma y a la complejidad del
forma puede restringir el uso de los operadores de problema. Al elegir el tamaño idóneo de la
cruce (Goldberg, 1989). Entonces el espacio de población es intuitivo que las poblaciones
búsqueda de ésta representación es el conjunto de pequeñas corren el riesgo de no cubrir
posibles permutaciones de los pedidos, una adecuadamente el espacio de búsqueda, mientras
solución en este trabajo se caracteriza que el trabajar con poblaciones de gran tamaño
fundamentalmente por un individuo o cromosoma puede acarrear problemas relacionados con el
formado por 20 genes que representa excesivo coste computacional (Goldberg, 1989). En
inequívocamente al conjunto de veinte pedidos que base a estas consideraciones se eligió un tamaño
podrán ser dispuestos en cualquiera de sus 20! fijo de la población y se estableció en 50
2417 posibles órdenes o secuencias distintas sin individuos. La construcción de la población inicial
temor a perder factibilidad, así esta ventaja fue concebida aleatoriamente, así fueron generados
permitirá generar los individuos de la población 50 individuos o cromosomas cada uno con veinte
inicial con la seguridad de que todos los individuos números enteros o genes que representan
serán factibles (Figura 03). Esta forma de directamente la identificación del pedido. La
representación es similar a la propuesta por permutación al azar de los 20 cromosomas
Holsapple, Jacob, Pakath y Zaveri en 1993, que está garantiza la diversidad de las soluciones al
basada en una representación de secuencias de problema eliminando la posibilidad de sesgo.
trabajos que indica la prioridad con la que serán
atendidos los procesos que los conforman
(Holsapple et al, 1993). Como contrapartida, es
cierto que hay individuos factibles que no podrán
ser alcanzados desde esta forma indirecta de
representación, pudiendo esconderse entre éstos el
óptimo global. Comúnmente en los algoritmos
genéticos implementados para resolver problemas
de secuenciación de trabajos en talleres mecánicos
es usada una representación directa, los genes que
conforman los individuos representan los procesos
secuenciales que conforman un trabajo, así el
tamaño del individuo cambiará dependiendo de
los tipos de trabajos que estén implicados en la
secuenciación (Abdelmaguid, 2010). Los
individuos para problemas como los considerados
en este trabajo que contempla exactamente 20 Función Objetivo: Calcular el desempeño de una
pedidos pero con una cantidad variable de trabajos solución del problema, en otras palabras evaluar la
que oscila aproximadamente en alrededor de 80 aptitud de un cromosoma, representa una
trabajos tendrán una cantidad aproximada de 450 complejidad considerable. Ya fue comentado que
procesos, es decir individuos de tamaño variable una de estas secuencias de 20 pedidos contiene
entre 420 y 480 genes. Por eso a pesar de esto se aproximadamente 450 procesos en una diversidad
convino trabajar con individuos de tamaño fijo, la de 14 máquinas con sensibles restricciones de
secuencia y disponibilidad, por lo cual se recurrió a
Pérez, Pérez y Jiménez. Algoritmo genético para secuenciación de pedidos en taller, p. 38-53
Ingeniería Industrial. 47
Actualidad y Nuevas Tendencias Año 7, Vol. IV, N° 12
ISSN: 1856-8327
una simulación discreta y determinística de la permanecerá la pareja que tenga mejor aptitud, el
secuencia cada vez que se deba evaluar la aptitud otro par será destruido. Así el tamaño de la
de un individuo. Específicamente se programó la población permanecerá constante y se garantizará
técnica del próximo evento para realizar esta que la aptitud promedio de la población nunca será
evaluación, donde los procesos son eventos con los peor.
que se crea una cola de eventos en espera y las
máquinas son estaciones que pueden estar libres o Operador de mutación: Se produce después del
desocupadas. El tiempo total de procesamiento o cruce con el objetivo de incrementar la diversidad
makespan corresponde al tiempo empleado desde poblacional. Se aplica según la tasa seleccionada
el inicio de operación del primer proceso hasta el para mutaciones (hasta el 100%) sobre un
fin de operación del último proceso, el fin de porcentaje de la población. Este operador permite,
operación de un evento genera un nuevo evento por una parte, aumentar la exploración en el
que corresponderá al siguiente proceso de la pieza. espacio de búsqueda y por otro lado, evita la
aparición de poblaciones iguales o semejantes. La
Operador de cruce: Por lo que atiene a los cruces mutación por inserción contempla la extracción de
entre dos individuos debido a la naturaleza del un gen en una posición y su inserción en otra
operador cruce implementado en este trabajo, no posición del mismo individuo ambas posiciones
habrá la necesidad de seleccionar individuos escogidos aleatoriamente. Es aplicada un número
compatibles para realizarlo. Se aplica según la tasa aleatorio de veces sobre el mismo individuo
seleccionada para cruces (hasta el 100%) sobre un (alrededor del 15% de los genes son cambiados de
porcentaje de la población. Se seleccionan dos posición, es decir es aplicado entre 2 y 4 veces en el
individuos escogidos al azar de entre la población mismo individuo). Al haber realizado la mutación
actual (sin elitismo), que serán el padre-1 y padre- se incorpora a la población sólo si su aptitud ha
2, entonces se generan dos posiciones aleatorias mejorado, de otra manera tal mutación será
que servirán para determinar la porción del desechada y el individuo regenerado. Como en el
individuo que se afectará directamente que se cruce, esto garantiza que la aptitud promedio de la
llamará sección de cruce o intercambio. Se originan población nunca será peor (Figura 05).
dos descendientes de la siguiente manera. Se toma
la sección de cruce del padre-1 y se incorpora en el
hijo-1 en su misma posición relativa y se hace lo
mismo con el hijo-2 pero tomando la sección del
padre-2. Luego se copian los genes faltantes en el
orden en que aparezcan en el otro padre (Figura
04). A este tipo de cruce se le denomina “Cruce por
Orden” (OX, Order Crossover en idioma inglés) y Criterio de terminación: La población inicial será
fue propuesto por Lawrence Davis en 1985 como transformada muchas veces bajo el esquema
una variante ordenada del cruce llamado “Cruce presentado anteriormente y a cada una de estas se
por mapeo parcial” (PMX, Partial Mapped le denominará “generación”, así en cada
Crossover en idioma inglés) (Gen y Cheng, 2000). generación se selecciona y aplican cruces y se
Claramente OX trata de incorporar parte de un escogen y se aplican mutaciones. El número de
padre y también incorporar parte del otro padre generaciones dependerá fundamentalmente de la
pero preservando el orden relativo de los complejidad del problema a tratar, del tamaño de
elementos de éste. Habiendo realizado el cruce se lo individuo, del criterio de selección de los
incorporan a la población sólo los mejores individuos a transformar, del porcentaje de cruce y
individuos, en otras palabras, de estos cuatro mutación y del criterio de permanencia de los
individuos, dos padres y dos hijos solo individuos evolucionados. El criterio usado en este
Pérez, Pérez y Jiménez. Algoritmo genético para secuenciación de pedidos en taller, p. 38-53
Ingeniería Industrial. 48
Actualidad y Nuevas Tendencias Año 7, Vol. IV, N° 12
ISSN: 1856-8327
algoritmo genético fue el de terminar las idénticos, con la posibilidad cierta de que éste sea
iteraciones cuando sea alcanzada la convergencia, el óptimo o un próximo satisfactorio.
es decir, cuando todos los cromosomas sean
Pérez, Pérez y Jiménez. Algoritmo genético para secuenciación de pedidos en taller, p. 38-53
Ingeniería Industrial. 49
Actualidad y Nuevas Tendencias Año 7, Vol. IV, N° 12
ISSN: 1856-8327
Pérez, Pérez y Jiménez. Algoritmo genético para secuenciación de pedidos en taller, p. 38-53
Ingeniería Industrial. 50
Actualidad y Nuevas Tendencias Año 7, Vol. IV, N° 12
ISSN: 1856-8327
Pérez, Pérez y Jiménez. Algoritmo genético para secuenciación de pedidos en taller, p. 38-53
Ingeniería Industrial. 51
Actualidad y Nuevas Tendencias Año 7, Vol. IV, N° 12
ISSN: 1856-8327
Los tiempos de ejecución estuvieron dentro de computacional. Es de hacer notar que este
límites aceptables para las tasas comentadas (entre programa representa solamente un prototipo y que
menos de un minuto y hasta seis minutos trabajar sobre la eficiencia a nivel de código
dependiendo en gran medida del tamaño de los desembocará en un programa de acabado
pedidos considerados), al aumentar las tasas de profesional con mayor eficiencia y por ende con
cruce y de mutación también aumenta el tiempo menor uso del recurso tiempo de ejecución.
Pérez, Pérez y Jiménez. Algoritmo genético para secuenciación de pedidos en taller, p. 38-53
Ingeniería Industrial. 52
Actualidad y Nuevas Tendencias Año 7, Vol. IV, N° 12
ISSN: 1856-8327
Pérez, Pérez y Jiménez. Algoritmo genético para secuenciación de pedidos en taller, p. 38-53
Ingeniería Industrial. 53
Actualidad y Nuevas Tendencias Año 7, Vol. IV, N° 12
ISSN: 1856-8327
scheduling problem with a simple genetic algorithm. Annals of Pinedo, Michael L. (2012). Scheduling. theory, algorithms, and
DAAAM & Proceedings. Vol. 2009, Pág. 197-205. DAAAM systems. Cuarta edición. Springer Science+Business Media, LLC.
International Vienna. Eslovenia. NewYork, USA.
Li, Ye y Chen, Yan. (2010). A genetic algorithm for job-shop Sivanandam, S. N. y Deepa, S. N. (2008). Introduction to genetic
scheduling. Journal of Software. Vol. 5, Núm. 3, Pág. 269-274. algorithms. Primera edición. Publicaciones Springer-Verlag
2010. Academy Publisher. Berlin Heidelberg New York. Inglaterra.
Magalháes-Mendes, Jorge. (2013). A two-step optimization Vaessens, Rob J. M.; Aarts, Emile H. L. y Lenstra, Jan K. (1996).
approach for job shop scheduling problem using a genetic Job shop scheduling by local search. INFORMS Journal on
algorithm. Working paper 06.2013. Departamento de Computing. Vol. 8, Núm. 3, Pág. 302-317. 1996.
Engenharia Civil CIDEM. Instituto Superior de Engemharia do Vaghefinezhad, Sayedmohammadreza y Wong, Kuan Y. (2012).
Porto. Porto, Portugal. A Genetic Algorithm Approach for Solving a Flexible Job Shop
Manne, Alan S. (1960). On the job shop scheduling problem. Scheduling Problem. 14th International Conference on
Operations Research. Vol. 8, Núm. 2, Marzo-abril, 1960. Pág. Computer Modelling and Simulation. De: 28-30/03, 2012.
219-223. USA. Cambridge, Reino Unido.
Mattfeld, Dirk C. y Bierwirth, Christian. (2004). An efficient Varela, Ramiro. (2008). Nuevas tendencias y retos en métodos
genetic algorithm for job shop Scheduling with tardiness heurísticos para problemas de scheduling. Congreso
objectives. European Journal of Operational Research. Núm. Internacional de Cómputo en Optimización y Software,
155, Pág. 616-630. Elsevier Journals B.V. USA. Memorias del CICOS08, 25-27 Junio 2008. México.
Medina D., Rosa; Pradenas R., Lorena y Parada D., Víctor. Williams, Edward J. y Ahitov, Igal. (1996). Scheduling analysis
(2011). Un algoritmo genético para el problema de Job Shop using discrete event simulation. Proceedings of the 29th Annual
Flexible. Ingeniare. Revista chilena de ingeniería. Vol. 19, Núm. Simulation Symposium. Abril, 9-11, 1996 New Orleans,
1. Arica, Chile. Louisiana, USA.
Michalewicz, Zbigniew. (1996). Genetic algorithms + data Werner, Frank. (2011). Genetic algorithms for shop scheduling
structures = evolution programs. Springer-Verlag London problems: A survey. Preprint 11/31, Faculty of Mathematics,
Limited. Reino Unido. Otto-von-Guericke-Universität Magdeburg. Magdeburgo,
Mitchell, Melanie. (1996). An introduction to genetic algorithms. Alemania.
A Bradford Book The MIT Press Massachusetts Institute of Yamada, Takeshi y Nakano, Ryohei. (1996). Job-shop scheduling
Technology. Massachusetts, USA. by simulated annealing combined with deterministic local
Papadimitriou, Christos H. y Steiglitz, Kenneth. (1998). search. Meta-heuristics: theory & applications. Kluwer
Combinatorial optimization algorithms and complexity. Dover Academic Publisher, Pág. 237-248. 1996. Boston, Massachusetts,
Publications, INC. Mineola. New York, USA. USA.
Pazos A., José J.; Suárez G., Andrés y Díaz R., Rebeca P. (2008). Yamada, Takeshi y Nakano, Ryohei. (1997). Genetic algorithms
Teoría de colas y simulación de eventos discretos. Pearson for job-shop scheduling problems. Proceedings of Modern
Educación, S.A. Madrid, España. Heuristic for Decision Support, del 18 al 19 de marzo, 1997. Pág.
Petri, Jürgen. (2010). NetBeans platform 6.9 developer's guide. 67–81. Seminario UNICOM. Middlesex, Londres, Inglaterra.
Packt Publishing Ltd. Road Olton, Birmingham, Reino Unido. Zäpfel, Günther; Braune, Roland y Bögl, Michael. (2010).
Pinedo, Michael L. (2009). Planning and scheduling in Metaheuristic search concepts. a tutorial with applications to
manufacturing and services. Segunda edición. Springer production and logistics. Springer-Verlag Berlin Heildelberg.
Science+Business Media, LLC. NewYork, USA. USA.
Autores
Enrique Pérez Pérez. Ingeniero en Información, Universidad Tecnológica del Centro. Tesista de la Maestría
Matemática y Computación, Universidad de Carabobo. Profesor Asistente a Dedicación Exclusiva,
Departamento de Investigación Operativa, Escuela de Ingeniería Industrial, Facultad de Ingeniería,
Universidad de Carabobo.
E-mail: eperez@uc.edu.ve
Ilse Josefina Pérez Castillo. Ingeniero Industrial, Universidad de Carabobo. Tesista de la Maestría en
Ingeniería Industrial, Universidad de Carabobo. Profesora Asistente a Tiempo Completo, Departamento
de Investigación Operativa, Escuela de Ingeniería Industrial, Facultad de Ingeniería, Universidad de
Carabobo.
E-mail: ijperez@uc.edu.ve
Manuel Elías Jiménez Bahri. Ingeniero Industrial. Magister en Ingeniería Industrial, Universidad de
Carabobo. Profesor Agregado a Dedicación Exclusiva, Departamento de Investigación Operativa, Escuela
de Ingeniería Industrial, Facultad de Ingeniería, Universidad de Carabobo.
E-mail: mejb11@gmail.com
Recibido: 12-02-2014 Aceptado: 27-04-2014
Pérez, Pérez y Jiménez. Algoritmo genético para secuenciación de pedidos en taller, p. 38-53