Seminario sobre toma de decisiones en logística y cadenas de suministro Introducción a las RdP Optimización basada en redes de Petri https://belenus.unirioja.es/~emjimene/optimizacion/transparencias.pdf Grupo de Modelado, Simulación y Optimización. Universidad de La Rioja. Emilio Jiménez Juan Ignacio Latorre Abril 006 Redes de Petri evoluciones paralelas y concurrencia en Sistemas Dinámicos de Eventos Discretos (SDED) Técnicas de análisis formal Familia de formalismos: Paradigma Modelado Simulación Análisis Síntesis Implementación Niveles - elemental - lugar/transicion - coloreadas - predicado/transicion Interpretaciones - temporizadas - estocásticas Exploración del espacio de estados Reducción del modelo Técnicas basadas en grafos Programación lineal... Introducción a las RdP RdP Grafo bipartido directo N = <P,T,Pre,Post> m o 1 = + -1 1 3 - Disparo 1 0 1 - lugares - transiciones -arcos - marcas Ecuación de estado: m = m o + C σ 1 Tipos de sistemas Son objeto de estudio: Sistemas dinámicos de eventos discretos modelados por medio de Redes de Petri. Paralelismo. Concurrencia: Competencia por recursos (conflictos toma de decisiones). Colaboración (sincronizaciones). Ejemplos: Sistemas de producción industrial. Sistemas logísticos (redes de suministro). 6
Tipos de problemas Obtención del modelo óptimo de un sistema Optimización del marcado Toma de decisiones óptima: Asignación de tareas a recursos productivos Secuencia de disparos de transiciones Control de un sistema de eventos discretos Tipos de problemas: complejidad Casos sencillos/primera aproximación: Programación lineal. Casos complejos: Explosión de estados. Problemas NP. Reducción del árbol de cobertura: Propiedades de las RdP. Branch and Bound (ramificar y acotar). Exploración parcial del árbol de cobertura. Heurísticas: técnicas aproximadas. Obtención del modelo óptimo Obtención del modelo óptimo Análisis de propiedades cualitativas: Vivacidad: Detección de interbloqueos. Limitación: Acotación del marcado en los lugares. Redes binarias (máximo una marca por lugar). Ciclicidad. Conflictos: Detección de incertidumbres en el disparo de transiciones. Invariantes: Componentes conservativas. Secuencias de disparo repetitivas (comportamiento cíclico ). Bloqueos. Cerrojos y Trampas. Análisis de propiedades cuantitativas: Marcado medio. Tiempo medio. Throughput.... Técnicas: Representación del grafo de marcados alcanzables. Álgebra lineal. Reducción de la RdP conservando ciertas propiedades. Fluidificación.
Optimización del marcado Problema del marcado inicial/final. Determinar marcado inicial/final mínimo para cierto vector característico (secuencia de disparos). Problema de alcanzabilidad: Determinar el vector característico que permite la evolución de un sistema entre dos marcados. Solución. Técnicas deterministas. Técnicas no deterministas. Ejemplo de optimización modelo-marcado Modelo óptimo (M1o=7) Tim Thr.t5 1-3 4/60 4-5 7/60 6 8/60 7-8 30/60 9-10 3/60 Marcado Inicial Control del disparo (toma de decisiones) M1o Thr.t5 M1o Thr.t5 1 0.0 1 0.0 0.15 0.33 3 0.35 3 0.35 4+ n 0.0 4 0.48 5+ n 0.40 5 0.50 6... 0.53 t 1 t 5 p t 3 p m 1 1o 3 u.t. p 5 m 1o 10 u.t. p 4 t p 3 t 4 Ejemplo de optimización modelo-marcado Modelo óptimo (M1o=7) Tim Thr.t5 1-3 4/60 4-5 7/60 6 8/60 7-8 30/60 9-10 3/60 Marcado Inicial Control del disparo (toma de decisiones) M1o Thr.t5 M1o Thr.t5 1 0.0 1 0.0 0.15 0.33 3 0.35 3 0.35 4+ n 0.0 4 0.48 5+ n 0.40 5 0.50 6... 0.53 t 5 p m 1 1o t 1 3 u.t. p t 3 10 u.t. p 4 t p 3 t 4 Toma de decisiones Combinación de técnicas: Reducción del árbol de cobertura: Propiedades de las RdP. Bloqueos, invariantes, etc. Branch and Bound. Exploración parcial del árbol de cobertura. Heurísticas: técnicas aproximadas. Algoritmo A*. Recocido Simulado. Búsqueda Tabú. Inteligencia artificial: Algoritmos genéticos.
Ejemplo de sistema de fabricación Cinta transportadora B B Máquina B A Piezas terminadas de tipo Ejemplo de sistema de fabricación Piezas de tipo B Cinta transportadora A Piezas de tipo A Manipulador A A B Maquina 1 Piezas terminadas de tipo 1 Lugares Transiciones
Arcos Cinta de piezas de tipo A Cinta de piezas de tipo B Manipulador
Máquina 1 Máquina Piezas tipo A Piezas tipo B
Toma de decisiones Decisión 1: coger pieza A o B Conflicto: Un lugar tiene arcos de salida hacia dos (o más) transiciones diferentes. Las transiciones pueden estar sensibilizadas simultáneamente. Marcado insuficiente para disparar todas. Qué transición disparará? Decisión Cuál es la mejor decisión? Buscar la solución óptima. Se decide coger pieza de tipo A Se decide coger pieza de tipo B Decisión : dejar pieza en M1 o M Planteamiento del problema Se decide dejar la pieza A en M1 Se decide dejar la pieza A en M Determinar la secuencia óptima de decisiones: Cantidad y tipo de piezas fabricadas. Secuencia de fabricación. Secuencia de disparo de transiciones (decisiones). Objetivo: Maximizar la función de beneficio en n pasos. Beneficio = 3 np1 + 4 np Siendo p1 = pa + pb; p = pa + pb Restricciones: Un solo robot. Capacidad de almacenamiento limitada en cada máquina. No hay restricción de costes de producción.
1. Exploración del árbol de cobertura Tipo de algoritmo: Recursivo. Técnica de reducción de la búsqueda: Poda de ramas: Bloqueos (transiciones no sensibilizadas). Nodos que carecen de descendencia (marcado constante). Resultado obtenido: Óptimo. Coste computacional: Elevado por la explosión de estados. Resultados Exploración tras 6 pasos. Nodos explorados: 3,49 millones. Tiempo: 30 minutos. Resultado óptimo: 15 1 pieza terminada M1. 3 piezas terminadas M. Se obtiene una secuencia de decisiones.. Algoritmo de Branch and Bound Resultados Tipo de algoritmo: Heurístico. Técnica de reducción de la búsqueda: Se exploran j pasos completos. A partir del paso j se podan las ramas de menor beneficio. Referencia: mejor máximo local encontrado. Resultado obtenido: Bueno, en ciertos casos óptimo. Coste computacional: Muy inferior. Límite computacional: Recursividad (500 anidamientos). Exploración tras 6 pasos. Nodos explorados: 31. Tiempo: 0,03 segundos. Resultado obtenido: 1 (80% del óptimo) 3 piezas terminadas M. Secuencia de decisiones obtenida.
3. Análisis de la secuencia de disparos Objetivo: Encontrar secuencias repetitivas en el vector de disparos que conduzcan a óptimos. Encadenar dichas secuencias para obtener óptimos en evoluciones largas de la RdP. Resultado obtenido: Bueno, en algunos casos óptimo ( NGEN). Coste computacional: Muy reducido. Secuencias de disparos NGEN=8, np1=0, np=1 [00001000] NGEN=15, np1=0, np= [000010000001000] NGEN=, np1=0, np=3 [0000100000010000001000] Secuencia repetida: [0000100] Análisis de la secuencia Resultados Secuencia repetida: [0000100] 0 Coger pieza B 0 Dejar en máquina 0 Coger pieza B 0 Dejar en máquina 1 Coger pieza A 0 Dejar en máquina 0 Espera a M (posible ineficiencia) Producción de pieza de tipo (requiere piezas de tipo B y una de A) Funcion de beneficio 16 14 1 10 8 6 Heuristica Secuencia 1 Optimos Comparacion de resultados 4 14 16 18 0 4 6 8 30 Pasos (disparos de transiciones)
4. Análisis de la RdP Objetivo: Encontrar secuencia de asignación de tareas que evite las esperas. Encadenar dichas secuencias para obtener óptimos en evoluciones largas de la RdP. Resultado obtenido: Excelente ( NGEN), en ciertos casos óptimo. Coste computacional: Muy reducido. Secuencia propuesta Cargar A+B+B en M. p Cargar A en M1. (se elimina la espera) Cargar A+B+B en M. p Cargar A en M1. (se elimina la espera) Cargar A+B+B en M. p Cargar B en M1. p1 Resultados Resultados 60 50 Heuristica Secuencia 1 Secuencia Comparacion de resultados 350 300 Heuristica Secuencia 1 Secuencia Comparacion de resultados 50 40 Funcion de beneficio 30 Funcion de beneficio 00 150 0 100 10 50 0 0 30 40 50 60 70 80 90 100 Pasos (disparos de transiciones) 0 0 50 100 150 00 50 300 350 400 450 500 Pasos (disparos de transiciones)
Optimización del modelo Cálculo de los P-invariantes: x i (componentes conservativas: P(x i )) Conjunto de lugares tales que la suma ponderada de sus marcas es constante. Existen 7, asociados a: Cintas transportadoras, (presencia de pieza). Robot, 1 (recurso compartido). Máquinas, 4 (huecos para piezas) Cálculo de los P-invariantes Todos los lugares pertenecen a algún P(x i ). La red de Petri es conservativa. El marcado en todos los lugares está acotado. La red de Petri es -limitada para el marcado inicial propuesto. Cálculo de los T-invariantes Componentes repetitivas T(s). Secuencia de disparo de transiciones que hace evolucionar al sistema entre dos marcados iguales. Existen, asociadas a: Fabricación de pieza de tipo 1. Fabricación de pieza de tipo. Todas las transiciones pertenecen a una de las dos T(s). Cálculo de los T-invariantes La red de Petri es consistente. Estrategia de producción: La combinación de fabricaciones de piezas de tipo 1 y es una secuencia repetitiva.
Análisis de la vivacidad Analisis de vivacidad Red no viva. Situaciones de bloqueo: Decisión de cargar una máquina con más piezas de un tipo de las que puede admitir y sin suficientes del otro tipo para trabajar. La máquina está bloqueada. El manipulador está bloqueado. Análisis de vivacidad Análisis de vivacidad
Análisis de la vivacidad Posibles soluciones: Modificar la instalación física. Aumentar capacidad de almacenamiento. Esta opción no garantiza una estrategia productiva adecuada. Establecer un control del disparo de transiciones eficiente: Toma de decisiones. Toma de decisiones optimizada. Líneas de investigación Optimización de modelos complejos de RdP Mejora de soluciones óptimas existentes. Aplicación de diferentes heurísticas no deterministas y basadas en inteligencia artificial. Integración de técnicas. Desarrollo de un sistema adaptativo. Respuesta a perturbaciones (cambios en las condiciones del problema). Seminario sobre toma de decisiones en logística y cadenas de suministro Optimización basada en redes de Petri https://belenus.unirioja.es/~emjimene/optimizacion/transparencias.pdf Grupo de Modelado, Simulación y Optimización. Universidad de La Rioja. Emilio Jiménez Juan Ignacio Latorre Abril 006