Está en la página 1de 9

Problemas de Job Shop

Identificación de las características básicas de los artículos:

Problema que abordan

El problema de Job Shop, es un problema de optimización combinatoria, el scheduling tiene como


función la asignación de recursos limitados a tareas a lo largo del tiempo y tiene como finalidad la
optimización los objetivos.[5]

Por tanto, se hace necesario abordar este tipo de problemáticas por medio de métodos que a pesar
de que no encuentren soluciones óptimas en la mayoría de los casos, produzcan aproximaciones
competitivas, a este tipo de métodos se les denomina metaheurísticas.[1]

Problema: Un número determinado de máquinas (finitas) procesa un conjunto finito de trabajos,


donde cada trabajo se caracteriza por presentar unas operaciones con un orden fijo determinado,
las operaciones serán procesadas en una maquina específica por una duración especificada. “Cada
máquina puede procesar a lo más un trabajo en un tiempo y una vez que un trabajo ha iniciado
sobre una maquina se debe completar su procesamiento sobre esa máquina por un tiempo
ininterrumpido” [1]. El objetivo de JSP es encontrar un calendario que minimice el máximo tempo
de completar todos los trabajos.

Las restricciones a este problema pueden ser las siguientes:[5]

 Una tarea no puede visitar una misma máquina dos veces.


 No hay restricciones de precedencia entre operaciones de distintas tareas.
 Las operaciones no se pueden interrumpir.
 Cada máquina puede procesar sólo una tarea a la vez.
 No se especifican ni release times (fecha de tarea lista a ser procesada) ni due dates (fecha
de entrega).

Donde:

 Un Calendario es una asignación de operaciones en intervalos de tiempo sobre las


máquinas.[1]
 El makespan es el máximo tiempo en completar todos los trabajos.[1]

Importancia, relevancia e impacto

La industria tiene un gran interés acerca de la solución del problema de Job shop scheduling. Por lo
tanto, el logaritmo empleado en esta solución con la ayuda de métodos(metaheurísticas) buscará
crear soluciones óptimas y competitivas. Las metaheurísticas garantizan soluciones aproximadas,
además de reducir el tiempo de cómputo.[1]
Una de las metaheurísticas son los sistemas inmunes artificiales (SIA), que, a través de
abstracciones, utilizan la capacidad del sistema inmune biológico para dar soluciones algorítmicas a
problemas complejos de optimización.

Este tipo de métodos hacen uso de técnicas computacionales que presentan un amplio campo de
aplicación, y además de ser ágil, no demanda una alta complejidad computacional y uso de la
memoria.

La optimización del makespan permite tener un mejor control de la utilización de los recursos
(máquinas) por medio de una correcta planificación y programación de las
operaciones/trabajos/actividades en la producción y busca que las operaciones de todos los
trabajos finalicen en el menor tiempo posible, haciéndolas más eficientes lo que ayuda a que las
organizaciones tengan una mejor planeación de la producción y puedan ser competitivos.

Objetivos planteados

 El objetivo de JSP es encontrar un calendario que minimice el makespan.


 el objetivo del JSP es encontrar un conjunto de permutaciones con el makespan más
pequeño.
 Minimizar los tiempos de finalización de la última tarea.
 Minimizar el número de tareas luego de una fecha de entrega acordada
 Encontrar soluciones aceptables en tiempos razonables a los problemas de scheduling.
 Estudio de los sistemas inmunes artificiales.
 Optimizar uno o varios criterios que se representan mediante funciones objetivo, de tal
forma que se maximice o minimice los criterios sujetos a las restricciones.

Reflexión sobre la literatura académica:

¿Cuál es el marco conceptual?

La aparición de los problemas de Scheduling se da en los ambientes productivos y de servicios de la


realidad actual, los cuales requieren de una correcta organización de la ejecución de los trabajos y
actividades con el fin de usar correctamente los recursos(finitos) y teniendo en cuenta un conjunto
de restricciones durante su ejecución. [1]

Estos problemas son de tipo combinatorio donde puede haber infinitas combinaciones posibles, así,
a medida que aumenta el tamaño del problema el tiempo de procesamiento aumentará de forma
desproporcional.

Por eso, se han generado métodos que busquen soluciones efectivas. Métodos que buscan
optimizar criterios representados mediante funciones objetivos procurando un beneficio en cuanto
a tiempo, costo, etc.
Uno de los objetivos que desarrolla la optimización es maximizar o minimizar los criterios que están
sujetos a las restricciones ya sea en la maximización de la eficiencia de la utilización de maquinarias.

Inteligencia artificial

Se fundó el campo de investigación de inteligencia artificial (IA) en una conferencia en el campus de


Dartmouth College en 1956 (Crevier 1993). AI es el nombre genérico dado al campo de la informática
dedicado al desarrollo de programas que intentan replicar la inteligencia humana. Si hay demasiadas
tareas asignado al sistema, el humano no tiene oportunidades para construir un modelo mental del
sistema. Como resultado, las excepciones que el sistema no puede manejar no pueden ser resuelto
por el humano tampoco.[7]

Entonces la IA puede ser descrito como "el estudio y diseño de agentes inteligentes"(Russell y Norvig
2003), mediante el uso de técnicas de IA, los investigadores pudieron desarrollar métodos
inteligentes para resolver problemas difíciles.[7]

Cuáles son los antecedentes (Estado del arte)

Las investigaciones al problema de n trabajos, m máquinas y relaciones de precedencia, por lo cual


cada trabajo se procesa a través de las máquinas en un orden diferente, fueron desarrolladas por
algunos pioneros como B. Roy y B. Sussman que en 1964 propusieron la representación mediante
el grafo disyuntivo, pero años antes B. Giffler y G. L. Thompson propusieron un algoritmo de reglas
de despacho de prioridad en 1960, mientras que, J. R. Jackson en 1956 generalizó el algoritmo del
flow-shop de S. M. Johnson de 1954 al algoritmo del job-shop.[5]

Durante los últimos años se ha evidenciado soluciones al problema de JSS. A continuación, se


presentan diferentes trabajos acerca de los Sistemas inmunes artificiales:

Uno de los trabajos que ha trabajado en el sistema inmune artificial, teniendo como objetivo
minimizar el makespan (minimizar el intervalo de tiempo entre el inicio del procesamiento del
primer trabajo (tiempo de referencia 0) y el tiempo de finalización del procesamiento del último).
“An Artificial Immune Algorithm for the project scheduling problem under resource constraints”.[2]

Por su parte en “An Artificial Immune Network for Multimodal Function Optimization” desarrollado
por Castro y Timmis, donde adapta un modelo de red inmune que busca resolver problemas de
optimización multimodales.[3]. Rivera et buscan resolver el problema Job Shop Scheduling
mediante el desarrollo de un algoritmo basado en el sistema inmune artificial.[1][4]. El trabajo de
Chandrasekaran et al. “Solving job shop scheduling problems using artificial immune system”, Con
el uso de algoritmo inmune se buscó resolver problemas de programación de tareas JSP con el
objetivo de lograr la minimización del makespan.[4]

Cada uno de estos trabajos que desarrollaron algoritmos para la solución de problemas de JSP
fueron comparados con otros algoritmos presentando mejoras en el sistema inmune artificial.
A continuación, se describen las técnicas y estrategias más importantes utilizadas en la
solución del JSP
Técnicas de optimización
En este tipo de técnica la complejidad crece exponencialmente conforme al tamaño de la entrada,
los métodos buscan una solución óptima a partir de los datos del problema y mediante un orden de
los procedimientos mediante el uso de reglas.

Entre las técnicas de optimización se encuentra la de programación lineal entera mixta desarrollada
por Alan Manne en 1960, esta técnica permite optimizar una función objetivo a través de las
restricciones de sus variables. La técnica de ramificación y poda hace uso de una estructura de árbol,
que muestra de forma dinámica todas las combinaciones o secuencias posibles.[5]. Los algoritmos
genéticos (Genetic algorithms) estos algoritmos imitan el procedimiento de la selección natural
aplicándolo sobre el espacio de soluciones del problema, busca crear generaciones sucesivas de
individuos representativos de posibles soluciones al problema.[5]

Bean search (BS): Es un método heurístico que explora un gráfico expandiendo el nodo más
prometedor en un conjunto limitado. Esta La técnica de búsqueda se utilizó principalmente en
inteligencia artificial para el problema de reconocimiento de voz. [7]

Tabu search (TS): es un método heurístico propuesto originalmente por Glover (1986). Este método
es búsqueda y emplea una búsqueda "inteligente" y una técnica de memoria flexible para evitar
quedar atrapado en el óptimo local., además, mejora el rendimiento de estas técnicas mediante el
uso de estructuras de memoria que describen las soluciones o los conjuntos de reglas.[7]

Técnicas de aproximación

Este tipo de métodos permiten obtener soluciones muy cercanas al punto o resultado óptimo con
unos tiempos de cálculo moderados. EL método se inspira en fenómenos naturales y la resolución
inteligente de problemas que posee permiten que se aplique en problemas combinatoriamente
difíciles.[5]

Las reglas de prioridad de despacho se aplican con mayor frecuencia para resolver problemas de
scheduling, debido a que permite una fácil implementación y una dificultad baja con respecto al
tiempo. Por otro lado, las Heurísticas basadas en cuellos de botella (Bottleneck based heuristics) son
aproximaciones más sofisticadas, que se basan en cuellos de botella, su principal contribución es
que permite decidir el orden en el que las máquinas en un proceso de producción deben ser
secuenciadas.[5]

Modelo Matemático

Se hace uso de técnicas de programación maten ática para dar soluciones óptimas a los problemas
de scheduling, uno de los modelos matemáticos más comunes es la programación lineal entera
mixta (Alan Manne en 1960), contiene restricciones lineales, función objetivo, en este modelo las
variables de decisión pueden tomar valores enteros(binarias).[5]
Caso de aplicación de una de las metodologías de solución de problemas de Job Scheduling
Problem

“Makespan Minimization for The Identical Machine Parallel Shop with Sequence Dependent
Setup Times Using a Genetic Algorithm”

Metodología empleada: ¿Cuáles fueron los métodos o técnicas empleadas para abordar el
problema?

Las empresas que manejan procesos de producción tienen que realizar una correcta programación
de la producción conforme a las necesidades de los clientes, así, los trabajos deben de realizarse de
la mejor manera o eficientemente, considerando el uso de los recursos para mejorar el control de
operaciones y poder ser más competitivos.

El problema que se aborda busca programar trabajos en un sistema de máquinas paralelas idénticas,
es decir, cada máquina puede procesar cada trabajo con un mismo tiempo de proceso, donde los
tiempos de preparación dependen del orden en el que se procesan los trabajos para ello se utiliza
el algoritmo una de las técnicas de optimización.

Objetivo:

 “Minimizar el makespan (Cmax), que consiste en minimizar el intervalo de tiempo entre el


inicio del procesamiento del primer trabajo (tiempo de referencia 0) y el tiempo de
terminación del procesamiento del último trabajo, es decir, el intervalo de tiempo en el que
se procesa completamente la totalidad de los trabajos (órdenes de producción)”.[8]

Los algoritmos genéticos buscan imitar el procedimiento de la selección natural dentro de las
soluciones del problema, se fundamenta en la creación de generaciones sucesivas de individuos
que representan las soluciones al problema.[5][8]

Análisis de resultados:

Coherencia de la metodología con los resultados obtenidos

Al revisar el documento, se puede encontrar las diferentes metodologías utilizadas en la solución


del problema de programación de trabajo, entre ellas se encuentra el algoritmo genético el cual es
una lista ordenada de los trabajos a programar donde el individuo es evaluado obteniendo
el makespan de la asignación de trabajos a las máquinas, se hace uso de la estructura del
cromosoma debido a que se presenta una secuencia de trabajos.

Los procedimientos del algoritmo se realizaron de la manera correcta, teniendo en cuenta la


generación de la población (trabajos) de acuerdo al entrecruzamiento de estos, donde define una
lista ordenada de trabajos asignados a las máquinas, siguiendo un procedimiento de la tabla 1, lo
que va a generar un makespan, como se trata de un problema de minimización, un individuo
representa una mejor solución mientras este valor sea menor.
Se hace uso de los siguientes operadores, el operador genético PMX: se utiliza como operador
de cruzamiento, y el swap como operador de mutación los cuales no presentan
contradicciones en sus resultados generando correctamente los cruzamientos de
trabajos. También, se utiliza una adaptación de una heurística greedy , con la idea mejorar la
asignación de los trabajos en cada máquina, este algoritmo busca reducir los tiempos de
terminación de cada máquina del sistema, para lograr una disminución del makespan, mostrando
resultados consecuentes.[8]

Durante el estudio experimental se obtuvieron resultados coherentes con relación a las


metodologías utilizadas para la solución del problema, utilizando la simulación Montecarlo,
operador PMX y swap.

TABLA I

Tiempos de proceso de los trabajos. [8]

La solidez de los principales resultados

Los resultados obtenidos en el proceso experimental del documento, se muestran los métodos
evaluados y sus resultados. Donde, los parámetros de probabilidad de cruzamiento y mutación, y
el tamaño de población del algoritmo genético se calibraron mediante experimentación.

En un estudio preliminar:

 Se analizaron 5 instancias del problema, con valores de cruzamiento, mutación, tamaño de


la población y realizando replicaciones en el proceso Esto permitió obtener que para
generar el mejor método de secuencia con el menor makespan se deben considerar 10
réplicas y que cada replica tenga 500 generaciones.

Heurística permitió redefinir los tiempos de proceso de cada trabajo, estimando su tiempo de
ocupación de máquina y ordeno los trabajos de mayor a menor tiempo estimado de ocupación de
cada máquina.

Al introducir el algoritmo de mejora, hubo un mejor desempeño del algoritmo genético,


mejorando en promedio las soluciones obtenidas con el algoritmo genético estándar en cerca de
un 8%, superando a todos los otros algoritmos en todas las instancias.

Se puede apreciar en la Tabla 2 la comparación de los métodos utilizados, donde el algoritmo LPT*
presenta el desempeño más bajo, los algoritmos AG y SMC presentan un rendimiento muy similar.
Además, hay un buen rendimiento del algoritmo AG+MV, mejorando significativamente su
desempeño respecto de AG.

TABLA II

Comparación de métodos.[8]

Discusión de resultados: La relación entre lo encontrado en el artículo con las otras lecturas
entregadas

Los documentos abordan el problema de Job Shop, el cual se busca solucionar con técnicas de
optimización como la programación lineal, Branch & Bound y algoritmos genéticos entre otros,
también, se tienen las técnicas de aproximación como las reglas de prioridad de despacho, métodos
de búsqueda local y los modelos matemáticos. Estás técnicas buscan optimizar la programación de
las tareas de una cantidad de maquinas con el objetivo de minimizar el makespan. Así, el artículo
encontrado busca solucionar la programación de trabajos en un sistema de máquinas paralelas
idénticas, tiene como objetivo minimizar el intervalo de tiempo entre el inicio del procesamiento
del primer trabajo (tiempo de referencia 0) y el tiempo de terminación del procesamiento del último
trabajo (makespan)[.8], y para la solución se utiliza la técnica de los algoritmos genéticos nombrada
en los demás documentos consultados.
tiene como función la asignación de recursos limitados a tareas a lo largo del tiempo y tiene como
finalidad la optimización los objetivos.[5]

Conclusiones

 Actualmente los problemas de programación de JSP son uno de los problemas de más
interés de hoy en día por parte de las industrias de fabricación, y dependiendo de su grado
de dificultad, complejidad y desarrollo se utilizan diferentes tipos de algoritmos y modelos
matemáticos para darle solución a los problemas JSP.
 Muchas de las técnicas utilizadas para la solución del JSP no dan soluciones exactas sino que
entregan resultados aproximados, y debido a que en el los problemas JSP se van a convertir
cada vez más complejos, dinámicos y flexibles, donde ya no se consideraran solo máquinas,
sino que se abordaran múltiples máquinas, recursos múltiples, incluso una serie de fábricas
y logística lo que va a generar que las soluciones generadas por los algoritmos no se han de
alta calidad.
 Según “Algoritmo Inmune de Selección Clonal para el problema de Job Shop Scheduling”,
las metaheurísticas bioinspiradas presentan buenos rendimientos frente a las soluciones de
otras técnicas de mayor madurez encontradas en la literatura, teniendo en cuenta los
resultados mostrados en el trabajo.

Referencias

[1] N. Martínez, L. Gomez, Diaz. N and Bautista. L, "Algoritmo Inmune de Selección Clonal para
el problema de Job Shop Scheduling", Bucaramanga: Universidad Industrial de Santander, 2013, p.8

[2] M. Mobini, Z. Mobini y M. Rabbani, «An Artificial Immune Algorithm for the project scheduling
problem under resource constraints.,» Applied Soft Computing, vol. 11, nº 2, pp. 1975-1982, 2011.

[3]L. N. de Castro y J. Timmis, «An artificial immune network for multimodal function
optimization,» Proceedings of the 2002 Congress on Evolutionary Computation., vol. 1, pp. 699-
704, 2002.

[4]C. A. Coello C, D. C. Rivera y N. C. and Cortés, «Job Shop Scheduling using the Clonal».

[5] Peña. V and Zumelzu. L, " Estado del Arte del Job Shop Scheduling Problem", Valpara´ıso, Chile:
Universidad Técnica Federico Santa María, 17 de mayo de 2006, p.8

[6] B. Calis and S. Bulkan,“A research survey: review of AI solution strategies of job shop
scheduling problema”, Springer Science+Business Media New York 2013, p.13

[7] J. Zhang, G. Ding, Y. Zou, S. Qin, J. Fu,” Review of job shop scheduling research and its new
perspectives under Industry 4.0”, Springer Science+Business Media, LLC 2017, p.22
[8] S. Hornig and J. Medina, “Makespan Minimization for The Identical Machine Parallel Shop with
Sequence Dependent Setup Times Using a Genetic Algorithm”, Ing. invest. y
tecnol. vol.14 no.1 México ene./mar. 2013.

También podría gustarte