Saltar al contenido principal
LibreTexts Español

12.3: El estudio de caso

  • Page ID
    80968
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \) \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)\(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\) \(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\)\(\newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    Una celda de fabricación flexible consta de tres tipos de máquinas flexibles. Cada tipo de máquina realiza un conjunto diferente de operaciones. La celda debe procesar tres tipos de partes. Cada operación requerida por un tipo de pieza utiliza una herramienta en particular y se puede realizar en cualquiera de los múltiples tipos de máquinas. No todos los tipos de máquinas pueden realizar todas las operaciones en todos los tipos de piezas. Los tiempos de operación varían según el tipo de máquina. Una herramienta se carga en una de las máquinas a la vez y se puede mover entre máquinas según sea necesario.

    La Figura 12-1 muestra el sistema completamente inactivo antes de que se realice una ejecución de producción. Los contenedores de herramientas sujetan las herramientas asignadas actualmente a cada máquina. Se muestra el estado de cada máquina, en términos del tipo de pieza que se procesa. El sistema contiene dos máquinas tipo A, dos máquinas tipo B y una máquina tipo C.

    La producción de 240 partes en un día es de interés. Las piezas llegan en lotes de 24 cada 75 minutos a partir del inicio del día. La mezcla de tipos de piezas en cada lote es la misma: 4 de tipo 1; 10 de tipo 2; y 10 de tipo.

    Figura 12-1: Sistema de Fabricación Flexible

    Screen Shot 2020-05-23 at 7.06.47 AM.png

    La gerencia desea minimizar el makespan para las 240 piezas, así como el inventario en proceso. Recuerde que el nivel de inventario en proceso es proporcional al número de accesorios y tarimas que requiere el FMS. El plazo de entrega de piezas en el FMS es de interés. La utilización de cada máquina es importante.

    El movimiento de piezas y herramientas entre máquinas requiere 30 segundos. El tiempo de configuración de la máquina es mínimo y se puede ignorar.

    El Cuadro 12-1 presenta los datos de tiempo de operación.

    Tabla 12-1: Tiempos de Operación para el Sistema FMS
    Tiempo de Operación (Min)
    Tipo de pieza Partes para producir/Día ID de operación Máquina Tipo A Máquina Tipo B Máquina Tipo C Herramienta
    1 40 1 12 11 10 A
    2 13 15 B
    3 14 14 C
    2 100 1 2 4 A
    2 2 6 6 C
    3 100 1 4 D
    2 5 8 E
    3 4 F

    12.3.1 Definir los problemas y el objetivo de la solución

    Se debe determinar el método para asignar una operación de pieza, así como la herramienta requerida por esa operación a una máquina. Se proponen dos esquemas.

    1. Asigne la operación de la pieza y la herramienta a la máquina IDLE con el tiempo de procesamiento más corto para esa operación en el momento en que la pieza esté lista para comenzar la operación. (Programación Dinámica).
    2. Asigne cada operación de pieza a uno y solo un tipo de máquina utilizando la heurística de carga de máquinas en Askin y Standridge (1993), pp. 144-153.

    Independientemente del esquema utilizado, se minimizará el movimiento de piezas y herramientas entre máquinas. La operación posterior en una pieza se realizará en la misma máquina que la operación actual si se permite la operación posterior en esa máquina y la herramienta requerida ya está cargada en la máquina. Si la misma máquina puede realizar la operación posterior se determinará cuando se complete la operación actual.

    Tenga en cuenta que el primer esquema utiliza cualquier máquina que pueda realizar la operación en una pieza. Selecciona entre máquinas IDLE en función del tiempo de operación, el tiempo más pequeño primero. Se busca evitar la espera parcial y minimizar el tiempo de espera para cada operación.

    El segundo esquema busca equilibrar la carga de trabajo entre las máquinas. Hará que una pieza espere su tipo de máquina asignado incluso si una máquina de otro tipo está INACENTE y podría procesar la pieza.

    El orden de prioridad de las máquinas para cada operación en cada tipo de pieza utilizando el enfoque de programación dinámica con la máquina que tiene el menor tiempo de procesamiento dado prioridad se muestra en la Tabla 12 - 2, que resulta directamente de los datos de la Tabla 12-1.

    Tabla 12-2: Prioridad de la máquina: primer esquema de tiempo de procesamiento más corto
    Tipo de pieza ID de operación Primera Prioridad Segunda Prioridad Tercera Prioridad
    1 1 C B A
    2 A B
    3 B A
    2 1 A B
    2 A C B
    3 1 A
    2 A C
    3 C

    La heurística de carga de máquina del esquema 2 busca igualar la carga de trabajo entre tipos de máquinas. Los resultados de aplicar el algoritmo de optimización para asignar operaciones a tipos de máquinas se dan en la Tabla 12 - 3.

    Tabla 12-3: Prioridad de máquina: esquema de igualación de la carga de trabajo entre tipos
    Tipo de pieza ID de operación Primera Prioridad Segunda Prioridad Tercera Prioridad
    1 1 C
    2 B
    3 B
    2 1 A
    2 A
    3 1 A
    2 A
    3 C

    Obsérvese la diferencia entre los dos esquemas. El tipo de máquina de primera prioridad para cada uno es el mismo, excepto para la operación 2 en la pieza tipo 1. En el primer esquema, una parte pasa a una segunda o tercera máquina de prioridad si la máquina de primera prioridad está ocupada. En el segundo esquema, una parte simplemente espera si la máquina de primera prioridad está ocupada.

    12.3.2 Construir modelos

    El modelo incluye llegadas de lotes de piezas así como la descomposición de los lotes en partes individuales. Así, las entidades que llegan representan lotes de piezas y las entidades subsiguientes representan partes. Las entidades de artículo tienen los siguientes atributos:

    ArrivalTime = Hora de llegada al FMS
    Tipo de pieza = Tipo de pieza
    Máquina = Máquina utilizada en la operación actual
    Herramienta = Herramienta utilizada en la operación actual
    OpTime = Tiempo de operación para la operación actual = f (máquina utilizada)
    CurrentOp = Número de identificación de la operación actual (1, 2, 3)

    El modelo de una operación en una pieza requiere de dos recursos, uno que representa una máquina y el otro una herramienta. El movimiento entre máquinas debe incluirse en el modelo tanto para piezas como para herramientas. Se incluye un procedimiento para seleccionar la máquina para realizar una operación en una pieza, así como un segundo procedimiento para determinar si la máquina en la que reside actualmente una pieza puede realizar la siguiente operación.

    Cada recurso de herramienta tiene un atributo: toolLocation = La máquina en la que reside actualmente.

    Sigue el pseudo código para el proceso de llegada. Un lote de 24 partes llega cada 75 minutos. Diez lotes llegan en total. Cada lote se separa en partes componentes: 4 de tipo 1, 10 de tipo 2 y 10 de tipo 3. Cada parte se envía a un proceso que modela la primera operación que se realiza en ella.


    Definir Llegadas:
    \(\ \quad \quad\) Lotes
    \(\ \quad \quad\quad\) Hora de la primera llegada:
    \(\ \quad \quad\quad\) Tiempo entre llegadas:
    \(\ \quad \quad\quad\) Número de llegadas:


    0
    75 minutos
    10
    Definir Recursos:
    \(\ \quad \quad\)//Recursos de Máquinas Flexibles
    \(\ \quad \quad\) Macha_1/1
    \(\ \quad \quad\) Macha_2/1
    \(\ \quad \quad\) MachB_1/1
    \(\ \quad \quad\) MachB_2/1
    \(\ \quad \quad\)MACHC_1/1

    //Herramienta de recursos de
    \(\ \quad \quad\) herramienta/1
    \(\ \quad \quad\) herramienta/1
    \(\ \quad \quad\) herramienta/1
    \(\ \quad \quad\) herramienta/1
    \(\ \quad \quad\)Herramienta/1
    \(\ \quad \quad\) Herramienta/1


    con estados (Ocupado, Inactiva)
    con estados (Ocupado, Inactiva)
    con estados (Ocupado, Inactiva)
    con estados (Ocupado, Inactiva)
    con estados (Ocupado, Inactiva)


    con estados (Ocupado, Inactiva)
    con estados (Ocupado, Inactiva)
    con estados (Ocupado, Inactiva)
    con estados (Ocupado, Inactiva)
    con estados (Ocupado, Inactiva)
    con estados (Ocupado, Inactiva)
    Definir StateVariables:
    \(\ \quad \quad\) WipCount
    \(\ \quad \quad\) ToolLocation (5)

    //Número de piezas en FMS
    //Ubicación de la herramienta
    Definir listas:
    \(\ \quad \quad\) OponeList OptwoList
    \(\ \quad \quad\) OpThreeList
    Definir Atributos de Entidad:
    \(\ \quad \quad\) ArrivalTime
    \(\ \quad \quad\) PartType
    \(\ \quad \quad\) Máquina
    \(\ \quad \quad\) Herramienta
    \(\ \quad \quad\) OpTime
    \(\ \quad \quad\) CurrentOp

    //Hora de llegada al FMS
    //Tipo de pieza
    //Máquina utilizada en la operación actual
    //Herramienta utilizada en la operación actual
    //Tiempo de operación para la operación actual = f (máquina usada)
    //Número de identificación de la operación actual (1, 2, 3)
    Proceso BatcharRival
    Begin
    \(\ \quad \quad\) ArrivalTime = Reloj
    \(\ \quad \quad\) CurrentOp = 1
    \(\ \quad \quad\) PartType = 1
    \(\ \quad \quad\) Clone 4 OpFirst
    \(\ \quad \quad\) PartType = 2
    \(\ \quad \quad\) Clon 10 OpFirst
    \(\ \quad \quad\) PartType = 3
    \(\ \quad \quad\) Clone 10 OpFirst
    End


    //llegada de un lote de 24 partes

    //tipo 1 partes

    //tipo 2 partes

    //tipo 3 partes


    Cada parte requiere de dos o tres operaciones. Los procesos para cada una de las operaciones son similares pero no idénticos. Cada uno incluye dos pasos esenciales: el transporte de la pieza y la herramienta a la máquina, si es necesario, seguido de la operación real de la pieza. Se requieren dos recursos, una máquina y una herramienta. Qué máquina está determinada por el esquema de asignación de máquina empleado.

    Al inicio del modelo de la primera operación, se utiliza el procedimiento de selección de máquina para determinar si la herramienta requerida está disponible. Si es así, el procedimiento determina si hay alguna máquina disponible para procesar la pieza y en caso afirmativo cuál debe emplearse. El procedimiento de selección de la máquina es el siguiente:

    PROCEDIMIENTO DE SELECCIÓN DE MÁQUINA (NÚMERO DE OPERACIÓN, TIPO DE PARTE)
    {
    \(\ \quad \quad\)SI EL RECURSO DE HERRAMIENTA
    \(\ \quad \quad\) REQUERIDO PARA EL TIPO DE PIEZA
    \(\ \quad \quad\quad\) PARA
    \(\ \quad \quad\) EL NÚMERO DE OPERACIÓN ESTÁ EN
    \(\ \quad \quad\quad\){
    \(\ \quad \quad\quad\quad\)SI CUALQUIER MÁQUINA DE ESE TIPO ESTÁ EN EL ESTADO
    \(\ \quad \quad\quad\quad\quad\) INACENTE
    \(\ \quad \quad\quad\quad\) {Máquina = ID DE RECURSO DE
    \(\ \quad \quad\quad\quad\quad\) LA MÁQUINA HERRAMIENTA
    \(\ \quad \quad\quad\quad\quad\) SELECCIONADA = = TIEMPO DE OPERACIÓN PARA PARTE PARA EL RETORNO DE OPERACIÓN
    \(\ \quad \quad\quad\quad\quad\)
    \(\ \quad \quad\quad\quad\)
    \(\ \quad \quad\quad\)}}
    \(\ \quad \quad\)}
    }

    Si la herramienta requerida no está libre o no hay máquina disponible para realizar la operación, la entidad de pieza debe esperar en un búfer. Hay un búfer en el modelo para cada una de las tres operaciones. Cuando una herramienta o recurso de máquina se vuelve libre, el modelo buscará en cada búfer para encontrar una pieza para procesar.

    Si la herramienta requerida y una máquina están disponibles para procesar la pieza, la herramienta y los recursos de la máquina ingresan al estado ocupado. A los atributos de entidad de pieza se les asigna el nombre de la herramienta y la máquina, así como el tiempo de proceso para la operación en la máquina seleccionada. Se incurre en un retraso de tiempo para mover la herramienta y/o pieza a la máquina seleccionada. Al atributo tool que registra su ubicación (toolLocation) se le asigna el nombre de la máquina seleccionada. La operación se realiza en la parte. Cuando se completa la operación, el recurso de herramienta entra en el estado IDLE. Se buscan las listas de entidades de parte que esperan las operaciones 1, 2 o 3 y se inicia la tramitación de otra parte si es posible.

    Sigue el pseudo código que modela la primera operación.


    Proceso OpFirst
    Iniciar
    WipCount ++
    MachineSelection (CurrentOp, PartType)
    Si Machine es Null, entonces Agregar entidad a la lista Op1List
    Else
    Comenzar
    //Realizar la primera operación
    Obtener herramienta
    Obtener
    máquina-herramientaUbicación (Herramienta) =
    Espera de máquina 30 segundos
    Espere a OpTime
    Free Tool
    SearchForNextPart
    End
    Enviar a OpSecond
    End


    //Agregar una a la cantidad de piezas en FMS








    //Movimiento de herramienta y pieza
    //Realizar operación

    //Procedimiento para buscar en todas las listas la siguiente pieza a utilizar la herramienta



    El modelo de la segunda operación comienza determinando si la pieza puede permanecer en la misma máquina utilizando el procedimiento de máquina posterior. Este será el caso si la máquina es capaz de realizar la operación y la herramienta requerida para esa operación está disponible.

    Si la pieza no puede permanecer en la máquina utilizada para la primera operación, el recurso que modela esta máquina entra en el estado inactivo. Se buscan las listas de entidades de parte que esperan las operaciones 1, 2 o 3 y se inicia la tramitación de otra parte si es posible. El procedimiento de selección de máquina se utiliza para intentar encontrar una máquina para procesar la entidad de pieza completando la primera operación de la misma manera que se hizo para la primera operación.

    Si la segunda operación se puede realizar en la misma máquina que la primera, el recurso de herramienta para esta operación entra en el estado ocupado, la operación se realiza y el recurso de herramienta entra en el estado inactivo. Se buscan las listas de entidades de parte que esperan las operaciones 1, 2 o 3 y se inicia la tramitación de otra parte si es posible. Las piezas tipo 2 no requieren una tercera operación. De esta manera, al final de la segunda operación, el recurso de máquina que procesa una parte tipo 2 ingresa al estado inactivo y se realiza la búsqueda de las listas de partes en espera. Sigue el pseudo código para la segunda operación. El modelo de la tercera operación es similar al modelo de la segunda operación.

    PROCEDIMIENTO DE LA MÁQUINA POSTERIOR (OPERATION_NUMBER, PART_TYPE, CURRENT_MACHINE)
    {
    \(\ \quad \quad\)SI EL RECURSO DE HERRAMIENTA REQUERIDO PARA
    \(\ \quad \quad\) EL
    \(\ \quad \quad\quad\) NÚMERO DE OPERACIÓN
    \(\ \quad \quad\) PARA OPERATION_NUMBER EN
    \(\ \quad \quad\quad\) PART_TYPE SE CARGA EN CURRENT_MACHINE Y CURRENT_MACHINE
    \(\ \quad \quad\quad\) PUEDE REALIZAR OPERATION_NUMBER
    \(\ \quad \quad\quad\quad\) EN ESTE TIPO DE PIEZA
    \(\ \quad \quad\quad\) {EL RECURSO
    \(\ \quad \quad\quad\quad\)Herramienta = ID DE RECURSO NÚMERO DE HERRAMIENTA REQUERIDA
    \(\ \quad \quad\quad\quad\) OPTime = TIEMPO DE OPERACIÓN PARA
    \(\ \quad \quad\quad\)
    \(\ \quad \quad\) PART_TYPE
    FOR


    Proceso OpSecond
    Comenzar
    \(\ \quad\) CurrentOp = 2
    \(\ \quad\) SubsecuentMachine (CurrentOp, PartType, Machine)
    \(\ \quad\) Si la herramienta es Null, entonces
    \(\ \quad\) Comenzar
    \(\ \quad\quad\)//Mover a otra máquina
    \(\ \quad\quad\) Free Machine
    \(\ \quad\quad\) SearchFornextPart
    \(\ \quad\quad\) MachineSelection (CurrentOp, PartType)
    \(\ \quad\quad\) Si Machine es Null then Add entity to list Op 2Listar
    \(\ \quad\quad\) Else
    \(\ \quad\quad\quad\) Comenzar
    \(\ \quad\quad\quad\quad\)//Realizar segunda operación en otra máquina
    \(\ \quad\quad\quad\quad\) Obtener Herramienta
    \(\ \quad\quad\quad\quad\) Obtener Máquina
    \(\ \quad\quad\quad\quad\)ToolLocation (Tool) = Machine
    \(\ \quad\quad\quad\quad\) Wait for 30 seconds
    \(\ \quad\quad\quad\quad\) Espere a OpTime
    \(\ \quad\quad\quad\quad\) Free Tool
    \(\ \quad\quad\quad\quad\) SearchForNextPart
    \(\ \quad\quad\quad\) End
    \(\ \quad\quad\)Fin
    \(\ \quad\quad\) Else
    \(\ \quad\quad\quad\) Comienzo
    \(\ \quad\quad\quad\quad\)//Realizar la segunda operación en la máquina actual
    \(\ \quad\quad\quad\quad\) Obtener herramienta
    \(\ \quad\quad\quad\quad\) Espere a OpTime
    \(\ \quad\quad\quad\quad\) Free Tool
    \(\ \quad\quad\quad\quad\) SearchForNextPart
    \(\ \quad\quad\quad\) End
    \(\ \quad\quad\) Enviar a OpThird
    End








    //Procedimiento para buscar en todas las listas la siguiente máquina para usar la herramienta
    //Buscar otra máquina







    //Movimiento de herramientas y piezas
    //Realizar operación

    //Procedimiento para buscar en todas las listas la siguiente pieza a utilizar la herramienta






    //Realizar operación

    //Procedimiento para buscar en todas las listas la siguiente pieza a utilizar la herramienta



    12.3.3 Identificar causas fundamentales y evaluar alternativas iniciales

    El experimento de simulación determinará tanto el makespan para 240 piezas como el número de tarimas y accesorios requeridos. Esto último se puede lograr midiendo el número de piezas en el FMS como se discutió anteriormente.

    El diseño del experimento de simulación se resume en la Tabla 12-4. Nos interesa el tiempo para producir 240 piezas. Por lo tanto, es apropiado un experimento de terminación con condiciones iniciales de ausencia de piezas en el sistema. Dado que no se modelan cantidades usando distribuciones de probabilidad, no se necesitan flujos de números aleatorios y una réplica es suficiente. Los dos esquemas para asignar piezas a las máquinas identificadas anteriormente deben ser simulados. Las medidas de desempeño tienen que ver con el tiempo para completar la producción en 240 piezas, el tiempo de entrega de las piezas, el número de piezas en el FMS (WIP) y la utilización de las máquinas.

    Los resultados se muestran en la Tabla 12 - 5.

    Tabla 12-4: Diseño de experimento de simulación para carga de máquinas FMS
    Elemento del experimento Valores para este experimento
    Tipo de experimento Terminando
    Parámetros del modelo y sus valores Esquema de carga de la máquina utilizada:
    1. Máquina disponible con el menor tiempo de procesamiento
    2. Heurística de carga de máquinas de Askin y Standridge
    Medidas de desempeño 1. Tiempo para producir 240 partes
    2. Número de piezas en el FMS (WIP) 3. Plazo de entrega parcial
    4. Utilización de la máquina
    Flujos de números aleatorios Ninguno
    Condiciones Iniciales Búferes vacíos y estaciones inactivas
    Número de réplicas 1
    Tiempo de finalización de simulación Tiempo para producir 240 piezas
    Tabla 12-5: Resultados de simulación para carga de máquinas FMS
    Esquema de carga
    Medida de desempeño Tiempo de procesamiento más corto primero Equilibrar cargas de trabajo tipo máquina
    Makespan (Minutos) 1099 900
    WIP-
    \(\ \quad\quad\) Promedio
    \(\ \quad\quad\) Máximo

    30.8
    63

    46.2
    86
    Tiempo de entrega (minutos) - Desviación
    \(\ \quad\quad\) estándar
    \(\ \quad\quad\) promedio

    141
    114

    173
    74
    Utilización de Máquina-
    \(\ \quad\quad\) Tipo A
    \(\ \quad\quad\) Tipo B
    \(\ \quad\quad\) Tipo C

    69.5%
    72.5%
    70.0%

    82.8%
    67.5%
    96.0%

    El makespan para el enfoque de cargas de trabajo tipo máquina de equilibrio es 199 minutos menos que para el primer enfoque de tiempo de procesamiento más corto. El primer enfoque da como resultado mayores utilizaciones para los tipos de máquinas A y C, así como una menor utilización para la máquina tipo B. Recordemos que las operaciones se asignaron a los tipos de máquinas A y C en lugar de máquinas tipo B ya que los tiempos de operación para la máquina tipo B con mayor frecuencia fueron mayores que para los otros dos tipos.

    Recordemos de la ecuación VUT que aumentar la utilzación da como resultado un tiempo de entrega más largo en una estación. Por lo tanto, podría esperarse que el enfoque de cargas de trabajo tipo máquina de equilibrio tenga un tiempo de entrega más largo que el primer enfoque de tiempo de procesamiento más corto. Además, Ley de Little indica que el WIP es proporcional al tiempo de entrega y por lo tanto también podría ser mayor. Sin embargo, el esquema de cargas de trabajo tipo máquina de equilibrio reduce la desviación estándar del tiempo de entrega.

    El número máximo de piezas en el FMS es mayor bajo el enfoque de cargas de trabajo tipo máquina de equilibrio. Esto significa que se requieren más accesorios y tarimas utilizando este enfoque.

    12.3.4 Revisar y extender trabajos previos

    La gerencia aceptó los resultados de simulación presentados en la sección anterior y decidió utilizar el esquema de cargas de trabajo tipo máquina de equilibrio. Esta decisión se basó principalmente en la necesidad de mimizar makespan. El costo de accesorios adicionales y tarimas será bourn para apoyar este enfoque.

    12.3.5 Implementar la Solución Seleccionada y Evaluar

    Durante la operación del sistema, se monitoreará el tiempo para producir un lote requerido de piezas y el número de piezas en el FMS.


    This page titled 12.3: El estudio de caso is shared under a CC BY-NC-SA license and was authored, remixed, and/or curated by Charles R. Standridge.