ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Método del punto interior de KARMARKAR


Enviado por   •  28 de Noviembre de 2015  •  Práctica o problema  •  2.289 Palabras (10 Páginas)  •  251 Visitas

Página 1 de 10

Los pasos que se dieron dif´ıcilmente definen un algoritmo en el sentido normal, pero ¡la

idea es interesante! Se necesitan ciertas modificaciones que garanticen que 1) los pasos

generados a lo largo del gradiente no “se pasen” del punto ´optimo en B, y 2) en el

caso general n dimensional, la direcci´on definida por el gradiente proyectado no cause

un “empantanamiento” del algoritmo en un punto no ´optimo. Esto es, b´asicamente,

lo que se logra con el algoritmo del punto interior de Karmarkar.

Figure 1: Ilustraci´on del concepto general del algoritmo de Karmarkar.

Algoritmo del punto interior

En las publicaciones se pueden encontrar algunas variantes del algoritmo de Karmarkar.

Nuestra explicaci´on se apega al algoritmo original. Karmarkar supone que la

programaci´on lineal es

Minimizar z = CX

sujeta a

AX = 0

1X = 1

X  0

Todas las restricciones son ecuaciones homogP ´eneas, a excepcio´n de la restriccio´n 1X = n

j=1 xj = 1, que define un s´ımplex n dimensional. La validez del algoritmo de

Karmarkar descansa en satisfacer dos condiciones:

2

1. X = ( 1

n, 1

n, . . . , 1

n), satisface AX = 0.

2. m´ın z = 0.

Karmarkar proporciona modificaciones que permiten resolver el problema cuando no

se satisface la segunda condici´on. No presentaremos aqu´ı esas modificaciones.

En el siguiente ejemplo se ilustra c´omo se puede poner una programaci´on lineal general

en la forma homog´enea AX = 0 con 1X = 1, con lo cual tambi´en se tiene a

X = ( 1

n, 1

n, . . . , 1

n) como soluci´on factible (condici´on 1). En un segundo ejemplo se

muestra c´omo se puede hacer que la transformaci´on satisfaga las dos condiciones,

aunque los c´alculos son tediosos.

Ejemplo 7.7-1

Se tiene el problema

Maximizar z = y1 + y2

sujeta a

y1 + 2y2  2

yk  0, 8k.

La restricci´on y1 + 2y2  2 se convierte en una ecuaci´on aumentando una variable de

holgura y3  0 y se tiene

y1 + 2y2 + y3 = 2

Ahora se define

y1 + y2 + y3  U

donde U es suficientemente grande para no eliminar algunos puntos factibles en el

espacio original de soluciones. En nuestro ejemplo U = 5 ser´a adecuado, lo que se

puede determinar con la ecuaci´on y1 + 2y2 + y3 = 2. Suponiendo una variable de

holgura y4  0, se obtiene

y1 + y2 + y3 + y4 = 5

Se puede homogenizar la restricci´on y1 + 2y2 + y3 = 2 multiplicando el lado derecho

por (y1 + y2 + y3 + y4)/5 porque esta fracci´on es igual a 1. Esto lleva, despu´es de la

simplificaci´on, a

3y1 + 8y2 + 3y3 − 2y4 = 0

Para convertir y1 + y2 + y3 + y4 = 5 en un s´ımplex, se define la nueva variable xi =

yi/5, 1  i  4, para obtener

Maximizar z = 5x1 + 5x2

sujeta a

3x1 + 8x2 + 3x3 − 2x4 = 0

x1 + x2 + x3 + x4 = 1

3

xj  0, 1  j  4.

Por ´ultimo se puede asegurar que el centro X = ( 1

n, 1

n, . . . , 1

n) del s´ımplex es un punto

factible para ecuaciones homog´eneas, restando, del lado izquierdo de cada ecuaci´on,

una variable artificial cuyo coeficiente sea igual a la suma algebraica de todos los coeficientes

de restricci´on en el lado izquierdo; esto es, 3+8+3−2 = 12. A continuaci´on se

suman las variables artificiales a la ecuaci´on s´ımplex y se penalizan en forma adecuada

en la funci´on objetivo. En nuestro ejemplo, se aumenta la variable artificial x5 como

sigue:

Maximizar z = 5x1 + 5x2 −Mx5

sujeta a

3x1 + 8x2 + 3x3 − 2x4 − 12x5 = 0

x1 + x2 + x3 + x4 + x5 = 1

xj  0, 1  j  5.

Para este sistema de ecuaciones, el nuevo centro s´ımplex X = ( 1

5 , 1

5 , . . . , 1

5 ) es factible

para la ecuaci´on homog´enea. El valor M en la funci´on objetivo se elige suficientemente

grande para forzar a x5 al valor cero (comp´arese con el m´etodo M).

Ejemplo 7.7-2

En este ejemplo se demuestra que cualquier programaci´on lineal puede satisfacer las

condiciones 1) y 2) que se requieren en el algoritmo de Karmarkar. Las transformaciones

son complicadas y, por tanto, no se recomiendan en la pr´actica. En lugar de

ello se aconseja usar una variaci´on del algoritmo que no requiere la condici´on 2).

Se tiene la misma programaci´on lineal del ejemplo 7.8-1, que es

Maximizar z = y1 + y2

sujeta a

y1 + 2y2  2

yk  0, 8 k.

Se comienza definiendo los problemas primal y dual de la programaci´on lineal:

Primal Dual

Maximizar y0 = y1 + y2 Minimizar w0 = 2w1

sujeta a sujeta a

y1 + 2y2  2 w1  1

2w1  1

y1, y2  0 w1  0

Las restricciones primal y dual se pueden poner en forma de ecuaci´on como sigue:

y1 + 2y2 + y3 = 2, y3  0 (1)

w1 − w2 = 1, w2  0

4

En el ´optimo y0 = w0, que produce

y1 + y2 − 2w1 = 0 (2)

Se selecciona M suficientemente grande, y se obtiene

y1 + y2 + y3 + w1 + w2  M (3)

Ahora se convierte (3) en una ecuaci´on, y se obtiene

y1 + y2 + y3 + w1 + w2 + s1 = M, s1  0 (4)

A continuaci´on se define una nueva variable s2. De acuerdo con (4), las dos ecuaciones

siguientes son v´alidas si, y s´olo si la condici´on s2 = 1 es v´alida:

y1 + y2 + y3 + w1 + w2 + s1 −Ms2 = 0

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

Entonces, dado que s2 = 1 como se estipul´o en (5), las ecuaciones primal y dual (1) se

pueden escribir en la siguiente forma:

y1 + 2y2 + y3 − 2s2 = 0

w1 − w2 − 1s2 = 0 (6)

Ahora se definen

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´on en las ecuaciones (2), (5) y (6) producir´a las siguientes ecuaciones:

x1 + x2 − 2x4 = 0

x1 + x2 + x3 + x4 + x5 + x6 − Mx7 = 0

x1 + x2 + x3 + x4 + x5 + x6 + x7 = 1

x1 + 2x2 + x3 − 2x7 = 0

x4 − x5 − x7 = 0

xk  0, 8 k.

En el paso final se debe aumentar la variable artificial x8 en el lado izquierdo de cada

ecuaci´on; la nueva funci´on objetivo pedir´a minimizar x8, cuyo valor m´ınimo debe ser

cero (suponiendo que el primal es factible). Sin embargo, n´otese que en el algoritmo

de Karmarkar se requiere que la soluci´on

...

Descargar como (para miembros actualizados) txt (15 Kb) pdf (68 Kb) docx (26 Kb)
Leer 9 páginas más »
Disponible sólo en Clubensayos.com