Professional Documents
Culture Documents
Sesión 8
Introducción a Redes
En general las redes pueden ser muy complejas por la cantidad excesiva de nodos, por tales
razones en teoría de redes los algoritmos pueden ser exactos (por ejemplo, el simplex) los cuales
se caracterizan por dar soluciones óptimas; heurísticos, por ejemplo, búsqueda tabú, redes
neuronales, glotones, etc. mismos que se caracterizan por dar soluciones aproximadas a las
óptimas. En ocasiones se combinan los heurísticos con los exactos, utilizando primeramente un
heurístico, para encontrar rápidamente una solución aproximada y posteriormente la exacta.
Cuando se trata de encontrar el camino más corto entre un origen y un destino, la técnica,
algoritmo o el modelo más común es el de la ruta más corta; aunque existen otros modelos de
redes que dependiendo de la complejidad de cómputo pueden ser usados, como es el caso de los
algoritmos heurísticos, por ejemplo la búsqueda Tabú. Uno de los problemas principales de las
redes se refiere a la minimización de las trayectorias.
En general las redes pueden trabajarse como problemas lineales o lineales enteros, al
utilizar un principio básico en teoría de redes:
“Siempre debe cumplirse el equilibrio en los nodos, flujo entrante debe ser igual al flujo
saliente”.
Por lo tanto, el capítulo inicia con un resumen de la terminología general de una red,
siguiendo con la solución de los problemas de redes más comunes por medio de la programación
lineal. Posteriormente se revisan los algoritmos clásicos de los modelos de redes y se revisan
algunas aplicaciones.
2. Arcos: Los arcos se etiquetan para dar nombres a los nodos en sus puntos terminales, por
ejemplo, AB es el arco entre los nodos A y B.
En un problema de programación lineal, las técnicas de flujo de redes están orientadas a
optimizar situaciones vinculadas a las redes de transporte, rutas de navegación de los cruceros,
rutas entre ciudades, y todas aquellas situaciones que puedan representarse mediante una red
donde los nodos denotan las estaciones o las ciudades, los arcos los caminos, y el flujo lo
1
Elaboró Dr. Eduardo Gutiérrez González
representan vehículos de transporte que pasan por la red; con el objetivo de encontrar la ruta más
corta entre un par de nodos que permita fluir productos para su comercialización o distribución.
3. Arcos dirigidos: Se dice que un arco es dirigido cuando el arco tiene flujo en una dirección, la
dirección se indica agregando una cabeza de flecha al final de la línea que representa
el arco.
Al etiquetar un arco dirigido con el nombre de los nodos que une, siempre se coloca
primero al nodo de donde viene y después el nodo a donde va, esto es, un arco dirigido del nodo
A al nodo B debe etiquetarse como AB y no como BA, otra manera es A B.
4. Ligadura: Se llama ligadura cuando el flujo a través de un arco ocurre en cualquier dirección,
se supone que ese flujo será en una dirección, en la seleccionada, y no se tendrá flujos
simultáneos en direcciones opuestas.
5. Trayectoria: Una trayectoria entre dos nodos es una sucesión de arcos distintos que unen el
nodo inicial con el nodo final.
6. Ciclo: Un ciclo es una trayectoria que comienza y termina en el mismo nodo.
7. Árbol de Expansión: es una red conexa para n nodos, que contiene ciclos no dirigidos. Todo
árbol de expansión tiene justo n − 1 arcos, ya que éste es el número mínimo de arcos
necesarios para tener una red conexa y el máximo número posible para que no haya
ciclos no dirigidos.
• Transporte
• Los 7 puentes de Königsberg (Euler 1736)
• Internet.
• Etc.
2
Investigación de Operaciones Avanzada. Sesión 8
para llegar al centro de destino. La solución de este tipo de problema se realiza con el principio
de equilibrio de la red para los nodos de transbordo: Todo lo que entra en un nodo debe salir.
Por otro lado, los nodos de las fuentes son nodos emisores y los nodos de las demandas son
nodos receptores o sumidero
EJEMPLO 8.2
Una compañía tiene un solo campo petrolero desde donde envía todo el petróleo, a través de un
oleoducto, a uno de dos centros de embarque, en donde se almacena en buques tanques para su
envío a refinerías de los estados.
La oferta diaria en el campo es de 2,000 barriles. Deben considerarse los costos del
oleoducto, los costos de embarque y las cantidades de petróleo que pueden enviarse a través de
los oleoductos. Los costos del oleoducto y las capacidades diarias de éste se muestran en la tabla
siguiente.
Instalación de Costo por barril Capacidad del oleoducto
envío (en barriles)
B1 $0.20 1000
B2 $0.15 500
En la tabla siguiente se presentan los costos de embarque de cada estación de embarque a cada
refinería y las demandas diarias de las refinerías.
Refinería Núm. De Costo de transporte por barril del Demanda
ubicación Centro de embarque 1 Centro de embarque 2 diaria
R1 $0.10 $0.15 600
R2 $0.20 $0.25 800
Se desea minimizar los costos de transportación, para mandar el petróleo del campo petrolero a
las refinerías R1 y R2, pasando por las instalaciones de envío B1 y B2.
Solución
BR11
B1
FB1 R1 600
BR12
2000 F
BR21
R2 800
FB2
BR22
B2
MIN = 0.2*FB1+0.15*FB2+0.1*BR11+0.15*BR21+0.2*BR12+0.25*BR22;
FB1 <= 1000;
FB2 <= 500;
FB1+FB2 <= 2000;
FB1=BR11+BR12;
FB2=BR21+BR22;
3
Elaboró Dr. Eduardo Gutiérrez González
BR11+BR21=600;
BR12+BR22=800;
Global optimal solution found at step: 6
Objective value: 500.0000
EJEMPLO 3
Una compañía tiene dos campos petroleros desde donde envía todo el petróleo, a través de
oleoductos, a dos centros de embarque, en donde se almacena en buques tanques para su envío a
tres refinerías de los estados. La oferta diaria en los campos es de 6,000 barriles. Deben
considerarse los costos del oleoducto, los costos de embarque y las cantidades de petróleo que
pueden enviarse a través de los oleoductos. Los costos de los oleoductos y las capacidades diarias
de estos se muestran en la tabla siguiente.
Instalación de Costo por barril Capacidad del oleoducto
envío (en barriles)
C1 $0.20 1000
C2 $0.15 500
En la tabla siguiente se presentan los costos de embarque de cada estación de embarque a cada
refinería y las demandas diarias de las refinerías.
Refinería Núm. De Costo de transporte por barril del Demanda
ubicación Centro de embarque 1 Centro de embarque 2 diaria
R1 $0.10 $0.15 600
R2 $0.20 $0.25 800
Se desea minimizar los costos de transportación, para mandar el petróleo del campo petrolero a
las refinerías R1 y R2, pasando por las instalaciones de envío B1 y B2.
EJEMPLO 8.3
La empresa ARIS SA de CV se dedica a la producción y venta de lámparas automotrices.
Actualmente cuenta con tres plantas productoras (A, B, C) y dos centros de distribución (1, 2)
que sirven para atender a sus tres clientes principales (I, II, III).
4
Investigación de Operaciones Avanzada. Sesión 8
Bajo estas condiciones debe definirse un esquema de distribución del producto desde las
plantas hasta los centros de distribución y de éstos a los clientes. Las siguientes tablas muestran la
capacidad de producción mensual de las plantas y la demanda mensual de los clientes, considere
que los centros de distribución pueden manejar cualquier volumen de producto:
La utilidad unitaria en u.m. asociada por mandar una unidad desde cada planta hasta cada
centro de distribución se muestra en la siguiente tabla
CENTRO DE DISTRIBUCIÓN
PLANTA 1 2 3
A 3 4 5
B 2 3 1
C 4 3 4
D 2 1 2
CLIENTE
CENTRO DE I II III IV V VI
DISTRIBUCIÓN
1 6 6 4 3 9 5
2 5 2 9 5 7 8
3 4 7 3 5 6 3
Formule un solo modelo de programación lineal que represente el caso mencionado y resuelva.
5
Elaboró Dr. Eduardo Gutiérrez González
SOLUCIÓN
Lo primero que debe hacerse es establecerse un problema de programación lineal de transbordo,
pues debe saberse como se distribuirá la mercancía a los diferentes centros de distribución
El problema queda de la siguiente manera:
MAX = 3*Q11 +4*Q12 +5*Q13 +2*Q21 +3*Q22 + Q23 +4*Q31 +3*Q32 + 4*Q33 +2*Q41 + Q42 +2*Q43;
!S.A.;
Q11 + Q12 + Q13<=18000;
Q21 + Q22 + Q23<=27000;
Q31 + Q32 + Q33<=32000;
Q41 + Q42 + Q43<=58000;
Q11 + Q21 + Q31 + Q41>= x;
Q12 + Q22 + Q32 + Q42>= y;
Q13 + Q23 + Q33 + Q43>= z;
x + y + z =135000;
Qij, x, y, z >=0
donde
6
Investigación de Operaciones Avanzada. Sesión 8
Ahora bien con esta solución tenemos las cantidades de producto en cada centro de
distribución con lo que se puede establecer el siguiente problema para terminar de resolver el
problema del transporte:
MAX = 6*Q11 + 6*Q12 + 4*Q13 + 3*Q14 +9*Q15 + 5*Q16 + 5*Q21 + 2*Q22 +9*Q23 +5*Q24 +7*Q25 +
8*Q24 + 6*Q31 +7*Q32 + 3*Q33 + 5*Q34 + 6*Q35 +3*Q36;
!S.A. ;
Q11 + Q12 + Q13 + Q14 + Q15 + Q16 <= 58000;
Q21 + Q22 + Q23 + Q24 + Q25 + Q26 <= 27000;
Q31 + Q32 + Q33 + Q34 + Q35 + Q36 <= 50000;
Donde
Qij = Cantidad de lámparas enviadas del centro de distribución i al cliente j
7
Elaboró Dr. Eduardo Gutiérrez González
Para la asignación de los gerentes que administrarán cada planta y centro de distribución
se aplicará el problema de asignación mediante la siguiente ecuación:
!S.A. ;
x11 + x12 + x13 + x14 + x15 + x16 + x17 = 1;
x21 + x22 + x23 + x24 + x25 + x26 + x27 = 1;
x31 + x32 + x33 + x34 + x35 + x36 + x37 = 1;
x41 + x42 + x43 + x44 + x45 + x46 + x47 = 1;
x51 + x52 + x53 + x54 + x55 + x56 + x57 = 1;
x61 + x62 + x63 + x64 + x65 + x66 + x67 = 1;
x71 + x72 + x73 + x74 + x75 + x76 + x77 = 1;
Xij >= 0.
donde:
Xij = el beneficio obtenido de que el gerente i administre la planta o centro de distribución j
8
Investigación de Operaciones Avanzada. Sesión 8
EJEMPLO 8.4
La compañía de muebles “El mueble moderno” quiere transportar comedores de su planta en
Naucalpan, Estado de México, a una distribuidora que se encuentra en Tlalpan, en el sur de la
ciudad de México en el menor tiempo posible. Las rutas que enlazan estas dos instalaciones
forman la red que se muestra a continuación.
15
3 5
12
12 10
1 6
20 10
10
2 4
22
En donde las distancias son los tiempos de viaje del camión dados en minutos. Formule el
problema como un problema lineal y resuélvalo.
9
Elaboró Dr. Eduardo Gutiérrez González
Solución
Sean las variables binarias x ij que representan si existe traslado de la ciudad i a la j,
!EJEMPLO 8.1;
!FUNCIÓN OBJETIVO;
MIN=10*X12+12*X13+20*X25+22*X24+15*X35+12*X34+10*X46+10*X56;
10
Investigación de Operaciones Avanzada. Sesión 8
a) Formule este problema como uno de la ruta más corta trazando una red donde los nodos son
ciudades, los arcos, carreteras, y los números la distancia en millas.
b) Use el algoritmo de ruta más corta para resolver este problema.
c) Formule y resuelve un modelo en hoja de cálculo.
d) Si cada número en la tabla representa su costo (en dólares) de manejar de una ciudad a la
siguiente, ¿obtiene la ruta de costo mínimo con la respuesta del inciso b o c?
e) Si cada número en la tabla representa su tiempo (en minutos) para manejar de una ciudad a la
siguiente, ¿obtiene la ruta de tiempo mínimo con la respuesta del inciso b o c?
SOLUCIÓN:
Min = 50*XORC+60*XORB+40*XORA+10*XAB+20*XBC+70*XAD+55*XBD+40*XBE+50*XCE+10*XDE+60*XDT+80*XET;
XORA+XORB+XORC = 1;
XAD+XAB = XORA;
XBD+XBE+XBC = XORB+XAB;
XCE= XBC+XORC;
XDE+ XDT = XBD + XAD;
XBE+XDE+XCE = XET;
XET + XDT = 1;
VARIABLES BINARIAS
Global optimal solution found at step: 4
Objective value: 165.0000
70
40 10
ORIGEN DESTINO
60 55 60
O B D T
40
20 10
50
80
50
C E
11
Elaboró Dr. Eduardo Gutiérrez González
EJEMPLO 8.7
Suponga que la compañía nacional de Substancias populares (CONASUPO) tiene un programa
anual de costalera. Ésta se compra de dos fábricas, una en Mérida (nodo 2) con capacidad de
producción máxima de 10 millones de costales al año y otra en Saltillo (nodo 3) con capacidad de
producción máxima de 7 millones de costales al año. Los excedentes en la fábrica de Mérida
pueden transferirse a la planta de Saltillo.
La disponibilidad de transporte entre las dos fábricas permite un máximo de 8 millones de
costales por año. Hay tres centros almacenadores: en la ciudad de México (nodo 5), Guadalajara
(nodo 4) y Oaxaca (nodo 6). La tabla siguiente proporciona la capacidad máxima anual de
transporte de las fábricas a los centros almacenadores.
A: Ciudad
De: ciudad México Guadalajara Oaxaca
Saltillo 4 8
Mérida 3 2 3
Los excedentes de Guadalajara (nodo 4) y Oaxaca (nodo 6) pueden transferirse a la ciudad
de México (nodo 5), la capacidad máxima anual es de 3 y 4 millones de costales,
respectivamente.
Una vez en los centros almacenadores, los costales se entregan a los ejidatarios de la región.
La capacidad máxima anual de entrega es de 4 millones en la región almacenadora de
Guadalajara, 7 millones en la región del Distrito Federal y 5 millones en la región de Oaxaca.
La pregunta es ¿Cuál es el flujo máximo anual de costales nuevos que pueden circular en
este sistema?, utilice un modelo de PL. El problema se representa gráficamente en la red
siguiente.
4
8 4
3 3
7 4
7
1 8 2 5 7
3
10 4
2
3 5
6
En donde las distancias son los flujos máximos de transporte de nodo a nodo.
Solución
Sean las variables enteras x ij que representan el flujo en millones de costales transportados del
nodo i al j,
12
Investigación de Operaciones Avanzada. Sesión 8
!FUNCIÓN OBJETIVO;
MAX=X71;
!RESTRICCIONES DE CAPACIDAD;
X13<=7;
X12<=10;
X34<=8;
X35<=4;
X23<=8;
X24<=2;
X25<=3;
X26<=3;
X45<=3;
X47<=4;
X57<=7;
X65<=4;
X67<=5;
!RESTRICCIONES EN LOS NODOS;
X12+X13=X71;
X13+X23=X34+X35;
X12=X23+X24+X25+X26;
X24+X34=X45+X47;
X25+X35+X45+X65=X57;
X26=X65+X67;
X47+X57+X67=X71;
Global optimal solution found.
Objective value: 14.00000
Variable Value Reduced Cost
X71 14.00000 0.000000
X13 7.000000 0.000000
X12 7.000000 0.000000
X34 7.000000 0.000000
X35 4.000000 0.000000
X23 4.000000 0.000000
X24 0.000000 0.000000
X25 0.000000 0.000000
X26 3.000000 0.000000
X45 3.000000 0.000000
X47 4.000000 0.000000
X57 7.000000 0.000000
X65 0.000000 1.000000
X67 3.000000 0.000000
13
Elaboró Dr. Eduardo Gutiérrez González
EJEMPLO 8.8
9.5.3 El diagrama de abajodescribe un sistema de acueductos que se origina en tres ríos (R1, R2 y
R3) y termina en una ciudad importante (nodo T), donde los otros nodos son puntos de unión del
sistema.
Utilice unidades de miles de acres-pie; las siguientes tablas muestran la cantidad máxima
de agua que puede bombearse, a través de cada acueducto, cada día.
A A A
De A B C De D E F De T
R1 75 65 - A 60 45 - D 120
R2 40 50 60 B 70 55 45 E 190
R3 - 80 70 C - 70 90 F 130
75
R1 60
A D
65 45
120
40 70
50 55 190
R2 B E T
60 45
70 130
80
70 90
R3 C F
La comisión del agua desea determinar el plan que maximice el flujo de agua hacia la ciudad.
a) Formule este problema como un problema de flujo máximo; identifique un origen, un destino y
los nodos de trasbordo, y trace la red completa que muestre la capacidad de cada arco.
b) Use el algoritmo para resolver este problema.
c) Formule y resuelva el modelo en una hoja de cálculo.
SOLUCIÓN:
!FUNCIÓN OBJETIVO;
MAX = TR1+TR2+TR3;
!RESTRICCIONES DE CAPACIDAD;
R1A <= 75;
R1B <= 65;
R2A <= 40;
R2B <= 50;
R2C <= 60;
R3B <= 80;
R3C <= 70;
AD <= 60;
AE <= 45;
BD <= 70;
BE <= 55;
BF <= 45;
CE <= 70;
CF <= 90;
14
Investigación de Operaciones Avanzada. Sesión 8
DT <= 120;
ET <= 190;
FT <= 130;
!RESTRICCIONES EN LOS NODOS;
TR1 = R1A+R1B;
TR2 = R2A+R2B+R2C;
TR3 = R3B+R3C;
R1A+R2A = AD+AE;
R1B+R2B+R3B = BD+BE+BF;
R2C+R3C = CE+CF;
AD+BD = DT;
AE+BE+CE = ET;
BF+CF = FT;
DT+ET +FT = TR1+TR2+TR3;
CONCLUSIONES:
El flujo máximo es de 395 miles de acres-pie cada día. Se distribuyen:
• Del nodo R1 al A 65 miles de acres-pie cada día.
• Del nodo R1 al B 65 miles de acres-pie cada día.
• Del nodo R2 al A 40 miles de acres-pie cada día.
• Del nodo R2 al B 15 miles de acres-pie cada día.
• Del nodo R2 al C 60 miles de acres-pie cada día.
• Del nodo R3 al B 80 miles de acres-pie cada día.
• Del nodo R3 al C 70 miles de acres-pie cada día.
• Del nodo A al D 60 miles de acres-pie cada día.
• Del nodo A al E 45 miles de acres-pie cada día.
• Del nodo B al D 60 miles de acres-pie cada día.
• Del nodo B al E 55 miles de acres-pie cada día.
• Del nodo B al F 45 miles de acres-pie cada día.
• Del nodo C al E 45 miles de acres-pie cada día.
• Del nodo C al F 85 miles de acres-pie cada día.
15
Elaboró Dr. Eduardo Gutiérrez González
EJERCICIO
La figura siguiente muestra la red de comunicaciones entre dos estaciones 1 y 7. Las ganancias de
comunicar una estación con otra están en millones de um y se muestran en cada arco. Los
mensajes se mandan de la estación 1 a la estación 7 y el objeto es determinar la ruta que
maximice la ganancia de una buena transmisión. Formule el caso como un modelo de PL (ruta
más corta) y resuélvalo con un paquete de cómputo.
2 0.5
5
0 0.8
0.8 0.7
1 0.65 4 0.5 7
3 6
0.95
8.3 ÁRBOL DE EXPANSIÓN MÍNIMA
El problema del árbol de expansión mínima juega un papel importante en los problemas de redes
de flujo. Por ejemplo, para resolver el problema que determine la ruta más corta entre dos nodos
de una red, podemos construir un árbol que tenga una raíz (inicio), otro ejemplo, lo podemos
referir a las redes en las que se requiere que su costo para mandar cierto flujo sea mínimo.
En la presente sección revisaremos los algoritmos más comunes para resolver un problema
de árboles de expansión mínima.
Un árbol lo podemos definir como una red que es conectada y sin circuitos. Por ejemplo, en
la red de la figura 1 se muestra un árbol.
16
Investigación de Operaciones Avanzada. Sesión 8
1 2 3
4 5 6 7
8 9 17
Elaboró Dr. Eduardo Gutiérrez González
1 GRÁFICA G
2
3 4
1 2 1 2
3 4 4
Nótese que entonces la gráfica T que será solución para el problema de las islas debe ser un
árbol expandido de G. Por otro lado, obsérvese que una gráfica puede tener varios árboles
expandidos. Por esta razón, existen diferentes alternativas de solución para el problema de las
islas; sin embargo se tiene interés en la mejor de todas ellas, es decir, aquella con costo total de
construcción mínimo. Se definirá entonces, el costo de un árbol.
Considérese una función p que asocia una moneda a cada arista de una gráfica. La función
puede representar costos, distancia, tiempo, etc. En el caso del problema de las islas la función p
fue denotada con la letra c y representa el costo de construcción de un puente.
Definición: La solución óptima del problema está dada por el árbol expandido de peso
mínimo asociado a la gráfica G.
18
Investigación de Operaciones Avanzada. Sesión 8
Teorema 1
Sea G = X , A una gráfica con n vértices, supóngase que n 2 . Los postulados
siguientes son equivalentes y caracterizan un árbol.
▪ G es conexa y acíclica (sin circuitos).
▪ G es acíclica y tiene n − 1 aristas (arcos).
▪ Existe G una trayectoria única entre cada par de nodos (vértices).
▪ G no tiene circuitos, pero exactamente uno se forma al añadir un arco.
▪ G es conectada, pero deja de serlo si algún arco se elimina.
En general, para una red dada G, existen formas algorítmicas para determinar cuándo la red
es un árbol, pero en el trabajo de la investigación no tendremos el problema de la comprobación
de que la red es un árbol.
Un árbol de expansión de la red G es un árbol que pasa por cada nodo de G, ver figura
siguiente.
19
Elaboró Dr. Eduardo Gutiérrez González
Los tres algoritmos que revisaremos en esta subsección son: Kruskal, Prim y Sollin que
tienen la característica de ser tipo “Glotón”, en el sentido de que en cada paso aumentan un arco
de costo mínimo como candidato de la lista, siempre y cuando este arco no forme ningún circuito
con los arcos ya seleccionados. Los tres algoritmos mantienen un bosque que contiene arcos que
ya han sido seleccionados y se aumenta uno ó más arcos para aumentar el tamaño del bosque.
La programación matemática tiene otra forma útil de ver el problema de árbol de expansión
mínima; se puede formular un problema de árbol de expansión mínima como un modelo de
programación entera y usar argumentos de programación lineal para establecer otra prueba de la
validación del algoritmo de kruskal.
1. ALGORITMO DE KRUSKAL
El propósito es determinar el árbol de expansión cuyo “costo o peso” es mínimo en una red
conectada G con N nodos y función de costo C : A → R conocida.
Descripción
PASO 1: (Inicio) Ordenar el conjunto de arcos en forma no decreciente respecto a la función de
costos. Sea j1 , j 2 ,, j m los arcos ordenados, entonces hacer k = 0, I = 1, A = .
PASO 2: (Añadir arco) Si el arco j i no forma circuito con el conjunto de arcos de A , entonces
A = A j r y hacer k := k + 1 e ir al paso 3, en caso contrario no aumentar k.
PASO 3: (Criterio de terminación) Si k n − 1 hacer I := I + 1 y regresar al paso 2. En caso
contrario T = N , A es el árbol de expansión mínima.
El tiempo de corrida del algoritmo Kruskal se compone del tiempo para ordenar los arcos y
el tiempo para detectar ciclos. Para una red arbitrariamente grande, el ordenamiento requiere
O(m log m ) = O(m log n 2 ) = O(m log n ) de tiempo, en donde m es cantidad de arcos y n cantidad de
nodos. Finalmente, tenemos que el tiempo para detectar un ciclo depende del método que se use
en este paso.
EJEMPLO 8.6
En la siguiente red encontrar el árbol de expansión mínima, con el algoritmo de Kruskal.
20
Investigación de Operaciones Avanzada. Sesión 8
3
8
6
5 9 13 1 10 11
14 15 7 12
1 2 5 7 9
2 8 10 5 0 6
11
4 8
Solución
Paso 1. Ordenamos los arcos en forma no decreciente de flujo.
j1 = (7, 8) j 4 = (1, 3) j7 = (5, 7) j10 = (2, 3) j13 = (4, 8) j16 = (3, 5)
j 2 = (5, 6) j5 = (5, 8) j8 = (2, 4) j11 = (4, 5) j14 = (6, 9) j17 = (1, 2)
j3 = (1, 4) j6 = (8, 9) j9 = (3, 6) j12 = (6, 7) j15 = (7, 9) j18 = (2, 5)
21
Elaboró Dr. Eduardo Gutiérrez González
3
8
6
5 1
1 2 5 7 9
2 8 5 0 6
4 8
De donde, la extensión mínima es 0 + 1 + 2 + 5 + 5 + 6 + 8 + 8 = 35 .
2. ALGORITMO DE PRIM
Un método alternativo de solución para el problema del árbol de peso mínimo de una red conexa
con n nodos, es el algoritmo de Prim. Este algoritmo consiste en considerar, inicialmente, una
red formada por cualquier nodo de la red original, después se agregará el arco de menor peso
adyacente a él y su otro extremo. Posteriormente, se aumenta el arco más pequeño, que tenga
exactamente un extremo en la red formada, junto con su otro extremo. Se procede de esta manera,
sucesivamente, hasta tener n − 1 arcos en la red generada.
22
Investigación de Operaciones Avanzada. Sesión 8
EJEMPLO 8.7
En la red anterior encontrar el árbol de expansión mínima, usando el algoritmo de Prim.
Solución
Paso 1. Elegir un nodo arbitrario. Por ejemplo, el nodo 5
Paso 2. Añadir arcos. Se elige el nodo 5, utilice la notación del método anterior para los arcos
Valor Fk Nk
de k
1 (5,6), (5,8), (5,7), (4,5), (3,5), (2,5) 5,6
2 (5,8), (5,7), (4,5), (3,5), (2,5), (3,6), (6,7), (6,9) 5, 6, 8
3 (5,7), (4,5), (3,5), (2,5), (3,6), (6,7), (6,9), (7,8), (8,9), (4,8) 5, 6, 8, 7
4 (5,7), (4,5), (3,5), (2,5), (3,6), (6,7), (6,9), (8,9), (4,8), (7,9) 5, 6, 8, 7, 9
5 (5,7), (4,5), (3,5), (2,5), (3,6), (6,7), (6,9), (4,8), (7,9), (1,3), (2,3), (3,5) 5, 6, 8, 7, 9,3
5 (5,7), (4,5), (3,5), (2,5), (6,7), (6,9), (4,8), (7,9), (1,3), (2,3), (3,5), (1,2), (1,4) 5, 6, 8, 7, 9, 3,1
6 (5,7), (4,5), (3,5), (2,5), (6,7), (6,9), (4,8), (7,9), (2,3), (3,5), (1,2), (1,4), (2,4), (4,8) 5, 6, 8, 7, 9, 3,1,4
7 (5,7), (4,5), (3,5), (2,5), (6,7), (6,9), (4,8), (7,9), (2,3), (3,5), (1,2), (1,4), (2,4), (4,8) 5, 6, 8, 7, 9, 3,1,4,2
3. ALGORITMO DE SOLLIN
Podemos usar las condiciones de optimalidad para derivar otro algoritmo para el problema de
árbol de expansión mínima. Este algoritmo, lo podemos ver como una versión hibrida de los
algoritmos de Kruskal y Prim. Como en el algoritmo de Kruskal, el algoritmo de Sollin mantiene
una colección de árboles de expansión de los nodos N1 , N 2 , N 3 , y aumenta arcos a esa
colección. Sin embargo en cada iteración aumenta arcos de costo mínimo que emanan de esos
árboles, una idea tomada del algoritmo de Prim. Como resultado se obtiene un algoritmo que usa
estructuras de datos sencillas y corre en un tiempo O(m log n). El algoritmo de Sollin desarrolla
repetidamente las dos siguientes operaciones básicas.
Vecino más cercano. ( N k , ik , j k ) . Esta operación toma como inicio un árbol que une a los
nodos N k y determina un arco (ik , j k ) de costo mínimo entre todos los arcos que emanan de N k ,
es decir
Cik jk = minCij | (i, j ) A, i N k , y j N k .
Para desarrollar esta operación necesitamos revisar todos los arcos en las listas de
adyacencia de los nodos en N k y encontrar el arco de costo mínimo entre esos arcos que tengan
un punto final que no esté en N k .
Acoplar (ik , j k ) . Esta operación toma como inicio dos nodos ik y jk y si los dos nodos están en
distintos árboles entonces une esos dos árboles en un solo árbol.
23
Elaboró Dr. Eduardo Gutiérrez González
Descripción
PASO 1: Para cada i N hacer N i =
i ,T * = .
PASO 2: Mientras T * (n − 1) entonces para cada árbol N k haga (N k , ik , jk ) , donde el arco
(ik , jk )
es el árbol de costo mínimo entre todos los que emanan de N k es decir,
min cij = (i, j ) | (i, j ) A, i N k , j N k y vaya al paso 3.
PASO 3: Si los nodos ik y jk están en distintos árboles una (ik , jk ) y actualice
T * := T * (ik , j k ) y regrese al paso 2.
El algoritmo de Sollin tiene un tiempo de ejecución de O(m log n) .
EJEMPLO 8.8
En la red anterior encontrar el árbol de expansión mínima, usando el algoritmo de Sollin.
Solución
Iteración 1
3 6
1 2 5 7 9
4 8
Iteración 2
3 6
1 2 5 7 9
4 8
24
Investigación de Operaciones Avanzada. Sesión 8
Iteración 3
3 6
1 2 5 7 9
4 8
3
8
6
5 1
1 2 5 7 9
2 8 5 0 6
4 8
En la siguiente tabla se resumen los tres algoritmos para resolver el problema del árbol de
expansión mínima. Todos ellos son fáciles de implantar y tienen excelentes tiempos de ejecución,
además son muy eficientes en la práctica.
ALGORITMO TIEMPO DE OBSERVACIONES
EJECUCIÓN
1. Examina arcos en orden no decreciente de sus costos más
el tiempo necesario para ordenar m arcos y los incluye en
O(m + n log n) un árbol de expansión si el arco que se aumenta no forma
Kruskal
un ciclo con los arcos seleccionados.
2. La prueba del algoritmo usa condiciones de optimalidad
para una trayectoria.
25
Elaboró Dr. Eduardo Gutiérrez González
EJEMPLO 8.10
Diga si los siguientes enunciados son verdaderos o falsos y justifique su respuesta.
a) Un árbol de expansión mínima de una red puede incluir ciclos. NO, porque debe existir
una trayectoria única entre cada par de nodos.
b) Si un árbol de expansión mínima es optimo, entonces es único. No, véase el ejercicio
anterior, se pueden tener varias ramificaciones al haber empates, lo que sí es único es la
extensión como longitud. Ver los siguientes árboles de extensión mínima para el mismo
problema.
c) Dada la matriz de incidencia nodos-arcos de una red se puede construir un árbol a través
del uso de eliminaciones gaussianas en los renglones de la matriz. De la matriz resultante
las columnas con pivotes diferentes de cero forman un árbol. Sí, porque los pivotes nos
muestran los arcos linealmente independientes.
26
Investigación de Operaciones Avanzada. Sesión 8
EJERCICIO
Encuentre el árbol de expansión mínima en la siguiente red
1 15
5
9
14
2
9 4 5
6 6
20
13
10 8
3 5
5
20 1
15
12 7
4
7
6
EJERCICIO
Considere el siguiente algoritmo.
Paso1. Arregle los arcos en A en orden arbitrario y comience con un árbol de expansión vacío.
Paso2. Examine en cada arco en A, uno por uno, y siga los pasos siguientes.
a) Aumente un arco (i, j) a T, si T no contiene un circuito W.
b) Borre de T un arco de costo máximo de dicho circuito.
Demuestre que cuando este algoritmo ha examinado todos los arcos, el árbol final es un árbol de
expansión mínima. ¿Es posible implementar este algoritmo de manera eficiente como el de
Kruskal? ¿Por qué?
PROBLEMA 9.4-2.
La maderera Wirehouse talará árboles en ocho zonas de la misma área. Para esto debe desarrollar un sistema de
caminos de tierra para tener acceso a cualquier zona desde cualquiera otra. La distancia (en millas) entre cada par de
zonas es:
27
Elaboró Dr. Eduardo Gutiérrez González
El problema es determinar los pares de zonas entre los que deben construirse caminos para conectar todas con una
longitud total mínima de caminos.
a) Describa cómo se ajusta este problema a la descripción del problema del árbol de expansión mínima.
b) Utilice el algoritmo descrito en la sección 9.4 para resolver este problema.
PROBLEMA 9.4-3.
Un banco ha decidido conectar terminales de computadora de cada sucursal a la computadora central de su oficina
matriz mediante líneas telefónicas especiales con dispositivos de telecomunicaciones. No es necesario que la línea
telefónica de una sucursal esté conectada directamente con la oficina matriz. La conexión puede ser indirecta a través
de otra sucursal que esté conectada (directa o indirectamente) a la matriz. El único requisito es que exista alguna ruta
que conecte a todas las sucursales con la oficina matriz.
El cargo por las líneas telefónicas especiales es directamente proporcional a la distancia cableada, en donde esta
distancia (en millas) es
La administración desea determinar qué pares de sucursales conectar directamente con las líneas telefónicas
especiales para que todas queden conectadas (de modo directo o indirecto) a la oficina matriz con un costo total
mínimo.
a) Explique cómo se ajusta este problema a la descripción del problema del árbol de expansión mínima.
b) Utilice el algoritmo descrito en la sección 9.4 para resolver este problema.
28
Investigación de Operaciones Avanzada. Sesión 8
Al otro del océano Pacífico, se lleva a cabo una reunión de consejeros sobre alta seguridad
política externa de Estados Unidos, en la Casa Blanca. El presidente acaba de ser informado de la
revolución comunista dirigida por el comandante Votachev y está determinando un plan acción.
Él recuerda un lejano octubre similar en 1917 y teme la posibilidad de una nueva era de gobierno
comunista radical acompañado de caos, sangre derramada, tensiones cada vez más fuertes y una
posible guerra nuclear. Por lo tanto decide que Estados Unidos necesita responder y hacerlo
rápido. Moscú ha pedido ayuda militar a Estados Unidos y él planea mandar tropas y suministros
de inmediato.
El presidente se dirige al general Lankletter y le pide que describa los preparativos en su país
para enviar las tropas y suministros necesarios a la Federación Rusa.
El general Lankletter informa al presidente que junto con las tropas, están reuniendo armas,
municiones, combustibles y consumibles, aviones, barcos y vehículos en dos ciudades portuarias
con campos aéreos: Boston y Jacksonville. Los aviones y barcos transferirán a las tropas y la
carga por el océano Atlántico al continente Euroasiático. Le pasa una lista de los tipos de aviones,
barcos y vehículos que se enviarán y una descripción de cada tipo. La lista se muestra en la
siguiente tabla.
TIPO DE
NOMBRE CAPACIDAD VELOCIDAD
TRANSPORTE
400 MILLAS POR
AVIÓN C-141 STARLIFTER 150 TONELADAS
HORA
35 MILLAS POR
BARCO TRANSPORTE 240 TONELADAS
HORA
CAMIÓN CON SISTEMA DE 16 000 60 MILLAS POR
VEHÍCULO
CARGA KILOGRAMOS HORA
Todos los aviones, barcos y vehículos pueden llevar tanto tropas como carga. Una vez que un
avión o barco llega a Europa, se queda ahí para apoyar a las fuerzas armadas.
El presidente ahora voltea a ver a Tabitha Neal, quien ha estado negociando con los países
miembros de la OTAN durante las últimas horas, para usar sus puertos y campos aéreos para
recargar combustible y reabastecerse antes de llegar a la Federación Rusa. Ella le informa que la
milicia de Estados Unidos podrá disponer de los siguientes puertos y campos aéreos en los países
de la OTAN.
El presidente se pone de pie y camina hacia el mapa del mundo proyectado en una pantalla
grande. Señala el avance de las tropas y el cargamento desde Estados Unidos hasta tres ciudades
estratégicas en la Federación Rusa que no han sido ocupadas por el comandante Votachev. Las
tres ciudades son San Petersburgo, Moscú y Rostov. Explica que tropas y cargamentos se usarán
29
Elaboró Dr. Eduardo Gutiérrez González
para defender las ciudades rusas y para lanzar un contrataque al comandante Votachev para
recuperar las ciudades que ocupa ahora. (El mapa se muestra al final del caso.)
El presidente también explica que todos los Starlifters y trasnportes saldrán de Boston o de
Jacksonville. Todos los transportes que han viajado por el Atlántico deben llegar a uno de los
puertos de la OTAN para descargar. Los camiones con sistema de carga traídos por mar llevarán
las tropas y los materiales de los barcos en los puertos de la OTAN a las tres ciudades
estratégicas en Rusia que todavía no toma Votachev. Todos los Starlifters que cruzan el Atlántico
deben aterrizar en uno de los campos aéreos de la OTAN para recargar. Después los aviones
llevarán tropas y suministros de ahí a las tres ciudades rusas.
a) Dibuje una red que muestre las rutas posibles para que las tropas y los suministros lleguen
a la Federación Rusa desde Estados Unidos.
b) Moscú y Washington no saben cuándo el comandante Votachev lanzará su próximo
ataque. Por esto, los líderes de los dos países han acordado que las tropas deben llegar a
las tres ciudades estratégicas en Rusia lo más pronto posible. El presidente ha
determinado que la situación es tan apremiante que el costo no es importante –se usarán
cuantos aviones, transportes y camiones sean necesarios para transferir a las tropas y los
suministros de Estados Unidos a San Petersburgo, Moscú y Rostov–. Por lo tanto, no
existen limitaciones en el número de tropas y cantidad de cargamento que se pueden
transferir entre cualesquiera ciudades.
El presidente cuenta con la siguiente información acerca de las distancias de las rutas
disponibles entre las ciudades:
De A Distancia de la ruta en kilómetros
Boston Berlín 7 250 km
Boston Hamburgo 8 250 km
Boston Estambul 8 300 km
Boston Londres 6 200 km
Boston Roterdam 6 900 km
Boston Nápoles 7 950 km
Jacksonville Berlín 9 200 km
Jacksonville Hamburgo 9 800 km
Jacksonville Estambul 10 100 km
Jacksonville Londres 7 900 km
Jacksonville Roterdam 8 900 km
Jacksonville Nápoles 9 400 km
30
Investigación de Operaciones Avanzada. Sesión 8
Dadas la distancia y la velocidad del transporte usado entre cada par de ciudades, ¿cómo
puede el presidente mover las tropas con mayor rapidez desde Estados Unidos a cada una
de las tres ciudades estratégicas rusas? Señale la(s) trayectoria(s) en la red. ¿Cuánto
tiempo tardarán las tropas y los suministros en llegar a San Petersburgo, Moscú y Rostov?
c) El presidente encuentra sólo un problema con este primer plan: debe convencer al
Congreso del destacamento militar. Según la ley de poderes de guerra en Estados Unidos,
es necesario que el presidente consulte al Congreso antes de introducir tropas en zonas de
guerra o en situaciones donde pueden ocurrir actos belicosos. Si el Congreso no da la
autorización al presidente para el uso de las tropas, él deberá retirarlas después de 60 días.
El Congreso también tiene potestad de disminuir el periodo de 60 días mediante una
resolución concurrente.
El presidente sabe que el Congreso no autorizará un gasto significativo para una guerra
en otro país, en especial cuando los electores han puesto tanta energía en el logro de la
disminución de la deuda nacional. Por lo tanto, decide que necesita encontrar la manera
31
Elaboró Dr. Eduardo Gutiérrez González
de hacer llegar las tropas y los suministros a San Petersburgo, Moscú y Rostov con un
costo mínimo.
Cada ciudad rusa ha estado en contacto con Washington para comunicar la cantidad de
tropas y suministros que requiere como apoyo mínimo. Después de analizar las
peticiones, el general Lankletter ha convertido las solicitudes de cantidad de tropas,
galones de gasolina, etcétera, en toneladas para facilitar la planeación. Los requerimientos
se presentan en seguida.
Ciudad Necesidades
San Petersburgo 320 000 toneladas
Moscú 440 000 toneladas
Rostov 240 000 toneladas
Tanto en Boston como en Jacksonville se dispone de 500 000 toneladas de los suministros
necesarios. Cuando Estados Unidos decide enviar un avión, barco o camión entre dos
ciudades, se incurre en varios costos –costos de combustible, costos de mantenimiento y
las tarifas e impuestos por el uso de puertos y campos aéreos–. Estos costos se dan en la
tabla que sigue.
De A Costo
32
Investigación de Operaciones Avanzada. Sesión 8
d) Una vez que el presidente da a conocer el número de aviones, barcos y camiones que
viajarán entre Estados Unidos y la Federación Rusa, Tabitha Neal se pone en contacto con
33
Elaboró Dr. Eduardo Gutiérrez González
las ciudades de su país y los países de la OTAN para indicar el número de aviones que
deben esperar los campos aéreos, el número de barcos que llegarán a los puertos y el
número de camiones que circularán por los caminos. Por desgracia, Tabitha encuentra que
existen otras limitaciones que no se pueden eliminar de inmediato. Debido a la congestión
del tráfico aéreo y la programación inalterable de vuelos, sólo un número limitado de
aviones pueden enviarse entre pares de ciudades. Estas limitaciones se proporcionan en
seguida.
De A Máximo
Boston Berlín 300 aviones
Boston Estambul 500 aviones
Boston Londres 500 aviones
Jacksonville Berlín 500 aviones
Jacksonville Estambul 700 aviones
Jacksonville Londres 600 aviones
Berlín San Petersburgo 500 aviones
Estambul San Petersburgo 0 aviones
Londres San Petersburgo 1 000 aviones
Berlín Moscú 300 aviones
Estambul Moscú 100 aviones
Londres Moscú 200 aviones
Berlín Restov 0 aviones
Estambul Restov 900 aviones
Londres Restov 100 aviones
Además, debido al temor de algunos países ante una posible alarma de sus ciudadanos si
ven demasiados camiones en las carreras públicas, están en contra de que un número
grande de camiones viajen por su país. Estas objeciones significan que sólo es posible
enviar un número limitado de camiones entre ciertos puertos y las ciudades rusas. Estas
limitaciones son:
De A Máximo
Roterdam Moscú 600 camiones
Roterdam Rostov 750 camiones
Hamburgo Moscú 700 camiones
Hamburgo Rostov 500 camiones
Nápoles Moscú 1 500 camiones
Nápoles Rostov 1 400 camiones
Tabitha sabe que las rutas por barco no tienen limitaciones debido al control
estadounidense del océano Atlántico.
34
Investigación de Operaciones Avanzada. Sesión 8
El presidente se da cuenta de que debido a las restricciones no podrá satisfacer todos los
requerimientos de apoyo de las tres ciudades rusas. Decide ignorar el aspecto del costo y
en su lugar maximizar la cantidad total de cargamento que puede hacer llegar a las
ciudades rusas. ¿De qué manera puede el presidente maximizar la cantidad total de
cargamento que llega a Rusia? Resalte la(s) trayectoria(s) usada(s) entre Estados Unidos y
la Federación Rusa en la red.
e) Aun antes de que todas las tropas y suministros norteamericanos leguen a San
Petersburgo, Moscú y Rostov, algunas desavenencias entre las tropas del comandante
Votachev respecto a si el siguiente ataque debe ser contra San Petersburgo o Moscú
dividieron a los revolucionarios. Las tropas de Moscú vencieron con facilidad a los
vulnerables revolucionarios. El comandante Votachev fue capturado y estaba en prisión, y
el siguiente paso es reconstruir las siete ciudades arrasadas por las tropas.
35
Elaboró Dr. Eduardo Gutiérrez González
¿Dónde deben instalarse las líneas de comunicación para minimizar el costo total de
restablecer las comunicaciones entre Moscú y las siete ciudades en Rusia?
Hoy, esos mismos rumores se hicieron realidad, Jake y sus colegas se encuentran reunidos
alrededor de un pequeño televisor dedicado exclusivamente al canal Bloomberg. Jake se queda
mirando sin poder creer mientras escucha el horror de lo que ocurre en el mercado japonés; y este
mercado se lleva en su caída al resto de los países del Oriente Asiático. Se queda helado. Como
gerente de inversión extranjera en Asia de Grant Hill Associates, una pequeña empresa de
inversión en la costa oeste de Estados Unidos especializada en mercado de dinero, Jake tiene la
responsabilidad de cualquier impacto negativo del colapso.
Ya no. Jake se da cuenta de que la devaluación del yen de hoy significa que 1 dólar vale
125 yenes. Podrá liquidar estas inversiones sin perder dinero en yenes, pero la perdida en dólares
al convertir los yenes devaluados será inmensa. Suspira, cierra los ojos y se prepara mentalmente
para el control de un daño serio.
La meditación de Jake se interrumpe por una voz sonora que lo llama desde la oficina de
la esquina. Grant Hill, el presidente de Grant Hill Associates, grita: “Nguyen, ¡venga acá de
inmediato!”
Jake salta y observa sin entusiasmo hacia la oficina de la esquina donde esta Grant Hill
furioso. Se arregla el pelo, aprieta el nudo de la corbata y camina a la oficina. Grant Hill lo mira a
los ojos al entrar y sigue gritando: “¡No quiero que digas una palabra, Nguyen! no hay excusa;
¡sólo arregla el desastre! ¡Saca todo nuestro dinero fuera de Japón! Mis instintos me dicen que
esto es sólo el principio. Pon el dinero en acciones norteamericanas seguras. ¡Ahora! Y no
olvides sacar nuestras situaciones en efectivo de Indonesia y Malasia de una vez.”
36
Investigación de Operaciones Avanzada. Sesión 8
Jake tiene suficiente sentido común para quedarse callado. Asiente con la cabeza, da
vuelta sobre sus talones y casi corre para salir de la oficina.
Una vez a salvo en su escritorio, comienza a formular un plan para mover las inversiones
fuera de Japón, Indonesia y Malasia. Su experiencia con la inversión en mercados extranjeros le
ha enseñado que cuando se trata de millones de dólares, cómo saca el dinero del mercado
extranjero es casi tan importante como cuándo lo saca. Los socios banqueros de Grant Hill
Associates tienen diferentes cargos por transacciones para convertir el dinero en otra divisa y por
enviar cantidades grandes de dinero alrededor del mundo.
Y ahora, para empeorar las cosas, los gobiernos del oriente asiático han impuesto
limitaciones muy estrictas sobre la cantidad de dinero que un individuo o compañía puede
cambiar de su moneda a otra moneda extranjera y retirarla del país. El objetivo de esta medida
drástica es reducir el flujo de la inversión extranjera hacia fuera de esos países para evitar el
colapso completo de las economías de la región. Como el dinero en efectivo de Grant Hill
Associates llega a 10.5 miles de millones de rupias indonesias y 28 millones de ringgits de
Malasia, junto con las inversiones en yenes, no está claro cómo debe convertirse este dinero a
dólares.
Jake desea encontrar el método más eficiente en costos para convertir estas inversiones a
dólares. En la página de Internet de su compañía siempre puede encontrar las tasas de cambio
actualizadas al minuto para la mayoría de las monedas del mundo (tabla 1). La tabla establece,
por ejemplo, que 1 yen japonés es igual a 0.008 dólares. Con unas cuantas llamadas telefónicas
obtiene los costos de transacción que debe pagar su compañía por transacciones grandes en estos
tiempos críticos (tabla 2).
Jake observa que al cambiar de una divisa a otra se tiene el mismo costo por transacción
que en la conversión inversa. Por último, Jake encuentra las cantidades máximas de divisas de
cada país que su compañía puede convertir en otras divisas en Japón, Indonesia y Malasia (tabla
3).
Tabla 1 Tasas de Cambio
De / A Yen Rupia Ringgit Dólar Dólar Euro Libra Peso
EUA can
Yen Japonés 1 50 0.04 0.008 0.01 0.0064 0.0048 0.0768
Rupia 1 0.0008 0.00016 0.0002 0.000128 0.000096 0.001536
Indonesia
Ringgit Malayo 1 0.2 0.25 0.16 0.12 1.92
Dólar EUA 1 1.25 0.8 0.6 9.6
Dólar Can. 1 0.64 0.48 7.68
Euro europeo 1 0.75 12
Libra inglesa 1 16
Peso mexicano 1
37
Elaboró Dr. Eduardo Gutiérrez González
Rupia
Indonesia - 0.70 0.50 0.30 0.30 0.75 0.75
Ringgit
Malayo - 0.70 0.70 0.40 0.45 0.50
Dólar EUA - 0.05 0.10 0.10 0.10
Dólar Can. - 0.20 0.10 0.10
Euro europeo - 0.05 0.50
Libra inglesa - 0.50
Peso mexicano
a) Formule el problema de Jake como un problema del flujo de costo mínimo y trace la red
para este problema. Identifique los nodos de recursos y de demanda para la red.
b) ¿Qué transacciones de divisas debe realizar Jake para convertir las inversiones de Yenes, Rupias y
Ringgits en dólares estadounidenses para asegurar que Grant Hill Associates tiene la cantidad
máxima de dólares después de realizadas las transacciones? ¿Cuánto dinero tiene Jake para
invertir en acciones de su país?
38