Você está na página 1de 7

ESPOL MATG1029 - Optimizacion I José Manuel Vera

1 Métodos de Punto Interior


En este capı́tulo, consideramos una clase de métodos para la programacin lineal que
encuentra una solucin óptima al recorrer el interior del conjunto factible en lugar de
atravesar puntos extremos como en el método sı́mplex.

1.1 El método simplex no es tiempo polinomial


Cuando el método simplex es usado para resolver un programa lineal en forma es-
tandard con la matriz de coeficientes A ∈ E m×n , b ∈ E m and c ∈ E m , el número de
iteraciones para resolver el problema empezando desde una solución básica factible
es tipicamente en la practica un pequeo multiplo de m: usualmente entre 2 ∗ m y
3 ∗ m.
Una motivación de la creacion de métodos de punto interior que se demostró en 1972
(Klee & Minty) que en el peor caso requieren un numero exponencial de iteraciones.
Ellos presentaron un tipo de problemas que requiere 2n−1 iteraciones. Por ejemplo,
para un problema con n = 50 el número de pasos serı́a 250 − 1 ≈ 1015

1.2 El centro analı́tico


Los algoritmos de punto interior se mueven por pasos sucesivos dentro de la regin
factible en vez que en las aristas o vértices.

El estudio del centro analtico introduce una estructura especial, denominada barrera
o potencial que es fundamental para los mtodos de punto interior.

Considere el conjunto S en un subcojunto X de Rn :


S = {x ∈ X |gj (x) ≥ 0, j = 1, 2, ..., m}
y asuma que las funciones gj son continuas. S tiene un interior no vacio Ṡ = {x ∈
X |gj (x) > 0, j = 1, 2, ..., m}. Asociada con la definición del conjunto es la función
potencial :
m
X
ψ(x) = − log gj (x)
j=1

definido en Ṡ
El centro analı́tico de S es el vector (o el conjunto de vectores) que minimizan el
potencial; esto es, el vector (o vectores) que solucionen:

1
ESPOL MATG1029 - Optimizacion I José Manuel Vera

 m
X 
min ψ(x) = min − log gj (x) x ∈ X , gj (x) > 0 para cada j

j=1

Ejemplo 1. Considere el conjunto S definido por xi ≥ 0, (1 − xi ) ≥ 0, para i =


1, 2, ..., n. Esto es S = [0, 1]n , el cubo unitario en Rn . El centro analı́tico puede ser
encontrado por diferenciación y este es xi = 1/2 para todo i. Por lo tanto, el centro
analı́tico es idéntico a lo que normalmente se llamarı́a el centro del cubo unitario.
En general, el centro analı́tico depende de cómo se define el conjunto, de las desigual-
dades particulares utilizadas en la definición.

Hay varios conjuntos asociados con programas lineales para los cuales el centro
analı́tico es de particular interés. Uno de esos conjuntos es la propia región factible.
Otro es el conjunto de soluciones óptimas. También hay conjuntos asociados con
formulaciones duales y primarias-duales. Todos estos están relacionados de manera
importante.

Veamos el centro analı́tico de un politopo acotado Ω ∈ Rm representado por n (> m)


desigualdades lineales; esto es,

Ω = {y ∈ Rm |cT − yT A ≥ 0}
donde A ∈ Rm×n y c ∈ Rn están dados y A tiene rango m. El interior de Ω es

Ω̇ = {y ∈ Rm |cT − yT A > 0}

La función potencial para este conjunto es:


n
X n
X
T
ψ(y) ≡ − log(cj − y aj ) = − log(sj )
j=1 j=1

donde s ≡ c − AT y es el vector de variables de holgura. Por lo tanto la función


potencial es el negativo de la suma de los logaritmos de las variables de holgura. El
centro analı́tico de Ω es el punto interior de Ω que minimiza la función potencial.
Este punto denotado como ya y tiene asociado sa = c − AT ya . El par (ya , sa ) es nico,
ya que la función potencial es estrictamente convexa en el conjunto acotado convexo
Ω.

Igualando a cero las derivadas de ψ(y) con respecto a cada yi da:

2
ESPOL MATG1029 - Optimizacion I José Manuel Vera

n
X aij
= 0 ; ∀i
j=1
cj − yT aj
que puede ser escrito como
n
X aij
= 0 ; ∀i
j=1
sj
Ahora definiendo xj = 1/sj para cada j. Se introduce la notación:
x ◦ s ≡ (x1 s1 , x2 s2 , ..., xn sn )T
que es la multiplicación de componentes. Entonces el centro analı́tico es definido por
las condiciones
x◦s=1
Ax = 0
T
A y+s=c

1.3 El camino central


El concepto subyacente de los métodos de punto interior para la programación lineal
es de utilizar técnicas de análisis y metodologı́a de programación no lineal.

Estos métodos son el método básico para minimizar una función estableciendo su
derivada en cero, y para incorporar restricciones mediante la introducción de multi-
plicadores de Lagrange.

Los algoritmos computacionales de la programacin no lineal son tpicamente de natu-


raleza iterativa, a menudo caracterizados como algoritmos de bsqueda. En cualquier
paso con un punto dado, se establece una direccin para la bsqueda y luego se realiza
un movimiento en esa direccin para definir el siguiente punto. Hay muchas var-
iedades de tales algoritmos de bsqueda y se presentan sistemticamente a lo largo del
texto. En este captulo, utilizamos versiones del mtodo de Newton como algoritmo de
bsqueda, pero posponemos un estudio detallado del mtodo para captulos posteriores.
Considere el programa primal en forma estándar:

(P L) min cT x
sujeto a Ax = b
x≥0

3
ESPOL MATG1029 - Optimizacion I José Manuel Vera

Denotemos la región factible de este programa lineal con FP . Asumimos que F˙P =
{x|Ax = b, x > 0} es no vacio y el conjunto de solución óptima es acotado.

Asociado con este problema, definimos para µ ≥ 0 el problema barrera

n
X
T
(P B) min c x−µ log xj
j=1

sujeto a Ax = b
x>0
Vemos que si µ = 0 el problema es el original pero si µ → ∞, la solución se aprox-
ima al centro analı́tico de la región factible (cuando esta acotada) ya que el término
barrera domina el termino cT x en la función objetivo.

A medida que µ varia continuamente hacia cero, se crea un camino x(µ) definido
por la solución a (PB). Este camino es llamado como camino central primario.
A medida que µ → 0 este camino converge al centro analı́tico de la cara óptima
{x|cT x = z ∗ , Ax = b, x ≥ 0} donde z∗ es el valor óptimo de (PL)

Una estratégia para resolver (PL) es resolver (PB) para valores cada vez mas pequeos
de µ y, por lo tanto, acercarse a una solucin para (PL). Esta es la idea básica de los
métodos de punto interior.

Con cualquier valor µ > 0, bajo las suposiciones del problema (PL), las necesarias
y suficientes condiciones para una solución única y acotada son obtenidas con la
introducción del vector Multiplicadores de Lagrange y
n
X
T
c x−µ logxj − yT (Ax − b)
j=1

Las derivadas con respecto a los xj s son igualados a cero, dando las condiciones

cj − µ/xj − yT aj = 0 ; ∀j

o equivalentemente
µX −1 1 + AT y = c
donde aj es la j ava columna de A, 1 es el vector de 1s y X es la matriz diagonal
cuyas entradas diagonales son las componentes de x > 0. Estableciendo sj = µ/xj

4
ESPOL MATG1029 - Optimizacion I José Manuel Vera

el conjunto completo de condiciones pueden ser escritas

x ◦ s = µ1
Ax = b (1)
T
A y+s=c

Ejemplo 2. Considerar el problema de maximizar x1 dentro del cuadrado unitario


S = [0, 1]2 . El problema es formulado como:

min − x1
sujeto a x1 + x3 = 1
x2 + x4 = 1
x1 , x2 , x3 , x4 ≥ 0

Las condiciones de optimalidad para x(µ) consiste de las 2 restricciones lineales


originales y las cuatro ecuaciones:

y1 + s1 = −1

y 2 + s2 = 0
y 1 + s3 = 0
y 2 + s4 = 0
junto con las relaciones si = µ/xi para i = 1, 2, ..., 4. Estas ecuaciones se resuelven
fácilmente con una serie de eliminaciones de variables elementales para encontrar
p
1 − 2µ ± 1 + 4µ2
x1 (µ) =
2
x2 = 1/2
Usando la solución con el ’+’, es visto que al µ → 0 la solución va hacia x → (1, 1/2).
Note que esta solución no es la esquina del cubo. En vez, es el centro analı́tico de la
cara óptima {x|x1 = 1, 0 ≤ x2 ≤ 1}. El limite de x(µ) cuando µ → ∞ es el punto
(1/2,1/2). Entonces, el camino central en este caso es una linea recta progresando
desde el centro analı́tco del cuadrado al centro analı́tico de la cara óptima.

5
ESPOL MATG1029 - Optimizacion I José Manuel Vera

1.4 Método de Barrera Primaria


Un estrategia de solución es usar la construcción barrera y resolver el problema
n
X
T
min c x−µ log xj
j=1
(2)
sujeto a Ax = b
x≥0
para un valor muy pequeo de µ. De hecho, si solo quisiéramos reducir la brecha
de dualidad a ε es solo necesario resolver el problema para µ = ε/n. Desafortu-
nadamente, cuando µ es pequeo, el problema puede ser muy mal condicionada en el
sentido que las condiciones necesarias son casi singulares. Esto dificulta la resolución
directa del problema para µ pequeos.

Una estrategia general, por lo tanto, es comenzar con un µ moderadamente grande


y resolver ese problema aproximadamente. La solución correspondiente es un punto
aproximadamente en el camino central primario, pero es probable que esté bastante
distante del punto correspondiente al lmite de µ → 0. Esta solcuión alejada puede
ser utilizada como punto de partida para el problema con un µ ligeramente mas pe-
queo, ya que este punto probablemente es cercano a la solución del nuevo problema.
El valor de µ puede ser reducido en cada escenario por un valor especifico, dando
µk+1 = γuk , donde γ es parametro positivo fijo menor a uno y k es el conteo de los
escenarios.

A menudo, se utiliza una versin del mtodo de Newton para la minimización para
resolver cada uno de los problemas. Para la estrategia actual, el mtodo de Newton
funciona en el problema (2) con µ fijo considerando las ecuaciones del camino central
(1).
Desde un punto x ∈ Ḟp , el método de Newton se mueve a un punto cercano x+ ∈ Ḟp
moviendose en las direcciones dx , dy y ds determinados de la linearización de (1)

µX −2 dx + ds = µX −1 1 − c
Adx = 0 (3)
T
−A dy − ds = 0
X es la matriz diagonal cuyas entradas son los componentes de x > 0. El nuevo
punto es actualizada tomando un paso en la dirección de dx como x+ = x + dx

6
ESPOL MATG1029 - Optimizacion I José Manuel Vera

Para resolver (3), multiplicamos ambos lados por X 2 teniendo:

µdx + X 2 ds = µX1 − X 2 c

Luego, multiplicando por A y usando Adx = 0, tenemos

AX 2 ds = µAX1 − AX 2 c

Usando ds = −AT dy tenemos

(AX 2 AT )dy = −µAX1 + AX 2 c

Asi, dy puede ser computada resolviendo el sistema ecuaciones lineales anterior.


Luego ds puede ser encontrada de la tercera ecuación en (3) y finalmente dx puede
ser encontrada de la primera ecuación en (3). Esto equivale a O(nm2 + m3 ) opera-
ciones aritméticas por cada paso de Newton.

El método funciona bien si el µ es moderadamente grande, o si el algoritmo se inicia


en un punto muy cercano a la solucin.

Você também pode gostar