Introduccion a la Optimizacion

Anuncio
Introduccion a la Optimizacion
Inteligencia Artificial II
Rafael Vazquez Perez©
Introduccion a la Optimizacion
• 1.1.- Búsqueda de la Mejor Solución
– 1.1.1.- Definición de Optimización
– 1.1.2.- Búsqueda de raíces vs Optimización
– 1.1.3.- Categorías de Optimización
• 1.2.- Algoritmos de Búsqueda de Minimización.
– 1.2.1.- Búsqueda Exhaustiva
– 1.2.2.- Optimización Analítica
– 1.2.3.- Método Simplex Downhill
• 1.3..- Métodos de Optimización Naturales.
– 1.3.1.- Recocido Simulado
– 1.3.2.- Algoritmo Genético
1.1.- Búsqueda de la Mejor Solución
1.1.1.- Definición de Optimización
• Optimizacion es el proceso de hacer algo mejor.
• La optimizacion consiste del tratamiento de las variaciones de
un concepto inicial y usar la informacion obtenida para
mejorar la idea.
• Una computadora es la perfecta herramienta de optimizacion
de acuerdo a la idea de la influencia de la variacion de los
parametros de entrada en formato
1.1.- Búsqueda de la Mejor Solución
1.1.1.- Definición de Optimización
• El termino “mejor” solucion implica que hay mas de una
solucion y que cada solucion no tienen valores iguales.
• La definicion de “mejor” es relativa al problema que se esta
manejando, su metodo de solucion y las tolerancias
permitidas.
• Luego entonces la solucion optima depende de la formulacion
personal del problema
1.1.- Búsqueda de la Mejor Solución
1.1.1.- Definición de Optimización
• Nuestra vida diaria nos confronta con muchas
oportunidades de resolver problemas de optimizacion.
– Cual es la mejor ruta para llegar al tec?
– Cual proyecto empezare primero ?
– Que ruta debo tomar para minimar el consumo de
gasolina ?
– Que software debo de comprar para maximizar la
productividad del departamento.
1.1.- Búsqueda de la Mejor Solución
• La optimizacion es el proceso de ajustar las entradas a
las caracteristicas de un dispositivo, proceso
matematico o experimento para encontrar la salida o
resultado minimo o maximo.
•
Entrada o parametros
Funcion
O Proceso
Salida o costo
1.1.- Búsqueda de la Mejor Solución
1.1.1.- Definición de Optimización
• La entrada consiste de parametros
• El proceso o funcion es conocido como la funcion
costo, funcion objetivo o funcion fitness
• La salida es el costo o fitness
1.1.- Búsqueda de la Mejor Solución
1.1.2. Busqueda de Raices vs Optimizacion
• Los enfoques de la optimizacion estan relacionados
con los metodos de encontrar raices o ceros.
• Otro problema con la optimizacion es detreminar si un
minimo dado es el menor minimo (global) o un minimo
suboptimo (local).
1.1.- Búsqueda de la Mejor Solución
1.1.3. Categorias de Optimizacion
• La siguiente figura nos muestra que los algoritmos de
optimizacion pueden dividirse en 6 grandes categorias
que no son mutuamente exclusivas
1.1.- Búsqueda de la Mejor Solución
1.1.3. Categorias de Optimizacion
Parametros
Prueba y Error
Individuales
2
1
function
Parametros
Estatico
Multiples
3
Dinamico
Optimizacion
Discreto
random
6
Busqueda
de
minimos
Restricciones
5
Sin
Restricciones
4
Continuo
• 1.2.- Algoritmos de Búsqueda de Minimización.
1.2.1.- Búsqueda Exhaustiva
•
La busqueda del costo minimo, en la superficie del costo ( para
todos los valores posibles de la funcion) es el corazon de las
rutinas de optimizacion.
•
Usualmente una Superficie de Costo tiene muchos picos, valles
y lados.
•
Un algoritmo de Optimizacion trabaja como un explorador
tratando de encontrar el camino a la altura minima en la
sierra.
• 1.2.- Algoritmos de Búsqueda de Minimización.
1.2.1.- Búsqueda Exhaustiva
• El enfoque de la fuerza bruta para la
optimizacion es un muestreo
suficientemente fino de la funcion costo
para encontrar el minimo global
1.2. Algoritmos de busqueda de minimizacion
1.2.1 Busqueda exhaustiva
• La busqueda exhaustiva requiere de un
numero extremadamente grande de
evaluaciones para encontrar el optimo.
1.2. Algoritmos de busqueda de minimizacion
1.2.1 Busqueda exhaustiva
• Ejemplo: considere la solucion al siguiente
problema de 2 dimensiones
• Encuentre el minimo de:
• f(x,y)= x sen(4x) + 1.1 y sen(2y)
• en el rango 0≤x≤10 y 0≤y≤10
Minimo
1.2. Algoritmos de busqueda de minimizacion
1.2.2 Optimizacion Analitica
• El calculo nos ofrece las herramientas y la
elegancia para encontrar el minimo de
muchas funciones costo.
• Para nuestra funcion de ejemplo (2
parametros) es necesario tomar el
gradiente de la funcion e igualralo a cero.
•
∇ f(x,y) = 0
1.2. Algoritmos de busqueda de minimizacion
1.2.2 Optimizacion Analitica
el ejemplo, resulta:
• para
∂f
• ---- = sin(4x ) + 4x cos(4x ) = 0
∂fx
• y ∂f
• ---- = 1.1sin(2y ) + 2.2y cos(4y ) = 0
m
m
m
∂fy
m
m
m
1.2. Algoritmos de busqueda de minimizacion
1.2.3 Metodo Simplex DownHill
• En 1965 Nelder and Mead introducen el
metodo simplex downhill que no requiere
el calculo de derivadas.
• El metodo consiste en generar una figura
geometrica la mas elemental que se puede
formar en el espacio n dimensional y tiene
n+1 lados.
• Cada iteracion genera un nuevo vertice
1.2. Algoritmos de busqueda de minimizacion
1.2.3 Metodo Simplex DownHill
• Si el nuevo punto es mejor que al menos
uno de los vertices existentes, se reemplaza
por el peor
1.3. Metodos Naturales de Optimizacion
1.3.1.- Recocido Simulado
• En 1980 Kirkpatrick y su grupo introduce
el metodo de recocido simulado.
• Este metodo simula un proceso de
recocido, en el cual una substancia es
calentada por debajo de su temperatura
para derretirse, y entonces es enfriado
gradualmente para lograr una latencia
cristalina
1.3. Metodos Naturales de Optimizacion
1.3.1.- Recocido Simulado
•
El algoritmo analogo a este proceso involucra una
inicializacion de un estado invitado, y entonces es
calentado con la modificacion de sus parametros.
•
La funcion costo representa la energia del nivel de
la substancia.
•
Es necesario añadir un parametro de control
analogo a la temperatura, el cual controle la
velocidad de descenso en el valor de la funcion
optima de costo
1.3. Metodos Naturales de Optimizacion
1.3.2. Algoritmo Genetico
•
Los algoritmos geneticos son un subconjunto de
los algoritmos evolutivos que modelan procesos
biologicos para optimizacion de funciones costo
altamente complejas.
•
Un algoritmo genetico permite a una poblacion
compuesta de muchos individuos, evolucionar a
un estado bajo reglas de seleccion especificas
que maximizan la funcion ”fitness”
1.3. Metodos Naturales de Optimizacion
1.3.2. Algoritmo Genetico
•
Algunas ventajas de los algoritmos geneticos:
•
•
•
Optimizan con parametros continuos o discretos
•
•
Pueden saltar minimos locales
No requieren informacion de derivadas
La busqueda es simultanea en un amplio muestreo de la
superficie del costo.
Nos ofrecen una lista de parametros optimos, no solo
una solucion.
Descargar