Está en la página 1de 165

MTODOS CUANTITATIVOS PARA OPTIMIZACIN

1. REDES DE OPTIMIZACN
2

1. MODELOS DE RED

Muchos problemas de optimizacin importantes se analizan mejor por medio de una representacin grfica o de red.

1. MODELOS DE RED
Se estudiaran cuatro modelos especficos de red: Problemas de trayectoria ms corta Problemas de flujo mximo Problemas de rbol de expansin mnima Problemas de red de costo mnimo Y Modelos de programacin de proyecto CPM- PERT (Tambin se estudian problemas de redes en flujo mnimo o costo mnimo (FMOCM)
4

DEFINICIONES BSICAS

Una grfica o red: Se define mediante dos conjuntos de smbolos: nodos y arcos. Nodos: Conjunto de puntos extremos o vrtices. A los vrtices de una grfica o red se le llaman nodos. Un arco consiste en un par ordenado de puntos extremos y representa una posible direccin de movimiento que podra ocurrir entre puntos extremos.
5

1. DEFINICIONES BSICAS
1.

2.
3.

Red Nodo Arco


3

10

1. DEFINICIONES BSICAS

Cadena: Es una secuencia de arcos tal que cada arco tiene exactamente un vrtice en comn con el arco previo.

Una Trayectoria: Es una cadena en la que el nodo terminal de cada arco es idntico al nodo inicial del arco siguiente.

1. DEFINICIONES BSICAS
1.

2.

Cadena Trayectoria

(1, 2) - (2, 3) - (4, 3) es una cadena (1, 2) - (2, 3) (3, 4) es una cadena y una trayectoria

3
8

1.1 PROBLEMAS DE TRAYECTORA MS CORTA

Considere el ejemplo de Powerco. Suponga que cuando se enva potencia de la planta 1 (nodo 1) a la ciudad 1(nodo 6), esta debe pasar por subestaciones de retransmisin(nodos 2 a 5). Tenga presente que no se puede retransmitir entre la subestacin 4 a 5. Powerco quiere que la potencia se enve de la planta 1 a la ciudad 1 para que recorra la distancia mnima.
4

3 2

PLANTA 1

CIUDAD 1

6
3

SUBESTACIONES

1.1 PROBLEMAS DE TRAYECTORA MS CORTA

PLANTA 1

3 2

CIUDAD 1

6
3

SUBESTACIONES
min = 13 + 35 +56 = 3 + 3 + 2 = min = 12 + 25 +56 = 4 + 2 + 2 = min = 12 + 24 +46 = 4 + 3 + 2 =
10

1.1 PROBLEMAS DE TRAYECTORA MS CORTA

Acabo de comprar (en el tiempo 0) un automvil nuevo $12,000. El costo de mantener un automvil durante un ao depende de su edad al comienzo del ao, como se da en la tabla 1. Para evitar costos de mantenimiento altos con un automvil ms antiguo, podra entregar a cuenta mi automvil y comprar uno nuevo. El precio que recibo por dejar a cuenta mi automvil, depende, de la edad del automvil al momento del intercambio (ver Tabla 2). Para simplificar los clculos, suponga que en cualquier instante el costo de un automvil nuevo son $12,000. El objetivo es minimizar el costo neto (costo de compra + costo de mantenimiento dinero recibido de intercambio ) en que se incurre en los cinco aos siguientes. Formule este problema como uno de trayectoria ms corta:
11

1.1 PROBLEMAS DE TRAYECTORA MS CORTA


Tabla 1. Costo del Mantenimiento del Automvil Tabla 2. Precios de Intercambio del Automvil

Edad del Automvil (aos) 0 1 2 3 4

Costo de Manto. Anual 2,000 4,000 5,000 9,000 12,000

Edad del Automvil (aos) 1 2 3 4 5

Precio de Intercambio 7,000 6,000 2,000 1,000 0

= +

12

1.1 PROBLEMAS DE TRAYECTORA MS CORTA


Tabla 1. Manto.
Edad (aos) 0 1 2 3 4 Costo de Manto. Anual 2,000 4,000 5,000 9,000 4 12,000 5 0 1,000

Tabla 2. Intercambio
Edad (aos) 1 2 3 Precio de Intercambio 7,000 6,000 2,000

Costo Automvil = $12,000


= +

= 2 + 12 7 = 7 = 2 + 4 + 12 6 = 12 = 2 + 4 + 5 + 12 2 = 21 = 2 + 4 + 5 + 9 + 12 1 =31 = 2 + 4 + 5 + 9 + 12 + 12 0 = 44 = 2 + 12 7 = 7 = 2 + 4 + 12 6 = 12 = 2 + 4 + 5 + 12 2 = 21 = 2 + 4 + 5 + 9 + 12 1 = 31 = 2 + 12 7 = 7 = 2 + 4 + 12 6 = 12 = 2 + 4 + 5 + 12 2 = 21 = 2 + 12 7 = 7 = 2 + 4 + 12 6 = 12 = 2 + 12 7 = 7

13

1.1 PROBLEMAS DE TRAYECTORA MS CORTA

Una estrategia donde corresponde la trayectoria 1-3-6 es decir el costo C13 + C36 = 33

14

1.1 PROBLEMAS DE TRAYECTORA MS CORTA

El algoritmo de Dijkstra, tambin llamado Algoritmo de Caminos Mnimos, es un algoritmo para la determinacin del camino ms corto dado un vrtice origen al resto de vrtices en un grafo con pesos en cada arista. Su nombre se refiere a Edsger Dijkstra, quien lo describi por primera vez en 1959.

15

1.1 PROBLEMAS DE TRAYECTORA MS CORTA


EJEMPLO Una persona tiene que desplazarse a diario del pueblo A al pueblo H. Est estudiando cul es el trayecto ms corto usando un mapa de carreteras. Las carreteras y sus distancias estn representadas en la figura siguiente:

12Km

B
5Km

3Km

E D
8Km

7Km

A
2Km 4Km

G
6Km

3Km
16

5Km

1.1 PROBLEMAS DE TRAYECTORA MS CORTA


12 Km

B
5 Km

3 Km

E
8 Km

7 Km

A
2 Km 4 Km

H
G
3 Km

6 Km

5 Km

ABEH 12 + 3 + 7 = 22 Km ABDGH 12 + 5 + 8 + 3 = 28 Km ACFGH 4 + 2 + 8 + 3 = 17 Km ACDGH 4 + 6+ 5 + 3 = 18 Km

17

1.1 PROBLEMAS DE TRAYECTORA MS CORTA

En el algoritmo de Dijkstra, se utilizan etiquetas temporales y etiquetas permanentes. El nodo 1 se etiqueta permanente 0, y despus cada arco se etiqueta con infinito. Para as luego obtener la etiqueta temporal:

Se Cambian los dems por Infinitos

, 3 1, 1 B
1

1,

A
2,
2
1

1
18

1.1 PROBLEMAS DE TRAYECTORA MS CORTA


Se coloca una Etiqueta Permanente [1] El valor Acumulado 3

Etiqueta 1

1,

D
A
2,
2
1

C
19

1.1 PROBLEMAS DE TRAYECTORA MS CORTA

Etiqueta 1

1,

D
A
2,
2
1

C
Etiqueta 2

Se coloca una Etiqueta Permanente [2] El valor Acumulado

20

1.1 PROBLEMAS DE TRAYECTORA MS CORTA

Etiqueta 1

1,

4,

D
A
2,
2
1

Etiqueta 3
1

3,

C
21

Etiqueta 2

1.1 PROBLEMAS DE TRAYECTORA MS CORTA


Etiqueta 12
12 Km

Etiqueta 15
3 Km

B
5 Km

E
8 Km

7 Km

Etiqueta 17

Etiqueta 6

A
2 Km 4 Km

H
Etiqueta 14

G
6 Km

3 Km

C
Etiqueta 4

F
Etiqueta 10

5 Km

ABEH 12 + 3 + 7 = 22 Km ABDGH 12 + 5 + 8 + 3 = 28 Km ACFGH 4 + 2 + 8 + 3 = 17 Km ACDGH 4 + 6+ 5 + 3 = 18 Km

22

1.1 PROBLEMAS DE TRAYECTORA MS CORTA


Resolviendo un modelo de redes como un problema de transbordo

23

1.1 PROBLEMAS DE TRAYECTORA MS CORTA


Resolviendo un modelo de redes como un problema de transbordo
NODO FROM/ TO 1 2 3 4 2 4 0 M M M 3 3 M 0 M M 4 M 3 M 0 M 5 M 2 3 M 0 6 M M M 2 2
SUMINISTRO

1 1 1 1

5
DEMANDA

1
24

1.1 PROBLEMAS DE TRAYECTORA MS CORTA Resolviendo un modelo de redes como un problema de transbordo
NODO FROM/ TO 1 2 3 4 5
DEMANDA

2 4

3 3

4 M 3 M 0 M

5 M 2 3 M 0

6 M M M 2 2

SUMINISTRO

1
0 M M M

1
M 0 M M

1 1 1 1 1
25

1.1 PROBLEMAS DE TRAYECTORA MS CORTA Resolviendo un modelo de redes como un problema de transbordo
NODO FROM/ TO 1 2 3 4 5
DEMANDA

2 4

3 3

4 M 3 M 0 M

5 M 2 3 1 M 0

6 M M M 2 2

SUMINISTRO

1
0 M M M M 0 M M

1 1 1 1 1
26

1.1 PROBLEMAS DE TRAYECTORA MS CORTA Resolviendo un modelo de redes como un problema de transbordo
NODO FROM/ TO 1 2 3 4 5
DEMANDA

2 4

3 3

4 M 3 M 0 M

5 M 2 3 1 M 0

6 M M M 2 2 1

SUMINISTRO

1
0 M M M M 0 M M

1 1 1 1 1
27

= + + =

1.1 PROBLEMAS DE TRAYECTORA MS CORTA

28

1.1 PROBLEMAS DE TRAYECTORA MS CORTA


MIN 4X12 + 3X13 + 3X24 + 2X25 + 2X46 + 3X35 + 2X56 S.T. X12 + X13 = 1 X24 + X25 - X12 = 0 X35 - X13 = 0 X46 - X24 = 0 X56 - X25 - X35 = 0 X46 + X56 = 1 END INT X12 INT X13 INT X24 INT X25 INT X35 INT X46 INT X56

29

1.1 PROBLEMAS DE TRAYECTORA MS CORTA


MIN 4X12 + 3X13 + 3X24 + 2X25 + 2X46 + 3X35 + 2X56 S.T. X12 + X13 = 1 X24 + X25 - X12 = 0 X35 - X13 = 0 X46 - X24 - X25 = 0 X56 - X25 - X35 = 0 X46 + X56 = 1 END INT X12 INT X13 INT X24 INT X25 INT X35 INT X46 INT X56

30

1.1 PROBLEMAS DE TRAYECTORA MS CORTA


MIN 4X12 + 3X13 + 3X24 + 2X25 + 2X46 + 3X35 + 2X56 S.T. X12 + X13 = 1 X24 + X25 - X12 = 0 X35 - X13 = 0

X46 - X24 - X25 = 0 X56 - X25 - X35 = 0 X46 + X56 = 1


END INT X12 INT X13 INT X24 INT X25 INT X35 INT X46 INT X56

31

32

1.1 PROBLEMAS DE TRAYECTORA MS CORTA

33

1.1 PROBLEMAS DE TRAYECTORA MS CORTA

34

1.2 PROBLEMAS DE FLUJO MXIMO


Existe un flujo que viaja desde un nico lugar de origen haca un nica lugar de destino a travs de arcos que conectan nodos intermediarios. Los arcos tienen una capacidad mxima de flujo, y se trata de enviar desde la fuente al destino la mayor cantidad posible de flujo.

35

1.2 PROBLEMAS DE FLUJO MXIMO


Flujo: Envo o circulacin de unidades homogneas de algn producto o sustancia a travs de una superficie en una unidad de tiempo
Capacidad de Flujo: Es la mxima cantidad de flujo que puede ingresar por el nodo Fuente y salid por el nodo Destino. Nodo Origen: Es el nodo por el cual el flujo ingresa

Nodo Destino: Es el nodo por el cual el flujo sale.


Capacidades Residuales: Capacidades restantes del arco una vez pasado algn flujo por el. 36

1.2 PROBLEMAS DE FLUJO MXIMO

37

1.2 PROBLEMAS DE FLUJO MXIMO

Este algoritmo se utiliza para reducir los costos de embotellamiento entre ciertos puntos de partida y destino en una red. Por ejemplo Sistema de Vas Pblicas Transporte de Petrleo desde la Refinera hasta diversos Centros de Almacenamiento. Distribucin de energa elctrica a travs de una red de alumbrado pblico.
38

1.2 PROBLEMAS DE FLUJO MXIMO


Sunco Oil quiere enviar la mxima cantidad posible de petrleo (por hora) va tubera del nodo So al Nodo Si, el petrleo debe pasar por alguna o todas las estaciones 1, 2 y 3. Los distintos arcos representan tuberas de diferentes dimetros.
El nmero mximo de barriles de petrleo (millones de barriles por hora) que se bombean por cada arco se muestran en la tabla 8. Cada nmero se llama una capacidad de arco. Formule un PL que permita determinar el nmero mximo de barriles de petrleo por hora que pueden enviarse de So a Si

39

1.2 PROBLEMAS DE FLUJO MXIMO

Posible Ruta
So
(2) 2

(0) 4 (2) 3

(0) 1 (2) 2

El nmero entre parntesis, es el flujo posible, es decir flujo factible

1
(0) 3

Si

a0 (2)
Arco
(S0, 1) (S0, 2) (1, 2) (1, 3) (3, Si) (2, Si)

So Si a0

Nodo Fuente: Porque el petrleo sale de l pero no entra Nodo Sumidero: Porque el petrleo fluye haca l y no sale.

Capacidad
2 3 3 4 1 2
40

Arco Artificial: . El flujo de a0, en realidad no es petrleo, de ah su nombre artificial

1.2 PROBLEMAS DE FLUJO MXIMO

Pasos
1. Encontrar un camino que vaya desde el origen hasta el destino y que sus arcos tengan capacidad de flujo mayor a cero. 2. Encontrar el arco de menor capacidad de flujo del camino seleccionado en el paso anterior. 3. Para el camino elegido, reducir la capacidad de flujo de arco menor a cada arco involucrado en el camino. 4. Repetir el paso 1.
41

1.2 PROBLEMAS DE FLUJO MXIMO

S013Si
4

1
2 3 So

3
1

Si
3

2 a0 (2)
42

1.2 PROBLEMAS DE FLUJO MXIMO

1
2 3 So

3
1

Si
3

2 a0 (2)
43

1.2 PROBLEMAS DE FLUJO MXIMO

4
1

1
2 3

So

Si
3

2 a0 (2)
44

1.2 PROBLEMAS DE FLUJO MXIMO

4
1

1
2 3

So

Si
3

2 a0 (2)

1 45

1.2 PROBLEMAS DE FLUJO MXIMO

S012Si
3

4
1

1
2 3

So

Si
3

2 a0 (2)

1 46

1.2 PROBLEMAS DE FLUJO MXIMO

4
1

1
2 3

So

Si
3

2 a0 (2)

1 47

1.2 PROBLEMAS DE FLUJO MXIMO

3 0 1

1
2 3
2

So

Si
3

2 1 a0 (2)

1 48

1.2 PROBLEMAS DE FLUJO MXIMO

3 0 1

1
2 3
2

So

Si
3

2 1 a0 (2)

1 49 1

1.2 PROBLEMAS DE FLUJO MXIMO

S02Si
3 0 1

1
2 3
2

So

Si
3

2 1 a0 (2)

1 50 1

1.2 PROBLEMAS DE FLUJO MXIMO

3 0 1

1
2 3
2

So

Si
3

2 1 a0 (2)

1 51 1

1.2 PROBLEMAS DE FLUJO MXIMO

3 0 1

1
2 3
2

So

Si
3
2

2 1 0 a0 (2)

1 52 1

1.2 PROBLEMAS DE FLUJO MXIMO

El resultado para encontrar el Flujo Mximo es de 1+1+1= 3


3 0 1

1
2 3
2

So

Si
3
2

2 1 0 a0 (2)

1 1 53 1

1.2 PROBLEMAS DE FLUJO MXIMO Sunco debe determinar cunto petrleo (por hora) enviar a cada arco (i, j).
3
(0) 4 (0) 1

(2) 2

(2) 3

(2) 2

So

Si

(0) 3 a0 (2)

= (, )

,1 = 2 13 = 0 12 = 2 ,2 = 0 3, = 0 2, = 2 , = 2

Para que un flujo sea factible, ste debe tener dos caractersticas:
1. 54 2. =

Antes de avanzar con los temas se llevar acabo una explicacin del uso de la paquetera LINGO en su versin 13.0.

Ejercicios 2 Copias 217-225 Comandos LINGO

55

USO DEL LINGO PARA PROBLEMA DE


TRANSPORTE
A
De Planta 1 Ciudad 1 $8 $9 $14 45 Ciudad 2 $6 $12 $9 20 Ciudad 3 $10 $13 $16 30 Ciudad 4 $9 $7 $5 30
Suministros (millones de kwh)

35 50 40

Planta 2
Planta 3
DEMANDA

Crear un modelo en LINGO


56

MODEL:
SETS: PLANTAS/P1,P2,P3/:CAPACIDAD; CIUDADES/C1,C2,C3,C4/:DEMANDA; LINKS(PLANTAS,CIUDADES):COSTO,ENVIAR; ENDSETS MIN=@SUM(LINKS:COSTO*ENVIAR); @FOR(CIUDADES(J):@SUM(PLANTAS(I):ENVIAR(I,J))>DEMANDA(J)); @FOR(PLANTAS(I):@SUM(CIUDADES(J):ENVIAR(I,J))<CAPACIDAD(I));

DATA:
CAPACIDAD = 35,50,40; DEMANDA = 45,20,30,30; COSTO = 8,6,10,9, 9,12,13,7,

14,9,16,5;
ENDDATA END
57

58

Se Ejecuta para Solucin con el mismo botn que LINDO

59

60

Aqu estn los envos a cumplir

61

Utilice las 3 paqueteras aprendidas el curso pasado, para comprobar resultado con LINGO

Ejercicios 3 Problemas 1-5 Pg. 407-408

62

1.2 PROBLEMAS DE FLUJO MXIMO


3
(0) 4 (2) 2
So

(0) 1

(2) 3

(2) 2

Si

(0) 3

a0 (2)

63

1.2 PROBLEMAS DE FLUJO MXIMO

64

1.2 PROBLEMAS DE FLUJO MXIMO


3
(0) 4 (2) 2
So

(0) 1

(2) 3

(2) 2

Si

(0) 3 MODEL: SETS: NODES/1..5/; ARCS (NODES,NODES) /1,2 1,3 2,3 2,4 3,5 4,5 5,1/ :CAP,FLOW; ENDSETS MAX=FLOW (5,1); @FOR (ARCS(I,J):FLOW(I,J)<CAP(I,J)); @FOR (NODES(I):@SUM(ARCS(J,I):FLOW(J,I)) =@SUM(ARCS(I,J):FLOW(I,J)));

a0 (2)

DATA: CAP = 2,3,3,4,2,1,1000; ENDDATA END

65

1.2 PROBLEMAS DE FLUJO MXIMO


3
(0) 4 (2) 2
So

(0) 1

(2) 3

(2) 2

Si

(0) 3

a0 (2)

66

1.2 PROBLEMAS DE FLUJO MXIMO


3
(0) 4 (2) 2
So

(0) 1

(2) 3

(2) 2

Si

(0) 3

a0 (2)

67

1.2 PROBLEMAS DE FLUJO MXIMO


3
(0) 4 (2) 2
So

(0) 1

(2) 3

(2) 2

Si

(0) 3

a0 (2)

68

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 2 FLUJO DE AEROLNEA EN MXIMO


Las aerolneas Fly-by-Night deben determinar cuntos vuelos de conexin diarios se pueden concretar entre Juneau, Alaska y Dallas, Texas. Los vuelos de conexin deben detenerse en Seattle y despus parar en los ngeles o Denver. Debido al espacio de aterrizaje limitado, FLy-by-Night est limitado a hacer el nmero de vuelos diarios entre los pares de ciudades que se muestran en la tabla. Establezca un problema de Flujo Mximo cuya solucin le permita saber a la aerolnea cmo maximizar el nmero de vuelos de conexin diarios de Juneau a Dallas
69

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 2 FLUJO DE AEROLNEA EN MXIMO 3


2 Juneau
So

1 Los ngeles Dallas 2 Si

1
Seattle

2
Denver

Ciudades Juneau Seattle (J, S) Seattle L.A. (S, L) Seattle Denver (S, De) L.A. Dallas (L, D) Denver Dallas (De, D)

Nmero Mximo de Vuelos Diarios 3 2 3 1 2


70

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 2 FLUJO DE AEROLNEA EN MXIMO 2


Juneau

3
1 Los ngeles Dallas 2 Si

MODEL: So SETS: NODES/1..5/; ARCS (NODES,NODES) /1,2 2,4 2,3 4,5 3,5 5,1/ :CAP,FLOW; ENDSETS MAX=FLOW (5,1); @FOR (ARCS(I,J):FLOW(I,J)<CAP(I,J)); @FOR (NODES(I):@SUM(ARCS(J,I):FLOW(J,I)) =@SUM(ARCS(I,J):FLOW(I,J))); DATA: CAP = 3,2,3,1,2,1000; ENDDATA END

1
Seattle

2
Denver

71

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 2 FLUJO DE AEROLNEA EN MXIMO

3
2 Juneau Los ngeles 1 Dallas 2 Si

3
So

1
Seattle

2
Denver

72

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 2 FLUJO DE AEROLNEA EN MXIMO

73

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 2 FLUJO DE AEROLNEA EN MXIMO 2


Juneau 3
So

3
1
Los ngeles 3 2 Dallas Si

1
Seattle

2
Denver

74

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 2 FLUJO DE AEROLNEA EN MXIMO 2


Juneau 3
So

3
1
Los ngeles 3 2 Dallas Si

1
Seattle

2
Denver

75

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 3 ACTIVIDAD DE CASAMENTERO


Cinco artistas varones y cinco artistas mujeres estn en un baile. El objetivo del casamentero es emparejar cada mujer con un hombre de manera que maximice el nmero de personas cuya pareja es compatible. La compatibilidad de los artistas se describe en la tabla siguiente. Dibuje una red que haga posible representa el problema de maximizar el nmero de parejas compatibles como un problema de flujo mximo
76

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 3 ACTIVIDAD DE CASAMENTERO

Angelina Jolie Johnny Depp

Cameron Daz

Charlize Theron

Megan Fox

Kristen Dunst

Will Smith
Leonardo Dicaprio Brad Pitt

C
C C C C C

Tom Cruise

C
77

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 3 ACTIVIDAD DE CASAMENTERO JD


1 1 1 1

AJ
1

WS
1

CD
1
1

So

LD
1
1 1

CT

Si

BP
1

MF
1

TC

78

KD

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 3 ACTIVIDAD DE CASAMENTERO 2


1 1 1 1

7
1

3
1

8
1
1

4
1
1 1

12

5
1

10
1

79

11

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 3 ACTIVIDAD DE CASAMENTERO


MODEL: SETS: NODES/1..12/; ARCS (NODES,NODES) /1,2 1,3 1,4 1,5 ,1,6 2,8 3,7 4,7 4,8 5,7 5,8 5,11 6,9 6,10 6,11 7,12 8,12 9,12 10,12 11,12 12,1/:CAP,FLOW; ENDSETS MAX=FLOW (12,1); @FOR (ARCS(I,J):FLOW(I,J)<CAP(I,J)); @FOR (NODES(I):@SUM(ARCS(J,I):FLOW(J,I)) =@SUM(ARCS(I,J):FLOW(I,J))); DATA: CAP = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,1000; ENDDATA END

80

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 3 ACTIVIDAD DE CASAMENTERO

81

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 3 ACTIVIDAD DE CASAMENTERO

82

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 3 ACTIVIDAD DE CASAMENTERO

83

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 3 ACTIVIDAD DE CASAMENTERO

84

1.2 PROBLEMAS DE FLUJO MXIMO EJEMPLO 3 ACTIVIDAD DE CASAMENTERO

85

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)

Su nombre viene dado por sus creadores, L. R. Ford, Jr. y D. R. Fulkerson.


El algoritmo de Ford-Fulkerson propone buscar caminos en los que se pueda aumentar el flujo, hasta que se alcance el flujo mximo. La idea es encontrar una ruta de penetracin con un flujo positivo neto que una los nodos origen y destino.

86

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)

Reglas Para Resolver un Problema por el mtodo Ford-Fulkerson


1. Elegir el mayor flujo del Nodo Origen 2. Seguir seleccionando los nodos siguientes bajo la misma forma. 3. Se obtiene el menor flujo que se traspaso del nodo origen al nodo destino k= min { a, b, c } 4. Se obtiene Cij, ji= (Ci k , Cj+k)

87

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
5

20

10

0 0

30 20

5
0

30

10

40

20

88

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
5

20

10

0 0

30 20

5
0

30

10

40

20

89

1. Se selecciona el Mayor Flujo del Nodo Origen

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
5

20

10

0 0

30 20

5
0

30

10

30,1 [ Flujo Mximo, Origen]

40

3 30,1

20

90

2. Se selecciona el Mayor Flujo

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
5

20

10

0 0

30 20

5
0

,
0 30 0 10

20,3

40

20

30,1
3. Se obtiene k k= min { ,30,20} k= 20

91

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
5

20

10 30 20

0 0

k1= 20
5

,
0 30 0 10

20,3
0

40

20

30,1

Ahora hay que remplazar los flujos por los calculados

, = , + 13,31 = 30 20, 0 + 20 = 10, 20 35,53 = 20 20, 0 + 20 = 0, 20

92

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
5

20

13,31 = 10, 20 35,53 = 0, 20


0
0

10

10 20

5
20

,
0
30 20 10

20,3

40

0
93

30,1

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
5

20

10

0 0

10 20

5
20

30

20

10

40

94

1. Se selecciona el Mayor Flujo del Nodo Origen

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
5

20

10

0 0

10 20

5
20

30

20

10

40

20,1

40,2
95

2. Se selecciona el Nodo con Mayor Flujo

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)

10,3
0

4
5

20

10

0 0

10 20

5
20

30

20

10

40

20,1
2. Se selecciona el Nodo con Mayor Flujo

40,2

Se selecciona el 10 en vez del 20, ya que la ruta del 20 (3 1 ) lleva al Nodo Origen por lo96 tanto no es una direccin viable

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)

10,3
0

4
5

20

10

0 0

20,4
5
20

10 20

30

20

10

40

20,1
2. Se selecciona el Nodo con Mayor Flujo

40,2
97

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)

10,3
0

4
5

20

10

0 0

20,4
5
20

10 20

30

20

10

40

20,1

40,2
98

3. Se obtiene k k= min { ,20,40,10,20} k= 10

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


10,3
0

4
5

20

k2= 10
0

10

10
20

5
20

20,4

30

20

10

40

20,1

40,2

Ahora hay que remplazar los flujos por los calculados = = = = 10, 10 30, 10 0, 15 10, 10

, = , + 12,21 = 20 10, 0 + 10 23,32 = 40 10, 0 + 10 34,43 = 10 10, 5 + 10 45,54 = 20 10, 0 + 10

99

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)

10,3
0
10

4
15

10
10

10
10

5
20

20,4

10

30

20 10

30

20,1

40,2

k= 10 12,21 = 10, 10 23,32 = 30, 10 34,43 = 0, 15100 45,54 = 10, 10

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
15

10

10

0 0

10 10

5
20

10

30

20

30

10

10,1
101

1. Se selecciona el Mayor Flujo del Nodo Origen

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
15

10

10

0 0

30,2
5
20

10 10

10

30

20

30

10

10,1
102

2. Se selecciona el Mayor Flujo

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
15

10

10

0 0

30,2
5
20

10 10

10

30

20

30

10

10,1
k =min{, 10, 30} = 10
103

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
15

10

10

0 0

30,2
5
20

10 10

10

30

20

30

10

Ahora hay que remplazar los flujos por los calculados

10,1
k =min{, 10, 30} = 10

, = , + 104 12,21 = 10 10, 10 + 10 = 0, 20 25,52 = 30 10, 0 + 10 = 20, 10

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
15

10

10

0 10

30,2
5
20

10 0

20

20

20

30

10

10,1

k3 =10 12,21 = 0, 20 25,52 = 20, 10

105

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
15

10

10

0
10

10

5
20

20

20

20

30

10

10,1
106

1. Se selecciona el Mayor Flujo del Nodo Origen

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
15

10

10

0
10

10

5
20

20

20

20

30

10

10,3

10,1
107

2. Se selecciona el Mayor Flujo

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
15

10

10

0
10

20,2
5
20

10

20

20

20

30

10

10,3

10,1
108

2. Se selecciona el Mayor Flujo

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0 10

4
15

10

0
10

20,2
5
20

10 0 20 20 30 10 20 0

10,3

10,1
109

3. Se obtiene k k= min { ,10,10,20} k= 10

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0 10

4
15

10

0
10

20,2
5
20

10 0 20 20 30 10 20 0

, 10,3

10,1
, = , + 13,31 = 10 10, 20 + 10 = 0, 30 32,23 = 10 10, 30 + 10 = 0, 40 25,52 = 20 10, 10 + 10 = 10, 20
110

k= 10

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0 10

4
15

10

0 20

20,2
5
20

20

10

30 0

10,3

40

13,31 = 0, 30 32,23 = 0, 40 25,52 = 10, 20

10,1
111

k4= 10

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
15

10

10,1
0 20

10

0 0

5
20

20

10

30 0

40

112

1. Se selecciona el Mayor Flujo del Nodo Origen

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
15

10

10,1
0 20

10

0 0

5
20

10,4

20

10

30 0

40

2. Se selecciona el Mayor Flujo

Se selecciona el 10 en vez del 15, ya que la ruta del 15 (4 3 ) lleva al Nodo Nmero 3 y el nico camino disponible despus 113 de ese Nodo es el Nodo Origen por lo tanto no es una direccin viable

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
15

10

10,1
0 20

10

0 0

5
20

10,4

20

10

30 0

40

3. Se obtiene k k= min { , 10, 10} k= 10

114

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


0

4
15

10

10,1
0 20

10

0 0

5
20

10,4

20

10

30 0

40

Ahora hay que remplazar los flujos por los calculados

k= 10

, = , + 13,31 = 10 10, 0 + 10 = 0, 10 32,23 = 10 10, 0 + 10 = 0, 20

115

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


10

4
15

20 20

0 0

5
20

20

10

30 0

40 6 Iteracin No hay flujo disponible debido a que todos los arcos fuera del nodo 1 tienen residual igual a 0.

k5= 10 13,31 = 0, 10 116 32,23 = 0, 20

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


10

4
15

20 20

0 0

5
20

20

10

30 0

k1 = 20 k2 = 10 k3 = 10 k4 = 10 k5 =10

40

Flujo Mximo = k1 +k2+k3+k4+k5= 60

60 Unidades es el flujo mximo que podemos pasar del nodo origen al nodo destino

117

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


10

4
1 5

0 0 0

20 2 0

5
2 0

Flujo Mximo = k1 +k2+k3+k4+k5 = 60

2 0

1 0

3 0

2
4 0 0

3
0

Se corroboro el resultado con WinQsb/ Network Modeling/ Maximal Flow Problem

118

1.2 MTODO DE FORD-FULKERSON (FLUJO MXIMO)


10

4
1 5

0 0 0

20 2 0

5
2 0

2 0

1 0

3 0

Flujo Mximo = k1 +k2+k3+k4+k5 = 60

2
4 0 0

3
0

Ejercicios 4 Problemas 1-16 Pg. 429 431

Se corroboro el resultado con WinQsb/ Network Modeling/ Maximal Flow Problem

119

1.3 PROBLEMAS DE RED DE COSTO MNIMO


Los problemas de transporte, asignacin, transbordo, trayectoria ms corta, flujo mximo y CPM son casos especiales del problema de red de costo mnimo (FMOCM). Cualquier FMOCM se puede resolver mediante una generalizacin del simplex de transporte llamado simplex de Red

Para definir un FMOCM, sea


Xij = Nmero de Unidades de Flujo enviadas del nodo i al nodo j por el arco (i, j) bi = Suministro Neto (Flujo Saliente Flujo entrante) al nodo i cij = Costo de Transportar1 unidad del flujo del nodo i al nodo j va el arco (i, j) Lij = Lmite Inferior del flujo por el arco (i, j), Si no hay lmite inferior Lij =0 120 Uij = Lmite Superior del flujo por el arco (i, j). Si no hay lmite Superior, sea Uij =

1.3 PROBLEMAS DE RED DE COSTO MNIMO Para definir un FMOCM, sea

s.a

= ( )

( )
121

1.3 PROBLEMAS DE RED DE COSTO MNIMO Representacin del Problema de Transporte como un FMOCM

9/9
Punto de Suministro 1

Punto de Demanda 1

Punto de Suministro 2

Punto de Demanda 2

122

1.3 PROBLEMAS DE RED DE COSTO MNIMO


S1

D1

S2

2
b = = = = 4 5 6 3

D2

Min z = X13 + 2X14 + 3X23 + 4X24 X13 1 0 1 0 X14 1 0 0 1 X23 0 1 1 0 X24 0 1 0 1 Restriccin Nodo 1 Nodo 2 Nodo 3 Nodo 4
123

1.3 PROBLEMAS DE RED DE COSTO MNIMO

124

1.3 PROBLEMAS DE RED DE COSTO MNIMO

Cada hora, un promedio de 900 automviles entra a la red de la figura 46 en el nodo 1 y busca viajar al nodo 6. El tiempo que tarda un automvil en recorrer cada arco se muestra en la tabla 31. En la Figura 46, el nmero de arriba de cada arco es el nmero mximo de automviles que pasan por cualquier punto en el arco durante un periodo de una hora. Formule un FMOCM que minimiza el tiempo total requerido para que los automviles viajen del nodo 1 al nodo 6.
RESOLVER CON CADA UNO DE ESTOS SOFTWARE

125

1.3 PROBLEMAS DE RED DE COSTO MNIMO


Tabla 31. Arco (1, 2) (1, 3) Tiempo (min ) 10 50

600 800

2
100

4
600

400

(2, 5) (2, 4)
(5, 6) (4, 5) (4, 6) (3, 5) (3, 4)

70 30
30 30 60 60 10

1
300 600

6
600

400

126

1.3 PROBLEMAS DE RED x12 x13 x24 x25 x34 x35 x45 x46 x56 DE COSTO MNIMO 0 0 1 1 0 0 0 0 0
1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 1 0 1 0 0 0 0 1 0 1 0 0 1 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0

Min z = 10x12 + 50x13 + 70x25 + 30x24 + 30x56 + 30x45 +60x46 + 60x35 + 10x34
b R
800

600

2
100

4
400

= = = = =

900 0 0 0 0 800 600 600 100

N1 N2 N3 N4 N5 N6
A(1,2) A(1,3) A(2,4) A(2,5) A(3,4)

1
300 600

600

3
400

600

= 900

Arco (1, 2) (1, 3) (2, 5) (2, 4) (5, 6) (4, 5) (4, 6) (3, 5) (3, 4)

Tiempo (min ) 10 50 70 30 30 30 60 127 60 10

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 1
0 0 0

0 0
1 0 0

0 0
0 1 0

0 0
0 0 1

300 400
600 400 600

A(3,5)
A(4,5) A(4,6) A(5,6)

1.3 PROBLEMAS DE RED DE COSTO MNIMO


600 800

2
100

4
400

1
300 600

600

SETS: 3 5 400 NODES/1..6/:SUPP; ARCS(NODES,NODES)/ 1,2 1,3 2,4 2,5 3,4 3,5 4,5 4,6 5,6/ :CAP,FLOW,COST; ENDSETS MIN=@SUM(ARCS:COST*FLOW); @FOR(ARCS(I,J):FLOW(I,J)< CAP(I,J)); @FOR(NODES(I):-@SUM(ARCS(J,I):FLOW(J,I)) +@SUM(ARCS(I,J):FLOW(I,J))=SUPP(I)); DATA: COST=10, 50, 30, 70, 10, 60, 30, 60, 30; SUPP= 900, 0, 0, 0, 0, -900; CAP=800, 600, 600, 100, 300, 400, 600, 400, 600; ENDDATA END

600

128

1.3 PROBLEMAS DE RED DE COSTO MNIMO

129

1.3 PROBLEMAS DE RED DE COSTO MNIMO

Ejercicios 5 Problemas 1 8. Pg. 454 456

130

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

El rbol de expansin mnima es apropiado para problemas en los cuales la redundancia es expansiva, o el flujo a lo largo de los arcos se considera instantneo

Este problema surge cuando todos los nodos de una red deben conectarse entre ellos, sin formar ciclos
131

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

Este problema se refiere a utilizar las ramas o arcos de la red para llegar a todos los nodos de la red, de manera tal que minimiza la longitud total. Si n= Nmero de nodos, entonces la solucin ptima debe incluir n-1 arcos

3 1 4

n = 6 nodos z = 5 arcos

132

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

La aplicacin de estos problemas de optimizacin se ubica en las redes de comunicacin elctrica, telefnica, carretera, ferroviaria, area, martima, etc.; donde los nodos representan puntos de consumo elctrico, telfonos, aeropuertos, computadoras. Y los arcos podran ser de alta tensin, cable de fibra ptica, rutas areas, etc.

133

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

ALGORITMO DE KRUSKAL
1. Busca el arco de menor peso y se marca 2. Se busca la arista de menor peso sin formar ciclos 6

B
1

A
C
5 2 4

5
3 6 6

134

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

B
1

A C
5 2 4 5 3 6

D E
6

F
135

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

B
1

A C
5 2 4 5 3 6

D E
6

F
136

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

B
1

A C
5 2 4 5 3 6

D E
6

F
137

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

B
1

A C
5 2 4 5 3 6

D E
6

F
138

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

B
1

A C
5 2 4 5 3 6

D E
6

F
139

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

B
A
1 5 3

C
2 4

D E F 6 NODOS 5 ARCOS Z =3 + 5 + 1 + 4 + 2 = 15

140

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

EJEMPLO 2
C A
5 7 8

B
9 7 15 6 8

E
9 11

141 G

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

EJEMPLO 2
C A
5 7 8

B
9 7 15 6 8

E
9 11

142 G

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

EJEMPLO 2
C A
5 7 8

B
9 7 15 6 8

E
9 11

143 G

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

EJEMPLO 2
C A
5 7 8

B
9 7 15 6 8

E
9 11

144 G

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

EJEMPLO 2
C A
5 7 8

B
9 7 15 6 8

E
9 11

145 G

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

EJEMPLO 2
C A
5 7 8

B
9 7 15 6 8

E
9 11

146 G

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

EJEMPLO 2
C A
5 7 8

B
9 7 15 6 8

E
9 11

F
FORMAN CICLOS

147 G

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

EJEMPLO 2
C A
5 7 7

D
6

E
9

7 NODOS F 6 ARCOS Z =6 + 5 + 7 + 7 + 5 + 9 = 39

148 G

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

EJEMPLO 3
I
1 9 6 5 7 9 4 3

H
2
5 1

A
7

B
8

C
2

G F
4
149

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

EJEMPLO 3
I
1 9 6 5 7 9 4 3

H
2
5 1

A
7

B
8

C
2

G F
4
150

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

EJEMPLO 3
I
1 3

H A
7 9 NODOS 8 ARCOS Z =8 + 7 + 1 + 3 + 1 + 4 + 2 + 2 = 28 1

B
8

C
2

G F
4
151

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA


6

B
1

A
3 5

C
5

D E
6
6

2
4

152

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

153

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA


6

B
1

A
3 5 6 6

C
5 2

154

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

B A
3 5

C
2 4

D F

155

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA


PUEDE ENCONTRARSE LA SOLUCIN PASO A PASO

156

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA


PUEDE ENCONTRARSE LA SOLUCIN PASO A PASO

Ejercicios 6 Problemas 1 4. Pg. 459


157

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

ALGORITMO DE PRIM
La diferencia con el Kruskal es que aqu se va en orden observando el costo menor dando continuidad al nodo 6

B
1

A
C
5 2 4

5
3 6 6

158

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

B
1

A C
5 2 4 5 3 6 6
159

D E F

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

B
1

A C
5 2 4 5 3 6 6
160

D E F

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

B
1

A C
5 2 4 5 3 6 6
161

D E F

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

B
1

A C
5 2 4 5 3 6 6
162

D E F

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

B
1

A C
5 2 4 5 3 6 6
163

D E F

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

B
1

A C
5 2 4 5 3 6 6
164

D E F

1.4 PROBLEMAS DE RBOL DE EXPANSIN MNIMA

B A
1 5 3

6 NODOS 5 ARCOS Z =3 + 5 + 1 + 4 + 2 = 15 C
2 4

D
E

F
Ejercicios 7 Problemas 1 2.

165