SciELO - Scientific Electronic Library Online

 
vol.14 número57Diseño y simulación de una red neuronal en VHDL y su aplicación en filtrado de un electrocardiogramaExposición de los nitratos en las aguas subterráneas: caso de estudio Vereda Nueva Cuenca Ariguanabo La Habana Cuba índice de autoresíndice de materiabúsqueda de artículos
Home Pagelista alfabética de revistas  

Servicios Personalizados

Revista

Articulo

Indicadores

Links relacionados

Compartir


Universidad, Ciencia y Tecnología

versión impresa ISSN 1316-4821versión On-line ISSN 2542-3401

uct v.14 n.57 Puerto Ordaz dic. 2010

 

Determinación de las rutas de un robot transportador en un sistema productivo

Mateo Doll Manuel(1), D’Armas Mayra(2) y De Los Santos María Antonia(2)

(1)Departamento de Organización de empresas. Universidad Politécnica de Cataluña

(2)Departamento de Ingeniería industrial UNEXPO, Vicerrectorado Puerto Ordaz

manel.mateo@upc.edu

Resumen: En este trabajo se resuelve un problema de programación de los ciclos producción en un sistema productivo con la presencia de robots transportadores o vehículos autoguiados. Se determinó la secuencia óptima de transporte de las piezas entre las máquinas, a partir de los tiempos de procesamiento y de transporte de las piezas de una etapa a otra del proceso productivo. El objetivo de este trabajo es obtener la secuencia óptima de movimientos del robot transportador para diferentes configuraciones de un sistema productivo (máquinas que pueden estar activas e inactivas, disposiciones lineal y circular de las máquinas). Para la resolución de los diferentes casos se programó en lenguaje Visual Basic un algoritmo Brach and Bound. El algoritmo se experimentó con 214 ejemplares. Los resultados demuestran que existen relaciones entre las diferentes características del sistema productivo, como son los tiempos de ciclo, los tiempos de procesamiento o la distribución de las máquinas dentro del proceso productivo. Estos resultados evidencian las configuraciones del sistema que permiten reducir de manera significativa los tiempos ciclos del robot transportador.

Palabras clave: Vehículos Autoguiados/ Sistema Productivo/ Algoritmo Branch and Bound/ Proceso Multietápico.

Determination of the routes of a robot in a production system

Abstracts: This paper solves a scheduling problem of cycles in a production system with the presence of robots or AGV (Automated Guided Vehicles). We determine the optimal sequencing for the transport of parts between machines, considering the processing times and transport times from one stage to another in the manufacturing route. The aim of this work is to obtain the optimal sequence of movements of the robot for different configurations of a production system (machines which can be active and inactive, linear and circular file of machines). To solve the different cases, a Branch and Bound was programmed in Visual Basic. The algorithm was tested with 214 instances. The results show that relationships between the different characteristics of the production system exist, such as cycle times, processing times and the distribution of the machines within the production process. These results show the system configurations which allow to significantly reduce cycle times for the robot.

Keywords: Automated Guided Vehicles/ Production System/ Branch and Bound/ Multistage Process.

I. INTRODUCCIÓN

En este trabajo se resuelve un problema de optimización de los movimientos del transporte destinado a trasladar las piezas entre máquinas en un proceso productivo. Se estudia el caso en que se deben producir dos tipos diferentes de piezas con un único elemento para transportarlas. Para resolver los diferentes casos se programó un algoritmo basado en la metodología de Branch and Bound. Posteriormente se analizaron los resultados de la experiencia computacional para relacionarlos con los parámetros del sistema.

Los elementos de transporte utilizados para mover los productos entre las diferentes etapas del proceso pueden ser Vehiculos Guiados Automatizados, denominados también mediante las siglas AGV de Automated Guided Vehicles [1]. Los AGV son robots móviles autopropulsados capaces de seguir autonómamente una trayectoria. Su uso se remonta a finales de los años 80, cuando se implantó en los procesos de fabricación sobretodo de la industria automovilística.

Un problema similar al planteado en este trabajo fue resuelto por Mateo y Amorós [2], donde el transporte de las piezas se realiza a través del aire. Sin embargo, el caso tratado se diferencia del anterior trabajo ya que se estudia el caso en que el transporte se realiza por medio terrestre, en los procesos productivos las piezas no necesariamente siguen las mismas etapas, y se estudiaron diferentes casos al desactivar determinadas máquinas. Además, se estudió la influencia de la disposición de las máquinas en el proceso de fabricación, resolviendo dos problemas equivalentes, uno con la disposición lineal de las máquinas y otro con disposición circular [3]. Para mejorar la disposición de las máquinas se recomienda la lectura de [4] y [5] dedicadas a la optimización de ciclos productivos. Se considera el caso en que se fabrica dos tipos diferentes de piezas tp designadas A y B, con un número elevado de cada una de ellas. En definitiva, se trataron cuatro situaciones posibles que se muestran en la Figura 1:

(a) Línea de producción lineal con máquinas activas para todos los productos. En este caso, tanto las piezas A como la B se procesan en todas las máquinas del sistema productivo.

(b) Línea de producción lineal con máquinas activas-inactivas según el tipo de producto. En este caso, la pieza A o la B no se procesa en una de las máquinas del sistema productivo. En la Figura 1 el tipo de pieza A no es procesada en la máquina 2.

(c) Línea de producción circular con máquinas activas para todos los productos. Este caso es equivalente al (a) debido que todas la piezas se procesan en todas las máquinas del sistema productivo.

(d) Línea de producción circular con máquinas activasinactivas según el tipo de producto. En la Figura 1 la máquina 5 está inactiva para el tipo de pieza B, mientras que para las piezas tipo A está activa.

II. DESARROLLO

1. Planteamiento del Problema

El proceso puede calificarse de multi-etápico ya que las piezas son modificadas en diferentes etapas productivas a medida que el proceso va avanzando. Estas etapas tienen una duración determinada en función de los tipos de piezas que llegan y deben seguir una secuencia específica. El sistema de transporte puede realizar dos movimientos en función de si lleva o no una pieza. Si lleva una pieza, tiene que recogerla de la etapa finalizada, trasladarse a la siguiente etapa y dejarla en su nueva ubicación. En el caso de que no lleve ninguna pieza, entonces se desplaza de la posición inicial a la siguiente posición necesaria para realizar el ciclo de trabajo. Se puede dar el caso que el sistema de transporte permanezca detenido porque todas las piezas del proceso productivo están inmersas en una operación no finalizada. Por lo tanto, el tiempo ciclo total dependerá de tres factores: la duración de las operaciones del proceso, la duración del transporte y los posibles tiempos muertos que aparezcan.

El problema tratado tiene tiene como objetivo minimizar el tiempo de ciclo, y por lo tanto maximizar el flujo de piezas. El tiempo ciclo viene dado por los tiempos necesarios para que tanto una pieza del tipo A como del tipo B pasen por todas y cada una de la etapas del proceso productivo. Dado que la cantidad de piezas tipo A y B es elevada, y que por lo tanto la secuencia de movimientos se tiene que realizar muchas veces, el comportamiento del problema será cíclico. Los ciclos de trabajo son diversos en función del tipo de pieza. El proceso consta de n máquinas, con sus respectivas n operaciones, siendo el número de etapas por ciclo: Ne = tp (n + 1). El número de máquinas es igual al número de funciones a realizar en el proceso, con una capacidad limitada a una pieza por máquina. Se asume que las distancias entre máquinas correlativas son uniformes. Se tiene un solo vehículo y con capacidad para transportar una sola pieza. Las estaciones de carga y descarga son diferentes para el caso de la disposición lineal y coincidentes para el caso de las disposición circular (ver Figura 2).

1.1 Secuencia, etapa y movimiento

Cada movimiento lo denominaremos hi, es decir representa el movimiento i-ésimo de una secuencia, donde i puede tener un valor comprendido entre 0 ≤ i ≤ 2n+1. El conjunto de todos los movimientos de un ciclo, es decir, la secuencia, se denomina H y será un elemento de tipo vector que contendrá los diferentes movimientos hi. Una secuencia está formada entonces por (2n + 2) movimientos:

H= (h0, h1, h2, h3,…, h2n+1))      (1)

hi tendrá un valor entre 0 ≤ i ≤ 2n+1 ya que se ha designado el valor 0 a la primera etapa del proceso productivo. Una etapa incluye en su definición los tiempos de procesamiento de la pieza en la máquina y los tiempos de transporte de ésta a la etapa siguiente. Dado hi= m, donde m es una etapa del ciclo productivo, si m se trata de un número par, la pieza transportada será la del tipo A, mientras que si m es impar la pieza será del tipo B.

En la Figura 3, se muestra un ejemplo de la secuencia, etapas y movimientos para el caso de dos piezas diferentes y tres máquinas por las que pasan ambos tipos de piezas. La secuencia es el conjunto de todos los movimientos. El movimiento h1 se inicia en la etapa 0, es decir el transporte de la pieza tipo A desde la etapa 0 a la 2, y luego el traslado en vacío hasta la etapa 6. El movimiento h2 será 6, es decir el transporte de la pieza tipo A desde la etapa 6 hasta la Salida, y luego el traslado en vacío hasta la etapa 5. El resto de los movimientos sigue el mismo patrón que los dos explicados anteriormente.

1.2 Factibilidad de una Secuencia

Una secuencia de movimientos será factible cuando el orden de los movimientos permita que: (a) haya siempre una pieza esperando a ser transportada en la máquina de origen del movimiento previsto, (b) la máquina destino esté vacía y, por lo tanto, la pieza pueda ser depositada, (c) la observación de la línea permita ver de forma alternada piezas del tipo A y piezas del tipo B.

1.3 Modelo asociado a una secuencia

Como se ha explicado, el objetivo del problema es encontrar los mínimos tiempos del ciclo para realizar los movimientos en las 2n+2 etapas. Con esta finalidad se crea un modelo que responda a este problema, para determinar cuáles secuencias son factibles y escoger la óptima.

Parámetros del Modelo

Los parámetros del modelo son los que corresponden a los tiempos de proceso y los tiempos de viaje del transporte.

Tiempos de proceso: dependen tanto de la máquina donde se fabrica una pieza en un instante determinado, como del tipo de pieza. Sea n el número total de máquinas en el sistema, TA[1,…, n] los tiempos de proceso de las piezas del tipo A en cada máquina del proceso productivo y TB[1,…, n] los tiempos de proceso de las piezas del tipo B en cada máquina.

TA[k] y TB[k] representan los tiempos en que una unidad de pieza A y una de pieza B, respectivamente, necesitan permanecer como mínimo en la máquina k para que sea realizada la operación en ella. Debido a que una pieza no necesariamente tiene que ser procesada en todas y cada una de las máquinas existentes, TA[k] o TB[k] tomarán el valor igual a cero en el caso que las piezas A o las piezas B, respectivamente, no tengan que ser procesadas en la máquina k.

Tiempos de viaje del transportador: dependerán de si está cargado, es decir transportando una pieza del tipo A o B tcargi=f(tcarg), o si se traslada sin carga fi,j=f(tvacío), donde tcarg es el tiempo de transporte con carga entre estaciones consecutivas y tvacio, sin carga. En el caso de que el problema trate una disposición lineal, se supone una distancia equidistante entre las máquinas. Por lo tanto, los tiempos unitarios sin carga entre máquinas consecutivas y los tiempos con carga son proporcionales al número de máquinas que los separan. Además, se supone que el tipo de pieza transportada, en el caso de transporte con carga, no influirá en la velocidad y como consecuencia en los tiempos de viaje del transportador.

Restricciones del Modelo

Restricciones de los tiempos de proceso: Sea el vector M= (m0, m1,…, m2n+1) y mi el instante de inicio de la etapa iésima del ciclo, se observa la restricción temporal siguiente:

mi+2 - mi ≥ TA[i+1] + tcargi   para un i par     (2)

mi+2 - mi ≥ TB[i+1] + tcargi   para un i impar   (3)

Restricciones de los tiempos de viaje del transportador:

Sea la matriz F, donde fi,j=|(i-j)·tvacío| i,j=0,…,2n+1, para los tiempos de traslado en vacío del robot transportador entre las etapas i-ésima y j-ésima. Entonces, se tiene la restricción:

mhi–mhj ≥ tcarghj + fh(j+1),hi donde hj = 0, 1,..., 2n+1    (4)

Restricciones de situación de las piezas y secuencia de movimientos del transportador:

Sean hi y hj dos etapas de una secuencia. Si los movimientos que representan se refieren a dos máquinas consecutivas para un mismo tipo de pieza, se tiene que cumplir:

- Si i < j, en el mismo ciclo la pieza será depositada, tratada y retirada. Esto implica que el transportador depositará la pieza y más adelante la recogerá, en un mismo ciclo.

- Si i > j, la pieza será depositada en un ciclo y será recogida en el ciclo posterior. Para que haga un movimiento del sistema transportador, en un mismo ciclo, primero se retira una pieza depositada en un ciclo anterior, y posteriormente se colocará una pieza diferente del mismo tipo en la máquina.

2. Branch and Bound

Debido a la gran cantidad de secuencias posibles en la resolución de un problema como el tratado, se aplicó un método de resolución que permite alcanzar la solución del problema planteado en este trabajo sin la necesidad de calcular todas las secuencias factibles. Se utilizó la técnica del Branch and Bound que consiste en un árbol de soluciones donde cada rama conduce a una posible solución [6] y [7]. El ahorro de los cálculos que supone esta metodología viene dado por el hecho que el algoritmo detecta cuales ramas pueden o no conducir al óptimo y por lo tanto no es necesario explorar la totalidad de las ramas (ahorrando tiempo y recursos).

Al primer nivel del árbol, donde se encuentra el vértice raíz, le corresponde un sistema con una sola máquina. Posteriormente, se agregan máquinas, y por lo tanto niveles al árbol de resolución hasta llegar al nivel en que el número de máquinas sea igual al total de máquinas del problema que se quiere resolver. Concretamente, el número de niveles de un árbol será igual al número de máquinas del sistema. Para iniciar el procedimiento del Branch and Bound, se calcula el tiempo de ciclo de los movimientos considerados en el vértice raíz y posteriormente se calcula una cota mínima. Esta cota contendrá el tiempo de ciclo parcial si sólo existiese la máquina 1, y además un tiempo mínimo de transporte tanto en vacío como con carga para cada operación de las demás máquinas que hasta el momento no se han introducido en el ciclo parcial del vértice que se está calculando.

Uno de los factores más importantes a la hora de definir un Branch and Bound lo más eficiente posible es encontrar un buen sistema de acotación de los vértices. La acotación, para el problema tratado en este trabajo, tendrá en cuenta los tiempos necesarios para realizar el ciclo de los movimientos considerados del vértice tratado e incompleto (sin todas las máquinas del problema) tcp, los tiempos de transporte necesarios para realizar los movimientos que faltan para obtener un sistema completo, y los tiempos que el transportador está parado (tparado) detenido durante el ciclo actual y que, por lo tanto, pueda ser utilizado para otros movimientos. La expresión general de la cota para una secuencia H:

Cota (H) = tcp (H) + máx [2 máquinas pendientes (H) (tcarg + tvacío) – tparado (H), 0]  (5)

Siendo tcp el tiempo de ciclo parcial. El término referente al máximo entre el posible tiempo suplementario y cero se debe a que si el tiempo que la máquina está parada es mayor que el tiempo pendiente para completar el sistema, el resultado sería negativo. Una vez que todos los vértices descendientes están acotados, y el vértice que se ha usado para crearlos, eliminado, se escoge el vértice con la cota más baja entre los restantes y se vuelve a iniciar el proceso, es decir, se usa una estrategia que consiste en escoger la menor cota. El algoritmo finaliza cuando un vértice que pertenezca al último nivel del árbol (considerando todas las etapas del sistema) tenga solución mínima y los demás vértices del árbol se hayan podado. Esta secuencia será considerada la solución del problema, y su valor asociado el tiempo de ciclo mínimo posible.

A continuación, se muestra la resolución del ejemplo mostrado en la Figura 3. Los tiempos de procesamiento TA[i] y TB[i] en la máquina i con i=1,2,3 de las piezas A y B, y los tiempos de traslado del transportador para el ejemplo son los siguientes: TA= [15, 20, 25]; TB= [20, 35, 10]; tcarg= 20; tvacío= 10. Antes de presentar el árbol que se obtiene al aplicar el procedimiento Branch and Bound, se explica la forma de resolución de un vértice del árbol, para la secuencia 0-6-5-2- 7-4-1-3 (ver Figura 4). Al tratarse de un ciclo el transportador finalizará en la posición inicial.

El árbol completo del ejemplo tratado se muestra en la Figura 5. Cada cuadro representa un vértice, o sea una secuencia factible como una resolución para el problema. En cada recuadro se refleja: (a) en el recuadro más pequeño el número del vértice; (b) centrado y al medio la secuencia parcial; (c) en la parte inferior izquierda la cota; y (d) en la parte inferior derecha los tiempos de la secuencia tratada.

Los números dentro de paréntesis indican el orden en que se exploraron los diferentes vértices. En primer lugar se dispone de una primera solución en el vértice (1), equivalente para todos los problemas tratados, que corresponde al caso de que sólo existe la máquina 1. Este vértice tiene como solución la secuencia 0-2-1-3.

Seguidamente se calculan los descendientes posibles y las cotas correspondientes. Como se puede observar en la Figura 5, hay 4 vértices hijos (vértices 2 a 5) del vértice inicial. De los 4 vértices obtenidos, el que tiene una cota inferior es el número 4 y es por eso que se buscan sus vértices descendientes. Se hallan 8 vértices (vértices 6 a 13), de los cuales tres son soluciones de valor 320 (vértices 7, 12 y 13), aunque aún no pueden podarse los vértices del segundo nivel ya que podrían conducir potencialmente a mejores soluciones.

Secuencialmente se exploran los vértices descendientes de los vértices 3, 2 y 5, obteniendo siempre vértices con tiempos de ciclo superiores a las cotas de los vértices del nivel 2, aunque ya en el vértice 15 explorado se llega al que será el óptimo. Por lo tanto, esta es la solución óptima única del problema tratado (Secuencia: 0-2-1-4-3-6-5-7; con un tiempo ciclo= 305). En casos de dimensión mayor (número de máquinas elevado), la acotación permite evitar que se explore un importante número de vértices del árbol, a diferencia de esta situación en que se han explorado todos los vértices.

3. Metodología

El algoritmo Branch and Bound se codificó en lenguaje Visual Basic 6.0. En la experiencia computacional se utilizó un ordenador microprocesador Intel Pentium 4 3000 GHz, Memoria RAM 1GB. Se probaron 214 ejemplares: 110 con un número de máquinas del sistema de 5 y 104 ejemplares con 6 máquinas. Con tiempos de proceso siguiendo una distribución uniforme [20,80], tiempos de transporte sin carga entre 6 y 10 y tiempos de transporte de las piezas entre 9 y 20 (entre 1,5 y 2 veces los de sin carga). El objetivo de la experiencia computacional fue determinar las mejores distribuciones en planta, mediante las relaciones entre los parámetros del sistema de trabajo que está siendo tratado (línea de producción) en el caso que alguna máquina pase a estar inactiva para alguno de los tipos de pieza. Es decir, comparar el caso de todas las máquinas estando activas con el caso en que alguna esté inactiva para uno de los tipos de pieza. Para determinar estas posibles relaciones, a partir de este juego de pruebas, se analizaron los resultados para buscar las tendencias que las demostrarán.

III. Resultados

La experiencia computacional se realizó con 214 ejemplares. Cada ejemplar se resolvió considerando: (1) disposición lineal de las máquinas; y (2) disposición circular. Además, para cada ejemplar se realizaron corridas donde: (1) todas las máquinas están activas; (2) una de las máquinas está inactiva para una operación de la pieza A; y (3) una de las máquinas está inactiva para una operación de la pieza B. Por ejemplo: para un sistema con 5 máquinas, TA= [25,34,79,48,25]; TB= [75,30,34,26,48]; tcarg=12; tvacío=8; primero se realiza un experimento con todos los datos (todas las máquinas activas). Posteriormente, se realiza un experimento para cada máquina y tipo de pieza inactiva. En la Tabla I se presenta un esquema de los experimentos realizados para las máquinas inactivas. Se puede observar que en el Experimento 1, el valor del tiempo de procesamiento de la pieza A en la máquina 1 es igual a cero. Y así consecutivamente hasta obtener las 10 posibilidades de máquina inactiva.

Dado que se estudiaron dos casos de disposición de las máquinas, lineal y circular, los análisis de los resultados se subdividieron según este criterio. En la Figura 6 se puede observar el ahorro generalizado de los tiempos ciclo para los mismos casos si la disposición de las máquinas es circular comparado con la disposición lineal.

Una vez realizada la experimentación, se buscan propiedades para prever los efectos que se producirán en un sistema en caso de que una máquina pase a estar inactiva para alguna de las piezas. Un motivo por el cual una máquina podría pasar a inactiva sería para mejoras de las propiedades del material, mejoras en otras etapas del proceso, o que una etapa dejara de ser necesaria para obtener la pieza que se quiere.

Los resultados se mostrarán en función de la reducción del tiempo de ciclo absoluto. Este concepto se refiere al tiempo real que se ahorra por el hecho de que una máquina pase a estar inactiva:

Δtcicloabs = tciclo todas las máquinas activas – tciclo una máquina inactiva   (6)

3.1. Disposición Lineal

Máquina inactiva - Reducción del tiempo de ciclo absoluto. Como se observa en la Figura 7, la reducción de tiempo de ciclo es más acusada cuando más extrema es la posición de la máquina, debido a que la media de las distancias en las otras máquinas es más elevada cuanto menos céntrica en la línea sea la máquina.

Tiempo de Proceso de la máquina inactiva - Reducción del tiempo de ciclo absoluto. De acuerdo con los resultados mostrados en la Figura 8, se puede considerar que hay una relación prácticamente contante entre los tiempos de procesamiento de la pieza en la máquina que pasa a estar inactiva, con la reducción de los tiempo ciclo que se observan (a pesar de que la tendencia es ligeramente creciente para valores de tiempos mayores).

3.2 Disposición Circular

Máquina inactiva - Reducción del tiempo de ciclo absoluto. Como se puede observar en la Figura 9, la reducción de los tiempos ciclo es más acusada cuando la posición de la máquina es más extrema. En este caso sin embargo, en contraste con el caso lineal, la diferencia entre que la máquina inactiva sea una u otra no se muestra de una forma tan obvia.

Tiempo de Proceso de la máquina inactiva - Reducción del tiempo de ciclo absoluto. En la Figura 10 se puede observar que la reducción de los tiempos ciclo absoluto con respecto a los tiempos de proceso de la máquina inactiva tienen una tendencia prácticamente constante, similar que en el caso de la distribución lineal.

IV. CONCLUSIONES

En este trabajo se estudió cómo determinar la mejor secuencia de movimientos para un robot transportador o AGV, en un proceso productivo con dos tipos de piezas diferentes, encargado de transportar las piezas de una máquina a otra para ser procesadas. Se encontró que:

1. La disposición circular de las máquinas supone un ahorro de los tiempos por parte del sistema de transporte, en comparación con la disposición lineal (en media, un 20% aproximadamente).

2. En cuanto al estado de inactividad de determinadas máquinas para determinadas piezas, se observan pautas de comportamientos del sistema que deben tomarse en cuenta a la hora de distribuir las máquinas en la fábrica y/o en caso de eliminar determinadas etapas del sistema productivo de fabricación de una pieza, en casos donde por ejemplo se quiera disminuir los costos u optimizar el flujo de los productos.

3. Estos ahorros se producirán desactivando las máquinas más extremas en el proceso productivo de fabricación de la pieza, así como si se desactivan las máquinas con tiempos de proceso menor. Estas dos pautas se pueden combinar con que a mayores tiempos del ciclo total, mayor será el ahorro cuando se desactive una máquina. Es decir, interesará abordar la supresión de operaciones para tipos de piezas donde los tiempos de ciclo sean mayor entre los dos tipos de piezas existentes en el proceso productivo y así obtener un ahorro mayor de los tiempos.

V. REFERENCIAS

1. Tompkins, J., White, J., Bozer, Y., Tanchoco, J. (2006). Planeación de instalaciones. 3ra Edición. Editorial International Thomson. 2006, pp.753.        [ Links ]

2. Mateo, M., Amorós, A. Estudio del Caso 2-Cíclico para el Hoist Scheduling Problem. Documento Interno de Trabajo. Departamento de Organización de Empresas. UPC. España. 2002.        [ Links ]

3. Caballé, C. Determinació de les rutes d’un robot en cicles productius amb màquines actives/inactives. Proyecto fin de carrera. ETSEIB, UPC, España. 2008.        [ Links ]

4. Öncan, T., Altinel, K. Design Of Unidirectional Cyclic Layouts. International Journal of Production Research. Vol. 43, No. 19, October 2005, pp. 3983- 4008.        [ Links ]

5. Öncan, T., Altinel, K. Exact Solution Procedures for the Balanced Unidirectional Cyclic Layout Problem. European Journal Operations Research. Vol. 189, No. 3, 16 September 2008, pp. 609-623.        [ Links ]

6. Brassard, G., Bratley, P. Algorítmica. Concepción y Análisis. Editorial Masson. 1990, pp.384.        [ Links ]

7. Weiss, A. Estructuras de Datos y Algoritmos. Editorial Addison-Wesley Iberoamericana. 1995.        [ Links ]

Creative Commons License Todo el contenido de esta revista, excepto dónde está identificado, está bajo una Licencia Creative Commons