scieee AI-readable full text Open interactive document viewer

Modelado y simulación de células de fabricación reconfigurables

Delgado Carpintero, Humberto

Abstract

El presente trabajo fin de grado se centra en el desarrollo de modelos de programación lineal para la agrupación de células y la carga de un sistema de fabricación reconfigurable. En la primera parte del mismo se plantearán y resolverán dos modelos matemáticos sobre un sistema teórico con la ayuda de la herramienta LINGO en su versión 9. El primer modelo dará solución al problema de formación de células, minimizando las máquinas ociosas, y el segundo modelo dará solución al problema de carga de las mismas, con el objetivo de minimizar costes, consumo de mano de obra y consumo de energía, y conseguir cierto equilibrio entre máquinas, células y periodos de planificación. Posteriormente se diseñará y ejecutará una simulación con el software ARENA 7.0, donde se evaluarán diferentes escenarios. El fin de dicha simulación será la de completar y validar los resultados obtenidos del problema matemático. Los datos se recopilan del artículo “Cell design and multi-period machine loading in cellular reconfigurable manufacturing systems with alternative routing” (Eguía et al. 2017)

Full text

Equation Chapter 1 Section 1 Trabajo Fin de Grado Grado en Ingeniería de Organización Industrial Modelado y simulación de células de fabricación reconfigurables Autor: Humberto Delgado Carpintero Tutor: Ignacio Eguía Salinas Dep. Organización Industrial y Gestión de Empresas I Escuela Técnica Superior de Ingeniería Universidad de Sevilla Sevilla, 2017 2 Trabajo Fin de Grado Grado en Ingeniería de Organización Industrial Modelado y simulación de células de fabricación reconfigurables Autor: Humberto Delgado Carpintero Tutor: Ignacio Eguía Salinas Profesor titular Dep. de Organización Industrial y Gestión de Empresas I Escuela Técnica Superior de Ingeniería Universidad de Sevilla Sevilla, 2017 4 Trabajo Fin de Grado: Modelado y simulación de células de fabricación reconfigurables Autor: Humberto Delgado Carpintero Tutor: Ignacio Eguía Salinas El tribunal nombrado para juzgar el Proyecto arriba indicado, compuesto por los siguientes miembros: Presidente: Vocales: Secretario: Acuerdan otorgarle la calificación de: Sevilla, 2017 6 AGRADECIMIENTOS En agradecimiento a mis compañeros y profesores. Sobre todas las cosas, gracias a mis padres, por dedicarse a mi educación y brindarme un futuro a base de su esfuerzo. Y en especial a Paula, quien ha sido mi apoyo en todo momento. Humberto Delgado Carpinero Sevilla, 2017 8 RESUMEN El presente trabajo fin de grado se centra en el desarrollo de modelos de programación lineal para la agrupación de células y la carga de un sistema de fabricación reconfigurable. En la primera parte del mismo se plantearán y resolverán dos modelos matemáticos sobre un sistema teórico con la ayuda de la herramienta LINGO en su versión 9. El primer modelo dará solución al problema de formación de células, minimizando las máquinas ociosas, y el segundo modelo dará solución al problema de carga de las mismas, con el objetivo de minimizar costes, consumo de mano de obra y consumo de energía, y conseguir cierto equilibrio entre máquinas, células y periodos de planificación. Posteriormente se diseñará y ejecutará una simulación con el software ARENA 7.0, donde se evaluarán diferentes escenarios. El fin de dicha simulación será la de completar y validar los resultados obtenidos del problema matemático. Los datos se recopilan del artículo “Cell design and multi-period machine loading in cellular reconfigurable manufacturing systems with alternative routing” (Eguía et al. 2017). 16 1 INTRODUCCIÓN 1.1. INTRODUCCIÓN En el presente Trabajo Fin de Grado se va a resolver un problema en el entorno de un sistema de producción emergente, como es el Sistema de Fabricación Reconfigurable. Por ello, se realizará una breve introducción, que servirá para asentar una base y aclarar una serie de conceptos claves con los que se trabajará en el resto de la memoria. ¿Qué es Reconfigurabilidad? A grandes rasgos, podemos definir Reconfigurabilidad como la capacidad de cambiar repetidamente y reorganizar los componentes de un sistema de manera efectiva. El concepto surge, en principio, en el ámbito de la informática y la robótica. En 1960, Gerald Estrin, informático de la Universidad de California en Los Ángeles, propuso la idea de “Estructura computacional fija, más estructura variable”. Consta de un procesador estándar, aumentado por una matriz de hardware reconfigurable, la que se controla mediante un procesador principal. (G. Estrin, 1960) El hardware reconfigurable se configura para realizar una tarea definida, una vez la tarea se realiza el hardware es reconfigurado para realizar una tarea diferente (G. Estrin, 2002). La computación reconfigurable se define como una capacidad de configurar repetidamente una máquina para realizar diferentes tipos de funciones (D. Bhatia, 1997). Esta idea se traslada a los sistemas de producción estándar. Estos sistemas se componían comúnmente de líneas de producción a las que se les incorporó cierta reconfigurabilidad. Surgieron estudios donde se propuso aumentar la capacidad de producción en estos sistemas mediante la replicación y la modularización (M. Chow, 1990; Heilala & P. Voho 2001). La replicación, conocida también como integración vertical o línea enfocada, significa aumentar la capacidad agregando una nueva línea, normalmente de menor tamaño, dedicada a la producción de un producto similar. La modularización, también nombrada integración horizontal o agrupación de estaciones de trabajo, implica agregar una estación de trabajo paralela o la introducción de componentes automatizados para ciertas operaciones. Normalmente, varios de los productos se ensamblan en la misma línea. Se sugiere que las líneas de producción reconfigurables se formen de sistemas semiautomáticos modulares compuestos de estaciones de trabajo robóticas y estaciones de trabajo de manejo automático de materiales. La reconfiguración de estos dispositivos generalmente requiere dos pasos: reorganizar algunos de sus componentes y luego reprogramarlos. El concepto de robots reconfigurables se origina en la investigación sobre robótica modular. Los robots reconfigurables son aquellos que podrían ser montados de diferentes maneras para producir un robot específico para una tarea determinada. Las nuevas configuraciones se construyen usando un conjunto de módulos con funciones específicas. Sistemas experimentales de este tipo han sido diseñados para la exploración planetaria, debido a que los robots reconfigurables son muy adecuados para realizar tareas en el espacio debido a su habilidad para seleccionar diferentes herramientas, optimizar el espacio ocupado de las mismas y tener alto nivel de redundancia (M. Yim et al., 2003). Los robots autoreconfigurables tienen la habilidad de cambiar su funcionalidad sin ayuda externa. Sus módulos por separado no tienen una función específica, aunque, cuando son configurados, forman un sistema multitarea. 1.1.1 EVOLUCIÓN DEL PARADIGMA DE LOS SISTEMAS DE PRODUCCIÓN La globalización, y por ende, la evolución de la sociedad, ha sido el motor de cambio para los sistemas productivos ideados a principios del siglo XX, los cuales, desde que Henry Ford introdujo la cadena de montaje para sus automóviles en 1913 han perdurado con cambios tecnológicos poco significativos (Cuatrecasas, 2000). Esta evolución ha supuesto el ingreso paulatino de nuevos enfoques para los sistemas productivos, desde un enfoque tradicional basado en producir grandes volúmenes de productos a mínimo coste (economía de escala), pasando por una producción ajustada (lean manufacturing), que optimiza los recursos utilizados y busca un producto final con una alta calidad, hasta llegar a una serie de sistemas, los cuales pueden dar una flexibilidad tal que nos permita ajustarnos a las exigencias del mercado actual. Es así como llegamos a los tres pilares en los que se basa la fabricación actual: • Bajo Coste • Calidad • Rápida Adaptación. Dependiendo de a qué pilar le demos más prioridad, nuestro sistema de producción tendrá unas propiedades u otras. Los Sistemas de Fabricación Dedicada (SFD) tienen como objetivo producir a bajo coste sin que la calidad se vea afectada. Suelen conocerse como líneas dedicadas. Estas líneas son rígidas, es decir, no nos permiten reaccionar a cambios en el mercado, ya sean debidos a cambios en la cantidad demandada o debido al fin del ciclo de vida de nuestro producto. Para afrontar este problema surgen los Sistemas de Fabricación Flexibles (SFF). Está formado por células altamente automatizadas, que consisten en un grupo de estaciones de procesamiento, máquinas CNC (control numérico), interconectadas por un sistema de transporte y almacenamiento controlado mediante computadora. Este sistema de fabricación cuenta con un hardware y software fijos pero programables para atender los cambios en las secuencias, órdenes de trabajo, etc. Su objetivo es la fabricación de pequeñas cantidades de diferentes tipos de piezas de forma económica, dichas cantidades pueden cambiar con un pequeño coste asociado, pero en el mismo sistema. Comparando los sistemas SFF con los SFD, el número de piezas producidas en el primero es menor que en el 18 segundo, es decir, su capacidad productiva es menor, requiriendo los SFF una inversión inicial más cuantiosa, principal motivo de rechazo a estos sistemas formados por máquinas CNC. Estas máquinas no están destinadas a fabricar de una sola forma un único tipo de pieza. Figura 1-1. Relación Volumen-Variedad del producto. De una forma que podamos aprovechar los puntos fuertes de cada sistema de fabricación, surge uno híbrido, denominado Sistema de Fabricación Reconfigurable (SFR). “Es un sistema de producción diseñado desde el comienzo para soportar cambios rápidos en su estructura, así como en sus componentes de hardware y software para ajustar su capacidad productiva y funcionalidad de forma rápida dentro de una familia de piezas como respuesta a los repentinos cambios del mercado o imposiciones del regulador” (Koren, 1999). 1.1.2 MÁQUINAS DE CONTROL NUMÉRICO COMPUTERIZADO (CNC) Las máquinas de control numérico están presentes en gran parte de los procesos productivos actuales. La principal característica de estas es que operan bajo una serie de comandos pre-programados a diferencia de la clásica manipulación directa. La máquina se compone de una serie de módulos, que operarán de acuerdo con el programa integrado en la computadora que la controle. Además, la computadora monitoriza en todo momento los movimientos realizados por los módulos que la componen. Esto nos facilita la realización de procesos de gran precisión y/o de gran número de repeticiones. Dicho control, se realiza a partir de un sistema de coordenadas, a través de una serie de ejes rotatorios que hacen girar y/o transporta la pieza a procesar. Figura 1-2. Máquina CNC con eje de movimiento (Groover, 2007). De este modo, las máquinas CNC nos aportan gran flexibilidad a nuestro sistema, ya que el software que gobierna el proceso puede ser fácilmente reprogramado, sin necesidad de invertir demasiado tiempo o sin incurrir en grandes costes. Algunos beneficios que aportan estas máquinas a la producción son: ▪ Minimiza tiempo ocioso ▪ Tiempos de procesamiento más cortos ▪ Reparaciones más sencillas ▪ Mayor flexibilidad ▪ Mayor exactitud ▪ Reducción del error huma 1.2. SISTEMAS DE FABRICACIÓN RECONFIGURABLE El núcleo del nuevo paradigma que configura la incursión de este nuevo sistema de producción es un enfoque basado en el diseño e integración de máquinas modulares reconfigurables de arquitectura reconfigurable. El SFR se caracteriza por los siguientes aspectos clave (Koren et al. 1999; Mehrabi et al. 2002): • Modularidad: nos referimos a este término para hablar del uso de herramientas o módulos comunes para crear variantes de un producto. • Integrabilidad: la base del sistema tiene que ver con cómo está relacionado cada módulo entre sí y cómo reaccionan al cambio, introducción o eliminación de algún elemento. • Personalización: capacidad de adaptar la flexibilidad de las nuevas máquinas para responder a los cambios en la demanda. • Convertibilidad: capacidad de modificar la función del conjunto, y así, poder adaptarse a la demanda 20 de un nuevo producto. • Diagnosticabilidad: capacidad de identificar rápidamente las fuentes de problemas de calidad y fiabilidad que ocurren en sistemas grandes. • Escalabilidad: capacidad de cambiar eficientemente el rendimiento de la producción de la máquina alterando o aumentando sus componentes, es decir, cómo se escalable es nuestro sistema en función del volumen de producto a fabricar. Haremos un especial hincapié en la escalabilidad de estos sistemas, siendo según varios autores, uno de los aspectos más importantes en los RMS. Como se ha intentado reflejar en la introducción, por lo general, los sistemas de fabricación “clásicos” están diseñados con una capacidad determinada para cumplir con una demanda pronosticada (Tang et al, 2004). Los diseñadores de estos sistemas de fabricación se enfrentan a un dilema sobre la capacidad. Si el nuevo sistema está diseñado para producir menos de lo que el mercado demandará en el futuro, se producirá una tremenda pérdida financiera. Y si el nuevo sistema de fabricación está diseñado para producir más de lo que el mercado actual demandará en el futuro, el sistema quedará parcialmente inactivo, lo que significa una pérdida considerable en la inversión de capital debido a la instalación y/o mantenimiento de máquinas que no están operando (DeGarmo et al, 1998). La escalabilidad, característica mencionada de los RMS, es la solución a este dilema, ya que permite la opción de mejorar el rendimiento de produción de forma rentable y oportuna (Koren et al., 1998). La opción de añadir capacidad de forma puntual al sistema permite una expansión rentable de la capacidad total del mismo, lo que permite producir más productos sin aumentar su coste. Los principales componentes de los sistemas reconfigurables son: las máquinas CNC, los controladores reconfigurables y un nuevo tipo de máquina modular con estructura intercambiable que permite añadir/retirar los elementos que la componen (módulos/herramientas), llamada máquina reconfigurable. Dependiendo de las necesidades del fabricante, estas máquinas pueden ser ajustadas en capacidad, por ejemplo, añadiendo un mayor número de ejes, o en funcionalidad, cambiando en este caso el tipo de herramienta utilizada por la máquina. Para recapitular las ideas planteadas; este sistema permite al fabricante modificar su producción para hacer frente a la demanda dependiendo de las exigencias del mercado de forma casi inmediata, empleando la capacidad productiva necesaria. En la siguiente tabla, podemos ver una comparación entre los tres sistemas citados: Tabla 1-1. Comparación de los Sistemas de Fabricación. A continuación, podemos ver una serie de estudios sobre el hardware dentro de los sistemas reconfigurables: • Sistemas de mecanizado reconfigurables: Las máquinas-herramientas modulares han estado en el mercado durante una década. Las normas internacionales se habían establecido para estandarizar el diseño y la fabricación de unidades modulares en los años setenta. Las máquinas-herramientas modulares se utilizan comunmente para aumentar las variantes de los productos fabricados por parte de los productores de este sector, los usuarios finales suelen adquirir máquinas-herramientas con una configuración específica y estas máquinas raramente se reconfiguran después de las entregas. Las Máquinas Cinemáticas Paralelas (PKMs) son otro tipo de máquinas-herramientas reconfigurables (Cooke et al., 1995, Bostelman et al., 2000, Katz et al 2002, Fassi y Wiens 2000). Desafortunadamente, las teorías y metodologías para el desarrollo de PKM comerciales no han sido bien establecidas. La mayoría de los PKM disponibles son máquinas costosas que proporcionan menos precisión que las máquinas convencionales (Katz et al., 2002, Koren 1999). • Sistemas de fijación reconfigurables: La investigación sobre sistemas de fijación reconfigurables se remonta a finales de la década de 1960. Un montaje modular está compuesto de varios módulos básicos, incluyendo localizadores, pinzas y conectores. Algunos sistemas de fijación reconfigurables se han aplicado en robots industriales, ya que los robots industriales son flexibles para ser programados para diferentes tareas (Shirinzadeh 1993, Benhabib et al., 1991). Otros sistemas de fijación reconfigurables son integrales e implementados por materiales especiales o componentes ajustables (Haas et al., 2002, Valjavec y Hardt 1999). Se ha proporcionado una revisión crítica sobre el desarrollo de sistemas de fijación reconfigurables (Bi y Zhang 2001). • Sistemas de montajes reconfigurables: Los sistemas de ensamblaje reconfigurables son habitualmente robotizados (Giusti et al., 1994, Arai et al., 2001, Heilala y Voho 2001, Sugi et al., 2001). El número y los tipos de los equipos de montaje se pueden cambiar para satisfacer los requisitos de los productos. La reconfigurabilidad del sistema puede mejorarse si se ha modularizado el sistema robótico. De hecho, el diseño de robots modulares es uno de los principales hilos de investigación en la comunidad 22 robótica (Hooper y Tesar 1994, Chen 1994, Pritschow y Wurst 1996, Unsal et al., 1999). La elevación del sistema y la diagnosticabilidad son otras cuestiones de diseño. Arai et al. (2002) utilizaron algunos robots para calibrar automáticamente un sistema de ensamblaje reconfigurable. Mehrabi y Kannatey- Asibu (2001) diseñaron un sistema de monitoreo de varios sensores para aumentar la diagnosticabilidad del sistema. • Sistemas de manipulación de materiales reconfigurables: Fukuda y Takagawa (2000) diseñaron un sistema de transferencia flexible para un gran número de variantes del producto. Los componentes principales del sistema son robots autónomos. Ho et al. (1997) desarrolló un sistema de transporte reconfigurable que permite cambiar el volumen del producto en tiempo real. Automation Tooling System (ATS) en Canadá es el desarrollador de un transportador programable. • Sistemas reconfigurables de nivel superior: Los sistemas antes mencionados están todos a nivel de máquina o nivel de célula. Algunos sistemas están a nivel de taller o de sistema. Por ejemplo, el RMS desarrollado por Chen et al. (2001) utiliza varios robots modulares para el montaje del sistema. El diseño de la arquitectura impone una serie de restricciones al sistema. La complejidad del diseño depende del nivel del sistema y de los requerimientos de cambios e incertidumbres (Suh, 1990). Se han publicado numerosos artículos sobre el diseño arquitectónico de los sistemas de fabricación y se han proporcionado algunas revisiones exhaustivas sobre la fabricación modular (Tsukune et al., 1993, Rogers y Bottaci 1997, Benjaafar et al., 2002). La mayoría de los investigadores emplearon algunos enfoques intuitivos, tales como estudios de mercado y discusión (Koren et al., 1999, Kaula 1998, Mehrabi y otros, 2000a, b, Mehrabi et al., 2002, Asl et al., 2000, Lee 1997, Zhao et al., 2000), clasificación (Ueda et al., 2001, Erixon et al., 1998), y entrevistas (Chick et al., 2000). Los sistemas en cuestión son jerárquicos con una estructura estable (Kosanke et al., 1999, Kaula 1998, Deumeingts et al., 1992, Li y Williams 2002). Algunas nuevas metodologías están bajo investigación. Por ejemplo, Chen et al. (2001) y Bi (2002) utilizaron diseños axiomáticos para definir la arquitectura general de los sistemas de robots reconfigurables. Kuhnle (2001) presentó un modelo dinámico para describir la relación entre los requisitos de diseño y los cambios organizacionales. Asl et al. (2000) estudiaron la estabilidad de un RMS al analizarlo como un sistema dinámico fluido. Adolfsson et al. (2002) aplicaron simulación al diseño de sistemas de fabricación basados en componentes. Tseng y Jiao (1997) y Kota y Chiou (1992) determinaron los requisitos de diseño evaluando una matriz de múltiples atributos. Lee (1997) aplicó la programación entera para determinar el diseño de la fábrica. Moriwaki y Numobiki (1994) propusieron utilizar el método de programación orientada a objetos para diseñar máquinas conceptuales. Ueda et al. (2001) indicadan que el diseño del sistema del RMS pertenece a los problemas con especificaciones mal definidas. El reciente estudio Delphi, Visionary Manufacturing Challenges for 2020, realizado por el Consejo Nacional de Investigación de Estados Unidos, ha identificado la fabricación reconfigurable como primera prioridad entre los "seis grandes retos" para el futuro de la fabricación. 1.2.1. MÁQUINAS RECONFIGURABLES, RMT Las máquinas reconfigurables, en adelante RMT (Reconfigurable Machine Tools), son aquellas encargadas de componer los mencionados sistemas reconfigurables en prácticamente su totalidad. Suelen aparecer junto a las anteriormente nombradas máquinas de control numérico. En adelante podemos ver algunas definiciones acerca de este tipo de máquinas: A diferencia de las máquinas CNC convencionales, que son máquinas de uso general, las RMT están diseñadas para una gama específica de requisitos de operación personalizados. Estas pueden ser modificadas de forma rentable una vez cambien los requisitos que establezca el mercado. Tabla 1-2. Comparación entre tipos de máquinas. Una RMT está formada de una estructura ajustable y modular, que permite la escalabilidad o la convertibilidad de la máquina, utilizando módulos y/o herramientas intercambiables, concepto de escalabilidad. Están diseñadas alrededor de una familia de piezas para llegar a tener la flexibilidad necesaria para producir las piezas que la componen. Incorpora un conjunto de características núcleo comunes, tanto en su hardware como en su estructura de control (Koren, 2010). Figura 1-3. Máquinas reconfigurables (Koren, 2003) En resumen, la principal propiedad de estas máquinas y lo que la diferencia del resto es que sus módulos y herramientas son fácilmente intercambiables. Esto hace que una sola máquina pueda cubrir un amplio abanico de posibilidades de producción, con la única restricción de requerir el módulo o herramienta necesario para realizar el nuevo trabajo. 24 En definitiva, entre las reconfiguraciones que deben soportar se encuentran las siguientes: • Tamaño de pieza • Geometría de la pieza • Volumen y tasa de producción • Cambio del proceso de mecanizado • Precisión del mecanizado El concepto de estas máquinas y la repercusión que estas han efectuado sobre el paradigma de producción ha sido muy potente. Tener la capacidad de afrontar cambios en nuestro sistema productivo sin que esto suponga un contratiempo nos da una ventaja sobre nuestros competidores y nos sitúa en una posición de privilegio en el mercado. 1.3. OBJETIVOS DEL TRABAJO Los Sistemas de Fabricación Flexibles aún no han sido implantados de forma eficaz al sector productivo. Una de sus razones puede ser por la falta de técnicas que hagan más accesible la planificación de producción del mismo. Otra puede ser la falta de investigación en este campo. Este es por tanto uno de los motivos por los que se ha realizado este trabajo y poder profundizar en un nuevo sistema que puede ser el futuro de la producción mundial. El objetivo final del presente proyecto será el de definir y resolver modelos de programación matemática para un problema determinado de formación de células, las cuales estarán compuestas exclusivamente por máquinas reconfigurables. Posteriormente se realizará el problema de carga de recursos y secuenciación de productos en dichas células. Contaremos con rutas alternativas y múltiples periodos de tiempo. Entre los criterios para la selección de las soluciones a los problemas se considerarán los costes de operación, los costes de consumo energético y los costes de mano de obra, así como otra serie de restricciones, que se abordarán en su respectivo apartado. Dichos modelos de programación lineal serán resueltos con la ayuda de la herramienta LINGO en su versión 9. Posterior al estudio del modelo matemático se diseñará un modelo para su simulación en la herramienta ARENA 7.0, el cual será objeto de estudio y comparación con los resultados obtenidos de los modelos matemáticos con el fin de confluir en una conclusión que ratifique la validez del modelo matemático, a la vez que lo complemente. Se evaluarán cuatro escenarios diferentes. 1.4. ESTRUCTURA DE LA MEMORIA Sección 2. En ella se abordará el apartado de formación de células y su posterior carga de máquinas, presentando anteriormente el estado del arte, haciendo un breve análisis en la literatura de los métodos seguidos en otros estudios relevantes a los Sistemas de Producción Reconfigurable, en adelante RMS (Reconfigurable Manufacturing Systems). Sección 3. Describiremos el problema de forma detallada, junto a sus datos de entrada y qué estrategia seguiremos para su resolución. Sección 4. Definiremos los modelos de programación lineal utilizados por separado. Deteniéndonos en una explicación concisa de las restricciones usadas. Sección 5. Abordaremos la simulación del problema con un modelo realizado en la herramienta de simulación ARENA 7.0, no sin antes hacer una breve introducción de la misma junto al modelo realizado. Sección 6. Comentaremos los resultados de la simulación a la par que lo compararemos con lo obtenido en nuestros modelos de programación lineal. Sección 7. En ella se presentarán las conclusiones del trabajo y las ideas para posibles futuras líneas de trabajo. Sección 8. Bibliografía citada y consultada para la realización del presente proyecto. 32 3. La mayoría de los datos necesarios para la formación de células, tales como enrutamiento, procesamiento, secuencia, demanda, capacidad de la máquina, y la información del tiempo de procesamiento, puede ser obtenidos fácilmente desde el taller. 4. Los avances tecnológicos emergentes traen algoritmos genéticos, recocido simulado, la búsqueda tabú... Estos avances limitan la posible dificultad de resolver estos modelos de optimización. 5. La investigación sobre la formación de células ha experimentado crecimiento reciente en los últimos años, y muchos estudios han considerado como rutas alternativas, secuencias de procesamiento, configuraciones y requisitos de herramientas. Muchas cuestiones de investigación planteadas en las primeras revisiones siguen siendo en gran parte inexploradas. En Yamada et al. (2003), se evalúa un problema de optimización del diseño y optimización de asignación de robots de transporte dentro de un sistema de fabricación celular reconfigurable. El método que utiliza es el de la nube de partículas, posteriormente se realiza una simulación para validar el resultado. Un enfoque similar al realizado en este TFG. 2.4. PROBLEMA DE CARGA DE MÁQUINAS La carga de trabajo se refiere a la asignación de tareas a centros de trabajo específicos, en este caso, máquinas o células. Las tareas llegan a estar programadas cuando se especifica los tiempos de inicio y fin del proceso. Un centro de trabajo es el área de una empresa en la cual los recursos productivos se organizan y el trabajo se lleva a cabo. Puede ser una máquina, un grupo de máquinas o un área en donde se realiza un tipo de trabajo específico. El problema de carga de máquinas es uno de los problemas más recurrentes en cuanto a producción se refiere. Una vez tenemos el resultado de la formación de células deberemos asignar los planes de procesos y las herramientas necesarias para realizar los trabajos. En términos generales el problema podría definirse de la siguiente forma: "… dada una serie de partes a ser fabricadas, una serie de herramientas necesarias para procesar las partes en una serie de máquinas y utilizando un conjunto de recursos tales como sistemas de manejo de material, pallets y accesorios; como deben asignarse dichas partes y colocarse las herramientas, de modo que la productividad sea optimizada” (Stecke K., 1983). En la literatura podemos encontrar múltiples soluciones para resolver este problema, al igual que ya vimos con la formación de células, con enfoques y métodos muy similares. En este caso, estudios recientes que aportan solución a este problema para sistemas de producción flexibles, pueden ser los siguientes: Tabla 2-1. Métodos carga de máquinas FMS. (Eguía I. et al., 2017) aborda el problema desde el enfoque del método mixed integer lineal programming, en adelante MILP. Además, lo hace en un sistema como el estudiado en este TFG, un sistema RMS. En este caso no cargaremos máquinas, al menos no directamente, cargaremos las células que se forman previamente ya que, en este trabajo, el problema de formación de células se hace con anterioridad. La solución de dicho problema de formación se usa como datos de entrada para la carga de las células. Además, al tratarse de un RMS, la asignación se hará de: • Rutas • Herramientas Esto es debido a que la totalidad de las máquinas son reconfigurables. (Existen en este artículo máquinas de CNC, pero en nuestro problema vamos a obviarlas para simplificar la visión global) Para ello se propone un modelo MILP, tendrá una forma tal que: 𝑴𝒊𝒏 𝒄𝑻 𝒙 𝑨𝒙=𝒃 𝒙≥𝟎 𝒙𝒊∈𝒁, ∀𝒊∈𝑰 34 3. DESCRIPCIÓN DEL PROBLEMA En el presente TFG procederemos a resolver un problema de origen teórico de formación de células y su posterior carga celular, en un entorno de producción reconfigurable con la ayuda del método MILP. Así pues, nuestro problema consta de dos partes bien diferenciadas. 1. Formación de células donde ya existe una agrupación previa de los tipos de piezas con planes de proceso. A dicha agrupación se llamará: plan de proceso. 2. Carga de las células formadas atendiendo a una serie de restricciones y objetivos. 3.1. PRIMERA PARTE: FORMACIÓN DE LAS CÉLULAS Así pues, utilizaremos un modelo MILP al problema de agrupación de tipos de piezas y planes de proceso. Esto convertirá nuestro problema de formación de células en uno estándar sin rutas alternativas y, por lo tanto, más sencillo de resolver. Cada RMT tendrá disponibles una biblioteca de herramientas posibles. Estas herramientas nos servirán para modificar de forma rápida nuestro sistema productivo. Para ello generaremos como dato de entrada una matriz binaria que nos dará la información que necesitamos para saber si un plan de proceso determinado puede realizarse en dicha máquina. Puede entenderse como una matriz de modularidad, si recordamos la tecnología de grupos. Será una matriz mxr, donde m serán las máquinas y r los planes de proceso. La matriz tendrá un valor 1 si la ruta r se asigna a la máquina m, y valor 0 en caso contrario. Para ello tendremos las posibles rutas que puede seguir cada tipo de pieza como dato: Tabla 3-1. Matriz secuencia para formación de células. Al resolver este modelo en LINGO, nos devolverá un número determinado de células, las cuales tendrán asignadas las máquinas con sus planes de procesos alternativos incluidos. El siguiente paso será cargar estas máquinas con los tipos de piezas a fabricar. En nuestra primera parte del problema, el mismo constará de los siguientes elementos para su resolución: • 14 máquinas reconfigurables, RMT. • 23 planes de proceso que deben ser repartidas entre las células a formar. Estos son, en definitiva, la combinación de nuestros 10 tipos de piezas que podemos fabricar, junto a las 3 posibles utas. Queda explicado de una forma más gráfica en la siguiente (Tabla 3-1). • Una matriz A en la que se refleja si a la máquina m, se le puede asignar la ruta o plan de proceso r Tabla 3-2. Matriz A de incidencia máquina-plan de proceso. Debemos atender una importante restricción, que es la imposibilidad de movimientos intercelulares, es decir, cada producto no puede seguir una secuencia que precise transpotarlo de una célula a otra. Deberá completar el proceso siempre en la célula donde empezó. El objetivo será el de minimizar el tiempo ocioso de las máquinas, en términos de programación lineal, los huecos. El resultado de este modelo nos servirá como dato en el siguiente modelo de carga. 3.2. SEGUNDA PARTE: CARGA DE RECURSOS (MÁQUINAS Y HERRAMIENTAS) En este caso nos encontramos ante un problema con los siguientes elementos: • 4 periodos de tiempo relacionados entre sí por la existencia de inventario. • 10 tipos de piezas. • 3 posibles planes de procesos. • 6 operaciones posibles para realizar 36 • q células formadas • 9 tipos de herramientas disponibles • Demanda por cada tipo de pieza y periodo (Tabla 3-2) Tabla 3-3. Demandas multiperiodo. • Matriz de requerimiento de herramienta z para la pieza i en la j-ésima operación del r-ésimo plan de proceso (Tabla 3-3) • Datos de tiempos de procesos para cada operación, plan de proceso, pieza y máquina (Tabla 3-4) Tabla 3-4. Conjunto datos de entrada. • Datos varios de consumo (mano de obra, consumo energético…) Deberemos cumplir con las siguientes restricciones: • Número máximo de herramientas disponibles para cada máquina • Número máximo de herramientas que pueden ir destinadas a dicha máquina • Vida media de las herramientas • Tiempo máximo disponible de cada máquina • Equilibrado inter e intracelular El objetivo final será el de minimizar los costes de operación, los costes de consumo energético y los costes de consumo de mano de obra. 38 4. MODELOS MATEMÁTICOS A continuación, se definen los modelos usados. La implementación en LINGO se adjunta en los anexos. Posteriormente, se comentan los resultados obtenidos. 4.1. MODELO 1: FORMACIÓN DE CÉLULAS - Índices: ▪ Número de máquinas 𝑘 =(1..𝐾) ▪ Número de planes de proceso 𝑙 =(1..𝐿) ▪ Número de células a formar 𝑐 =(1..𝐶), donde 𝐶 será el número de células formadas - Datos: ▪ 𝐴𝑘𝑙 matriz cuyo valor será 1 si podemos asignar plan de proceso 𝑙 a máquina 𝑘 - Variables de decisión en la formación de células: ▪ 𝑋𝑘𝑐 =1 , si máquina 𝑘 es asignada a célula 𝑐 ▪ 𝑌𝑙𝑐 =1 , si plan de proceso 𝑙 se asigna a célula 𝑐 ▪ 𝐻𝑘𝑙𝑐 =1 , si el 𝑙-ésimo plan de proceso no requiere la máquina 𝑘 dentro de la célula 𝑐 ▪ 𝐸𝑘𝑙𝑐 =1 , si el 𝑙-ésimo plan de proceso requiere la máquina 𝑘 fuera de la célula 𝑐 𝑀𝑖𝑛 ∑∑∑ 𝐻𝑘𝑙𝑐 𝑙∈(𝐴𝑘𝑙=0) 𝑐𝑘 Sujeto a: ∑𝑋𝑘𝑐𝑐=1, ∀𝑘 (1) ∑𝑌𝑙𝑐𝑐=1, ∀𝑙 (2) ∑𝑋𝑘𝑐𝑘≤𝐾, ∀𝑐 (3) ∑𝑋𝑘𝑐𝑘≥0, ∀𝑐 (4) 𝐿𝑋𝑘𝑐 −∑𝐴𝑘𝑙𝑌𝑙𝑐 ≥ 0, ∀𝑐,∀𝑘 𝑙 (5) 𝐿(1−𝑋𝑘𝑐)−∑(1−𝐴𝑘𝑙)𝑌𝑙𝑐 +∑𝐻𝑘𝑙𝑐𝑙∈𝐴𝑘𝑙=0 ≥0, ∀𝑐,∀𝑘 𝑙 (6) ∑ ∑ ∑ 𝐸𝑘𝑙𝑐 =0 𝑙∈(𝐴𝑘𝑙=1)𝑐𝑘 (7) 𝑋𝑘𝑐,𝑌𝑙𝑐,𝐸𝑘𝑙𝑐,𝐻𝑘𝑙𝑐 ∈(0,1) (8) La función objetivo que evaluaremos será la de minimizar los huecos formados por las asignaciones de forma que se minimicen a la vez los tiempos ociosos. En adelante, daremos una breve explicación del objetivo de las restricciones. (1) Esta restricción nos asegura que una misma máquina no sea asignada a más de una célula. (2) Del mismo modo, nos restringe que el mismo plan de proceso de una determinada pieza, no sea asignado a varias células. (3, 4) Nos acotan las asignaciones con el mínimo y el máximo de máquinas a asignar por célula. (5) El número de veces que es requerido una máquina para producir una pieza determinada debe ser mayor o igual al número de operaciones que requieren dicha máquina en todos los programas asignados a la célula en cuestión. (6) El número de huecos debe ser mayor o igual que el número de operaciones asignadas a la célula que no utilizan ese tipo de máquina. (7) Esta restricción es orientativa y representa los movimientos intercelulares, los cuales se restringen en este problema, por ello lo igualamos a cero. (8) Las variables especificadas sólo toman los valores 0 ó 1. 4.1.1. SOLUCIÓN AL MODELO 1 Después de haber implementado el modelo en la herramienta LINGO, tenemos una solución óptima mediante el algoritmo Branch & Bound. El óptimo refleja una formación de 3 células con las siguientes asignaciones: 40 Tabla 4-1. Solución óptima de formación de célula 4.2. MODELO 2: CARGA DE MÁQUINAS - Índices: ▪ Periodos 𝑡 =(1..𝑇) ▪ Tipo de pieza 𝑖 =(1..𝑁) ▪ Operaciones 𝑗 = (1..𝑀) ▪ Máquinas 𝑘 =(1..𝐾) ▪ Planes de proceso 𝑟 =(1..𝑃𝑃𝑖), siendo 𝑃𝑃𝑖 el plan de proceso máximo para la pieza 𝑖 ▪ Células 𝑐 =(1..𝐶), siendo 𝐶, el número de células formadas en el anterior modelo ▪ Herramientas 𝑧 =(1..𝑍) - Datos: ▪ 𝐷𝑖𝑡 demanda de pieza 𝑖 multiperiodo ▪ 𝑆𝑧𝑘 huecos para herramientas en cada máquina ▪ 𝑇𝑀𝐶𝑘 capacidad de cargadores por máquina ▪ 𝑇𝐶𝑧𝑡 número de herramientas disponibles en cada periodo ▪ 𝑇𝐿𝑧 vida media de cada herramienta (min) ▪ 𝑑𝑖𝑗𝑟𝑧 1 si la 𝑗-ésima operación del 𝑟-ésimo plan de proceso del tipo de pieza 𝑖 requiere la herramienta 𝑧 ▪ 𝑝𝑖𝑗𝑟𝑘 tiempos de proceso de la 𝑗-ésima operación del 𝑟-ésimo plan de proceso del tipo de pieza 𝑖 en la máquina 𝑘 (min) ▪ 𝐻𝑘𝑡 carga máxima de cada máquina en cada periodo (min) ▪ 𝑝𝑜𝑤𝑒𝑟_𝑝𝑟𝑜𝑐𝑘 consumo energético de la máquina en proceso (KJ/min) ▪ 𝑝𝑜𝑤𝑒𝑟_𝑖𝑑𝑙𝑒𝑘 consumo energético de la máquina en parada (KJ/min) ▪ 𝐶𝑃𝑧 coste unitario de proceso de cada herramienta (€/min) ▪ 𝐶𝐶𝑡 coste unitario de consumo energético en cada periodo (€/min) ▪ 𝐶𝐿𝑡 coste unitario de mano de obra (€/min) ▪ 𝑓𝑎𝑐_𝑙𝑎𝑏𝑧𝑘 consumo de cada herramienta en cada máquina (KJ/min) ▪ 𝛼 desequilibrio máximo entre células ▪ 𝛽 desequilibrio máximo entre máquinas ▪ 𝛾 desequilibrio máximo entre periodos ▪ 𝐶𝐻𝑡 coste de mantenimiento unitario en cada periodo (€) - Datos de entrada adicionales (procedentes del Modelo 1): ▪ 𝑏𝑘𝑐 matriz con valor 1 si la máquina 𝑘 pertenece a celda 𝑐 ▪ 𝑞𝑐 número de máquinas en cada celda - Variables de decisión en la carga celular: ▪ 𝑋𝑖𝑟𝑡 cantidad de tipo de pieza 𝑖 que se asignará a la ruta 𝑟 en el periodo 𝑡 ▪ 𝐼𝑖𝑡 inventario de cada pieza 𝑖, por periodo 𝑡 ▪ 𝜀𝑧𝑘𝑡 número de herramientas asignadas a máquina 𝑘, en periodo 𝑡 ▪ 𝑈𝑚𝑎𝑞𝑘𝑡 carga de máquina 𝑘, en periodo 𝑡 ▪ 𝑈𝑐𝑒𝑙𝑐𝑡 carga de la célula 𝑐, en periodo 𝑡 ▪ 𝑈𝑚𝑜𝑑𝑧𝑡 carga de herramienta 𝑧, en periodo 𝑡 𝑀𝑖𝑛 ∑∑[𝐶𝑃𝑧𝑈𝑚𝑜𝑑𝑧𝑡 +𝐶𝐶𝑡(𝐸𝑛𝑒𝑟𝑝𝑟𝑜𝑐𝑡+𝐸𝑛𝑒𝑟𝑖𝑑𝑙𝑒𝑡)+𝐶𝐿𝑡𝐿𝑎𝑏𝑡𝑖𝑚𝑒𝑡] 𝑧𝑡 Sujeto a: 𝐼𝑛𝑣𝑒𝑛𝑡𝑎𝑟𝑖𝑜𝑖𝑡 =∑ ∑ 𝑋𝑖𝑟𝑗 −∑𝐷𝑖𝑡𝑗<𝑗′, ∀𝑖.∀𝑡 𝑟=𝑃𝑃𝑖 𝑟=1 𝑗<𝑗′ (1) 𝐼𝑛𝑣𝑒𝑛𝑡𝑎𝑟𝑖𝑜𝑖𝑡 =0, ∀𝑖, 𝑡 =𝑇 (2) 𝑈𝑚𝑜𝑑𝑧𝑡 =∑ ∑ ∑ ∑ 𝑑𝑖𝑟𝑗𝑧𝑝𝑖𝑗𝑟𝑘𝑋𝑖𝑟𝑡, ∀𝑧,∀𝑡 𝑗𝑟𝑖𝑘 (3) 48 Desde el punto de vista de la simulación podemos clasificar los modelos de la siguiente forma: • Estático: El tiempo no varía, por lo tanto, no forma parte del modelo. • Dinámico: Esta vez sí se tiene en cuenta el transcurso del tiempo. Así son la mayoría de modelos que se simulan. • Continuo: En estos modelos el sistema cambia continuamente con respecto al tiempo. Por ejemplo, un depósito que se abastece de un caudal determinado constante. • Discreto: El cambio sucede en diferentes espacios de tiempo. Un ejemplo claro, es el mencionado anteriormente del aeropuerto, donde la llegada de los pasajeros se produce de forma aleatoria. • Combinado Continuo-Discreto: Combina los dos aspectos. • Determinista: No tienen entradas aleatorias. Estas se producen con conocimiento previo. Un claro ejemplo sería la sección de médico de cabecera de un hospital, donde se conoce el horario de las citas de sus pacientes. • Estocástico: Las entradas se realizan de forma aleatoria. Pueden aproximarse a distribuciones estadísticas como, por ejemplo, la Exponencial. Un mismo modelo puede tener entradas deterministas y estocásticas. 5.1.3. PARTES ELEMENTALES DE UN MODELO DE SIMULACIÓN • Entidades: Serán las entradas/llegadas al proceso. Son objetos dinámicos, es decir, dependen del transcurso del tiempo. Por lo general, se crean, se desplazan a lo largo del modelo y al llegar al final de este, son desechadas. Es posible, aun así, que existan entidades que no lleguen a salir del sistema, bien porque el tiempo de residencia de la entidad en el mismo excede el de proceso o bien porque existe algún tipo de realimentación. Un ejemplo de entidad pueden ser las piezas que llegan a las células de mecanizado. Se crea al llegar, y se desecha una vez acaba el proceso. • Atributos: los atributos sirven para diferenciar las entidades. Son valores comunes entre ellas que pueden tomar valores diferentes, y así, individualizarlas. Por ejemplo, nuestra entidad será la de pasajero. A esta entidad le asociaremos tres tipos de atributos, que pueden ser: Prioridad, Destino y Equipaje. De este modo, podemos asignar diferentes valores a estos atributos para así, diferenciar entre la misma entidad. Los atributos, son una especie de etiqueta, también conocidos como variables locales. • Variables globales: Una variable es información que caracteriza nuestro sistema, sin importar el número de entidades que creemos. En definitiva, las variables nos ayudarán a definir los cambios en el modelo, ya que pueden reescribirse. Ejemplos de variables globales son: tiempos de transferencia, estado de las máquinas o tiempo de proceso. • Recursos: Las entidades a menudo necesitan de recursos para ser procesadas. Estos recursos pueden ser: personal o maquinaria, por ejemplo. Una entidad retiene un determinado número de recursos que luego libera (ver elemento Process). Es mejor pensar en recursos como préstamos hacia las entidades, en vez de como asignaciones, ya que el requerimiento de ese recurso puede ser simultáneo en varias áreas de nuestro sistema. • Eventos: Un evento es algo que sucede en un determinado instante de tiempo el cual puede cambiar atributos o variables. Existen tres tipos de eventos: o Llegada: una nueva entidad entra en el sistema o Salida: acaba el procesado de una entidad y deja el sistema o Fin: la simulación se detiene • Colas: Cuando una entidad no puede seguir adelante, puede ser porque necesite aprovechar una unidad de un recurso que está inmovilizada por otra entidad. En estos casos se dispone de un lugar de espera, las colas. Puede darse el caso de que se agrupen las entidades adrede, esperando una señal la cual las libere. 5.2. HERRAMIENTA DE SIMULACIÓN ARENA Entramos a definir de modo más exhaustivo la herramienta a utilizar en este TFG, ARENA de la compañía Rockwell Automation. 5.2.1. INTRODUCCIÓN AL SOFTWARE ARENA Arena es un software o herramienta de simulación de sistemas dinámicos y eventos discretos cuya finalidad es tanto la optimización de sistemas complejos, como el estudio de un marco de posibles estímulos sobre dicho sistema y cómo afectaría al mismo. El lenguaje utilizado por el programa es SIMAN. Diseñado por Denis Pedgen, SIMAN es un lenguaje enfocado a la simulación de sistemas de fabricación, aunque pueda acomodarse a sistemas semejantes como los comentados anteriormente. Arena utiliza una serie de elementos para sintetizar y resolver de una forma más gráfica el modelo. 5.2.2. ELEMENTOS DEL SOFTWARE ARENA A continuación, procedemos a exponer los diferentes elementos que usa el software para la construcción de nuestro modelo lógico. Para empezar, se expone una captura del entorno del software. 50 Figura 5-1. Captura entorno Arena. Podemos diferenciar tres partes: A) Project bar: Donde se encuentran los elementos que se explican a continuación. B) Flowchart view: Vista general del modelo. Se dispondrán dichos elementos siguiendo una serie de pautas. Durante la simulación podremos tomar datos de tiempo o de entidades en las colas, por ejemplo. C) Spreadsheet view: En ella podremos configurar las secuencias de los procesos, lectura/escritura de datos, fallos, etc. En adelante, los elementos que se usarán en nuestro modelo: • Create: Este elemento es el encargado de crear nuestras entidades e introducirlas en nuestro sistema. Podemos decidir el tipo de entidad en caso de tener varias de ellas. El tiempo de llegadas pueden ser valores constantes o siguiendo una distribución como la Exponencial o Uniforme. ARENA también nos permite configurar un horario de llegadas e incluso expresiones matemáticas. Figura 5-2. Elemento Create. • Dispose: Este módulo tiene como objetivo dar salida a las entidades del sistema. Los datos de salida pueden registrarse. Figura 5-3. Elemento Dispose. • Process: Refleja las estaciones de trabajo del sistema, por ejemplo, puede tratarse del proceso de torneado de una pieza o el servicio en ventanilla a un cliente. Tenemos la posibilidad de referir un submodelo para este elemento. Existen cuatro tipos de procesos: Delay, Seize Delay, Seize Delay Release y Delay Release. Delay: se produce un retraso que puede ser entendido como tiempo de proceso, no se ocupan recursos. Seize Delay: como en el anterior habrá un retraso fruto del tiempo de procesado. Ahora si ocupamos recursos, los cuales se liberarán cuando se indique. Seize Delay Release: se asigna un recurso seguido de un retardo, una vez finalice se liberará el recurso. Delay Release: El recurso especificado habrá sido previamente reservado, una vez finalice el proceso de la entidad, se liberará el recurso. Podemos asignar a las entidades, en caso de que varias reclamen un mismo recurso, una prioridad que puede ser Alta, Media o Baja. Los Recursos, dependiendo del tipo de proceso, serán requeridos o no por las diferentes entidades. Podemos fijar el valor por el que se regirá el retraso o tiempo de procesado de las entidades. 52 Figura 5-4. Elemento Process. • Delay: Refleja un retraso de la entidad en el sistema. Puede representar por ejemplo tiempos de Set- Up. Es una simplificación redundante del Process-Delay. Figura 5-5. Elemento Delay. • Decide: Este elemento nos permite tomar decisiones en el sistema. La forma en que nos facilita esta posibilidad varía. Podemos asignar una probabilidad a las posibles salidas. Podemos establecer condiciones según el tipo de entidad, según valores de atributos o variables, o incluso expresiones como puede ser, limitar el número en cola de algún proceso. Este elemento se usa para desechar piezas defectuosas, bifurcación de entidades… Figura 5-6. Elemento Decide. • Separate: Este elemento nos servirá tanto para multiplicar las entidades entrantes o para dividir una entidad previamente agrupada (Lotes). Para esto último se usa el elemento de agrupación Batch. . Figura 5-7. Elemento Separate. • Assign: Este elemento se usará para asignar nuevos valores a los mencionados atributos, a las variables, tipos de entidades y otro tipo de variables del sistema. Se pueden hacer varias asignaciones con un sólo elemento en el sistema. 54 Figura 5-8. Elemento Assign. Veremos ahora los elementos avanzados del software. • Hold: Este elemento hará que las entidades se retengan en su cola hasta el momento en que llegue una señal o se cumpla una determinada condición. Las entidades que suelta Hold pueden estar limitadas a cierto número, quedándose el resto aún retenidas en cola. Es por así decirlo, una barrera. En el caso del aeropuerto, podríamos entender el elemento Hold como una cola previa al despegue, que suelta las entidades retenidas cuando se cumple una determinada señal, activada, por ejemplo, al comprobarse el estado de la pista de despegue. Figura 5-9. Elemento Hold. • ReadWrite: Se usa para leer datos de origen externo, ya puede ser de teclado, un documento de texto o una tabla excel. Del mismo modo, también se pueden escribir los datos de salida en los mencionados formatos. Figura 5-10. Elemento ReadWrite. • Signal: Mencionábamos antes el elemento Hold. Signal complementa este cuando es configurado mediante “Wait for Signal”. Este elemento manda la señal necesaria para que Hold suelte las entidades retenidas en cola. Figura 5-11. Elemento Signal. Los siguientes elementos, son elementos destinados a la transferencia de unidades. • Route: destina la entidad de entrada a una Station determinada. Se puede especificar el destino por valores de atributo o por secuencias que veremos más adelante. Se le asocia un tiempo de transferencia. • Station: Estaciones destinatarias de las entidades transferidas. Podemos configurar conjuntos de estaciones. 56 Figura 5-12. Elementos Station y Route. 5.3. MODELADO DEL PROBLEMA Enfocaremos nuestro modelo en ARENA desde el punto de vista de una situación real, más próxima a un sistema de producción. De este modo consideraremos, en cada caso, una serie de configuraciones. Estas configuraciones se darán cada vez que se preparen las máquinas, es decir, disponer en cada máquina de la herramienta correspondiente. Estos cambios añadirán un tiempo de Set-up. También se implementan tiempos de transporte entre máquinas y teoría de colas. De este modo, y usando la simulación como complemento y análisis a los resultados obtenidos en en modelo MILP, se establecerán una serie de escenarios, con el fin de concluir el estudio. Los escenarios son: • Escenario 1: No se realizan reconfiguraciones. Orden FIFO. • Escenario 2: Se realizan 3 configuraciones. Orden FIFO. • Escenario 3: Se realizan 3 configuraciones. Orden SPT. Antes de ver los escenarios, se expone una visión general del modelo usado. Figura 5-13. Vista general del primer bloque del modelo. Podemos diferenciar, que el primer elemento es un Create. Este módulo es el encargado de introducir una entidad en el sistema, como ya se comentó anteriormente. Figura 5-14. Create, inicio de la simulación. A continuación, utilizaremos el elemento Separate. Nos duplicará la entidad creada tantas veces como rutas tengamos. En este caso, cada configuración, englobará unas rutas determinadas. Las entidades originales serán desechadas mediante un Dispose. Figura 5-15. Separate, replicación de entidades El siguiente elemento es el que nos importará los datos al programa. Leeremos los datos desde un archivo Excel. Se leen los siguientes datos: ✓ OrdenSecu: establecerá el número de configuraciones. ✓ CodSecu: referido al número de secuencia ✓ Tipo: tipo de pieza ✓ Demanda: demanda de cada tipo de pieza por secuencia 64 6.2. ESCENARIO 2 En este escenario introduciremos tres configuraciones, las cuales representan las tres células formadas en el modelo matemático. Estas configuraciones introducirán tiempos de Set-Up. Además, se introducen en el modelo los tiempos de transporte de materiales entre máquinas. Figura 6-1. Se añaden los tiempos de transporte. En este escenario tenemos que modificar las rutas por configuración y el número de máquinas disponibles. En nuestro caso, tomamos las máquinas que forman cada célula del Modelo 1 Figura 6-2. Número de máquinas disponibles por configuración. En este caso, tampoco se establecen prioridades a unas piezas sobre otras, la tabla de lectura de datos tendrá la siguiente forma: Tabla 6-3. Datos Escenario 2. Podemos ver en la tabla que OrdenSecu establece tres configuraciones, una por célula formada en el Modelo 1. Los resultados de la simulación para este caso son los siguientes: Tabla 6-4. Resultados Escenario 2. Vemos como al Makespan final, que es la suma de los 3 valores, le sumamos 45'. Esto se debe a que la forma de calcular el Makespan es: 𝑀𝑎𝑘𝑒𝑠𝑝𝑎𝑛 = 𝐹𝑖𝑛𝑅𝑒𝑐𝑜𝑛𝑓𝑖𝑔𝑢𝑟𝑎𝑐𝑖ó𝑛(𝑡)−𝐼𝑛𝑖𝑐𝑖𝑜𝑅𝑒𝑐𝑜𝑛𝑓𝑖𝑔𝑢𝑟𝑎𝑐𝑖ó𝑛(𝑡) 66 Es decir, calculamos la diferencia de tiempo entre reconfiguraciones. De esta forma anulamos los Set-Up debido a estas modificaciones, por lo que debemos añadirlos al cálculo final. Podemos ver que el Makespan aumenta respecto al Escenario 1. Este al acercarse más a la realidad nos muestra un tiempo de producción más fiel. También se incurren en menor gasto energético y menor consumo de mano de obra que en el Escenario 1. Esto es debido a las configuraciones que se establecen, dejando máquinas en estado de reposo, que, aunque consumen energía, lo hacen en torno a un 30% del consumo en proceso. Del mismo modo, el requirimiento de mano de obra disminuye. 6.3. ESCENARIO 3 En este escenario sólo se va a modificar el orden de entrada al sistema de las piezas. Por lo tanto, usaremos la regla de despacho SPT. Con esta regla daremos prioridad a los tiempos de procesos más bajos. Para ello, calcularemos el tiempo de proceso total de cada pieza y lo multiplicamos por su demanda Podemos ver la lectura de datos: Tabla 6-5. Datos Escenario 3. El orden es decreciente debido a que SPT da prioridad a los valores más bajos de tiempo de proceso. Internamente en ARENA modificamos el orden de cola en Ordena_pedidos así: Figura 6-3. Orden para regla de despacho SPT. De este modo ARENA nos proporciona los siguientes resultados: Tabla 6-6. Orden para regla de despacho SPT. Con la regla SPT vemos aumentado el Makepan. Con la regla de despacho SPT se espera minimizar el tiempo de finalización medio, pero el orden establecido hace que empeore el Makespan. Habría que probar con otras reglas de despacho para comprobar si se puede mejorar en términos de tiempo de finalización. El consumo de mano de obra se mantiene debido a que disponemos del mismo número de máquinas, trabajando durante el mismo tiempo y para la misma demanda. Sin embargo, aumenta el gasto energético debido a que aumentan los tiempos ociosos que, como ya se comentó, en este estado la máquina sigue consumiendo energía. 68 7. CONCLUSIONES 7.1. CONCLUSIONES La evolución del consumo en nuestra sociedad nos ha llevado a demandar productos en menores espacios de tiempo, personalizados, en grandes cantidades y con características que satisfagan un amplio espectro de necesidades. Por lo tanto, las empresas tienen deben atender estos cambios en la demanda de la forma más rentable posible. Es por ello que el nuevo paradigma de producción necesita de la Reconfigurabilidad. El desarrollo de sistemas de fabricación reconfigurable ha sido uno de los estudios en auge de la última década. Los empresarios necesitan tener cierta seguridad a la hora de invertir en sistemas de producción de este tipo, pero no están capacitados en su mayoría para tomar cierto tipo de decisiones. Así pues, se necesitan de múltiples herramientas y métodos para optimizar todos los elementos que componen los sistemas reconfigurables. Se desarrollan, por tanto, el componente tecnológico (máquinas reconfigurables) y las técnicas o metodologías. En este trabajo se ha tratado de complementar uno de los métodos utilizados en la literatura, como es el MILP. Normalmente se enfoca a un modelo cuyo objetivo es minimizar las máquinas ociosas, con una anterior agrupación por familias de productos. En nuestro caso, además de buscar este objetivo, proponemos realizar un equilibrado en nuestro sistema, así como minimizar costes como los de mantenimiento, mano de obra o costes energéticos, así como contemplar rutas alternativas. Por lo tanto, se ha intentado cubrir gran parte de las necesidades pre-diseño que debe tener un sistema de este tipo. Posterior al modelo, usamos una herramienta de simulación. La simulación es también, una herramienta que ayuda a analistas a diseñar sistemas o a evaluar cambios a los ya existentes. En nuestro caso nos ha servido como apoyo, complemento y para corroborar nuestro modelo matemático, en términos de costes o tiempos de finalización. En definitiva, se establece una metodología de trabajo, la cual puede realimentarse mutuamente con la entrada de datos y que es capaz de establecer análisis completos de sistemas ciertamente complejos. 7.2. FUTURAS LÍNEAS DE TRABAJO En este trabajo se ha usado un modelo MILP. Como se comenta en su sección correspondiente, la programación lineal tiene un problema cuando se manejan conjuntos demasiado grandes, el modelo puede llegar a ser irresoluble (no factible). Por tanto, una optativa a este enfoque sería el uso de métodos heurísticos, como pueden ser el algoritmo genético o la búsqueda tabú, encontrados en la literatura. Sería interesante abordar la simulación con un conjunto de secuencias establecidas con métodos diferentes a las reglas de despacho utilizadas (por ejemplo, el algoritmo de Johnson), con el fin de compararlas y establecer una secuencia óptima. 70 8. BIBLIOGRAFÍA Adams, J., Balas, E., y Zawack, D. (1988). The shifting Bottleneck Procedure for Job Shop Scheduling. Management Science, 34 (3), 381-401. Adolfsson, J., Amos, H. C., Olofsgård, P., Moore, P., Pu, J., y Wong, C. (2002). Design and simulation of component-based manufacturing machine systems. Mechatronics, 12, 1239-1258. Arai, T., Aiyama, Y., Sugi, M, y Ota, J. (2001). Holonic assembly system with plug and produce. Computers in Industry, 46, 289-299. Arai, T., Maeda, Y., Kikuchi, H. y Sugi, M. (2002). Automated calibration of robot coordinates for reconfigurable assembly systems. Annals of the CIRP, 51 (1), 5-8. Asl, F.M., Ulsoy, A.G. y Koren, Y. (2000). Dynamic modeling and stability of the reconfiguration of manufacturing systems. Proceeding of the Japan-USA Symposium on Flexible Automation. Ann Arbor, Michigan. Ateme-Nguema, B. and Dao, T.M. (2009). Quantized Hopfield networks and tabu search for manufacturing cell formation problems. International Journal of Production Economics, 121(1), 88-98. Bathia, D. (1997). Reconfigurable computing. Proceedings Tenth International Conference on VLSI Design, 356-359. Benhabib, B., Chan, K.C. y Dai, M.Q. (1991). A modular programable fixturing system. ASME. Journal of Engineering for Industry, 113, 93-99. Benjaafar, S, Heragu, S., y Irani, S. (2002) Next generation Factory layouts: research challenges and recent progress. Interfaces, 32 (6), 58-76. Bi, Z. M. (2002). On Adaptive Robot Systemns for Manufacturing Applications. University of Saskatchewan, Canadá. Bi, Z. M., y Zhang, W.J. (2001). Flexible fixture design and automation: review, issues, and future directions. International Journal of Production Research, 39 (13), 2867-2894. Bostelman, R., Jacoff, A., Proctor, F., Kramer, T. Y Wavering, A. (2000). Cable-based reconfigurable machines for large scale manufacturing. Proceedings of the 2000 Japan-USA Symposium on Flexible Automation. Michigan. Brandimarte, P. (1993). Routing and scheduling in a flexible job shop by tabu search. Annals of Operations Research, 14 (3), 157-183. Chen I. (1994). Theory and Applications of Modular Reconfigurable Robotic Systems. Division of Engineering and Applied Science. California Institute of Technology, Estados Unidos de América. Chen, I. (2001). Rapid response manufacturing through reconfigurable robotic workcells. Journal of Robotic and Computer Integrated Manufacturing, 17 (3), 199-213. Chick, S. E., Olsen, T.L., Sethuraman, K., Stecke, K. E. y White III, C.C. (2000). A descriptive multi-attribute model for reconfigurable machining system selection examining buyer-supplier relationship. International Journal of Agile Management Systems, 2 (1), 33-48. Chow, W-M. (1990). Assembly Line Design. Methodology and Applications. Nueva York: Estados Unidos de América: Marcel Dekker. Cooke, A., Shankar, N., Jones, L., Ewaldz, D., Haynes, L., Martines, D., Wada, B., y Zweben, C. (1995). Advanced reconfigurable machine for flexible fabrication. SPIR, 2447, 102-114. Cuatrecasas, L. (2000). Organización de la producción y dirección de operaciones. Sistemas actuales de gestión eficiente y competitiva. Madrid, España: Diaz de Santos. Davis, S. M. (1987). Future Perfect. Nueva York, Estados Unidos de América: Addison-Wesley. Deumeingts, G., Vallespir, B., Zanettin, M. and Chen, D. (1992). GRAI-GIM Integrated Methodology, a Methodology for Designing CIM Systems. Version 1.0 LAP/GRAI, University Bordeaux I, France. Eguía, I. (s.f.). Herramientas Cuantitativas de Gestión [diapositivas de PowerPoint]. Eguía, I, Galán, R., Racero, J. y Canca, D. (2006). Modelo de Planificación de la Producción para los Sistemas de Fabricación Reconfigurable. X Congreso de Ingeniería de Organización. Valencia. Eguía, I., Molina, J.C., Lozano, S. and Racero, J. (2017). Cell design and multi-period machine loading in cellular reconfigurable manufacturing systems with alternative routing. International Journal of Production Research, 55 (10), 2775-2790. Eguía, I., Racero, J. y García, J.M. (2006). Programacion de trabajos en células con máquinas reconfigurables mediante modelos lienales basados en el mTSP. 3rd Conference on Industrial Engineering and Industrial Management, XIII Congreso de Ingerniería de Organización. Barcelona-Terrasa. Eguía, I., Racero, J., Guerrero, F. and Lozano, S. (2013). Cell formation and scheduling of part families for reconfigurable cellular manufacturing systems using Tabu search. SIMULATION. Transactions of The Society for Modeling and Simulation International, 89 (9), 1056-1072. Erixon, G. (1998). Modular function deployment: a method for product modularisation. Royal Institute of Technology, Estocolmo. Estrin, G. (1960). Organization of Computer Systems – the fixed plus variable structure computer. Proc. Western Joint Computer Conf, 33-40 Estrin, G. (2002). Reconfigurable computer origins: the UCLA fixed-plus-variable (F+V) structure computer. IEEE Annals of the History of Computing, 24 (4), 3-9. 72 Fassi, I. y Wiens, G.J. (2000). Multiaxis machining: PKMs and traditional machining centers. Journal of Manufacturing Processes, 2 (1), 1-13. Fukuda, T. y Takagawa, I. (2000). Design and control of flexible transfer system. Porcedings of the 3 World Congress on Intelligent Control and Automation, 17-22. Galán de V., R. (2006). Diseño y planificación de la producción en sistemas de fabricación reconfigurable (tesis doctoral). Escuela Superior de Ingenieros. Sevilla. Galán, R., Racero, J. Eguía, I. y Guerrero, F. (2006). Diseño de Sistemas de Fabricación Reconfigurable mediante la Formación de Familias de Productos. X Congreso de Ingeniería de Organización. Valencia. Giusti, F., Santochi, M. and Arioti, A. (1994). A reconfigurable assembly cell for mechanical products. Annals of the CIRP, 43 (1), 1-14. Groover, M. P. (2007). Fundamentos de manufactura moderna: materiales, procesos y sistemas. Lomas de Santa Fe, México: Editorial Mcgraw-Hill. Hass, E., Schwarz, R.C., y Papazian, J.M. (2002). Design and test of reconfigurable forming die. Journal of Manufacturing Processes, 4 (1), 77-85. Heilala, J. y Voho, P. (2001). Modular reconfigurable flexible final assembly systems. Assembly Automation, 21 (1), 20-28. Ho, J. K. L. y Ranky, P. G. (1997). Object oriented modeling and design of reconfigurable conveyors in flexible assembly systems. International Journal of Computer Integrated Manufacturing, 10 (5), 391- 394. Hooper, R. y Tesar, D. (1994). Computer-aided configuration of modular robotics systems. Computing & Control Engineering, 137-142. Hopfield, J.J. (1982). Neural networks and physical systems with emergent collective computational abilities. Procedings of the National Academy of Sciences of the United States of America, 79 (8), 2554-2558. Kamrani, A.K., Parsaei, H.R., y Liles, D. H. (1995). Plannig and Analysis of Cellular Manufacturing Systems. Amsterdam, Holanda: ELSERVIER. Kang, S. L. and Wemmerlöv, U. (1993). A work load-oriented heuristic methodology for manufacturing cell formation allowing reallocation of operations. European Journal of Operational Research, 69, 292-311. Katz, R., Li, Z. y Pierrot, F. (2002). Engineering Research Center for Reconfigurable Machining Systems: Conceptual Design of a High-Speed Drilling Machine (HSDM) based on PKM Module, ERC/RMS. College of Engineering. Universidad de Michigan. Kaula, R. (1998). A modular approach toward flexible manufacturing. Integrated Manufacturing Systems, 9 (2), 77-86. Kelton, D, W, Sadowski, P. R., y Sturrock, T. D. (2008). Simulación con software Arena. Lomas de Santa Fe, México: Editorial Mcgraw-Hill. Konsake, K., Vernadat, F. y Zelm, M. (1999). CIMOSA: Enterprise engineering and integration. Computer in Industry, 40, 83-97. Koren, Y. (2003). U.S. Patent Nº 6.567.162. Michigan: U.S. University of Michigan. Koren, Y. (2010). The Global Manufacturing Revolution. Product-process business integration and reconfigurable systems. Nueva Jersey, Estados Unidos de América: Wiley & sons. Koren, Y., Heisel, U., Jovane, F., Moriwaki, T., Pritschow, G., Ulsoy, G. y Van Brussel, H. (1999). Reconfigurable manufacturings systems. Annals CIRP, 48 (2), 527-541. Koren, Y., Jovane, F., Pritschow, G. (1998). Open architecture control Systems, Symmary of Global Activity. Milan, Italia: ITIA Series. Koren, Y., Wang, W. y Gu, X. (2016) Value creation though design for scalability of reconfigurable manufacturing systems. International Journal of Production Research, 54, 1-16. Kota, S., y Chiou, S. (1992). Conceptual design of mechanisms based on computational synthesis and simulation of kinematic building blocks. Research in Engineering Design¸ 4, 75-87. Kuhnle, H. (2001). A state-time model to measure the reconfigurability of manufacturing areaskey to performance. Integrated Manufacturing Systems, 12 (7), 493-499. Lee, G. (1997). Reconfigurability consideration design of components and manufacturing systems. International Journal of Advanced Manufacturing Technologies, 13, 376-386. Li, H. y Williams T.J. (2002). Management of complexity in enterprise integration projects by the PERA methodology. Journal of Intelligent Manufacturing, 13, 417-427. Mehrabi, M.G., y Kannatey-Asibu, E. (2001). Mapping theory: a new approach to design of multi-sensor monitoring of reconfigurable machining system (RMS). Journal of Manufacturing Systemas, 20 (5), 297-303. Mehrabi, G., Ulsoy, G., Koren, Y., y Heytler, P. (2002). Trends and perspectives in flexible and reconfigurable manufacturing systems. Journal of Intelligent Manufacturing, (13), 135-146 Mellor, C. (2002). Quick-change artists: why techs must get ready fo reconfigurable manufacturing. The Ontario Technologies, 12-15. Moriwaki, T. y Nunobiki, M. (1994). Object-oriented design support system for machine tools. Journal of Intelligent Manufacturing¸5, 47-54. Pritschow, G. and Wurst, K.-H. (1996). Modular robots for flexible assembly. Preceedings of the 28th 80 MODELO 2 LINGO ! ***************************** MODELO INCORPORANDO DISEÑO DE CELDAS MULTIPERIODO. 2 de Julio de 2017 ******************************; MODEL: SETS: periodos/1..4/:CH,Media,Ener_proc,Ener_idle,Lab_time,CC,CL,Ener_tot; ! indice t; tipo_pieza/1..10/:PP,cantidad; ! indice i; operaciones/1..6/:; ! indice j; maquinas/1..14/:TMC,power_proc,power_idle; ! indice k; planes_proceso/1..3/:; ! indice r; celulas/1..3/:q; ! indice c; herramientas/1..9/:TL,CP; ! indice z; zk(herramientas,maquinas):S,fac_lab; zt(herramientas,periodos):TC,Total_herramientas,Umod; zkt(herramientas,maquinas,periodos):epsilon; it(tipo_pieza,periodos):Demanda,Inventario; ijrz(tipo_pieza,operaciones,planes_proceso,herramientas):d; ijrk(tipo_pieza,operaciones,planes_proceso,maquinas):p; irt(tipo_pieza,planes_proceso,periodos):x; kc(maquinas,celulas):b; kt(maquinas,periodos):H,Umaq; ct(celulas,periodos):w,Ucel; ENDSETS !Datos; DATA: PP= 3 2 3 2 2 2 3 2 2 2; !periodo por tipo de pieza; Demanda= 0 10 12 0 18 18 18 10 15 18 0 16 8 8 0 12 9 10 0 8 0 8 12 0 16 0 18 0 12 0 8 15 18 0 15 12 0 12 14 10 ; S = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 !Huecos de herramientas por máquina; 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1; TMC= 3 2 2 3 2 3 2 3 2 2 3 3 3 2; !Capcidad máxima de cargadores; TC= 6 6 6 6 !Número de herramientas z disponible en t; 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6; TL= 400 400 200 500 250 200 200 300 200; !Vida media de las herramientas (min); H= 260 260 220 210 !Carga máxima de trabajo de máquina k en t (min) ; 250 280 260 240 250 250 260 200 250 230 220 260 260 270 260 240 230 220 260 240 280 230 210 200 250 240 260 240 260 270 220 220 250 270 260 210 240 270 260 250 260 240 240 220 270 230 250 240 260 220 210 220; alpha=0.3; beta=0.6; gamma=0.3; CH= 0.12 0.16 0.12 0.16; !Coste mantenimiento en perdiodo t (€); b= 1 0 0 !Proviene de Modelo 1; 1 0 0 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 0 0 1 0 0 1 0 1 0 0 0 1 0 0 1 1 0 0; q = 4 4 6; !Proviene de Modelo 1; power_proc = 173.45 180.65 168.25 178.04 182.89 169.67 176.36 168.76 165.25 171.14 169.24 175.21 183.61 188.25; !KJ/min; power_idle = 57.02 57.18 52.47 59.41 50.67 56.18 51.88 59.34 51.56 57.33 56.76 48.55 55.08 59.46; !KJ/min; CP = 0.201 0.224 0.210 0.278 0.235 0.251 0.262 0.285 0.215; !€/min; CC = 0.00001579 0.00001672 0.00001264 0.00001455; !€/KJ; CL = 0.1664 0.1664 0.1664 0.1664; !€/min; fac_lab = 25.1 16.2 12.3 25.6 22.6 11.2 15.4 19.8 13.2 !KJ/min; 14.6 12.3 27.8 12.1 25.2 20.2 12.3 18.7 15.4 12.1 18.9 17.4 12.1 26.7 10.3 10.5 11.2 18.9 11.4 17.4 18.9 12.5 18.8 13.1 17.8 13.6 25.4 15.8 16.5 18.7 19.9 20.5 12.4 15.7 16.7 12.3 15.4 22.2 28.7 25.4 11.2 23.1 10.8 24.7 26.8 12.4 19.8 15.4 11.2 17.4 16.8 14.5 10.1 18.1 19.8 25.8 21.2 25.4 12.9 25.6 22.5 15.5 15.8 12.1 29.4 19.8 26.4 82.5 15.8 17.1 10.8 24.5 30.1 25.2 26.9 27.4 26.5 24.7 23.2 21.4 30.5 15.8 29.8 27.4 26.5 11.2 24.7 18.5 18.4 17.9 18.7 25.9 18.7 10.1 10.8 11.4 20.1 24.8 15.5 15.5 11.4 16.5 18.7 21.4 11.1 19.8 22.1 10.9 18.7 18.8 17.8 12.2 13.4 18.6 21.2 23.7 18.7; ! j-ésima operación del r-ésimo plan de proceso del tipo de pieza -i- requiere herramienta tipo - z-; 82 d= 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; ! tiempo de proceso de la j-ésima operacion del r-ésimo plan de procesamiento de pieza -i- en maquina -k- (min); p= 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 0 0 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 0 0 84 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 86 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; @TEXT('Modelo2p.txt')= @write( ' Solucion de la carga de células, multiperiodo', @newline(2)); @TEXT('Modelo2p.txt')= @write( ' Periodo 1:', @newline(1)); @TEXT('Modelo2p.txt')= @write( ' ************************************************************', @newline(1)); @TEXT('Modelo2p.txt')= @writefor(tipo_pieza(i)|Demanda(i,1)#GT#0:' Tipo Pieza nº', 1*' ', i , 2*' ', 'Inventarios: ',Inventario(i,1),@newline(1),@writefor(planes_proceso(r)|r#LE#PP(i): 'Ruta: ', r, 4*' ', x(i,r,1),@newline(1))); !1*' ', i , 2*' '... 1 espacio en blanco, valor de i, dos espacios en blanco...; @TEXT('Modelo2p.txt')= @write( @newline(1), ' Cálculos de horas de funcionamiento por células', ' Media de minutos de funcionamiento: ', Media(1),@newline(2)); @TEXT('Modelo2p.txt')= @writefor(celulas(c):' Celula nº', 1*' ', c , 2*' ', 'Tiempo proceso célula' ,c,2*' ', 'periodo 1',3*' ',w(c,1),@newline(1),@writefor(maquinas(k)|b(k,c)#EQ#1: 'Máquina: ', k, 4*' ','workload :', Umaq(k,1),@newline(1)),@newline(1)); @TEXT('Modelo2p.txt')= @write( @newline(1), ' Usos de herramientas en máquinas',@newline(2)); @TEXT('Modelo2p.txt')= @writefor(maquinas(k):' Maquina nº', 1*' ', k, 2*' ',@newline(1),@writefor(herramientas(z)|epsilon(z,k,1)#GT#0: 'Herramienta: ', z, 4*' ','nº unidades :', epsilon(z,k,1),@newline(1)),@newline(1)); @TEXT('Modelo2p.txt')= @write( @newline(1), ' Cálculos de numero de herramientas requeridas de cada tipo ', @newline(2)); @TEXT('Modelo2p.txt')= @writefor(herramientas(z):' Herramienta nº', 1*' ', z , 2*' ',Total_herramientas(z,1),@newline(1)); @TEXT('Modelo2p.txt')= @write( ' ************************************************************', @newline(1)); @TEXT('Modelo2p.txt')= @write( ' Periodo 2:', @newline(1)); @TEXT('Modelo2p.txt')= @write( ' ************************************************************', @newline(1)); @TEXT('Modelo2p.txt')= @writefor(tipo_pieza(i)|Demanda(i,2)#GT#0:' Tipo Pieza nº', 1*' ', i , 2*' ','Inventarios: ',Inventario(i,2),@newline(1),@writefor(planes_proceso(r)|r#LE#PP(i): 'Ruta: ', r, 4*' ', x(i,r,2),@newline(1))); @TEXT('Modelo2p.txt')= @write( @newline(1), ' Cálculos de horas de funcionamiento por células', ' Media de minutos de funcionamiento: ', Media(2),@newline(2)); @TEXT('Modelo2p.txt')= @writefor(celulas(c):' Celula nº', 1*' ', c , 2*' ',w(c,2),@newline(1),@writefor(maquinas(k)|b(k,c)#EQ#1: 'Máquina: ', k, 4*' ','workload :', Umaq(k,2),@newline(1)), @newline(1)); @TEXT('Modelo2p.txt')= @write( @newline(1), ' Usos de herramientas en máquinas',@newline(2)); @TEXT('Modelo2p.txt')= @writefor(maquinas(k):' Maquina nº', 1*' ', k, 2*' ',@newline(1),@writefor(herramientas(z)|epsilon(z,k,2)#GT#0: 'Herramienta: ', z, 4*' ','nº unidades :', epsilon(z,k,2), @newline(1)),@newline(1)); @TEXT('Modelo2p.txt')= @write( @newline(1), ' Cálculos de numero de herramientas requeridas de cada tipo ', @newline(2)); @TEXT('Modelo2p.txt')= @writefor(herramientas(z):' Herramienta nº', 1*' ', z , 2*' ',Total_herramientas(z,2),@newline(1)); @TEXT('Modelo2p.txt')= @write( ' ************************************************************', @newline(1)); @TEXT('Modelo2p.txt')= @write( ' Periodo 3:', @newline(1)); @TEXT('Modelo2p.txt')= @write( ' ************************************************************', @newline(1)); @TEXT('Modelo2p.txt')= @writefor(tipo_pieza(i)|Demanda(i,3)#GT#0:' Tipo Pieza nº', 1*' ', i , 2*' ','Inventarios: ',Inventario(i,3),@newline(1),@writefor(planes_proceso(r)|r#LE#PP(i): 'Ruta: ', r, 4*' ', x(i,r,3),@newline(1))); @TEXT('Modelo2p.txt')= @write( @newline(1), ' Cálculos de horas de funcionamiento por células', ' Media de minutos de funcionamiento: ', Media(3),@newline(2)); @TEXT('Modelo2p.txt')= @writefor(celulas(c):' Celula nº', 1*' ', c , 2*' ',w(c,3),@newline(1),@writefor(maquinas(k)|b(k,c)#EQ#1: 'Máquina: ', k, 4*' ','workload :', Umaq(k,3),@newline(1)),@newline(1)); @TEXT('Modelo2p.txt')= @write( @newline(1), ' Usos de herramientas en máquinas',@newline(2)); @TEXT('Modelo2p.txt')= @writefor(maquinas(k):' Maquina nº', 1*' ', k, 2*' ',@newline(1),@writefor(herramientas(z)|epsilon(z,k,3)#GT#0: 'Herramienta: ', z, 4*' ','nº unidades :', epsilon(z,k,3),@newline(1)),@newline(1)); @TEXT('Modelo2p.txt')= @write( @newline(1), ' Cálculos de numero de herramientas requeridas de cada tipo ', @newline(2)); @TEXT('Modelo2p.txt')= @writefor(herramientas(z):' Herramienta nº', 1*' ', z , 2*' ',Total_herramientas(z,3),@newline(1)); @TEXT('Modelo2p.txt')= @write( ' ************************************************************', @newline(1)); @TEXT('Modelo2p.txt')= @write( ' Periodo 4:', @newline(1)); 88 @TEXT('Modelo2p.txt')= @write( ' ************************************************************', @newline(1)); @TEXT('Modelo2p.txt')= @writefor(tipo_pieza(i)|Demanda(i,4)#GT#0:' Tipo Pieza nº', 1*' ', i , 2*' ','Inventarios: ',Inventario(i,4),@newline(1),@writefor(planes_proceso(r)|r#LE#PP(i): 'Ruta: ', r, 4*' ', x(i,r,4),@newline(1))); @TEXT('Modelo2p.txt')= @write( @newline(1), ' Cálculos de horas de funcionamiento por células', ' Media de minutos de funcionamiento: ', Media(4),@newline(2)); @TEXT('Modelo2p.txt')= @writefor(celulas(c):' Celula nº', 1*' ', c , 2*' ',w(c,4),@newline(1),@writefor(maquinas(k)|b(k,c)#EQ#1: 'Máquina: ', k, 4*' ','workload :', Umaq(k,4),@newline(1)),@newline(1)); @TEXT('Modelo2p.txt')= @write( @newline(1), ' Usos de herramientas en máquinas',@newline(2)); @TEXT('Modelo2p.txt')= @writefor(maquinas(k):' Maquina nº', 1*' ', k, 2*' ',@newline(1),@writefor(herramientas(z)|epsilon(z,k,4)#GT#0: 'Herramienta: ', z, 4*' ','nº unidades :', epsilon(z,k,4),@newline(1)),@newline(1)); @TEXT('Modelo2p.txt')= @write( @newline(1), ' Cálculos de numero de herramientas requeridas de cada tipo ', @newline(2)); @TEXT('Modelo2p.txt')= @writefor(herramientas(z):' Herramienta nº', 1*' ', z , 2*' ',Total_herramientas(z,4),@newline(1)); @TEXT('Modelo2p.txt')= @write( @newline(1), ' ************************************************************', @newline(1)); @TEXT('Modelo2p.txt')= @write( ' Cantidad de Piezas:', @newline(1)); @TEXT('Modelo2p.txt')= @writefor(tipo_pieza(i):' Pieza nº', 1*' ', i , 2*' ',cantidad(i),@newline(1)); @TEXT('Modelo2p.txt')= @write( @newline(1), ' ************************************************************', @newline(1)); @TEXT('Modelo2p.txt')= @write( ' Energía total por periodo:', @newline(1)); @TEXT('Modelo2p.txt')= @writefor(periodos(t):' Periodo', 1*' ', t , 2*' ',Ener_tot(t),1*' ','[KJ]',@newline(1)); @TEXT('Modelo2p.txt')= @write(' Total=', 1*' ',Ener_T,1*' ','[KJ]',@newline(1)); ENDDATA !Restricciones; !Inventario; @for(tipo_pieza(i): @for(periodos(t): Inventario (i,t)=@sum(periodos(j)|j#LE#t:@sum(planes_proceso(r)|r#LE#PP(i):x(i,r,j)))- @sum(periodos(j)|j#LE#t:Demanda(i,j)); ); ); !@for(tipo_pieza(i): Inventario (i,@size(periodos))>Demanda(i,@size(periodos)/PP(i)) ); @for(tipo_pieza(i): Inventario(i,@size(periodos))=0 ); !R1; @for(herramientas(z): @for(periodos(t): Umod(z,t)=@sum(maquinas(k):@sum(tipo_pieza(i):@sum(planes_proceso(r):@sum(operaciones(j):d(i,j,r, z)*p(i,j,r,k)*x(i,r,t))))) ) ); !R2; @for(maquinas(k): @for(periodos(t): Umaq(k,t)=@sum(herramientas(z):@sum(tipo_pieza(i):@sum(planes_proceso(r):@sum(operaciones(j):d(i, j,r,z)*p(i,j,r,k)*x(i,r,t))))) ) ); !R3; @for(celulas(c): @for(periodos(t): Ucel(c,t)=@sum(maquinas(k):b(k,c)*Umaq(k,t)) ) ); !R4; @for(periodos(t): Ener_proc(t)=@sum(maquinas(k):@sum(tipo_pieza(i):@sum(planes_proceso(r):@sum(herramientas(z):@sum (operaciones(j):(power_proc(k)+fac_lab(z,k))*d(i,j,r,z)*p(i,j,r,k)*x(i,r,t)))))) ); !R5; @for(periodos(t): Ener_idle(t)=@sum(maquinas(k):power_idle(k)*(@sum(celulas(c):b(k,c)*Ucel(c,t)-Umaq(k,t)))) ); !R6; @for(periodos(t): Lab_time(t)=@sum(maquinas(k):Umaq(k,t)) ); !R7; !@for(tipo_pieza(i): @for(periodos(t): @sum(planes_proceso(r):x(i,r,t))>=Demanda(i,t) ) ); !R8; @for(periodos(t): @for(maquinas(k): @sum(herramientas(z):TC(z,t))>=@sum(herramientas(z):epsilon(z,k,t)) ) ); !R9; @for(herramientas(z): @for(periodos(t): @for(maquinas(k): @sum(tipo_pieza(i):@sum(operaciones(j):@sum(planes_proceso(r):d(i,j,r,z)*p(i,j,r,k)*x(i,r,t))))<= TL(z)*epsilon(z,k,t) ) ) ); !R10; @for(periodos(t): @for(maquinas(k): Umaq(k,t)<=H(k,t) ) ); !EQUILIBRADO (alpha,beta,gamma); !Restriccion A; @for(periodos(t): @for(celulas(c): w(c,t)=@sum(maquinas(k):b(k,c)*Umaq(k,t)); ); ); !R11; @for(periodos(t): Media(t)=(@sum(celulas(c):w(c,t)))/(@size(celulas)); ); @for(periodos(t): @for(celulas(c): (1-alpha)*Media(t)<=w(c,t); (1+alpha)*Media(t)>=w(c,t); ); ); 96 Cálculos de numero de herramientas requeridas de cada tipo Herramienta nº 1 5 Herramienta nº 2 2 Herramienta nº 3 4 Herramienta nº 4 1 Herramienta nº 5 6 Herramienta nº 6 7 Herramienta nº 7 2 Herramienta nº 8 2 Herramienta nº 9 3 ************************************************************ Periodo 2: ************************************************************ Tipo Pieza nº 1 Inventarios: 0 Ruta: 1 7.1459328 Ruta: 2 0 Ruta: 3 0 Tipo Pieza nº 2 Inventarios: 3.2326337 Ruta: 1 0 Ruta: 2 21.232634 Tipo Pieza nº 3 Inventarios: 0 Ruta: 1 14.564227 Ruta: 2 0 Ruta: 3 3.4357725 Tipo Pieza nº 4 Inventarios: 0 Ruta: 1 7.5586996 Ruta: 2 0 Tipo Pieza nº 5 Inventarios: 0 Ruta: 1 10 Ruta: 2 0 Tipo Pieza nº 6 Inventarios: 0 Ruta: 1 8 Ruta: 2 0 Tipo Pieza nº 10 Inventarios: 0 Ruta: 1 0 Ruta: 2 12 Cálculos de horas de funcionamiento por células Media de minutos de funcionamiento: 576.64925 Celula nº 1 693.28111 98 Máquina: 1 workload :212.32634 Máquina: 2 workload :191.0937 Máquina: 8 workload :169.86107 Máquina: 14 workload :120 Celula nº 2 572.83734 Máquina: 5 workload :145.75119 Máquina: 6 workload :158.57233 Máquina: 7 workload :164.51382 Máquina: 11 workload :104 Celula nº 3 463.82929 Máquina: 3 workload :123.68781 Máquina: 4 workload :32.608605 Máquina: 9 workload :123.68781 Máquina: 10 workload :112.00618 Máquina: 12 workload :30.921953 Máquina: 13 workload :40.916928 Usos de herramientas en máquinas Maquina nº 1 Herramienta: 1 nº unidades :1 Herramienta: 3 nº unidades :2 Maquina nº 2 Herramienta: 4 nº unidades :1 Maquina nº 3 Herramienta: 3 nº unidades :1 Herramienta: 6 nº unidades :1 Maquina nº 4 Herramienta: 2 nº unidades :1 Herramienta: 4 nº unidades :1 Maquina nº 5 Herramienta: 3 nº unidades :1 Herramienta: 6 nº unidades :1 Maquina nº 6 100 Herramienta: 2 nº unidades :1 Herramienta: 3 nº unidades :1 Herramienta: 5 nº unidades :1 Maquina nº 7 Herramienta: 4 nº unidades :1 Herramienta: 5 nº unidades :1 Maquina nº 8 Herramienta: 1 nº unidades :1 Herramienta: 6 nº unidades :1 Maquina nº 9 Herramienta: 2 nº unidades :1 Herramienta: 6 nº unidades :1 Maquina nº 10 Herramienta: 1 nº unidades :1 Herramienta: 6 nº unidades :1 Maquina nº 11 Herramienta: 4 nº unidades :1 Herramienta: 6 nº unidades :2 Maquina nº 12 Herramienta: 7 nº unidades :1 Herramienta: 9 nº unidades :1 Maquina nº 13 Herramienta: 8 nº unidades :1 Herramienta: 9 nº unidades :2 Maquina nº 14 Herramienta: 7 nº unidades :1 Herramienta: 8 nº unidades :1 Cálculos de numero de herramientas requeridas de cada tipo Herramienta nº 1 3 Herramienta nº 2 3 Herramienta nº 3 5 Herramienta nº 4 4 102 Herramienta nº 5 2 Herramienta nº 6 7 Herramienta nº 7 2 Herramienta nº 8 2 Herramienta nº 9 3 ************************************************************ Periodo 3: ************************************************************ Tipo Pieza nº 1 Inventarios: 0 Ruta: 1 11.734367 Ruta: 2 0.26563259 Ruta: 3 0 Tipo Pieza nº 2 Inventarios: 7.1054274e-015 Ruta: 1 0 Ruta: 2 14.767366 Tipo Pieza nº 6 Inventarios: 0 Ruta: 1 12 Ruta: 2 0 Tipo Pieza nº 7 Inventarios: 0 Ruta: 1 0 Ruta: 2 0 Ruta: 3 0 Tipo Pieza nº 8 Inventarios: 15 Ruta: 1 0 Ruta: 2 0 Tipo Pieza nº 9 Inventarios: 2.0461014 Ruta: 1 6.7110278 Ruta: 2 0 Tipo Pieza nº 10 Inventarios: 0 Ruta: 1 0 Ruta: 2 14 Cálculos de horas de funcionamiento por células Media de minutos de funcionamiento: 414.39915 Celula nº 1 538.71889 Máquina: 1 workload :147.67366 Máquina: 2 workload :132.9063 Máquina: 8 workload :118.13893 Máquina: 14 workload :140 Celula nº 2 395.90887 Máquina: 5 workload :143.50557 Máquina: 6 workload :140.81241 104 Máquina: 7 workload :72 Máquina: 11 workload :39.590887 Celula nº 3 308.56968 Máquina: 3 workload :41.59433 Máquina: 4 workload :43.719391 Máquina: 9 workload :82.285248 Máquina: 10 workload :74.513863 Máquina: 12 workload :20.571312 Máquina: 13 workload :45.885535 Usos de herramientas en máquinas Maquina nº 1 Herramienta: 3 nº unidades :1 Maquina nº 2 Herramienta: 1 nº unidades :1 Herramienta: 4 nº unidades :1 Maquina nº 3 Herramienta: 2 nº unidades :1 Herramienta: 6 nº unidades :1 Maquina nº 4 Herramienta: 1 nº unidades :1 Herramienta: 2 nº unidades :1 Herramienta: 4 nº unidades :1 Maquina nº 5 Herramienta: 3 nº unidades :1 Herramienta: 6 nº unidades :1 Maquina nº 6 Herramienta: 2 nº unidades :1 Herramienta: 5 nº unidades :2 Maquina nº 7 Herramienta: 4 nº unidades :1 Maquina nº 8 112 Herramienta: 4 nº unidades :1 Herramienta: 6 nº unidades :2 Maquina nº 12 Herramienta: 7 nº unidades :1 Herramienta: 9 nº unidades :1 Maquina nº 13 Herramienta: 8 nº unidades :1 Herramienta: 9 nº unidades :2 Maquina nº 14 Herramienta: 7 nº unidades :2 Cálculos de numero de herramientas requeridas de cada tipo Herramienta nº 1 3 Herramienta nº 2 3 Herramienta nº 3 6 Herramienta nº 4 3 Herramienta nº 5 2 Herramienta nº 6 7 Herramienta nº 7 3 Herramienta nº 8 1 Herramienta nº 9 3 ************************************************************ Cantidad de Piezas: Pieza nº 1 22 Pieza nº 2 64 Pieza nº 3 49 Pieza nº 4 28 Pieza nº 5 27 Pieza nº 6 20 Pieza nº 7 34 Pieza nº 8 35 Pieza nº 9 45 Pieza nº 10 36 ************************************************************ Energía total por periodo: Periodo 1 534851.55 [KJ] 114 Periodo 2 479249.74 [KJ] Periodo 3 342791.96 [KJ] Periodo 4 303733.92 [KJ] Total= 1660627.2 [KJ] MODELO COMPLETO EN ARENA