Modelo de redes y redes petri
-
Author
adan-aguirre -
Category
Education
-
view
2.178 -
download
0
Embed Size (px)
Transcript of Modelo de redes y redes petri
- 1. Modelo de Redes y Redes dePetri MCC Zuriel Dathan Mora Flix
2. Modelo de Redes El siguiente grafo representa una red de tuberasde petrleo, el petrleo proviene del muelle a, yse descarga en la refinera z. Los vrtices b,c,d,e representan estaciones debombeo. Las aristas dirigidas representan subtuberias delsistema, muestran la direccin en la que puedefluir el petrleo. Las etiquetas sobre las aristas muestran lascapacidades de las tuberas. 3. Una red es un grafo, dirigido, simple con pesosque satisface: Un vrtice fijo, la fuente no tiene arista deentrada. Un vrtice fijo, el sumidero (destino) no tienearista de salida. El peso C de la arista dirigida ij llamado laijcapacidad es un numero no negativo 4. Un flujo en una red, asigna un flujo en cadaarista dirigida, que no excede la capacidad dedicha arista. El flujo de entrada debe ser igual al flujo desalida, sin ser la fuente o el sumidero. 5. En el siguiente grafo, la entrada al la bombaintermedia b es 2 y su salida tambien es 2. Respecto a la salida de la fuente es a,b + a,d =5 en el sumidero se recibe c,z+ e,z= 5. 6. El problema de una red de transporte sepuede establecer as, determinar un flujomximo en G, es decir entre todos los flujosposibles en G, determinar un flujo F, tal que elvalor de F sea mximo. 7. Una red de bombeo La siguiente figura representa una red de bombeo por medio del cual seenva agua a 2 ciudades A,B, desde 3 pozos w1,w2 y w3. Las capacidades de los sistemas intermedios representan las aristas. Los vrtices b,c,d representan estaciones de bombeo intermedias. 8. Para obtener una fuente y un sumidero fijos, podemosobtener una red de transporte equivalente, uniendo la fuenteen una sper fuente y el sumidero en un sper sumidero. 9. Red de flujo de trfico Es posible ir de la ciudad A a la ciudad C directamente o pasar por laciudad B. Durante el periodo de 6:00- 7:00 pm, los tiempos promedio de viaje son: A-B (15 minutos) B-C (30 minutos) A-C (30 minutos) Las capacidades de las carreteras son: A-B (3,000 vehculos) B-C(2,000 vehculos) A-C(4,000 vehculos) Un vrtice representa una ciudad en un instante dado, una arista conectaX,t1 con y, t2, si podemos salir de la ciudad X en el instante t1 pm. La capacidad de una arista es la capacidad de la ruta. Se introduce una fuente y un super sumidero. 10. ejercicios Escribe los flujos faltantes sobre las aristas. 11. El sig. grafo representa una red de bombeo, en la que el petrleo de 3pozos w1,w2,w3, se entrega a 3 refineras A,B y C. Las capacidades de los sistemas intermedios estn sobre las aristas. Las aristas b,c,d,e,f representan estaciones intermedias de bombeo. Modela el sistema como una red. Modela el sistema como una red, suponiendo que el pozo w1, bombea alo mas 2 unidades, el pozo w2 a lo mas 4 unidades y el pozo w3 a lo mas 7unidades. 12. Existen 2 rutas de la ciudad A a la ciudad B, una ruta pasa por la ciudad B yla otra por la ciudad C, durante el periodo de 7 a 8:00 am. Los tiempos son los sig.: A-B 30 min A-C 15 min B-D 15 min C-D 15 min Las capacidades mximas son las rutas: A-B (1000 vehculos) A-C (3000 vehculos) B-D (4000 vehculos) C-D (2000 vehculos) Represente como una red de flujo de trafico de A a D durante el periodode 7 a 8:00 am. 13. Un algoritmo de flujo mximo Sea G una red de transporte, un flujo mximo en G esun flujo con valor mximo. Comenzar con cierto flujo inicial e incrementar demanera iterativa el valor del flujo hasta que no puedamejorarse ms. El flujo resultante ser el flujo mximo. Podemos considerar como flujo inicial aquel en el queflujo en cada arista es igual a 0. Para incrementar el valor de un flujo dado, debemosdeterminar un camino de la fuente al sumidero eincrementar el flujo a lo largo de ese camino. 14. Un camino de a a z en este grafo no dirigido. Si una arista e en P esta dirigida, decimos que e estaorientada en forma propia (con respecto de P). En caso contrario decimos que e esta orientada en formaimpropia (con respecto de P) 15. Si podemos determinar un camino P de la fuente al sumidero en dondecada arista de P est orientada en forma propia y el flujo en cada arista esmenor que la capacidad de la arista, es posible aumentar el valor de flujo. Consideremos el camino de a a z de la sig. figura. Todas las aristas de Pestn orientadas en forma propia. El valor del flujo en esta red se puede incrementar en 1 16. Tambin es posible incrementar el flujo enciertos caminos de la fuente al sumidero quetengan aristas orientadas en forma propia eimpropia. Sea P un camino de a a z y sea x un vrtice enP, que no sea a ni z. Existen 4 posibilidades 17. Teorema. Sea P un camino de a a z en una red G Para cada arista (i,j) de P, orientada en forma propia, tal que el flujo de laarista sea menor que la capacidad. Para cada arista orientada en forma impropia el flujo de la arista debe sermayor a 0. Sea entonces =min X Donde X consta de la suma de los flujos orientado en forma propia o impropia. Esdecir C-F, para todas las aristas orientadas en forma propia e impropia. Entonces F* es un flujo cuyo valor es unidades mayor que el valor de F 18. Idea principal del algoritmo de flujomximo.1. Iniciar con un flujo (ejemplo, un flujo tal que el flujo en cada arista sea 0)2. Buscar un camino que satisfaga las condiciones del teorema anterior, si no existe tal camino se termina y el flujo es mximo.3. Se incrementa el flujo del camino en , donde se define como el teorema y se regresa al punto 2. 19. Algoritmo para determinar el flujo mximoen una red. (Algoritmo Ford-Fulkerson) En algunas redes circula por los arcos un flujo (envo ocirculacin de unidades homogneas de algn producto:automviles en una red de carreteras, litros de petrleo enun oleoducto, bits por un cable de fibra ptica) desde elorigen o fuente al destino, tambin denominado sumidero Los arcos tienen una capacidad mxima de flujo, y se tratade enviar desde la fuente al sumidero la mayor cantidadposible deflujo, detalmaneraque:El flujo es siempre positivo y con unidades enteras. El flujo a travs de un arco es menor o igual que lacapacidad. El flujo que entra en un nodo es igual al que sale de l. 20. En el caso de que el origen o el destino no existan en el problema, seaaden ficticiamente utilizando arcos unidireccionales de capacidadinfinita, como en grafo mostradoa continuacin: 21. Corte: Un corte define una serie de arcos cuyasupresin de la red causa una interrupcincompleta del flujo entre el origen y el destino. La capacidad de corte es igual a la suma de lascapacidades de los arcos asociados. Entre todos los cortes posibles en la red , el cortecon la menor capacidad proporciona el flujomximo en la red. El siguiente grafo ilustra 3 cortes: el Corte 1 concapacidad 60, el Corte 2 con capacidad 110 y elCorte 3 con capacidad 70. 22. Todo lo que podemos obtener de los 3 cortes es que el flujo mximo en la red noexcede de 60 unidades. No podemos saber cual es el flujo mximo hasta que se hayan enumerado todoslos cortes en la red: Las capacidades se identifican como sigue: por ejemplo, para el arco (3,4), el lmitede flujo es de 10 unidades de 3 a 4 y de 5unidades de 4 a 3. 23. Algoritmo F-F El algoritmo de Ford-Fulkerson proponebuscar caminos en los que se pueda aumentarel flujo, hasta que se alcance el flujo mximo. La idea es encontrar una ruta de penetracincon un flujo positivo neto que una los nodosorigenydestino. 24. Consideraremos las capacidades iniciales del arco queune el nodo i y el nodo j como Cij y Cji. Estas capacidades iniciales irn variando a medida queavanza el algoritmo, denominaremos capacidadesresiduales a las capacidades restantes del arco una vezpasa algn flujo por l, las representaremos como cij ycji.Para un nodo j que recibe el flujo del nodo i, definimosuna clasificacin [aj,i] donde aj es el flujo del nodo i alnodo j.Los pasos del algoritmo se definen como sigue: 25. Paso 1: Inicializamos las capacidadesresiduales a las capacidades iniciales, hacemos(cij,cji)=(Cij,Cji) para todo arco de la red.Suponiendo el nodo 1 como el nodo origen,hacemos a1= y clasificamos el nodo origencon *,-]. Tomamos i=1 y vamos al paso 2. 26. Paso 2: Determinamos Si como un conjuntoque contendr los nodos a los que podemosacceder directamente desde i por medio deun arco con capacidad positiva Si Si contiene algn nodo vamos al paso 3, enel caso de que el conjunto sea vaco saltamosal paso 4. 27. Paso 3: Obtenemos kSi como el nodo destinodel arco de mayor capacidad que salga de i haciaun nodo perteneciente a Si. Es decir, cik = max{cij} con jSi. Hacemos ak=cik y clasificamos el nodo k con[ak,i]. Si k es igual al nodo destino o sumidero, entonceshemos encontrado una ruta de penetracin,vamos al paso 5. En caso contrario continuamos con el camino,hacemos i=k y volvemos al paso 2. 28. Paso 4 (retroceso): Si i=1, estamos en el nodoorigen, y como Si es vaco, entonces nopodemos acceder a ningn nodo, ni encontraralgn nuevo camino, hemos terminado,vamos al paso 6.En caso contrario, i1, le damos al valor i el delnodo que se ha clasificado inmediatamenteantes, eliminamos i del conjunto Si actual yvolvemos al paso 2. 29. Paso 5: Llegados a este paso tenemos unnuevo camino: Np={1,k1,k2,...,n}, esta ser lap-sima ruta de penetracin desde el nodoorigen al nodo destino. El flujo mximo a lo largo de esta ruta ser lacapacidad mnima de las capacidadesresiduales de los arcos que forman el camino,es decir: fp=min{a1,ak1,ak2,...,an}. 30. La capacidad residual de cada arco a lo largode la ruta de penetracin se disminuye por fpen direccin del flujo y se incrementa por fpen direccin inversa, es decir, para los nodos iy j en la ruta, el flujo residual se cambia de la(cij,cji) actual a (cij-fp,cji+fp)si el flujo es de i aj, o (cij+fp,cji-fp) si el flujo es de j a iInicializamos i=1 y volvemos al paso 2 paraintentar una nueva ruta de penetracin. 31. Paso 6 (solucin): Una vez aqu, hemosdeterminado m rutas de penetracin. El flujomximo en la red ser la suma de los flujosmximos en cada ruta obtenida, es decir:F=f1+f2+...+fm. 32. Teniendo en cuenta que las capacidadesresiduales inicial y final del arco (i, j) las dan(Cij,Cji) y (cij,cji) respectivamente, el flujomximo para cada arco se calcula como sigue:sea (, )=(Cij-cij, Cji-cji), si >0, el flujoptimo de i a j es , de lo contrario, si >0, elflujo ptimo de j a i es . Es imposible lograr que tanto como seanpositivas. 33. Ejemplo 34. Iteracin 1 Determinamos las residuales iniciales (cij,cji) iguales a las capacidades iniciales (Cij,Cji). Paso 1: Hacemos ai=, y clasificamos el nodo 1 con [a1,-]. Tomamos i=1. Paso 2: S1={2,3,4} (no vaco). Paso 3: k=3 ya que c13=max{c12,c13,c14}={20,30,10}=30. Hacemos a3=c13=30 y clasificamos el nodo 3 con [30,1]. Tomamos i=3 y repetimos el paso 2. Paso 2: S3={4,5} 35. Paso 3: k=5 y a5=c35=max{10,20}=20. Clasificamos elnodo 5 con [20,3]. Logramos la penetracin, vamos alpaso 5. Paso 5: La ruta de la penetracin se determina de lasclasificaciones empezando en el nodo 5 y terminando enel nodo 1, es decir, 5[20,3]3[30,1]1.Entonces laruta es N1={1,3,5} y f1=min{a1,a3,a5}={,30,20}=20. Las capacidades residuales a lo largo de esta ruta son: (c13,c31)=(30-20, 0+20)=(10,20) (c35,c53)=(20-20, 0+20)=(0,20) 36. Iteracin 2 Paso 1: Hacemos ai=, y clasificamos el nodo 1 con [a1,-]. Tomamos i=1.Paso 2: S1={2,3,4}. Paso 3: k=2 y a2=c12=max{20,10,10}=20. Clasificamos el nodo 2 con [20,1]. Tomamos i=2 y repetimos el paso 2.Paso 2: S2={3,5} Paso 3: k=3 y a3=c23=max{30,40}=40. Clasificamos elnodo 3 con [40,2]. Tomamos i=3 y repetimos el paso 2. 37. Paso 2: S3={4} (c35=0, el nodo 1 ya ha sido clasificado y el nodo 2 cumple ambascondiciones, por tanto los nodos 1, 2 y 5 no pueden ser incluidos en S3). Paso 3: k=4 y a4=c34=10. Clasificamos el nodo 4 con [10,3]. Tomamos i=4 yrepetimos el paso 2. Paso 2: S4={5} Paso 3: k=5 y a5=c45=20. Clasificamos el nodo 5 con [20,4]. Logramos la penetracin, vamos al paso 5.Paso 5: La ruta de la penetracin es:5[20,4]4[10,3]3[40,2]2[20,1]1. Entonces la ruta es N2={1,2,3,4,5} y f2=min{,20,40,10,20}=10.Las capacidades residuales a lo largo de esta ruta son: (c12,c21)=(20-10, 0+10)=(10,10) (c23,c32)=(40-10, 0+10)=(30,10) (c34,c43)=(10-10, 5+10)=(0,15) (c45,c54)=(20-10, 0+10)=(10,10) 38. Iteracin 3 Paso 1: Hacemos ai=, y clasificamos el nodo 1 con [a1,-]. Tomamos i=1. Paso 2: S1={2,3,4}. Paso 3: k=2 y a2=c12=max{10,10,10}=10, rompemos el empate arbitrariamente.Clasificamos el nodo 2 con [10,1]. Tomamos i=2 y repetimos el paso 2. Paso 2: S2={3,5} Paso 3: k=3 y a3=c23=max{30,30}=30. Clasificamos el nodo 3 con [30,2]. Tomamosi=3 y repetimos el paso 2. Paso 2: S3 vaco ya que c34=c35=0. Vamos al paso 4 para retroceder. 39. Paso 4: La clasificacin [30,2] nos dice que el nodo inmediatamenteprecedente es el 2. Eliminamos el nodo 3 de una consideracinposterior en esta iteracin. Tomamos i=2 y repetimos el paso 2. Paso 2: S2={5} Paso 3: k=5 y a5=c25=30. Clasificamos el nodo 5 con [30,2].Logramos la penetracin, vamos al paso 5. Paso 5: La ruta de la penetracin es: 5[30,2]2[10,1]1. Entonces la ruta es N2={1,2,5} y f3=min{,10,30}=10. Las capacidades residuales a lo largo de esta ruta son: (c12,c21)=(10-10, 10+10)=(0,20) (c25,c52)=(30-10, 0+10)=(20,10) 40. Iteracin 4 Paso 1: Hacemos ai=, y clasificamos el nodo 1 con [a1,-]. Tomamos i=1. Paso 2: S1={3,4}. Paso 3: k=3 y a3=c13=max{10,10}=10. Clasificamos el nodo 3 con [10,1].Tomamos i=3 y repetimos el paso 2. Paso 2: S3={2} Paso 3: k=2 y a2=c32=10. Clasificamos el nodo 2 con [10,3]. Tomamos i=2y repetimos el paso 2. 41. Paso 2: S2={5} Paso 3: k=5 y a5=c25=20. Clasificamos el nodo 5 con[20,2]. Logramos la penetracin, vamos al paso 5. Paso 5: La ruta de la penetracin es:5[20,2]2[10,3]3[10,1]1.Entonces la ruta esN4={1,3,2,5} y f4=min{,10,10,20}=10. Las capacidades residuales a lo largo de esta ruta son: (c13,c31)=(10-10, 20+10)=(0,30) (c32,c23)=(10-10, 30+10)=(0,40) (c25,c52)=(20-10, 10+10)=(10,20) 42. Iteracin 5 Paso 1: Hacemos ai=, y clasificamos el nodo 1 con [a1,-]. Tomamos i=1. Paso 2: S1={4}. Paso 3: k=4 y a4=c14=10. Clasificamos el nodo 4 con [10,1]. Tomamos i=4 yrepetimos el paso 2. Paso 2: S4={3,5} Paso 3: k=3 y a3=c23=max{15,10}=15. Clasificamos el nodo 3 con [15,4]. Tomamosi=3 y repetimos el paso 2. Paso 2: S3 vaco ya que c32=c34=c35=0. Vamos al paso 4 para retroceder. 43. Paso 4: La clasificacin [15,4] nos dice que el nodo inmediatamenteprecedente es el 4. Eliminamos el nodo 3 de una consideracinposterior en esta iteracin. Tomamos i=4 y repetimos el paso 2. Paso 2: S4={5} Paso 3: k=5 y a5=c45=10. Clasificamos el nodo 5 con [10,4]. Logramos la penetracin, vamosal paso 5. Paso 5: La ruta de la penetracin es:5[10,4]4[10,1]1.Entonces la ruta es N2={1,4,5} yf3=min{,10,10}=10. Las capacidades residuales a lo largo de esta ruta son: (c14,c41)=(10-10, 0+10)=(0,10) (c45,c54)=(10-10, 10+10)=(0,20) 44. Iteracin 6 No son posibles ms penetraciones, debido a que todos los arcosfuera del nodo 1 tienen residuales cero. Vayamos al paso 6 paradeterminar la solucin. Paso 6: El flujo mximo en la red es F=f1+f2+...+f5=60 unidades. El flujo en los diferentes arcos se calcula restando las ltimasresiduales obtenidas en la ltima iteracin de las capacidadesiniciales: 45. Teorema del corte mnimo y flujomximo. El teorema del corte mnimo y flujo mximose utiliza para encontrar ahorros en las rutasque se determinan. Estudiar el acoplamiento as como algunostipos de acoplamientos que pueden existir enuna red, as como tambin la forma deexpresarlos. 46. Corte mnimo En lo que respecta a las redes, un corte es unconjunto en el cual quedan dos partes disjuntasdel conjunto de vrtices, V1 y V2 que, situados enla red, dejan la fuente en una de ellas y alsumidero en la otra Definicin de capacidad de un corte Se llama capacidad de un corte a la suma: Capacidad (v,w) ; v V1 , w V2 V1 es la parte que contiene a la fuente V2 es la parte que contiene al sumidero 47. Sea F un flujo en G y sea (P, P) un corte en G. Entonces lacapacidad de (p, p) es mayor o igual que el valor de F; es decir: i P JP Cij i F ai La notacin i : Significa la suma sobre todos los vrtices i Demostracin: observe j P iP Cji = j P iP F ij Pues cada lado de la ecuacin es simplemente la suma de Fij sobretodas las de i, j P El corte minimal nos da la mnima capacidad del corte efectuado enel grafo. 48. FLUJO MXIMO Y EL CORTE MNIMO Sea F un flujo en G y sea (P, P) un corte en G si laigualdad se cumple entonces el flujo es mximo y elcorte es mnimo si y solo si: 1) FI J = CI J para i P, J P 2) Fij =0 para i P, J P El valor del flujo maximal de una red es igual a lacapacidad del corte minimal que se puede aplicar a lared. Se puede obtener, por tanto el corte minimal de unared, conociendo el flujo maximal de la red obtenidomediante la aplicacin del algoritmo anteriormentedefinido. 49. Metodologa En el ltimo grafo del algoritmo de flujo maximal, de todos los cortesposibles, sern cortes minimales aquellos que estn formados por aristasen las que el valor de la capacidad coincida con el valor del flujo. Paramejor comprensin ver ejemplo: La sig. figura, si hacemos P={a,b,d} entonces K={c,e,f,z} y (P,K) es un corteen G. 50. Acoplamientos A=J2 Y J5 B=J2 Y J5 C=J1, J3, J4 Y J5 D=J2 Y J5 Supngase que 4 personas A, B, C, y D llenan solicitudes para cinco trabajos j1,j2, j3, j4 y j5. Considrese que el solicitante A est calificado para j2 y j5, el solicitante B esta calificadopara j2 y j5, el solicitante C j1, j3, j4 , j5 y D= j2 y j5 51. La situacin puede ser modelada por el grafo de lafigura anterior donde los vrtices representan a lossolicitantes y a los trabajos. Un lado une a un solicitante con el trabajo para el cualesta calificado. Es posible demostrar que no se puede acoplar untrabajo con cada solicitante; basta considerar que A, By D estn calificados solo para los trabajo J2 y J5. Si A y B se les asigna un trabajo, no queda trabajoalguno para D. Por lo tanto no existe asignacin de trabajo para A, B, Cy D. 52. En el ejemplo anterior consiste en hallartrabajos para las personas calificadas. Un acoplamiento maximal determina trabajospara el mximo numero de personas y seindican con lneas gruesas. Un acoplamiento completo halla trabajo paratodos los solicitantes. Se prueba que el grafo anterior no es un pareocompleto. 53. La definicin formal es: sea G un grafo dirigidobipartito con conjuntos disjuntos de vrtices V y W,en el cual los lados estn dirigidos desde los vrticesde V a W (cualquier vrtice de G esta en V o en W,pero no en ambos) un acoplamiento para G es unconjunto de lados E los cuales no tienen vrticescomunes. Un acoplamiento maximal para G es un acoplamientoE que contiene el mximo numero de lados completos.Un acoplamiento completo para G es un acoplamientoE que tiene la siguiente propiedad: 54. Si v V, entonces (v,w) E, para algn wW. Ejemplo: En la siguiente figura el acoplamiento con lneas gruesas que aparece enmaximal y completo. Este ejemplo tambin puede modelarse como unproblema de redes. 55. Modele el problema de esta figura como unproblema de redes: 56. En primer lugar se asigna la capacidad 1 acada lado del grafo. A continuacin se agrega una superfuente a ylados con capacidad 1 que van desde a a cadalado uno de A,B,C y D. finalmente, se introduce un superdeposito z ylados de capacidad 1 en cada lado que van deJ1,J2, J3, J4 Y J5 a z . 57. El teorema siguiente relaciona las redes acopladas y losflujos. Sea G un grafo dirigido bipartito con conjuntos disjuntos devrtices V y W, en el cual los lados estn dirigidos de losvrtices de V a los vrtices de W (cualquier vrtice de Gest en V o en W, pero no en ambos). Un flujo en la red de acoplamiento proporciona un pareoen G. El vrtice v V es pareado con el vrtice w W si y solo siel flujo en el lado (v, w) es 1. Un flujo maximal corresponde a un acoplamiento maximal. Un flujo de valor V corresponde a un acoplamientocompleto.