Unidad 3 Métodos de Búsqueda
Unidad 3 Métodos de Búsqueda
Unidad 3 Métodos de Búsqueda
Unidad 3:
Métodos de
Búsqueda
x ’ ≤ x 1 ≤ x 2 → f ( x ’)≤ f (x 1)≤ f (x 2 )
x ’ ≥ x 1 ≥ x 2 → f ( x ’ ) ≤ f ( x 1) ≤ f ( x 2 )
Otra forma de encontrar el óptimo global sin tener que identificar los puntos estacionarios
y evaluar el valor de sus funciones, sería aprovechar la propiedad de unimodalidad de las
funciones para poder determinar rápidamente el óptimo. Sin embargo, el test para
determinar si una función es unimodal es muy complejo y difícil de aplicar. Pero, sí es
posible utilizar la propiedad de convexidad y concavidad de las funciones unimodales para
aproximarse al óptimo. Muchos métodos utilizan dicha propiedad para encontrar el punto
óptimo.
Búsqueda de Fibonacci
El método de Fibonacci está considerado como el más eficiente entre los métodos de
búsqueda. Difiere del método de la sección ´aurea en el hecho de que el valor de α no
permanece constante en cada iteración. Además, el número de iteraciones viene
predeterminado en base al nivel de exactitud especificado por el usuario.
Para determinar en cada iteración los nuevos valores yk y zk con los que evaluar el actual
intervalo de incertidumbre. Como veremos, en el método de Fibonacci el (k + 1)−ésimo
subintervalo se obtiene reduciendo la longitud del k-´esimo subintervalo por un factor
F n−k−1
. Por consiguiente, despu´es de n − 2 pasos, la longitud del último subintervalo
F n−k
será:
Paso Inicial:
b−a
Fijar h> 0 y ∈>0. Elegir n tal que F n> . Hacer a 1=a , b1=b ,
h
F n−1 F n−1
(
y 1=a1+ 1−
Fn )( b1−a 1) z 1=a 1+ ( b −a )
Fn 1 1
Y k =1
Paso General:
Repetir:
1. Si f ( yk )≥ f ( zk ), ir a 2. En caso contrario, ir a 3.
2. Hacer a k+1=ak ,b k+1=bk , y k+1=z k y:
F n−k−1
z k+1=ak +1+ ( b −a )
F n−k k +1 k+1
3. Hacer a k+1=ak ,b k+1=z k , z k+1= y k y calcular:
F n−k−1
y k +1=ak +1+ 1−( F n−k )
( bk +1−a k+1 )
4. Hacer k =k +1 e ir a 1.
5. Hacer y n= y n−1 , z n= y n−1 +ϵ .
F n−1
Para un valor de n suficientemente grande, la proporción tiende al número áureo, y
Fn
por lo tanto el método de Fibonacci se aproxima al método de la sección áurea.
Es una técnica para encontrar un extremo (mínimo o máximo) de una función dentro de
un intervalo especificado. Para una función estrictamente unimodal con un extremo dentro
del intervalo, encontrará ese extremo, mientras que para un intervalo que contiene
múltiples extremos (posiblemente incluyendo los límites del intervalo), convergerá a uno
de ellos. Si el único extremo del intervalo está en un límite del intervalo, convergerá a ese
punto límite. El método opera estrechando sucesivamente el rango de valores en el
intervalo especificado, lo que lo hace relativamente lento, pero muy robusto. La técnica
deriva su nombre del hecho de que el algoritmo mantiene los valores de la función para
cuatro puntos cuyos tres anchos de intervalo están en la proporción 2−φ :2φ−3 :2−φ
donde φ es la proporción áurea.
El nuevo intervalo de búsqueda estará entre y con una longitud de a+ c , o entre y con una
longitud de b. La búsqueda de la sección áurea requiere que estos intervalos sean
iguales. Si no es así, una racha de "mala suerte" podría llevar a que el intervalo más
amplio se use muchas veces, lo que ralentizará la tasa de convergencia. Para asegurarse
de que b=a+ c, el algoritmo debe elegir. x 1 x 4 x 2 x 3
x 4 =x1 + ( x 3−x 2 )
Sin embargo, aún queda la cuestión de dónde debería colocarse en relación con y. La
búsqueda de la sección áurea elige el espaciado entre estos puntos de tal manera que
estos puntos tengan la misma proporción de espaciado que el triple o subsiguiente. Al
mantener la misma proporción de espaciado en todo el algoritmo, evitamos una situación
en la que está muy cerca de o y garantizamos que el ancho del intervalo se contrae en la
misma proporción constante en cada paso. x 2 x 1 x 3 x1 , x2 , x 4 x 2 , x 4 , x 3 x 2 x1 x 3
c a
=
a b
c a
=
b−c b
b 2 b
()
a
− =1 ,
a
b
=φ ,
a
1+ √ 5
φ= =1.618033988 …
2
La aparición de la proporción áurea en el espaciado proporcional de los puntos de
evaluación es cómo este algoritmo de búsqueda recibe su nombre.
Con frecuencia se tienen que estimar valores intermedios entre valores conocidos. El
método más común empleado para este propósito es la interpolación polinomial.
Para n + 1 puntos, existe uno y sólo un polinomio de n-ésimo orden o menor que pasa a
través de todos los puntos. Por ejemplo, hay sólo una línea recta (es decir un polinomio
de primer orden) que conecta dos puntos. El polinomio de interpolación consiste en
determinar el único polinomio de n-ésimo orden que se ajusta a los n + 1 puntos dados.
Este polinomio proporciona una fórmula para calcular los valores intermedios.
Aunque existe uno y sólo un polinomio de n-ésimo orden que se ajusta a los n + 1 puntos,
existen una gran variedad de fórmulas matemáticas mediante las cuales se puede
expresar este polinomio. En esta unidad se estudian dos técnicas alternativas que están
bien condicionadas para implementarse en una computadora. Estos son los polinomios
de Newton y de Lagrange.
Estos métodos son aplicables cuando otros métodos fallan debido a dificultades locales
tales como funciones con formas determinadas y regiones de búsqueda difíciles de
explorar. Aunque estos métodos no son muy eficientes, pueden usarse en las etapas
iniciales de la optimización para detectar la región donde es más probable encontrar el
mínimo global. Una vez localizada esta región, puede usarse una técnica más eficiente
para ubicar con mayor precisión el mínimo global.
La organización del espacio multidimensional permite disminuir el número de accesos a
disco que son necesarios para dar respuesta a las consultas que el usuario realice. Un
aspecto principal en el contexto es el tipo de consulta que se procesa sobre los datos.
Donde se considera y recomienda la mejor manera de responder a tales consultas por
semejanza a un patrón dado. Por ejemplo, se tiene una imagen patrón y se busca en la
base de datos una imagen similar a la de dicho patrón. O si se tiene un perfil concreto, se
buscan objetos que encajen en dicho perfil. He aquí las consultas por similitud, que
consiste en transformar cada objeto de la base de datos en un punto multidimensional que
capture las características que definen el objeto y modelar la búsqueda como una
recuperación de vecinos más cercanos en el espacio multidimensional.
En otras palabras, los métodos multidimensionales son aquellos que tratan de acelerar las
búsquedas por similitud en voluminosos espacios altamente dimensionales aportando
soluciones aproximadas, esto es dando como respuesta objetos que con un cierto margen
de error pueden considerarse los más próximos al patrón de búsqueda. O bien son las
diferentes estrategias para dar solución a problemas relacionados con la búsqueda por
similitud, fundamentalmente en el contexto de colecciones voluminosas de documentos
multimedia.
1. Método Gráfico:
Empleando 3 observaciones:
Empleando 4 observaciones: