Está en la página 1de 23

Optimización

Búsqueda en una Dimensión


Dr. E Uresti

ITESM

Búsqueda en una Dimensión Profr. E. Uresti - p. 1/19


Introducción

Algunos de los métodos numéricos de búsqueda de óptimos de una Introducción


GS
función en varias variables se basan en métodos de búsqueda de Bracketing
óptimos en una variable. Por ejemplo, el método de ascenso más B y GS
Ejemplos
rápido elige un punto dado y determina la dirección de máximo Tarea

crecimiento en tal punto. Esta dirección es la del gradiente de la


función en dicho punto. Así, y partiendo del punto y siguiendo esta
dirección, avanza para localizar el óptimo en dicha dirección.
Imaginese avanzando en línea recta y tomando en cuenta sólo la
evaluación de la función para determinar el punto en la línea con la
mayor evaluación. Una vez alcanzado este punto, se determina la
dirección de máximo crecimiento en tal punto y se repite el proceso
de búsqueda. Por su valor práctico, los métodos de búsqueda en
una dimensión son dignos de revisar.

Búsqueda en una Dimensión Profr. E. Uresti - p. 2/19


Previo a revisar los métodos, es importante saber Introducción
GS
si el óptimo que buscamos existe y que no habrá Bracketing
B y GS
más de uno. Una función que efectivamente tiene Ejemplos
un sólo óptimo recibe un nombre especial: Tarea

Definición
Una función es unimodal si sólo tiene un
óptimo (relativo o absoluto). En caso que
tenga varios óptimos se dice multimodal.

Búsqueda en una Dimensión Profr. E. Uresti - p. 3/19


Introducción
Unimodal Multimodal GS
Bracketing
B y GS
Ejemplos
Tarea

Búsqueda en una Dimensión Profr. E. Uresti - p. 4/19


Método de la Sección Dorada

La estrategia de este método se basa en tres puntos iniciales: dos Introducción


GS
considerados los extremos de un intervalo (x1 y x2 ) y el tercero (x3 )
Bracketing
entre los dos primeros de tal suerte que relación entre la distancia B y GS
Ejemplos
de este punto interno al extremo x2 (x2 − x3 ) y la distancia entre los
Tarea
extremos (x2 − x1 ) es siempre una constante:

x2 − x3 5−1
= = τ = 0.618034 . . .
x2 − x1 2
Note que el punto x3 divide al segmento [x1 : x2 ] en dos partes: la
parte [x1 : x3 ] es más pequeña que la parte [x3 : x2 ]: el segmento
[x3 : x2 ] es el 61.80 % de [x1 : x2 ], mientras que [x1 : x3 ] tiene una
longitud que es el 38.19 %.

x1 x3 x2

Búsqueda en una Dimensión Profr. E. Uresti - p. 5/19


El método itera generando un siguiente punto x4 en [x3 : x2 ] (la Introducción
GS
parte más amplia) de manera que se cumple: Bracketing
B y GS
x4 − x1
=τ Ejemplos
x2 − x1 Tarea

Note que las fórmulas convenientes para el cálculo de x3 y x4 son:

x4 = (1 − τ ) x1 + τ x2 .

y
x3 = τ x1 + (1 − τ ) x2 .

Y la razón es porque en estas fórmulas no se requiere que x1 < x2 .

x1 x3 x4 x2

Búsqueda en una Dimensión Profr. E. Uresti - p. 6/19


Observemos las siguientes razones: Introducción
GS
x4 −x1 ((1−τ ) x1 +τ x2 )−x1 Bracketing
x2 −x1
= x2 −x1 B y GS
Ejemplos
τ x2 −τ x1
= x2 −x1
=τ Tarea

x2 −x3 x2 −(τ x1 +(1−τ ) x2 )


x2 −x1
= x2 −x1

τ x2 −τ x1
= x2 −x1

x3 −x1 (τ x1 +(1−τ ) x2 )−x1


x4 −x1
= (1−τ ) x1 +τ x2 −x1

(1−τ )(x2 −x1 ) 1−τ


= τ (x2 −x1 )
= τ

x2 −x4 x2 −((1−τ ) x1 +τ x2 )
x2 −x3
= x2 −τ x1 −(1−τ ) x2

(1−τ ) (x2 −x1 ) 1−τ


= τ (x2 −x1 )
= τ

Búsqueda en una Dimensión Profr. E. Uresti - p. 7/19


I1
I4 I5
I3 I4 I2 I5
I2 I3 τ = I1
= I1
= I4
= I3
= 0.6180 . . .

I2 I5 I6 I6
1−τ = I1
= I1
= I4
= I3
= 0.3819 . . .
I6
x1 x3 x4 x2

Búsqueda en una Dimensión Profr. E. Uresti - p. 8/19


Dependiendo de la función a maximizar, el algoritmo escoge tres Introducción
GS
puntos de los cuatro disponibles de manera que la situación se
Bracketing
repite en las proporciones de los intervalos. En general, si Ii es la B y GS
Ejemplos
longitud del intervalo en la iteración i se cumple que:
Tarea

In = τ n−1 I1

Por tanto, conociendo el intervalo inicial (I1 ) y sabiendo a qué


precisión se desea estimar el punto (In ), es fácil estimar el total de
iteraciones requeridas para que este método se aproxime al valor
requerido:
ln(In ) − ln(I1 )
n=1+
ln(τ )

Búsqueda en una Dimensión Profr. E. Uresti - p. 9/19


Ubicación del Intervalo

El método de la sección dorada requiere de la ubicación de los tres Introducción


GS
primeros puntos x1 , x2 y x3 como se describen anteriormente.
Bracketing
Cuando el método se aplica a la determinación de un máximo de B y GS
Ejemplos
una función f (x), los puntos deben satisfacer:
Tarea

f (x1 ) < f (x3 ) y f (x3 ) ≥ f (x2 ).

Es decir, la función sube y cae. Al procedimiento para encontrar


tales puntos recibe el nombre de Ubicación del Intervalo de Trabajo
(Bracketing).

x1 x3 x2

Búsqueda en una Dimensión Profr. E. Uresti - p. 10/19


La estrategia inicia a partir de un punto x1 y teniendo un incremento Introducción
GS
de x inicial s. Se genera un siguiente punto
Bracketing
B y GS
x3 = x1 + s. Ejemplos
Tarea
Si f (x1 ) ≥ f (x3 ) habrá que buscar hacia atrás cambiando
intercambiando los puntos y el signo del incremento. Si
f (x1 ) < f (x3 ), el incremento se agranda en la proporción τ por
medio de la fórmula s = s/τ .

f (x1 ) < f (x3 ) f (x1 ) ≥ f (x3 )

x1 x3 x3 = x1 x1 = x3
s = −s

Búsqueda en una Dimensión Profr. E. Uresti - p. 11/19


Un siguiente punto se genera hacia adelante Introducción
GS
Bracketing
x2 = x3 + s.
B y GS
Ejemplos
Si f (x3 ) ≥ f (x2 ) los tres puntos buscados están determinados. Si Tarea
f (x3 ) < f (x2 ), entonces el procedimiento se repite tomando
x1 = x3 , x2 = x3 y s = s/τ . Observe que el intervalo de bracketing
va creciendo en la proporción 1/τ (≈ 1.618).

f (x3 ) ≥ f (x2 ) f (x3 ) < f (x2 )

τs s τs s s/τ
x1 x3 x2 x1 x3 x2
x1 x3 x2

Búsqueda en una Dimensión Profr. E. Uresti - p. 12/19


Crecimiento del intervalo de Bracketing

f (x3 ) ≥ f (x2 )
f (x1 ) < f (x3 )

f (x1 ) f (x3 ) f (x2 )

(1 + τ1 ) s
1
s τ
s

x1 x3 x2

Búsqueda en una Dimensión Profr. E. Uresti - p. 13/19


Algoritmo Basado en la Sección Dorada

[1.] Inicie con un punto x1 y un incremento s; tome f1 ← f (x1 ). Introducción


GS
[2.] Tome x3 ← x1 + s y f3 ← f (x3 ). Bracketing
[3.] Si (f1 > f3 ), intercambie (x1 , f1 ) y (x3 , f3 ) y tome s ← −s. B y GS
Ejemplos
[4.] Tome s ← s/τ , x2 ← x3 + s, y f2 ← f (x2 ). Tarea
[5.] Si (f3 > f2 ), vaya a [7.]
[6.] Tome (x1 , f1 ) ← (x3 , f3 ) y (x3 , f3 ) ← (x2 , f2 ) y vaya a [4.]
[7.] Tome x4 ← (1 − τ ) x1 + τ x2 y f4 ← f (x4 ).
[8.] Si (f3 ≥ f4 ), tome (x2 , f2 ) ← (x1 , f1 ) y (x1 , f1 ) ← (x4 , f4 ); vaya
a [10.]
[9.] Tome (x1 , f1 ) ← (x3 , f3 ) y (x3 , f3 ) ← (x4 , f4 );
[10.] SiCriterio de paro = OK, termine; caso contrario vaya a [7.]

Búsqueda en una Dimensión Profr. E. Uresti - p. 14/19


Casos en la comparación de f4 vs f3

I1 I1
I4 I5 I4 I5
I2 I3 I2 I3

x1 x3 x4 x2 x1 x3 x4 x2
x1 x3 x2 x2 x3 x1

Búsqueda en una Dimensión Profr. E. Uresti - p. 15/19


Ejemplos

Aplique el algoritmo anterior para encontrar el máximo de la función Introducción


GS
f (x) = −x2 − 1 Bracketing
B y GS
Ejemplos
partiendo de x1 = −1 y con un primer intervalo de s = 0.5. Tarea

Búsqueda en una Dimensión Profr. E. Uresti - p. 16/19


Ejemplos

Aplique el algoritmo anterior para encontrar el máximo de la función Introducción


GS
f (x) = −x2 − 1 Bracketing
B y GS
Ejemplos
partiendo de x1 = −1 y con un primer intervalo de s = 0.5. Tarea

Determinación de la dirección de avance

x1 f (x1 ) s x3 = x1 + s f (x3 ) ¿f (x1 ) < f (x3 )?

-1.0 -2.0 0.5 -0.5 -1.25 sí

Búsqueda en una Dimensión Profr. E. Uresti - p. 16/19


Ejemplos

Aplique el algoritmo anterior para encontrar el máximo de la función Introducción


GS
f (x) = −x2 − 1 Bracketing
B y GS
Ejemplos
partiendo de x1 = −1 y con un primer intervalo de s = 0.5. Tarea

Determinación de la dirección de avance

x1 f (x1 ) s x3 = x1 + s f (x3 ) ¿f (x1 ) < f (x3 )?

-1.0 -2.0 0.5 -0.5 -1.25 sí


Ubicación

x1 f (x1 ) s x3 f (x3 ) s = s/τ x2 = x3 + s f (x2 ) f2 ≤ f3

-1.0 -2.0 0.5 -0.5 -1.25 0.80906 0.30906 -1.09552 no


-0.5 -1.25 0.80906 0.30906 -1.09552 1.30916 1.61822 -3.61864 sí

Búsqueda en una Dimensión Profr. E. Uresti - p. 16/19


Ejemplos

Aplique el algoritmo anterior para encontrar el máximo de la función Introducción


GS
f (x) = −x2 − 1 Bracketing
B y GS
Ejemplos
partiendo de x1 = −1 y con un primer intervalo de s = 0.5. Tarea

Determinación de la dirección de avance

x1 f (x1 ) s x3 = x1 + s f (x3 ) ¿f (x1 ) < f (x3 )?

-1.0 -2.0 0.5 -0.5 -1.25 sí


Ubicación

x1 f (x1 ) s x3 f (x3 ) s = s/τ x2 = x3 + s f (x2 ) f2 ≤ f3

-1.0 -2.0 0.5 -0.5 -1.25 0.80906 0.30906 -1.09552 no


-0.5 -1.25 0.80906 0.30906 -1.09552 1.30916 1.61822 -3.61864 sí

Refinamiento

s x1 f (x1 ) x3 f (x3 ) x2 f (x2 ) x4 = (1 − τ ) x1 + τ x2 f (x4 )

2.1182 -.5 -1.25 .30915 -1.0956 1.61822 -3.6186 .80900 -1.6545


1.3090 .80900 -1.6545 .30915 -1.0956 -.5 -1.25 .00004 -1.
.80896 .30915 -1.0956 .00004 -1. -.5 -1.25 -.19090 -1.0364
.49994 -.19090 -1.0364 .00004 -1. .30915 -1.0956 .11813 -1.0140
.30896 .11813 -1.0140 .00004 -1. -.19090 -1.0364 -.072854 -1.0053
.19094 -.072854 -1.0053 .00004 -1. .11813 -1.0140 .045174 -1.0020
.11800 .045174 -1.0020 .00004 -1. -.072854 -1.0053 -.027768 -1.0008
.072924 -.027768 -1.0008 .00004 -1. .045174 -1.0020 .017311 -1.0003

Búsqueda en una Dimensión Profr. E. Uresti - p. 16/19


Encuentre el punto óptimo (máximo) por el método de Mayor Introducción
GS
Ascenso combinado con el método de la sección dorada a las
Bracketing
funciones: B y GS
Ejemplos
f (x, y, z) = −3 x2 − 2 x y − 6 x − 3 y 2 − 2 y − z 2 Tarea

Partiendo de P (2, 2, 1) y tomando s = 1 en cada aplicación de la


sección dorada.

Búsqueda en una Dimensión Profr. E. Uresti - p. 17/19


Encuentre el punto óptimo (máximo) por el método de Mayor Introducción
GS
Ascenso combinado con el método de la sección dorada a las
Bracketing
funciones: B y GS
Ejemplos
f (x, y, z) = −3 x2 − 2 x y − 6 x − 3 y 2 − 2 y − z 2 Tarea

Partiendo de P (2, 2, 1) y tomando s = 1 en cada aplicación de la


sección dorada.
Solución
La dirección de máximo crecimiento es la del gradiente:

∇ f =< −6 x − 2 y − 6, −2 x − 6 y − 2, −2 z >

Así ∇ f (P ) =< −22, −18, −2 >; por tanto, la dirección unitaria de


máximo crecimiento es: v =< −0.77208, −0.63169, −0.070188 >.
De donde, la función f (x, y, z) restringida a P + t · v queda:

g(t) = f (x = P1 +t v1 , y = P2 +t v2 , z = P3 +t v3 ) = −49.0+28.497 t−3.9657 t2

Búsqueda en una Dimensión Profr. E. Uresti - p. 17/19


Apliquemos ahora el método de la sección dorada a Introducción
GS
g(t) = −49.0 + 28.497 t − 3.9657 t2 Bracketing
B y GS
Ejemplos
partiendo de t = 0 y con s = 1. Tarea

Búsqueda en una Dimensión Profr. E. Uresti - p. 18/19


Tarea

1. Use el método de la sección dorada para determinar con una Introducción


GS
tolerancia de 0.05 la solución óptima de :
Bracketing
B y GS
Max x2 + 2 x Ejemplos
Tarea
Sujeto a −3 ≤ x ≤ 5

2. Use el método de la sección dorada para determinar con una


tolerancia de 0.05 la solución óptima de :

Max x − ex
Sujeto a −1 ≤ x ≤ 3

3. Encuentre el punto máximo por el método de Mayor Ascenso


combinado con el método de la sección dorada a las funciones:
a) f (x, y) = −(x − 3)2 − (y − 1)2 partiendo de P (2, 2) y
tomando s = 1 en cada aplicación de la sección dorada.
b) f (x, y) = −3 x2 − 2 x y − 6 x − 3 y 2 − 2 y − 3 partiendo de
P (2, 2) y tomando s = 1 en cada aplicación de la sección
dorada.
Búsqueda en una Dimensión Profr. E. Uresti - p. 19/19

También podría gustarte