Optimizacion Vectorial
Optimizacion Vectorial
Optimizacion Vectorial
OPTIMIZACIN VECTORIAL
Mtodo Simplex
Geomtricamente el elemento que requiere menos puntos para su
construccin => Simplex regular, que en dimensin N es un
poliedro compuesto de N+1 puntos equidistantes que forman sus
vrtices (tringulo, tetraedro,...).
Mtodo Simplex 1
X(2)
X(2)
X(1)
X(1)
X(3)
Se sita un simple
regular en el espacio
de las variables
independientes
X(3)
Este punto se
X(4) utiliza para
formar un nuevo
simplex
Mtodo Simplex 2
1. El valor de la funcin en el peor punto y el punto reflejado sea el
mismo.
x2
x1
x3
x4
3. Criterio de terminacin
x + 1 i = j
(0)
= x j + 2 i j
i, j = 1,2,K, N
(0)
j
x (ji )
( N + 1)12 + N 1
1 =
N 2
( N + 1)12 1
2 =
N 2
1 N (i )
xc = x
N i =0
i j
Todos los puntos sobre la lnea desde x(j) hasta xc vienen dados por:
x = x ( j) + (x c x ( j) )
=0
=1
x = x ( j)
x = xc
=2
j)
j)
x (nueva
= 2 x c x (anterior
Desventajas
1. Problemas de escala, todos los vrtices utilizan la misma
=
= = 0.5
==2
Xnew
X(h)
a) Reflexin normal:
Xnew
b) Expansin:
X(h)
Xnew
X(h)
Xnew
d) Contraccin negativa:
c) Contraccin:
f(x(g))
f(x(h))
Q(x) = xT C x = zT T T C T z = zT D z
x(1)
x(2)
y(2)
Direcciones C-conjugadas: es
un conjunto de vectores
linealmente independientes que
diagonalizan la matriz C, es
decir:
SiT C Sj = 0 i j
x(2)
x(3)
e(2)
x(1)
x(0)
e(1)
Calcular:
(0) mnimo f( x(1)= x(0) + (0)e1)
(1) mnimo f( x(2)= x(1) + (1)e2)
(2) mnimo f( x(3)= x(2) + (2)e1)
s1 = x(3) - x(1) es C-conjugada de e1
y e2
Repetir procedimiento con e2 y s1
Algoritmo:
1.- Definir x(0) y un conjunto de direcciones independientes s(i) =
e(i), i=1,...,N
2.- Minimizar a lo largo de N+1 direcciones usando el mnimo
anterior y poner s(N) como primera y ltima direccin de bsqueda
3.- Construir la nueva direccin conjugada
4.- Borrar s(1), reemplazarla por s(2), etc. Poner la nueva direccin
en s(N) e ir al paso 2.
Incluir:
Un chequeo de convergencia
Test para asegurar la independencia lineal de las direcciones
conjugadas
Expansin en serie de
Taylor de la funcin
alrededor de x*:
f(x) = f(x*) + f(x*) x
xk
f ( )
x2
xk+1
d
x1
f (x k +1 ) = f (x k + d k )
min f (x k + d k )
f(x(*)) = 0.
f (x ) = f (x
(k )
) + f (x )
(k ) T
x +
1
x T 2 f (x ( k ) ) x + O ( x 3 )
2
1
~
(k )
(k )
(k ) T
f (x ; x ) = f (x ) + f (x ) x + x T 2 f (x ( k ) ) x
2
El siguiente punto se calcula suponiendo que el gradiente de la
aproximacin cuadrtica es igual a cero
~
f (x ; x ( k ) ) = f (x ( k ) ) + 2 f (x ( k ) ) x = 0
De aqu que:
x = f (x
2
( k ) 1
f (x ( k ) )
x ( k +1 ) = x ( k ) 2 f (x ( k ) ) f (x ( k ) )
1
Mtodo de
Optimizacin de
Newton
Mtodo de Marquadt-Lavenberg
Algoritmo:
1.- Definir x0, estima inicial de x*, M el nmero mximo de
iteraciones y criterio de convergencia.
2.- k= 0. 0 = 104
3.- f (xk) < ?. Si ir a 10, No continuar
4.- K M ?. Si ir a 10. No: continuar
g(x) = C x
Varias soluciones:
Fletcher- Reeves: s(k) = - g(k) + [g(k)2 / g(k-1)2 ] sk-1
con Ak mtrica
Ak g k zT
zT g k
Mtodo de Davidon-Fletcher-Powell: y = xk y z = Ak gk
1 x k y T
=
y T g k
= A
k 1
x k 1 x ( k 1)T
+
( k 1)T
g k 1
x
A k 1 g k 1 g ( k 1)T A k 1
g ( k 1)T A k 1 g k 1
k +1
k
( k )T
x
g
= I
x ( k )T g k
k
A
k
( k )T
x
g
I
x ( k )T g k
x k g ( k )T
+
x ( k )T g k
Algoritmo general
df
dxi
df
dxi
x= x
x= x
= lim
0
= lim
0
f ( x + * ei ) f ( x )
f ( x + * ei ) f ( x * ei )
2
Ejemplo 1