Está en la página 1de 40

Traducido del inglés al español - www.onlinedoctranslator.

com

CAPITULO 22

Red adicional
y algoritmos LP

22.1 PROBLEMA DE FLUJO CAPACITADO DE COSTO MÍNIMO

El problema del flujo capacitado de costo mínimo se basa en los siguientes supuestos:

1.Todos los arcos son direccionales (unidireccionales).

2.A cada arco se le asocia un costo de flujo unitario (no negativo).


3.Los arcos pueden tener límites positivos de menor capacidad.

4.Cualquier nodo de la red puede actuar como fuente o como sumidero.

El nuevo modelo determina los flujos que minimizan el costo total mientras satisfacen las
restricciones de flujo en los arcos y las cantidades de oferta y demanda en los nodos. Primero
presentamos el modelo de flujo de red capacitado y su formulación de programación lineal
equivalente. La formulación de programación lineal se utiliza luego como base para el desarrollo
de un algoritmo simplex capacitado especial para resolver el modelo de flujo de red.

22.1.1 Representación de la red


Considere una red capacitadaGRAMO = (norte, una),dóndenortees el conjunto de nodos yAes el conjunto
de arcos y define

Xyo=cantidad de flujo desde el nodoial nodojuyo(lyo)


= capacidad superior (inferior) del arco (yo, j) cyo=
costo unitario de flujo desde el nodoial nodojfi=
flujo neto en el nodoi

La figura 22.1 muestra estas definiciones en arco (yo, j,).La etiqueta [Fi] asume un valor
positivo (negativo) cuando una oferta (demanda) neta está asociada con el nodoi.

22.1
22.2 Capítulo 22 Algoritmos adicionales de red y LP

[Fi] [Fj]
psCyo
i j
FIGURA 22.1 (yoyo,tuyo)

Arco capacitado con flujo externo. Xyo

[-150]
$1
[100] 1 4
(50, 80) $2
$1
$4
$3 [50] (70, 120) 6 [-120]
$4
3 $2
$5 (100, 120)
$6
FIGURA 22.2 [200] 2 5
Red capacitada para el ejemplo 22.1-1 [-80]

Ejemplo 22.1-1
GrainCo suministra maíz desde tres silos a tres granjas avícolas. Las cantidades de oferta en los
tres silos son 100, 200 y 50 mil bushels y las demandas en las tres granjas son 150, 80 y 120 mil
bushels. GrainCo utiliza principalmente ferrocarriles para transportar el maíz a las granjas, con
excepción de tres rutas donde se utilizan camiones.
La Figura 22.2 muestra el recorrido disponible entre los silos y las granjas. Los silos están
representados por los nodos 1, 2 y 3 cuyas cantidades de oferta son [100], [200] y [50], respectivamente.
Las granjas están representadas por los nodos 4, 5 y 6 cuyas cantidades de demanda son [-150 ], [-80] y
[-120], respectivamente. Las rutas permiten el transbordo entre los silos. Los arcos (1, 4), (3, 4) y (4, 6) son
rutas de camiones. Estas rutas tienen capacidades mínimas y máximas. Por ejemplo, la capacidad de la
ruta (1, 4) es de entre 50 y 80 mil bushels. El resto de rutas utilizan trenes cargados, cuya capacidad
máxima es prácticamente ilimitada. Los costos de transporte por bushel se indican en los arcos
respectivos.

CONJUNTO DE PROBLEMAS 22.1A

* 1. Se fabrica un producto para satisfacer la demanda durante un horizonte de planificación de 4 períodos de acuerdo con los
siguientes datos:

Producción unitaria Unidad de tenencia

Período Unidades de demanda costo ($) costo ($)

1 100 24 1
2 110 26 2
3 95 21 1
4 125 24 2

Dado que no se permiten pedidos pendientes, represente el problema como un modelo de red.
22.1 Problema de flujo capacitado de costo mínimo 22.3

2.En el problema 1, supongamos que se permiten pedidos pendientes con una penalización de $1,50 por unidad
por período. Formule el problema como un modelo de red.
3.En el problema 1, supongamos que las capacidades de producción de los períodos 1 a 4 son 110, 95, 125 y 100
unidades, respectivamente, en cuyo caso la demanda dada no puede satisfacerse sin pedidos pendientes.
Suponiendo que el costo de penalización por pedidos pendientes es de $1,5 por unidad por período, formule
el problema como un modelo de red.
4.Daw Chemical posee dos plantas que fabrican un compuesto químico básico para dos clientes a razón de
660 y 800 toneladas por mes. La capacidad de producción mensual de la planta 1 es de entre 400 y 800
toneladas y la de la planta 2 es de entre 450 y 900 toneladas. Los costos de producción por tonelada en las
plantas 1 y 2 son $25 y $28, respectivamente. La materia prima para las plantas la proporcionan dos
proveedores, a quienes se contrata para enviar al menos 500 y 700 toneladas por mes para las plantas 1 y
2 a costos de $200 y $210 por tonelada, respectivamente. Daw Chemical también paga el costo de
transporte tanto de la materia prima como del compuesto final. Los costos por tonelada de transporte de
la materia prima desde el proveedor 1 a las plantas 1 y 2 son $10 y $12, respectivamente. Los costos
similares del proveedor 2 son $9 y $13, respectivamente. Los costos de transporte por tonelada desde la
planta 1 hasta los clientes 1 y 2 son $3 y $4, y desde la planta 2 son $5 y $2, respectivamente. Suponiendo
que 1 tonelada de materia prima produce 1 tonelada del compuesto final, formule el problema como un
modelo de red.

5.Se requiere que dos escuelas públicas no integradas cambien el equilibrio racial de sus inscripciones
aceptando estudiantes de minorías. La inscripción de minorías debe estar entre el 30% y el 40% en
ambas escuelas. Los estudiantes que no son minorías viven en dos comunidades y los estudiantes
minoritarios viven en otras tres comunidades. Las distancias recorridas, en millas, desde las cinco
comunidades hasta las dos escuelas se resumen en la siguiente tabla:

Millas de ida y vuelta desde la escuela a

Zonas minoritarias Áreas no minoritarias


Máximo
Escuela inscripción 1 2 3 1 2

1 1500 20 12 10 4 5
2 2000 15 18 8 6 5
Población estudiantil 500 450 300 1000 1000

Formule el problema como un modelo de red para determinar el número de estudiantes


minoritarios y no minoritarios matriculados en cada escuela.
6.Charnes y Cooper (1967)Durante los próximos tres meses, los agricultores cosechan sus cultivos y
los venden a un silo local. El silo, a su vez, puede vender la cosecha a los minoristas. La siguiente
tabla proporciona el costo de compra y el precio de venta por tonelada durante la temporada de
cosecha.

Costo de compra Precio de venta


Mes por tonelada ($) por tonelada ($)

1 200 250
2 190 230
3 195 240
22.4 Capítulo 22 Algoritmos adicionales de red y LP

La capacidad máxima del silo es de 800 toneladas. El propietario tiene $100,000 en efectivo disponibles que
pueden usarse para comprar nuevos cultivos. Además, inicialmente, al inicio del mes 1, el silo está medio lleno.
Se estima que el costo de almacenamiento por tonelada por mes es de $10. El excedente de efectivo genera un
interés del 1% mensual. El objetivo es determinar la política de compra/venta que debe seguir el propietario para
maximizar la acumulación total de efectivo al final de la temporada de tres meses.

Formule el problema como un modelo de red.

22.1.2 Formulación de programación lineal

La formulación del modelo de red capacitado como un programa lineal proporciona la


base para el desarrollo del algoritmo simplex capacitado, que presentaremos en la
siguiente sección. Usando la notación introducida en la Sección 22.1.1, el programa
lineal para la red capacitada viene dado como

Minimizarz =Automóvil club británicoCyoXyo


(yo, j)hA

sujeto a

aXjk-aXyo=fj,jhnorte
k i
(j,k)hA (yo, j)hA

yoyo…Xyo…tuyo, (yo, j) - A

La ecuación para el nodo.jmide el flujo netoFjen nodojcomo

(Flujo saliente del nodoj) - (Flujo entrante al nodoj) = fj

Nodojactúa como fuente siFj70 y como fregadero siFj60.


Siempre podemos eliminar el límite inferior.yoyode las restricciones mediante el uso de la
sustitución

Xyo=xœ yo+ yoyo

La nueva variable de flujo,Xœ yo, tiene un límite superior detuyo- yoyo. Además, el flujo neto
en el nodoise convierteFi- yoyo, y que en el nodojesFj+ yoyo. La figura 22.3 muestra la
transformación de la actividad (yo, j)después de sustituir el límite inferior.

Ejemplo 22.1-2
Escriba el programa lineal para la red de la figura 22.2, antes y después de sustituir los límites
inferiores.

FIGURA 22.3 [Fi] [Fj] [Fi-yoyo] [Fj-yoyo]


psCyo psCyo
Eliminación del límite inferior en arcos. j
i j i
(yoyo,tuyo) (tuyo-yoyo)
Xyo Xyo
22.1 Problema de flujo capacitado de costo mínimo 22,5

Las principales restricciones del programa lineal relacionan el flujo de entrada y salida para cada nodo, lo
que produce el siguiente LP:

X12 X13 X14 X23 X25 X34 X35 X46 X56

Minimizar 3 4 1 5 6 1 2 2 4

Nodo 1 1 1 1 = 100
Nodo 2 -1 1 1 = 200
Nodo 3 -1 -1 1 1 = 50
Nodo 4 -1 -1 1 = -150
Nodo 5 -1 -1 1 = -80
Nodo 6 -1 -1 = -120

límites inferiores 0 0 50 0 0 70 0 0 100


Límites superiores q q 80 q q 120 q q 120

Tenga en cuenta la disposición de los coeficientes de restricciones. La columna asociada con la variable. Xyo
tiene exactamente un +1 en la filaiy uno -1 en filaj,una propiedad típica de los modelos de red. El resto de los
coeficientes son todos 0. Esta estructura es típica de los modelos de flujo de red.
La solución óptima esz=$1.870.000 conX13= 20 (mil fanegas),X14= 80, X23= 20,X25= 180,X34
= 90,X46= 20, yX56= 100. Todas las variables restantes son cero.
Las variables con límites inferiores se sustituyen como

X14=Xœ 14+ 50
X34=Xœ 34+ 70
X56=Xœ 56+ 100

La sustitución conduce al siguiente LP:

œ œ
X12 X13 Xœ
14 X23 X25 X34 X35 X46 X56

Minimizar 3 4 1 5 6 1 2 2 4

Nodo 1 1 1 1 = 50
Nodo 2 -1 1 1 = 200
Nodo 3 -1 -1 1 1 = - 20
Nodo 4 -1 -1 1 = - 30
Nodo 5 -1 -1 1 = -180
Nodo 6 -1 -1 = -20
Límites superiores q q 30 q q 50 q q 20

La red correspondiente después de sustituir los límites inferiores se muestra en la Figura 22.4. Tenga
en cuenta que la sustitución del límite inferior se puede realizar directamente desde la Figura 22.2
utilizando la sustitución de la Figura 22.3 y sin la necesidad de expresar primero el problema como un
programa lineal.
La solución óptima eszœ=$1.350 mil (oz =1350 + 50 * 1 + 70 * 1 + 100 * 4 = $1870 mil) con
x =20 (mil fanegas), x =180,Xœ13 X1œ4= 30 (oX14= 30 + 50 = 80),
25 (oX56= 0X+œ100 = 100),
34= 20 (oX34= 20 + 70 = 90),x =20,56= 046
que, por supuesto, es la misma solución dada por la solución anterior a la sustitución.
22.6 Capítulo 22 Algoritmos adicionales de red y LP

[-30]
$1
[50] 1 4
(30) $2
$1
$4
$3 [-20] (50) 6 [-20]
3 $2 $4
$5 (20)
FIGURA 22.4 $6
[200] 2 5
Red del ejemplo 22.1-2 después de sustituir los
límites inferiores [-180]

Ejemplo 22.1-3 (Programación de empleo)


Este ejemplo ilustra un modelo de red que inicialmente no satisface el requisito de “flujo de nodo” (es decir, el flujo de
salida del nodo menos el flujo de entrada del nodo equivale al flujo neto del nodo), pero que se puede convertir a esta
forma fácilmente mediante una manipulación especial de las restricciones del programa lineal.
Tempo Agencia de Empleo tiene un contrato para proporcionar trabajadores durante los próximos 4
meses (enero a abril) según el siguiente cronograma:

Mes Enero Febrero Marzo Abril

No. de trabajadores 100 120 80 170

Debido al cambio en la demanda, puede resultar económico retener más trabajadores de los necesarios en
un mes determinado. El costo de contratar y mantener a un trabajador depende de la duración del período de
empleo, como muestra la siguiente tabla:

Periodo de empleo (meses) 1 2 3 4

Costo por trabajador ($) 100 130 180 220

Dejar

Xyo=número de trabajadores contratados en elcomenzardel mesi


y terminado en elcomenzardel mesj

Por ejemplo,X12da el número de trabajadores contratados en enero solo por 1 mes. Para formular el problema
como un programa lineal para el período de 4 meses, sumamos mayo como mes ficticio (mes 5), de modo queX45
define contratación en abril para abril.
Las restricciones reconocen que la demanda de períodokpuede ser satisfecho por todosXyotal que i…
k6j.dejandosiÚ0 sea el excedente de trabajadores en el mesi,el programa lineal viene dado como

X12 X13 X14 X15 X23 X24 X25 X34 X35 X45 s1 s2 s3 s4

Minimizar 100 130 180 220 100 130 180 100 130 100

Enero 1 1 1 1 -1 =100
Febrero 1 1 1 1 1 1 -1 =120
Marzo 1 1 1 1 1 1 -1 =80
Abril 1 1 1 1 -1 =170
22.1 Problema de flujo capacitado de costo mínimo 22.7

El LP anterior no tiene la estructura especial (-1, +1) del modelo de flujo de red (ver Ejemplo
22.1-2). Sin embargo, el programa lineal dado se puede convertir en un modelo de flujo de red
equivalente utilizando las siguientes manipulaciones aritméticas:

1.en unnorte-programa lineal de ecuaciones, crea una nueva ecuación,norte +1, multiplicando la ecuación
nortepor 1.
2.Deje la Ecuación 1 sin cambios.
3.Parayo =2, 3, . . . ,norte,reemplazar cada ecuaciónicon (ecuacióni) - (ecuacióni -1).

La aplicación de estas manipulaciones al ejemplo de programación de empleo produce el siguiente


programa lineal, cuya estructura se ajusta al modelo de flujo de red:

X12 X13 X14 X15 X23 X24 X25 X34 X35 X45 s1 s2 s3 s4

Minimizar 100 130 180 220 100 130 180 100 130 100

Enero 1 1 1 1 -1 = 100
Febrero -1 1 1 1 1 -1 = 20
Marzo -1 -1 1 1 1 -1 = - 40
Abril -1 -1 -1 1 1 -1 = 90
Puede -1 -1 -1 -1 1 = -170

Utilizando la formulación anterior, el modelo de programación de empleo se puede representar de manera


equivalente mediante la red de flujo de costo mínimo que se muestra en la figura 22.5. En realidad, debido a que los arcos
no tienen límites superiores, el problema también se puede resolver como un modelo de transbordo (ver Apéndice de
esta sección).
La solución óptima esX15= 100,X25= 20,X45= 50, y todas las variables restantes son cero. La
siguiente tabla resume las actividades de contratación y despido en el horizonte de 4 meses. El
costo total es de $30, 600.

Mes Numero de trabajadores Numero de trabajadores Número neto


contratado despedido de trabajadores

Enero 100 0 100


Febrero 20 0 120
Marzo 0 0 120
Abril 50 0 170

FIGURA 22.5
Representación en red del problema de programación de empleo.

X15
X14
X35
X13
X12 X34 X45
s2
1 2 3 4 5
s1 s3 s4
[100] [20] X23 [-40] [90] [-170]
X24
X25
22.8 Capítulo 22 Algoritmos adicionales de red y LP

CONJUNTO DE PROBLEMAS 22.1B

* 1. Escriba el programa lineal asociado con la red de flujo de costo mínimo en la figura 22.6,
antes y después de sustituir los límites inferiores.
2.Utilice la inspección para encontrar una solución factible al modelo de red de costo mínimo del
problema de programación de empleo del ejemplo 22.1-3 (figura 22.5). Interprete la solución
mostrando el patrón de contratación y despido que satisface la demanda de cada mes y calcule el
costo total asociado.
3.Reformule el modelo de programación de empleo del ejemplo 22.1-3, suponiendo que un trabajador debe
ser contratado por al menos 2 meses. Escriba el programa lineal y conviértalo en una red de flujo de
costo mínimo.
4.Desarrolle el programa lineal y la red de flujo de costo mínimo asociada para el modelo de
programación de empleo del ejemplo 22.1-3 utilizando los siguientes datos de demanda de 5
meses. Los costos por trabajador de reclutar y mantener a un trabajador por períodos de 1 a 5
meses son $50, $70, $85, $100 y $130, respectivamente.
(a)

Mes 1 2 3 4 5

Numero de trabajadores 300 180 90 170 200

(b)

Mes 1 2 3 4 5

Numero de trabajadores 200 220 300 50 240

5.Conversión de una red capacitada a una red no capacitada.Demuestre que un arco (yo:j)
con flujo capacitadoXyo…tuyose puede sustituir por dosincapacitadoarcos (yo:k)y (j: k)con
un flujo neto (de salida) de [-tuyo] en el nodoky un flujo adicional (de entrada) de [+tuyo]
en el nodoj.El resultado es que elcapacitadoLa red se puede convertir en unaincapacitado
modelo de transporte (Sección 5.1). Aplique la transformación resultante a la red de la
Figura 22.7 y encuentre la solución óptima para la red original resolviendo el modelo de
transporte no capacitado.

FIGURA 22.6 [20]


Red para el problema 1, conjunto 22.1b 3
$5

$6
)

(0
40

,)
0,
(3

$4 (10, )

$1 $3
[50] 1 2 4 [-30]
(0, ) (10, )
[-40]
22.1 Problema de flujo capacitado de costo mínimo 22.9

2
$1 $8
) (50
(60 )
[100] 1 4 [-100]
$2 (50)
$4
() $1 )
0
(9
FIGURA 22.7
3
Red para el problema 5, conjunto 22.1b

22.1.3 Algoritmo símplex de red capacitada


El algoritmo se basa en los pasos exactos del método simplex regular, pero está diseñado
para explotar la estructura de red especial del modelo de flujo de costo mínimo.
Dado queFies el flujo neto en el nodoicomo se define en el programa lineal de la Sección
22.1.2, el algoritmo simplex capacitado estipula que la red debe satisfacer
norte

aFi=0
yo =1

La condición dice que la oferta total en la red es igual a la demanda total. Siempre
podemos satisfacer este requisito agregando un origen o destino ficticio de equilibrio, que
conectamos a todos los demás nodos de la red mediante arcos con costo unitario cero y
capacidad infinita. Sin embargo, el balanceo de la red no garantiza la viabilidad, ya que esto
depende de las capacidades de los arcos.
Ahora presentamos los pasos del algoritmo capacitado. Es esencial estar familiarizado
con el método simplex y la teoría de la dualidad (capítulos 3 y 4). Además, es útil conocer el
método simplex de límite superior (Sección 7.3).

Paso 0. Determine una solución básica factible inicial (conjunto de arcos) para la red. Vaya al
paso 1.
Paso 1. Determine un arco entrante (variable) utilizando la condición de optimización del método
simplex. Si la solución es óptima, deténgase; de lo contrario, vaya al paso 2.
Paso 2. Determine el arco saliente (variable) utilizando la condición de viabilidad del método
simplex. Determine la nueva solución y luego vaya al paso 1.

Unnorte-red de nodos con flujo neto cero (es decir,F1+F2+A +Fnorte=0) consta de norte -1
independienteecuaciones de restricción. Por lo tanto, una solución básica debe incluirnorte -1
arcos. Se puede demostrar que una solución básica siempre corresponde a unaárbol de expansión
de la red (ver Sección 6.2).
El arco entrante (paso 1) se determina calculando los coeficientes objetivos para todos
los arcos no básicos actuales (yo, j).Si todos los coeficientes objetivos son…0, la base actual es
óptima. De lo contrario, seleccionamos el arco no básico con los coeficientes objetivos más
positivos para ingresar a la base.
El cálculo de los coeficientes objetivos se basa en la dualidad, exactamente como lo hicimos
con el modelo de transporte (ver Sección 5.3.2). Usando el programa lineal definido en
22.10 Capítulo 22 Algoritmos adicionales de red y LP

Sección 22.1.2, dejawiser la variable dual asociada con la restricción del nodoi,entonces el
problema dual (excluyendo los límites superiores) se da como
norte

Maximizarz =aFiwi
yo =1

sujeto a
wi-wj…Cyo, (yo, j)hA
wisin restricciones en el signo,yo =1, 2,A ,norte

De la teoría de la programación lineal tenemos

wi-wj=cyo, para arco básico (yo, j)

Debido a que el programa lineal original (Sección 22.1.2) tiene una restricción redundante por
definición, podemos asignar un valor arbitrario a una de las variables duales (compárese con
el algoritmo de transporte, Sección 5.3). Por conveniencia, estableceremosw1= 0. Luego
resolvemos las ecuaciones (básicas)wi-wj=cyopara determinar los valores duales restantes. De
la Sección 4.2.4, Fórmula 2, sabemos que el coeficiente objetivo de no básicoXyoes la
diferencia entre el lado izquierdo y el lado derecho de la restricción dual asociada, es decir,wi
-wj- Cyo. dejando

zyo=wi-wj
el coeficiente objetivo de la variableXyose calcula como
zyo- Cyo=wi-wj- Cyo
El único detalle que queda es mostrar cómo se determina la variable saliente. El
siguiente ejemplo numérico proporciona este detalle.

Ejemplo 22.1-4
Una red de tuberías conecta dos plantas desalinizadoras de agua con dos ciudades. Las cantidades de suministro
diario en las dos plantas son 40 y 50 millones de galones, y las cantidades de demanda diaria en las ciudades 1 y
2 son 30 y 60 millones de galones, respectivamente. Los nodos 1 y 2 representan las plantas 1 y 2,
respectivamente, y los nodos 4 y 5 representan las ciudades 1 y 2, respectivamente. El Nodo 3 es una estación de
refuerzo entre las plantas y las ciudades. El modelo ya está equilibrado porque la suma de la oferta en los nodos
1 y 2 es igual a la suma de la demanda en los nodos 4 y 5. La figura 22.8 muestra la red asociada.

Iteración 0

Paso 0.Determinación de una solución básica viable inicial:La solución básica inicial debe ser
un árbol de expansión. ElfactibleEl árbol de expansión de la Figura 22.9 (mostrado con arcos sólidos) se
obtiene mediante inspección. Normalmente, utilizamos una técnica de variable artificial para encontrar dicha
solución (para más detalles, véase Bazaraa et al., 1990, págs. 440-446).
En la figura 22.9, la solución básica factible consta de los arcos (sólidos) (1, 3), (1, 4), (2, 3)
y (3, 5) con lafactibleflujos de 30, 10, 50 y 60 unidades, respectivamente. Los arcos restantes
(discontinuos) (1, 2), (2, 5) y (4, 5) representan las variables no básicas. la notaciónx(c)mostrado
en los arcos indica que un flujo deXunidades se asigna a un arco con capacidadC.Los valores
predeterminados paraXyCson 0 yq,respectivamente.
22.1 Problema de flujo capacitado de costo mínimo 22.11

Costo unitario Capacidad de arco

$5
Planta 1 [40] 1 4 [-30] Ciudad 1
(35)

$7 )
(1
0
$3 ( ) 3 $4 ( )
$8
()

$2
0)
$1 FIGURA 22.8

(6
Planta 2 [50] 2 5 [-60] Ciudad 2
(30) Red para el ejemplo 22.1-4

w 1- 0 w4- -5
$5
[40] 1 4 [-30] z12-C12- 0 - (-5) -3 - 2 z25-C25- -5 -
30(35)
(-15) -1 -9 z45-C45- -5 - (-15) - 4 - 6
$7 0)
10
(

w3- -7
1

El arco (2, 5) alcanza el límite superior en 30.


$3 $4 ( )
3
- $ SustitutoX25- 30 -X52.
60 8
()
50 $2
0)

ReducirX23yX35cada uno por 30.


(6

-
$1
[50] 2 5 [-60]
(30)
w2- -5 w5- -15

FIGURA 22.9
Red para iteración 0

Iteración 1

Paso 1.Determinación del arco entrante:Obtenemos los valores duales resolviendo la corriente
ecuaciones basicas

w1= 0

wi-wj=cyo, para arco básico (yo, j)

Obtenemos así,

Arco(1, 3):w1-w3= 7, por lo tantow3= -7

Arco(1, 4):w1-w4= 5, por lo tantow4= -5

Arco(2, 3):w2-w3= 2, por lo tantow2= -5


Arco(3, 5):w3-w5= 8, por lo tantow5= -15
Ahora calculamoszyo- Cyopara los arcos no básicos como

Arco (1, 2):w1-w2-C12= 0 - (-5) - 3 = 2

Arco (2, 5):w2-w5-C25= (-5) - (-15) - 1 =9

Arco (4, 5):w4-w5-C45= (-5) - (-15) - 4 = 6


Por tanto, el arco (2, 5) entra en la solución básica.
22.12 Capítulo 22 Algoritmos adicionales de red y LP

Paso 2.Determinación del arco saliente:De la Figura 22.9, el arco (2, 5) forma un bucle con básicos
arcos (2, 3) y (3, 5).A partir de la definición del árbol de expansión, no se puede formar
ningún otro bucle.Debido a que se debe aumentar el flujo en el nuevo arco (2, 5),
ajustamos el flujo en los arcos del circuito en una cantidad igual para mantener la
viabilidad de la nueva solución. Para lograr esto, identificamos el flujo positivo (+) en el
circuito por la dirección del flujo del arco entrante (es decir, de 2 a 5). Luego asignamos
(+) o (-) a los arcos restantes del bucle, dependiendo de si el flujo de cada arco escono
contrala dirección del flujo del arco entrante. Estas convenciones de signos se muestran
en la figura 22.9.
La determinación del nivel máximo de flujo en el arco entrante (2, 5) se basa en dos
condiciones:

1.El nuevo flujo en los arcos básicos actuales del bucle no puede ser negativo.
2.El nuevo flujo en el arco entrante no puede exceder su capacidad.

La aplicación de la condición 1 muestra que los flujos en los arcos (2, 3) y (3, 5) no pueden disminuirse
en más de min{50, 60} = 50 unidades. Mediante la condición 2, el flujo en el arco (2, 5) se puede aumentar
hasta como máximo la capacidad del arco (= 30 unidades). Por tanto, el cambio de flujo máximo en el circuito
es min{30, 50} = 30 unidades. Los nuevos flujos en el circuito son, por tanto, 30 unidades en el arco (2, 5), 50 -
30 = 20 unidades en el arco (2, 3) y 60 - 30 = 30 unidades en el arco (3, 5).
Debido a que ninguno de los arcos básicos actuales sale de la base en el nivel cero, el nuevo arco (2, 5)
debe permanecer no básico en el límite superior. Sin embargo, para evitar tratar con arcos no básicos que
están en el nivel de capacidad (o límite superior), implementamos la sustitución

X25= 30 -X52, 0…X52…30


Esta sustitución se efectúa en las ecuaciones de flujo asociadas con los nodos 2 y 5 de la siguiente
manera. Considerar

Ecuación de flujo actual en el nodo 2: 50 +X12=X23+X25


Ecuación de flujo actual en el nodo 5:X25+X35+X45= 60

Entonces, la sustituciónX25= 30 -X52da

Nueva ecuación de flujo en el nodo 2: 20 +X12+X52=X23


Nueva ecuación de flujo en el nodo 5:X35+X45=X52+ 30

Los resultados de estos cambios se muestran en la Figura 22.10. La dirección del flujo en
el arco (2, 5) ahora se invierte a 5: 2 conX52= 0, según se desee. La sustitución también
requiere cambiar el costo unitario del arco (5, 2) a -$1. Indicaremos esta inversión de dirección
en la red etiquetando la capacidad del arco con un asterisco.

Iteración 2. La figura 22.10 resume los nuevos valores dezyo- Cyo(¡verifique!) y muestra que el arco
(4, 5) entra en la solución básica. También define el bucle asociado al nuevo arco
entrante y asigna los signos a sus arcos.
El flujo en el arco (4, 5) se puede incrementar en el menor de

1.Máximo permitidoaumentaral entrar en el arco (4, 5) =q


2.Máximo permitidoaumentaren arco (1, 4) = 35 - 30 = 5 unidades
22.1 Problema de flujo capacitado de costo mínimo 22.13

w1- 0 w4- -5
$5
[40] 1 4 [-30] z12-C12- 0 - (-5) -3 - 2
30(35)
z52-C52- -15 -(-5) -(-1) - -9 z45-C45- -5 -
(-15) -4 -6

$7 0)
10
-

(
w3- -7

1
El arco (4, 5) entra en el nivel 5.
$3 $4 ( )
3
$ El arco (1, 4) sale en el límite superior.
30 8
()
20 $2
0)
- SustitutoX14- 35 -X41.
(6 - $1
[20] 2 5 [-30] ReducirX13yX35cada uno por 5.
(30)*
w2- -5 w5- -15

FIGURA 22.10
Red para la iteración 1

3.Máximo permitidodisminuiren arco (1, 3) = 10 unidades


4.Máximo permitidodisminuiren arco (3, 5) = 30 unidades

Por lo tanto, el flujo en el arco (4, 5) se puede aumentar a 5 unidades, lo que hará que (4, 5)
sea básico y obligará al arco básico (1, 4) a ser no básico en su límite superior ( = 35).
Usando la sustituciónX14= 35 -X41, la red se cambia como se muestra en la Figura
22.11, con los arcos (1, 3), (2, 3), (3, 5) y (4, 5) formando la solución básica (árbol de
expansión). La inversión del flujo en el arco (1, 4) cambia su costo unitario a -$5. Además,
convénzase de que la sustitución en las ecuaciones de flujo de los nodos 1 y 4 generará 5
aporteunidades en cada nodo.

Iteración 3. Los cálculos del nuevozyo- Cyopara los arcos no básicos (1, 2), (4, 1) y (5, 2) se resumen en la
Figura 22.11, que muestra que el arco (1, 2) entra en el nivel 5 y el arco (1, 3) se convierte
en no básico en el nivel 0. La figura 22.12 muestra la nueva solución.

Iteración 4. El nuevozyo- CyoEn la figura 22.12 se muestra que la solución es óptima. La sustitución inversa
produce los valores de las variables originales, como se muestra en la figura 22.12.

FIGURA 22.11
Red para la iteración 2

w1- 0 w4- -11


- $5
[5] 1 4 [5] z12-C12- 0 - (-5) -3 -2 z41-C41- -11 -0 -(-5)
(35)*
- -6 z52-C52- -15 - (-5) -(-1) - -9
$7 0)
5(
1

w3- -7
$3 - $4 5( ) El arco (1, 2) entra en el nivel 5.
3
$ El arco (1, 3) sale en el nivel 0.
25 8
()
20 $2
0)

AumentarX23por 5.
(6

- $1
[20] 2 5 [-30]
(30)*
w2- -5 w5- -15
22.14 Capítulo 22 Algoritmos adicionales de red y LP

w1- 0 w4- -9
- $5 z13-C13- 0 - (-5) -7 - -2 z41-C41- -9 -0 -(-5)
[5] 1 4 [5]
(35)* - -4 z52-C52- -13 - (-3) -(-1) - -9

$7 )
(1
w3- -5

0
Solución óptima:
$3 5( ) $4 5( ) X12- 5,X13- 0 X14-
3
$ 35 - 0 - 35 X23- 25
25 8
25 $2 ()
0) X25- 30 - 0 - 30 X35
(6
- $1 - 25,X45- 5 Costo
[20] 2 5 [-30] total - $490
(30)*
w2- -3 w5- -13

FIGURA 22.12
Red para la iteración 3

Momento del solucionador

La idea básica del modelo capacitado de costo mínimo de Excel Solver es similar a la que se detalla en el ejemplo
6.3-6 para el modelo de ruta más corta. ArchivosolucionadorEx22.1-4.xlsproporciona los detalles.

Momento AMPL
ArchivoamplEx22.1-4.txtEs un modelo general que se puede utilizar para resolver el problema capacitado de
costo mínimo de cualquier tamaño. La idea del modelo es similar a la del modelo AMPL de ruta más corta del
ejemplo 6.3-6.

CONJUNTO DE PROBLEMAS 22.1C

* 1.Resuelva el problema 1, conjunto 22.1a, mediante el algoritmo simplex capacitado.


2.Resuelva el problema 2, conjunto 22.1a, mediante el algoritmo simplex capacitado y demuestre también que se
puede resolver mediante el modelo de transbordo.
3.Resuelva el problema 3, conjunto 22.1a, mediante el algoritmo simplex capacitado.
4.Resuelva el problema 4, conjunto 22.1a, mediante el algoritmo simplex capacitado.
* 5.Resuelva el problema 5, conjunto 22.1a, mediante el algoritmo simplex capacitado.
6.Resuelva el problema de programación de empleo del ejemplo 22.1-3 mediante el algoritmo simplex
capacitado.
7.Wyoming Electric utiliza tuberías de lodo existentes para transportar carbón (transportado por agua
bombeada) desde tres áreas mineras (1, 2 y 3) a tres plantas de energía (4, 5 y 6). Cada tubería puede
transportar como máximo 10 toneladas por hora. Los costos de transporte por tonelada y la oferta y
demanda por hora se dan en la siguiente tabla:
4 5 6 Suministrar

1 $5 $8 $4 8

2 $6 $9 $12 10

3 $3 $1 $5 18

Demanda dieciséis 6 14
Determine el cronograma de envío óptimo.
22.1 Problema de flujo capacitado de costo mínimo 22.15

5
2 5

2 11 6
8

10
1 4 7

4 3 7 9

1
3 6

FIGURA 22.13
Red para el problema 8, conjunto 22.1c

8.La red de la Figura 22.13 muestra las distancias entre siete ciudades. Utilice el algoritmo simplex capacitado
para encontrar la distancia más corta entre los nodos 1 y 7. (Pista: Supongamos que los nodos 1 y 7
tienen flujos netos de [+1] y [-1], respectivamente. Todos los demás nodos tienen flujo neto cero).

9.Muestre cómo se puede especializar el modelo de flujo capacitado de costo mínimo para representar
el modelo de flujo máximo de la Sección 6.4. Aplique la transformación a la red en el ejemplo 6.4-2.
Por conveniencia, suponga que la capacidad de flujo de 4 a 3 es cero. Todos los datos restantes se
mantienen sin cambios.
10.Resuelva los siguientes problemas usando Excel Solver y AMPL:
(a)Problema 3, Conjunto 22.1a.
(b)Problema 4, Conjunto 22.1a.

(C)Problema 7, Conjunto 22.1c.


(d)Problema 8, Conjunto 22.1c.

APÉNDICE: Modelo de Transbordo


El modelo de transbordo es una técnica “antigua” que convierte la red de transporte de costo
mínimo al modelo de transporte regular presentado en el Capítulo 5. Este es un caso especial de la
red de costo mínimo altamente eficiente presentada anteriormente en el sentido de que no
permite restricciones de capacidad en el transporte marítimo. rutas. El modelo de transbordo rara
vez se utiliza en la práctica porque no es tan eficiente como el modelo de red general. Se presenta
aquí, sin embargo, porque demuestra el interesante uso deamortiguadorespara convertir el envío
transitorio en envío directo.

Ejemplo 22.1.5
Dos plantas de automóviles,PAG1 yPAG2, están vinculados a tres distribuidores,D1,D2, yD3, a través de dos
centros de tránsito,t1 yt2, según la red que se muestra en la Figura 22.14. Las cantidades de oferta en las plantas.
PAG1 yPAG2 son 1.000 y 1.200 coches, respectivamente, y la demanda asciende en los concesionarios. D1,D2, yD
3, son 800, 900 y 500 coches, respectivamente. Los costos de envío por automóvil (en cientos de dólares) entre
pares de nodos se muestran en los enlaces (o arcos) de conexión de la red.
22.16 Capítulo 22 Algoritmos adicionales de red y LP

D1 800
8
3
1000 PAG1 t1 5
6
4

2 7 D2 900
4
5
1200 PAG2 t2 3
9
FIGURA 22.14
Red de transbordo entre plantas y
D3 500
distribuidores

El transbordo ocurre en la red en la Figura 5.7 porque la cantidad total de suministro de 2200
(=1000 + 1200) autos en nodosPAG1 yPAG2 podrían posiblemente pasar a través de cualquier nodo
de la red antes de llegar finalmente a sus destinos en los nodosD1,D2, yD3. En este sentido, cada
nodo de la red con arcos de entrada y salida (t1,t2,D1, yD2) actúa como origen y destino y se le
conoce comonodo de transbordo.Los nodos restantes son nodos de suministro puro(PAG1 yPAG
2) onodos de demanda pura(D3).
El modelo de transbordo se puede convertir en un modelo de transporte regular con 6
fuentes (PAG1,PAG2,t1,t2,D1, yD2) y cinco destinos (t1,t2,D1,D2, yD3). Las cantidades de
oferta y demanda en los diferentes nodos se calculan como

suministro en unnodo de suministro puro=Oferta original


Demanda a unnodo de demanda pura=Demanda original
suministro en unnodo de transbordo=Oferta original + Cantidad de reserva
Demanda a unnodo de transbordo=Demanda original + Monto del buffer

La cantidad de colchón debe ser lo suficientemente grande como para permitir que todos losoriginalunidades de
oferta (o demanda) para pasar a través de cualquiera de lostransbordonodos. DejarBser la cantidad de buffer deseada;
entonces

B =Oferta total (o demanda)


=1000 + 1200 (o 800 + 900 + 500) =
2200 coches
Usando el bufferBy los costos unitarios de envío dados en la red, construimos el modelo de transporte
regular equivalente como en la siguiente tabla.

t1 t2 D1 D2 D3
PAG1 3 4 METRO METRO METRO 1000

PAG2 2 5 METRO METRO METRO 1200

t1 0 7 8 6 METRO B

t2 METRO 0 METRO 4 9 B

D1 METRO METRO 0 5 METRO B

D2 METRO METRO METRO 0 3 B

B B 800+B900+B 500
22.1 Problema de flujo capacitado de costo mínimo 22.17

D1 800
0
80
1000 PAG1 t1
40
0

10
00
D2 900
0
00
0
12 10
1200 PAG2 t2 500

FIGURA 22.15
D3 500
Solución del modelo de transbordo.

La solución del modelo de transporte resultante (determinado por TORA) se muestra en la Figura 22.15. Tenga en
cuenta el efecto del transbordo: distribuidorD2 recibe 1400 automóviles, conserva 900 automóviles para satisfacer su
demanda y envía los 500 automóviles restantes al concesionarioD3.

CONJUNTO DE PROBLEMAS 22.1D1

1.La red de la Figura 22.16 muestra las rutas de envío desde los nodos 1 y 2 a los nodos 5 y 6 a
través de los nodos 3 y 4. Los costos unitarios de envío se muestran en los arcos respectivos.
(a)Desarrollar el modelo de transbordo correspondiente.
(b)Resuelva el problema y muestre cómo se enrutan los envíos desde los orígenes a los
destinos.
2.En el problema 1, supongamos que el nodo fuente 1 se puede vincular al nodo fuente 2 con un costo
de envío unitario de $1. El costo de envío unitario del nodo 1 al nodo 3 aumenta a $5.

1 6 FIGURA 22.16
100 1 3 5 150
Red para el problema 1, conjunto 22.D
4

1 3 5 1
3

2 8
200 2 4 6 150

FIGURA 22.17
900 1 6 1100
1 .2 Red para el problema 3, conjunto 22.1D
.3
4 4.5
.8
6
1400 2 .5 7 1000
3
4.3
5 2.1
2
4.6 1.9
1000 3 8 1200

1Le recomendamos que utilice TORA, Excel Solver o AMPL para resolver los problemas de este conjunto.
22.18 Capítulo 22 Algoritmos adicionales de red y LP

Formule el problema como un modelo de transbordo y encuentre el cronograma de envío


óptimo.
3.La red de la Figura 22.17 muestra las rutas para enviar automóviles desde tres plantas (nodos
1, 2 y 3) a tres concesionarios (nodos 6 a 8) a través de dos centros de distribución (nodos 4
y 5). Los costos de envío por automóvil (en $100) se muestran en
los arcos.
(a)Resuelva el problema como modelo de transbordo.
(b)Encuentre la nueva solución óptima suponiendo que el centro de distribución 4 puede vender 240 automóviles
directamente a los clientes.

4.Consideremos el problema de transporte en el que dos fábricas suministran un bien a tres tiendas.
El número de unidades de suministro disponibles en las fuentes 1 y 2 es 200 y 300,
respectivamente; los demandados en las tiendas 1, 2 y 3 son 100, 200 y 50, respectivamente. Las
unidades podrán ser transbordadas entre las fábricas y los almacenes antes de llegar a su destino
final. Encuentre el cronograma de envío óptimo según los costos unitarios en la siguiente tabla.

Fábrica Almacenar

1 2 1 2 3

1 $0 $6 $7 $8 $9
Fábrica
2 $6 $0 $5 $4 $3
1 $7 $2 $0 $5 $1
Almacenar 2 $1 $5 $1 $0 $4
3 $8 $9 $7 $6 $0

5.Considere la red de oleoductos que se muestra en la Figura 22.18. Los diferentes nodos representan
estaciones de bombeo y recepción. Las distancias en millas entre las estaciones se muestran en la
red. El costo de transporte por galón entre dos nodos es directamente proporcional a la longitud
de la tubería. Desarrollar el modelo de transbordo asociado y encontrar la solución óptima.

6.Problema de la ruta más corta. Encuentre la ruta más corta entre los nodos 1 y 7 de la red en la Figura
22.19 formulando el problema como un modelo de transbordo. Las distancias entre los diferentes
nodos se muestran en la red. (Pista: Supongamos que el nodo 1 tiene una oferta neta de 1 unidad y
que el nodo 7 tiene una demanda neta también de 1 unidad).

50.000 60.000(galones) FIGURA 22.18


Red para el problema 5, conjunto 22.1D

1 3

20 3 9 30

2 7 4
40

90.000 20.000
8 10 2

6 5
4
22.1 Problema de flujo capacitado de costo mínimo 22.19

1 4

4
2 7 5 9 2
5
8
1 4 6 5 7
1

3
3 2 5 7
3

3 6

FIGURA 22.19
Red para el problema 6, conjunto 22.1D

7.En el modelo de transbordo del ejemplo 5.5-1, definaXyocomo la cantidad enviada desde el nodoi
al nodoj.El problema se puede formular como un programa lineal en el que cada nodo produce
una ecuación de restricción. Desarrolle el programa lineal y demuestre que la formulación
resultante tiene la característica de que los coeficientes de restricción,ayo, de la variableXyoson

1, en restriccióni
ayo=µ-1, en restricciónj
0, de lo contrario

8.Una agencia de empleo debe proporcionar los siguientes trabajadores durante los
próximos 5 meses:

Mes 1 2 3 4 5

Número de trabajadores 100 120 80 170 50

Como el costo de la mano de obra depende de la duración del empleo, puede resultar más
económico mantener más trabajadores de los necesarios durante algunos meses del horizonte de
planificación de cinco meses. La siguiente tabla estima el coste laboral en función de la duración del
empleo:

Meses de empleo 1 2 3 4 5

Costo por trabajador ($) 100 130 180 220 250

Formule el problema como un programa lineal. Luego, utilizando manipulaciones algebraicas


adecuadas de las ecuaciones de restricción, demuestre que el modelo se puede convertir a un modelo
de transbordo y encuentre la solución óptima. (Pista: Utilice la característica de transbordo del
problema 7 para convertir las restricciones del problema de programación en las del modelo de
transbordo).
22.20 Capítulo 22 Algoritmos adicionales de red y LP

22.2 ALGORITMO DE DESCOMPOSICIÓN

Considere la situación de desarrollar un plan corporativo maestro para varias instalaciones de


producción. Aunque cada instalación tiene sus propias limitaciones independientes de capacidad y
producción, las diferentes instalaciones están vinculadas a nivel corporativo por consideraciones
presupuestarias. El modelo resultante incluye dos tipos de restricciones: común, que representa las
restricciones presupuestarias corporativas, yindependiente, que representa la capacidad interna y
las restricciones de producción de cada instalación. La figura 22.20 muestra el diseño de las
restricciones resultantes paranorteactividades (instalaciones). En ausencia de restricciones
comunes, todas las actividades operan de forma independiente.
El algoritmo de descomposición mejora la eficiencia computacional del problema
representado en la Figura 22.20 al dividirlo ennortesubproblemas que pueden resolverse casi
de forma independiente. Sin embargo, señalamos que la necesidad del algoritmo de
descomposición era más justificable en el pasado cuando la velocidad y la memoria de la
computadora eran modestas. Las impresionantes capacidades informáticas actuales evitan el
uso del algoritmo de descomposición. Sin embargo, presentamos aquí el algoritmo debido a
su interesante contribución teórica.
El modelo matemático correspondiente viene dado como

Maximizarz =C1X1+C2X2+A +CnorteXnorte

sujeto a

A1X1+A2X2+A +AnorteXnorte…b0

D1X1 …b1
D2X2 …b2
oh oh
DnorteXnorte…bnorte

Xj Ú0,j =1, 2,A ,norte

Las variables de holgura y excedente se agregan según sea necesario para convertir todas las
desigualdades en ecuaciones.

FIGURA 22.20
Restricciones comunes
Diseño de un programa lineal
descomponible.

Actividad
1

Actividad
Independiente
2
restricciones

Actividad
norte
22.2 Algoritmo de descomposición 22.21

El principio de descomposición se basa en representar todo el problema en términos


de lapuntos extremosde los conjuntos {X|DjXj…bj,XjÚ0},j =1, 2,A ,n.Para hacerlo, el espacio de
soluciones descrito por cada {X|DjXj…bj,XjÚ0} debe estar acotado. Este requisito siempre
puede satisfacerse para cualquier conjunto.jañadiendo la restricción artificial 1Xj…METRO,
dóndeMETROes suficientemente grande.
DejarX jk,k =1, 2,A ,kjdefinir los puntos extremos de {X|DjXj…bj,XjÚ0}. Nosotros
norte

entonces tener

kj
Xj=abjkXjk norte,j =1, 2,A ,norte
k =1

kj
dóndebjkÚ0 para todoskyabjk=1
k =1
Podemos reformular todo el problema en términos de los puntos extremos para obtener lo
siguienteproblema maestro:

k1 k2 knorte

Maximizar =aC1X 1kb 1k+aC2X2kb2k+A


norte norte
+aCnorteX nkbnk
norte

k =1 k =1 k =1

sujeto a

k1 k2 k
A
norte

aA1X 1kb1k+aA2X2kb2
norte norte
k+ + aAnorteXnkbnk…b0
norte

k =1 k =1 k =1
kj

ab1k =1
k =1
kj

ab2k =1
k =1

oh oh
kj

abnk =1
k =1

bjkÚ0, para todosjyk

Las nuevas variables en el problema maestro sonbjk.Una vez alcanzados sus valores óptimos, bj*k,
están determinados, podemos encontrar la solución óptima al problema original mediante sustitución
hacia atrás:

kj
Xj=ab… jkXjk,
norte
j =1, 2,A ,norte
k =1

Puede parecer que la solución del problema maestro requiere una determinación previa
detodolos puntos extremosXnorte
jk¡Una tarea realmente difícil! Afortunadamente, no es así.
22.22 Capítulo 22 Algoritmos adicionales de red y LP

Para resolver el problema maestro mediante el método simplex revisado (Sección 7.2),
necesitamos determinar las variables de entrada y salida en cada iteración. Para la variable
entrante, dadaCByB-1de la base actual del problema maestro, entonces para los no básicos bjk,
tenemos

- 1PAGjk- Cjk
zjk- Cjk=CBB

dónde

AjXnorte
jk

0
oh
Cjk=CjXjk norteyPAGjk=¶ ∂
1
oh
0

Ahora, para decidir cuál de las variables no básicas, si es que hay alguna,bjkdebe ingresar la
solución, debemos determinar

zj*k*- Cj*k*=mínimo {zjk- Cjk}


todojyk

Sizj*k*- Cj*k*70, entonces, de acuerdo con la condición de optimización de maximización,bj*k*


debe ingresar a la solución; de lo contrario, se ha alcanzado el óptimo.
Todavía no hemos mostrado cómozj*k*- Cj*k*se calcula numéricamente. La idea radica en la
siguiente identidad.

mínimo {zjk- Cjk} = mín.mimín{zjk- Cjk}F


todojyk j k

La razón por la que podemos establecer esta identidad es que cada conjunto convexo {X|Dj
Xj…bj,XjÚ0} tiene su conjunto independiente de puntos extremos. En efecto, lo que dice la
identidad es que podemos determinarzj*k*- Cj*k*en dos pasos:

Paso 1. Para cada conjunto convexo {X|DjXj…bj,XjÚ0}, determina el punto extremo Y


jk*que produce el menorzjk- Cjk-eso es,zjk*- Cjk*=mín.k{zjk- Cjk}.
norte

Paso 2. Determinarzj*k*- Cj*k*=mín{zjk*- Cjk*}


j

De la teoría LP, sabemos que la solución óptima, cuando es finita, debe estar asociada
con un punto extremo del espacio de soluciones. Porque cada uno de los conjuntos {X|DjXj…
bj,XjÚ0} está limitado por definición, el paso 1 es matemáticamente equivalente a resolver
norteprogramas lineales de la forma

Minimizarwj= {zj- Cj|DjXj…bj,XjÚ0}

La función objetivowjes una función lineal enXj(ver Problema 8, Conjunto 22.2a).


22.2 Algoritmo de descomposición 22.23

La determinación de la variable entrante.bj*k*en el problema maestro se reduce a resolver


norte (programas lineales más pequeños) para determinar el punto extremo de "entrada" Y
j*k*. Este enfoque excluye la necesidad de determinar todos los puntos extremos de todosnorte
norte

conjuntos convexos. Una vez localizado el punto extremo deseado, todos los elementos del
vector columnaPAGj*k*están definidos. Luego podemos determinar la variable saliente y
posteriormente calcular la siguienteB-1utilizando los cálculos del método simplex revisado.

Ejemplo 22.2-1
Resuelva el siguiente LP mediante el algoritmo de descomposición:

Maximizarz =3X1+ 5X2+X3+X4


sujeto a
X1+X2+X3+ X4…40

5X1+X2 …12

X3+ X4Ú5
X3+ 5X4…50

X1,X2,X3,X4Ú0

El problema tiene dos subproblemas que corresponden a los siguientes conjuntos de variables:

X1= (X1,X2),X2t= (X3,X4) t

El problema maestro asociado queda así dado como:

Empezando básico

Subproblema 1 Subproblema 2 solución

b11 b12 A b1k1 b21 b22 A b2k2 X5 X6 X7

C 1X11 C1X12 A CX C2X22 A X 0 -M -M


C1X1k1 C2 2k2
norte norte norte norte norte norte
2 21

A1X11
norte
A1X norte
12 A A1X1k1
norte
A2X21
norte
A2X22
norte
A A2X2k2
norte
1 0 0 =40
1 1 A 1 0 0 A 0 0 1 0 = 1
0 0 A 0 1 1 A 1 0 0 1 = 1

C1= (3, 5) C2= (1, 1)


A1= (1, 1) A2= (1, 1)

espacio de solución,D1X1…b1: espacio de solución,D2X2…b2:

5X1+X2…12 X3+X4Ú5
X1,X2Ú0 X3+ 5X4…50
X3,X4Ú0

Darse cuenta deX5es la variable de holgura que convierte la restricción común a la siguiente ecuación:

X1+X2+X3+X4+X5= 40
22.24 Capítulo 22 Algoritmos adicionales de red y LP

Recuerde que los subproblemas 1 y 2 tienen en cuenta variablesX1,X2,X3, yX4solo. Esta es la razónX5
debe aparecer explícitamente en el problema maestro. El resto de variables básicas iniciales,X6yX7, son
artificiales.

Iteración 0

XB= (x5,X6,X7)t= (40, 1, 1)t

CB= (0, -M, -M),B=B-1=I

Iteración 1

Subproblema 1(j =1). Tenemos

A1X1
z1-C1=CBB-1£ 1 ≥ -C1X1
0

X1b
11, 12a
X2
X
=10, -M, -M2• 1 µ -13, 52a1b
X2
0

= -3X1- 5X2-METRO

Por lo tanto, el LP correspondiente es

Minimizarw1= -3X1- 5X2-METRO

sujeto a

5X1+X2…12

X1,X2Ú0

La solución de este problema (por el método simplex) produce

Xnorte
11=10, 122t,z… 1-C… 1=w… 1=-60-METRO

Subproblema 2(j =2). El programa lineal asociado viene dado como

A2X2
Minimizarz2-C2=CBB-1£ 0 ≥ -C2X2
1

X3b
11, 12a
X4
X
=10, -M, -M2• 0 µ -11, 12a4b
X5
1

= -X4-X5-METRO
22.2 Algoritmo de descomposición 22.25

sujeto a

X3+X4Ú5

X3+ 5X4…50

X3,X4Ú0

La solución óptima del problema produce

Xnorte
21=150, 02t,z… 2-C… 2=-50-METRO

*
Debido a que el problema maestro es del tipo maximización yz*1- C1*6z2- C2*yz* 1- C1*60,
X11 en la solución.
resulta queb11asociado con el punto extremonorteentra
Para determinar la variable saliente,

0
11, 12a b
A1X 11 norte
12 12
PAG11=£ 1 ≥=• 1 µ = £1≥
0 0 0

De este modo,B-1PAG11= (12, 1, 0)t. DadoXB= (x5,X6,X7)t= (40, 1, 1)t, resulta queX6(una variable artificial)
abandona la solución básica (permanentemente).
La nueva base se determina reemplazando el vector asociado conX6con el vectorPAG11,
que da (¡verificar!)

1 12 0 1 - 12 0
B=£0 1 0≥qB-1=£0 1 1 0≥
0 0 0 0 1

La nueva solución básica es

XB= (x5,b11,X7)t=B-1(40, 1, 1)t= (28, 1, 1)t

CB= (0,Cnorte
1X11, -M) = (0, 60, -METRO)

Iteración 2

Subproblema 1(j =1). La función objetivo asociada es

Minimizarw1= -3X1- 5X2+ 60

(¡verificar!). La solución óptima producez* 1-C* 1=w1= 0, lo que significa que ninguno de los restantes
Incluir puntos extremos en el subproblema 1 puede mejorar la solución del problema maestro.

Subproblema 2(j =2). La función objetivo asociada es (casualmente) la misma que paraj =2 en la
iteración 1 (¡verificar!). La solución óptima produce

Xnorte
22=150, 02t,z…- C
2… 2=-50-METRO
22.26 Capítulo 22 Algoritmos adicionales de red y LP

norte
Tenga en cuenta queX 22 es en realidad el mismo punto extremo queX 21. El subíndice 2 se utiliza para notación.
norte

conveniencia para representar la iteración 2.


De los resultados de los dos subproblemas,z… 2-C… 260 indica queb22asociado conX22 norte

entra en la solución básica.


Para determinar la variable saliente, considere

50
11, 12a b
A2X 22 norte
0 50
PAG22=£ 0 ≥=• 0 µ = £0≥
1 1 1

De este modo,B-1PAG22= (50, 0, 1)t. PorqueXB= (x5,b11,X7)t= (28, 1, 1)t,X5hojas.


La nueva base y su inversa se dan como (¡verificar!)

1 12
50 12 0 50 - 50 0
B=£0 1 0≥qB-1=£ 0 1 0≥
1 12
1 0 1 - 50 50 1

XB= (b22,b11,X7)t=B-1(40, 1, 1)t=A14 25, 1,1125Bt

CB=1CX ,CX
norte
2 22 1 11, -METRO2 = 150, 60, -METRO2
norte

Iteración 3
Subproblema 1(j =1). Debes verificar que la función objetivo asociada sea

Minimizarw1=AMETRO50- 2BX1+AMETRO50 - 4BX2- 12METRO

50 + 48

La solución óptima asociada es

X 13=10, 02t,z… 1-C…


norte
1= -12METRO
50 + 48

Subproblema 2(j =2). Se puede demostrar que la función objetivo es igual (¡verificar!)

Minimizarw2=AMETRO50B(X3+X4) -METRO

La solución óptima asociada es

X 23=15, 02t,z… 2-C… 2= -9


norte METRO

10

Variable no básicaX5. De la definición del problema maestro,zj- CjdeX5deben calcularse y compararse por
separado. De este modo,

z5-C5=CBB-1PAG5-C5

=A1 + 50,
METRO
50, -METROB(1, 0, 0)t-0
48 -12METRO

=1 + METRO

50
22.2 Algoritmo de descomposición 22.27

De este modo,X5No se puede mejorar la solución.


De la información anterior,b Para 23asociado Xnorte en la solución básica.
con23entra
determinar la variable saliente, considere

5
11, 12a b
A2X 23norte
0 5
PAG23=£ 0 ≥=• 0 µ = £0≥
1 1 1

De este modo,B-1PAG23=1110, 0,9 102t. Dado queXB= (b22,b11,X7)t=114 25, 1,11252t, el artificial
variableX10deja la solución básica (permanentemente).
La nueva base y su inversa quedan así dadas como (¡verificar!)

1 12 5
50 12 5 45 - 45 - 45
B=£0 1 0≥qB-1=£ 0 1 0≥
1 12 50
1 0 1 - 45 45 45

XB= (b22,b11,b23)t=B-1(40, 1, 1)t=A23 45, 1,2245Bt


CB= (Cnorte
2X22,Cnorte 2X23) = (50, 60, 5)
1X11,Cnorte

Iteración 4
*
Subproblema 1(j =1).w1= - 2X1- 4X2+ 48. Rindez1-C* 1=w* 1= 0.
Subproblema 2(j =2).w2= 0X4+ 0X5+ 48 + 48.
Variable no básicaX5:z5-C5= 1. La información anterior muestra que la iteración 3 es óptima.
Podemos calcular la solución óptima del problema original mediante sustitución hacia atrás:

t
X…1=1X1,X22t=b 11X 11=
norte
110, 122 =10, 122t

X…2=1X4,X52t=b 22X 22+b23X


norte norte
23

=A23licenciado en Letras
45 50, 02t+A45
22 B15, 0Bt

=128, 02t

Todas las variables restantes son cero. El valor óptimo de la función objetivo se puede obtener
mediante sustitución directa.

CONJUNTO DE PROBLEMAS 22.2A

* 1. En cada uno de los siguientes casos, determine gráficamente los puntos extremos factibles y exprese
el espacio de solución factible en función de estos puntos extremos. Si el espacio de la solución no está
acotado, agregue una restricción artificial adecuada.
(a)
X1+ 2X2…6
2X1+ X2…8
- X1+ X2…1
X2…2
X1,X2…0
22.28 Capítulo 22 Algoritmos adicionales de red y LP

(b)
2X1+X2…2
3X1+ 4X2Ú12
X1,X2Ú0

*(C)
X1-X2…10
2X1 …40
X1,X2Ú0

* 2. En el ejemplo 22.2-1, los puntos extremos factibles de los subespaciosD1X1=b1,X1Ú0 yD2X2=b2,X


2Ú0se puede determinar gráficamente. Utilice esta información para expresar explícitamente el
problema maestro asociado en términos de los puntos extremos factibles. Luego demuestre
que la aplicación del método simplex al problema maestro produce la misma variable entranteb
jkcomo el generado al resolver los subproblemas 1 y 2. Por lo tanto, convénzase de que la
determinación de la variable entrantebjkes exactamente equivalente a resolver los dos
subproblemas de minimización.
3.Considere el siguiente programa lineal:
Maximizarz=x1+ 3X2+ 5X3+ 2X4

sujeto a
X1+ 4X2 … 8
2X1+X2 … 9
5X1+ 3X2+ 4X3 Ú10
X3- 5X4… 4
X3+X4…10

X1,X2,X3,X4Ú0

Construya el problema maestro explícitamente utilizando los puntos extremos de los subespacios y luego
resuelva el problema resultante directamente mediante el método simplex.
4.Resuelva el problema 3 usando el algoritmo de descomposición y compare los dos procedimientos.
5.Aplique el algoritmo de descomposición al siguiente problema:
Maximizarz =6X1+ 7X2+ 3X3+ 5X4+X5+X6

sujeto a
X1+X2+X3+X4+X5+ X6…50

X1+X2 …10
X2 …8
5X3+X4 …12

X5+ X6Ú5
X5+ 5X6…50

X1,X2,X3,X4,X5,X6Ú0
22.3 Método del punto interior de Karmarkar 22.29

* 6. Indique los cambios necesarios para aplicar el algoritmo de descomposición a los LP de minimización.
Luego resuelve el siguiente problema:

Minimizarz =5X1+ 3X2+ 8X3- 5X4

sujeto a

X1+X3+X3+X4Ú25

5X1+X2 …20
5X1-X2 Ú5
X3+X4= 20

X1,X2,X3,X4Ú0

7.Resuelva el siguiente problema mediante el algoritmo de descomposición:

Minimizarz =10y1+ 2y2+ 4y3+ 8y4+y5

sujeto a

y1+ 4y2-y3 Ú 8
2y1+y2+y3 Ú 2
3y1 + y4+y5Ú 4
y1 + 2y4-y5Ú10
y1,y2,y3,y4,y5Ú0

(Pista: Resuelva el problema dual primero por descomposición.)


8.En el algoritmo de descomposición, supongamos que el número de restricciones comunes en el problema
original esr.Demuestre que la función objetivo del subproblemajSe puede escribir como

Minimizarwj=zj- Cj= (CBREAL ACADEMIA DE BELLAS ARTESj-Cj)Xj+CBVr+j

el vectorRrepresenta el primerorcolumnas deB-1, yVr+jeso es (r+j)ª columna.

22.3 MÉTODO DEL PUNTO INTERIOR DE KARMARKAR

El método simplex obtiene la solución óptima siguiendo una trayectoria de puntos extremos
adyacentes a lo largo de los bordes del espacio de solución. Aunque en la práctica el método
simplex ha servido bien para resolver problemas grandes, teóricamente el número de iteraciones
necesarias para alcanzar la solución óptima puede crecer exponencialmente. De hecho, los
investigadores han construido una clase de PL en la que se visitan todos los puntos extremos
factibles antes de alcanzar el óptimo.
En 1984, N. Karmarkar desarrolló un algoritmo de tiempo polinomial que atraviesa el interior
del espacio de solución. El algoritmo es eficaz para LP extremadamente grandes.
Comenzamos presentando la idea principal del método Karmarkar y luego
proporcionamos los detalles computacionales del algoritmo.
22.30 Capítulo 22 Algoritmos adicionales de red y LP

22.3.1 Idea básica del algoritmo del punto interior

Considere el siguiente ejemplo (trivial):

Maximizarz=x1
sujeto a
0…X1…2
UsandoX2como variable de holgura, el problema se puede reescribir como

Maximizarz=x1
sujeto a
X1+X2= 2
X1,X2Ú0
La figura 22.21 muestra el problema. El espacio solución está dado por el segmento de recta.
AB. La dirección del aumento enzestá en la dirección positiva deX1.
Comencemos con cualquier arbitrariointerior(punto no extremo)Cen el espacio factible
(líneaAB).Eldegradadode la función objetivo (maximizarz=x1) enCes la dirección del aumento
más rápido enz.Si ubicamos un punto arbitrario a lo largo del gradiente y luego lo
proyectamos perpendicularmente en el espacio factible (líneaAB), obtenemos el nuevo punto
D con un mejor valor objetivoz.Esta mejora se obtiene moviéndose en la dirección del
gradiente proyectado.CD. Si repetimos el procedimiento enD,Determinaremos un nuevo
punto más cercano al óptimo.MI.Posiblemente, si nos movemos (con cautela) en la dirección
de lagradiente proyectado, alcanzaremos el óptimo en el puntoB.Si estamos minimizandoz (
en lugar de maximizar), el gradiente proyectado nos moverá correctamentelejos desde el
puntoBhacia el mínimo en el puntoun (x1= 0).
Los pasos dados difícilmente definen un algoritmo en el sentido normal, ¡pero la idea es
intrigante! Necesitamos algunas modificaciones que garanticen que (1) los pasos generados

FIGURA 22.21 X2
Ilustración de la idea general
del algoritmo de Karmarkar.

2
A
gradiente dez Maximizar
z=X1

C
1

mi
B X1
0 1 2
22.3 Método del punto interior de Karmarkar 22.31

a lo largo del gradiente proyectado no “sobrepasará” el punto óptimo enB,y (2) en general
norte-En el caso dimensional, la dirección creada por el gradiente proyectado no provocará
un "atrapamiento" del algoritmo en un punto no óptimo. Esto, básicamente, es lo que logra
el algoritmo de punto interior de Karmarkar.

22.3.2 Algoritmo de punto interior

En la literatura se encuentran disponibles varias variantes del algoritmo de Karmarkar. Nuestra


presentación sigue el algoritmo original. Karmarkar supone que el PL está dado como

Minimizarz =CX
sujeto a
HACHA=0

1X=1
XÚ0
Todas las restricciones son ecuaciones homogéneas excepto la restricción
1X=
norte

aj =1Xj=1, que define unnorte-simplex dimensional. La validez de la teoría de Karmarkar.


El algoritmo se basa en satisfacer dos condiciones:

1.X=A1 ,norte,A ,1norteBsatisfaceHACHA=0.


norte 1

2.mín.z =0.

Karmarkar proporciona modificaciones que permiten solucionar el problema cuando no se


cumple la segunda condición. Estas modificaciones no se presentarán aquí.
El siguiente ejemplo ilustra cómo se puede hacer un LP general para satisfacer las dos
condiciones estipuladas.

Ejemplo 22.3-1
Considere el problema.

Maximizarz = y1+y2

sujeto a
y1+ 2y2…2

y1,y2Ú0

Comenzamos definiendo los problemas primarios y duales del PL:

Primitivo Doble

Maximizary0=y1+y2 Minimizarw0= 2w1


sujeto a sujeto a
y1+ 2y2…2 w1Ú1
Fqw1Ú 1
y1,y2Ú0 2w1Ú1
w1Ú0
22.32 Capítulo 22 Algoritmos adicionales de red y LP

Las restricciones primarias y duales se pueden expresar en forma de ecuación como

y1+ 2y2+y3= 2,y3Ú0

w1-w2= 1,w2Ú0 (1)

en el optimoy0=w0, cuyos rendimientos

y1+y2- 2w1= 0 (2)

SeleccionandoMETROsuficientemente grande, tenemos

y1+y2+y3+w1+w2…METRO (3)

Ahora, convirtiendo (3) en una ecuación, obtenemos

y1+y2+y3+w1+w2+s1=EM1Ú0 (4)

A continuación, defina una nueva variable.s2. De (4) las dos ecuaciones siguientes se cumplen si, y sólo si,
la condicións2= 1 tiene:

y1+y2+y3+w1+w2+s1-EM2= 0

y1+y2+y3+w1+w2+s1+ s2=M+1 (5)

Ahora, dados2= 1 como lo estipula (5), las ecuaciones primal y dual (1) se pueden escribir como

y1+ 2y2+y3- 2s2= 0

w1-w2- 1s2= 0 (6)


Ahora, define

yj= (M +1)Xj,j =1, 2, 3

wj-3= (M+1)Xj,j =4, 5

s1= (M+1)X6

s2= (M+1)X7

La sustitución en las ecuaciones (2), (5) y (6) producirá las siguientes ecuaciones:

X1+ X2 - 2X4 =0

X 1+ X2+X3+ X4+X5+X6-mx7= 0

X1+ X2+X3+ X4+X5+X6+ X7= 1

X1+ 2X2+X3+ - 2X7 =1


X4-X5 - X7 =0
XjÚ0,j =1, 2,A ,7

El último paso exige aumentar la variable artificial.y8en el lado izquierdo de cada ecuación. La
nueva función objetivo requerirá minimizary8, cuyo valor mínimo obvio debe ser cero (suponiendo
que el primal sea factible). Tenga en cuenta, sin embargo, que el algoritmo de Karmarkar requiere
la solución
X=A1 8,18,18,18,18,18,18,18Bt
22.3 Método del punto interior de Karmarkar 22.33

ser factible paraHACHA=0. Esto será cierto para las ecuaciones homogéneas (con cero en el lado derecho)
si el coeficiente asociado de la ecuación artificialX8es igual a la suma (algebraica) de todos los coeficientes
del lado izquierdo. De ello se deduce que el LP transformado viene dado como

Minimizarz=x8

sujeto a

X1+ X2 - 2X4 - 0X8= 0

X1+ X2+X3+ X4+X5+X6-mx7-16 -METRO2X8= 0

X1+ 2X2+X3 - 2X7- 2X8= 0

X4-X5 - X7+ X8= 0

X1+X2+X3+ X4+X5+X6+ X7+ X8= 1

XjÚ0,j =1, 2,A ,8

Tenga en cuenta que la solución de este problema produce automáticamente las soluciones óptimas de los problemas
primario y dual mediante sustitución hacia atrás.
La figura 22.22 proporciona una ilustración típica del espacio de solución en tres dimensiones con el
conjunto homogéneo.HACHA=0 que consta sólo de una ecuación. Por definición, el espacio solución que
consta del segmento de rectaABse encuentra enteramente en el simplex bidimensional1X=1 y pasa por el
punto interior factibleA1 3,1 31,3B.

Pasos del algoritmo.El algoritmo de Karmarkar parte de un punto interior representado por
el centro del simplex y luego avanza en dirección algradiente proyectadopara determinar un
nuevo punto de solución. El nuevo punto debe ser estrictamente interior, es decir que todas
sus coordenadas deben ser positivas. La validez del algoritmo depende de esta condición.

Para que el nuevo punto de solución sea estrictamente interior, no debe estar en los
límites del simplex. (En términos de la Figura 22.22, puntosAyBdebe excluirse.) Para
garantizar este resultado, se inscribe firmemente dentro del simplex una esfera con su centro
coincidente con el del simplex. En elnorte-caso dimensional, el radiorde esta esfera es igual
1
3norte(norte) - 1)
. Una esfera más pequeña con radio.ar (06a61) será un subconjunto
de la esfera, y cualquier punto en la intersección de la esfera más pequeña con el sistema
homogéneoHACHA=0 será un punto interior, con coordenadas estrictamente positivas. Así,
podemos avanzar lo más lejos posible en este espacio restringido (intersección deHACHA=0 y el ar-
esfera) a lo largo del gradiente proyectado para determinar el nuevo punto de solución (mejorado).

El nuevo punto de solución ya no estará en el centro del simplex. Para que el


procedimiento sea iterativo, necesitamos encontrar una manera de acercar elnuevopunto
solución al centro de un simplex. Karmarkar satisface este requisito proponiendo la siguiente
idea intrigante, llamadatransformación proyectiva. Dejar
Xi
Xki ,yo =1, 2,A ,norte
yi=nx
i
aXkj
j =1
22.34 Capítulo 22 Algoritmos adicionales de red y LP

X3

(0, 0, 1)

simplex1X 1

B
Intersección de
Centro de
HACHA 0y1X 1
simplex

1,1,1
333
X1
(1, 0, 0)

(0, 1, 0)

X2
(a) Tres dimensiones

(0, 0, 0, 1)

simplex1X 1

Intersección de
HACHA 0y1X 1
C
Centro de
simplex

1 ,1 , 1 , 1
A
4444
(1, 0, 0, 0)
B
(0, 0, 1, 0)

(0, 1, 0, 0)
(b) Cuatro dimensiones

FIGURA 22.22
Ilustraciones del simplex1X=1
22.3 Método del punto interior de Karmarkar 22.35

dóndeXkies eliésimo elemento del punto de solución actualXk.La transformación


es válido, porque todosXki70 por diseño. También notarás que ayo =1yi=1, o
norte

1 año=1, por definición. Esta transformación equivale a


D-1
kX
Y=
1D-1
kX

dóndeDkes una matriz diagonal cuyaiº elementos diagonales igualesXki. La transformación


mapea elX-espacio en elY-espacio de manera única porque podemos demostrar que la última
ecuación produce
DYk
X=
1DkY
Por definición, mín.CX=0. Porque1DkYes siempre positivo, el programa lineal
original es equivalente a
Minimizarz =CDkY
sujeto a
ANUNCIOkY=0

1 año=1
YÚ0
El problema transformado tiene el mismo formato que el problema original. Así podemos
comenzar con el centro simplexY=A1 norte,norte
1
,A ,1norteBy repita el paso iterativo. Después de cada
iteración, podemos calcular los valores del original.Xvariables de laYsolución.
Ahora mostramos cómo se puede determinar el nuevo punto de solución para el problema
transformado. En cualquier iteraciónk,el problema viene dado por

Minimizarz =CDkY
sujeto a
ANUNCIOkY=0

Yse encuentra en elar-esfera

Porque elar-la esfera es un subconjunto del espacio de las restricciones1X=1yXÚ0, se puede


prescindir de estas dos restricciones. Como resultado, la solución óptima del problema anterior se
encuentra a lo largo de la proyección del gradienteCpag(minimización) y se da como
Cpag
Ynuevo=Y0-ar
||cpag||

1 1 1t
dóndeY0=a , ,A, b ,yCes el pag
gradiente proyectado, que se puede demostrar que es norte
norte norte

Cpag= [I-PAGt1PÁGINASt2-1PAG]1cdk2t

dónde
ANUNCIOkb
PAG=a
1
22.36 Capítulo 22 Algoritmos adicionales de red y LP

La selección deaes crucial para mejorar la eficiencia del algoritmo. Normalmente


seleccionaríamosalo más grande posible para adquirir grandes saltos en la solución. Sin embargo,
siaes demasiado grande, podemos acercarnos demasiado a los límites prohibidos del
simplex. No existe una respuesta general a este problema, pero Karmarkar sugiere el uso de
un =norte -13norte.
Los pasos del algoritmo de Karmarkar son

Paso 0. Comience con el punto de soluciónX0 =A1 1


norte,A ,norte
norte,1
By calcularr = 1
un =(norte -1) 1norte(norte -1)
y 3norte

paso generalk. Definir

Dk=diagnóstico {Xk1,A ,Xkn}

ANUNCIO
PAG=a kb
1

y calcular

1 1t Cpag
Ynuevo=a ,A , b -ar
norte norte 'Cpag'

DY
knuevo
Xk +1=
1DkYnuevo

dónde

t
Cpag=[I-PAGt(PÁGINASt)-1P](cdk)

Ejemplo 22.3-2

Minimizarz =2X1+ 2X2- 3X3

sujeto a

- X1- 2X2+ 3X3= 0

X1+X2+X3= 1

X1,X2,X3Ú0

El problema satisface las dos condiciones impuestas por el algoritmo del punto interior, a saber,

X= (X1,X2,X3)t=A1 3,1 3,1 3Bt,

Satisface ambas restricciones y la solución óptima.

X…= (x… 1,X…2,X…3)T.= (0, 0,6, 0,4)t,

y rindez =0.
22.3 Método del punto interior de Karmarkar 22.37

Iteración 0

C= (2, 2, -3),A= (-1, -2, 3)

1,1 1
X0=A3 3 , 13Bt,z0=1 3,r= , un =29
26
1
3 0 0
1
D0=£0 3 0≥
1
0 0 3

Usando transformación proyectiva, obtenemos

Y0=A1 3,1 3,1 3Bt

Iteración 1

1
3 0 0
CD0=12, 2, -32£0 1
3 0≥ =A2 3,23, -1B
1
0 0 3

1
3 0 0
ANUNCIO0=1-1, -2, 32£0
1
3 0≥ =A-1 3, -3, 21B
1
0 0 3

- 13 1 - 1
- -13 2
3 1 9
0
b£ -2 3 1≥≥ =a14
0 13b
1PÁGINASt2-1=£a
1 1 1
1 1
1 0 0 - 13 1 9
0 - 13 - 2
3 1
I-PAGt1PÁGINASt2-1PAG=£0 1 0≥ - £ -2 3 1≥a14 1licenciado en Letras b
0 3 11 1
0 0 1 1 1

25 - 20 -5
1
= 42£ -20 dieciséis 4≥
-5 4 1

De este modo,

2
25 - 20 -5 3 25
Cpag=1I-PAGt1PÁGINASt2-1PAG21cd02t=1 42£ -20 dieciséis 4≥£ 23≥ =126£1 -20≥
-5 4 1 -1 -5

Luego se deduce que

252+ (-20)2+ (-5)2


'Cpag' = = .257172
C 1262
22.38 Capítulo 22 Algoritmos adicionales de red y LP

De este modo,

1
Ynuevo=A13,13,13Bt-2 9 * 1 1
1dieciséis* . 257171* 126(25,-20,-5)t

= (.263340, .389328, .347332)t

Próximo,

1D0Ynuevo=13(1, 1, 1)(.263340, .389328, .347332)t=1 3

Ahora,

1
DY
0 nuevo
X 1= =3Ynuevo
1 =Ynuevo = (.263340, .389328, .347332)t
1D0Ynuevo
3

z1= .26334

Iteración 2

. 263340 0 0
cd1=12, 2, -32£ 0 . 389328 0 ≥ =1.526680, .778656, -1.0419962
0 0 . 347332

. 263340 0 0
ANUNCIO1=1-1, -2, 32£ 0 . 389328 0 ≥
0 0 . 347332

=1-.263340, -.778656, 1.0419962

-1
- . 263340 1
- . 26334 - . 778656 1.041996
1PÁGINASt2-1=£a b£-.778656 1≥≥
1 1 1
1.041996 1
. 567727 0
=a b
0 . 333333

I-PAGt1PÁGINASt2-1PAG

1 0 0 - . 263340 1
. 567727 0
=£0 1 0≥-£-.778656 1 1≥a b
0 . 333333
0 0 1.041996 1
- . 263340 - . 778656 1.041996
a b
1 1 1
. 627296 - . 449746 - . 177550
=£-.449746 . 322451 . 127295≥
- . 177550 . 127295 . 050254
22.3 Método del punto interior de Karmarkar 22.39

De este modo,

. 627296 - . 449746 - . 177550


Cpag=1I-PAGt1PÁGINASt2-1PAG21cd12t=£-.449746 . 322451 . 127295≥
- . 177550 . 127295 . 050254

. 526680
£ . 778656≥
- 1,041996

. 165193
=£-.118435≥
- . 046757

Luego se deduce que

||Cpag|| =3.1651932+ (-.118435)2+ (-.046757)2= .208571

De este modo,

1 1
Ynuevo= (1 3,1 3,1 3)t-2 9* 1dieciséis*.208571(.165193, - .118435, - .046757)t

= (.261479, .384849, .353671)t

Próximo,

. 263340 0 0 . 261479 . 068858


D1Ynuevo=£ 0 . 389328 0 ≥£.384849≥ = £.149832≥
0 0 . 347332 . 353671 . 122841

1D1Ynuevo= .341531

Ahora,

D1Ynuevo
X 2= =1.201616 . 438707 . 3596772t
1D1Ynuevo

z2= .201615

La aplicación repetida del algoritmo acercará la solución al punto óptimo (0, 0,6, 0,4).
Karmarkar proporciona un paso adicional para redondear la solución óptima al punto
extremo óptimo.

CONJUNTO DE PROBLEMAS 22.3A

1.Utilice TORA para demostrar que la solución del LP transformado dada al final del ejemplo
22.3-1 produce las soluciones primal y dual óptimas del problema principal. (Pista: Usarm
=10, y asegúrese de que la salida de TORA proporcione una precisión de al menos 5
puntos decimales).
22.40 Capítulo 22 Algoritmos adicionales de red y LP

2.Transforma el siguiente LP al formato de Karmarkar.

Maximizarz = y1+ 2y2

sujeto a

y1-y2…2

2y1+y2…4

y1,y2Ú0

3.Realice una iteración adicional en el ejemplo 22.3-3 y demuestre que la solución se está
moviendo hacia el óptimo.z =0.
4.Realice dos iteraciones del algoritmo de Karmarkar para el siguiente programa lineal:

Maximizarz =2X1+X2

sujeto a

X1+X2…4

X1,X2Ú0

(Pista: El problema debe convertirse primero al formato Karmarkar.)


5.Realice dos iteraciones del algoritmo de Karmarkar para el siguiente problema:

Maximizarz =4X1+X3+X4

sujeto a

- 2X1+ 2X2+X3-X4= 0

X1+X2+X3+X4= 1

X1,X2,X3,X4Ú0

(Pista: El problema debe convertirse primero al formato Karmarkar.)

BIBLIOGRAFÍA
Ahuja, R., T. Magnati y J. Orlin,Flujos de red: teoría, algoritmos y aplicaciones,
Prentice Hall, Upper Saddle River, Nueva Jersey, 1993.
Bazaraa, M., J. Jarvis y H. Sherali,Programación lineal y flujo de red, 4ª ed., Wiley,
Nueva York, 2009.
Charnes, A. y W. Cooper, "Algunas caracterizaciones de redes para programación matemática
y Aplicaciones Contables a la Planificación y el Control”,La revisión contable, vol. 42, núm. 3,
págs. 24 a 52, 1967.
Hooker, J., "Algoritmo de programación lineal de Karmarkar",Interfaces, vol. 16, núm. 4, págs. 75–90,
1986.
Lasdón, L.,Optimización para sistemas grandes, Macmillan, Nueva York, 1970.

También podría gustarte