Algoritmos Que Utilizan Una Población de Soluciones

También podría gustarte

Está en la página 1de 8

Algoritmos que utilizan una poblacin de soluciones

Algoritmos genticos:
Algoritmos del tipo de "algoritmos evolutivos"
Hill-climbing paralelo inspirado en los mecanismos de seleccin natura. Los Algoritmos Evolutivos
(AE) han probado ser herramientas poderosas para solucionar problemas difciles de bsqueda y
optimizacin en casi todos los dominios del conocimiento. Los AE son un campo de investigacin
relacionado con muchas reas, entre ellas estn la biologa, la inteligencia artificial, la optimizacin y
la toma de decisiones. La biologa destaca por ser su fuente de inspiracin. Hoy en da se trabaja en su
hibridacin con mtodos tradicionales y con otros modelos bio-inspirados, en particular con la
computacin neuronal y la computacin borrosa. La ms reciente tendencia en los AE es superar los
problemas de carcter paramtrico para abordar aspectos creativos. Se presenta en este captulo un
panorama de los AE partiendo desde sus orgenes, pasando por su definicin formal y sus formas
cannicas, para terminar en las nuevas perspectivas
Inspiracin biolgica de los AE
Los sistemas vivos se distinguen por su organizacin y por su robustez. De la observacin de los seres
vivos se nota que stos se reproducen, se adaptan, y evolucionan en relacin con el entorno donde se
desarrollan. Se ha advertido tambin, que algunas de las caractersticas que se adquieren en el
transcurso de vida pueden ser heredables por la siguiente generacin de la especie. La teora sinttica
de la evolucin o teora neodarwiniana de la evolucin natural de las especies ha logrado explicar con
gran detalle estos procesos. Los Algoritmos Evolutivos (AE) emulan la teora neo-darwiniana de la
evolucin de las especies.
La teora sinttica de la evolucin se basa en los genes como unidades de transferencia de la herencia.
El material gentico de un individuo se encuentra en su genotipo. El genotipo consiste en un
conjunto de cromosomas, los cuales conforman una organizacin de estructuras jerrquicas de genes.
Los genes son la unidad bioqumica de codificacin de un producto gnico y constituyen la unidad
funcional de la informacin bsica para el desarrollo de un organismo. Los genes pueden
ocasionalmente ser modificados por mutaciones. La compleja informacin contenida en el genotipo
se expresa en la apariencia y funcionalidad de los individuos, es decir, en el fenotipo o caractersticas
visibles de un organismo. En el proceso evolutivo se reconoce la ocurrencia de pequeas variaciones
en los fenotipos, aparentemente aleatorias y sin un propsito claro. Esas variaciones, llamadas
mutaciones, si prueban su eficacia a la luz del entorno actual, prevalecern a travs de la seleccin del
individuo, de otra manera desaparecern. La seleccin de los individuos se motiva en el fenmeno
natural de la necesidad de producir descendencia. Por la severa competencia para alcanzar la
reproduccin, que slo logran los individuos ms aptos, se asume que los descendientes mejorarn a
sus progenitores al heredar sus caractersticas mezcladas. En un medio ambiente con recursos
abundantes, la densidad poblacional de la especie puede crecer exponencialmente. Cuando los
recursos en el entorno se hacen insuficientes para toda la poblacin, slo tendrn mayor posibilidad
de reproducirse, aquellos individuos que tengan una ventaja comparativa en el manejo eficiente de
tales recursos. A estos individuos se les denomina como los ms aptos. La presin selectiva sobre los
individuos de una especie hace que sta mejore continuamente respecto a su medio ambiente.

Por su parte, en los AE se tiene un conjunto de estructuras de informacin que interpreta a los
individuos que conforman el problema a resolver, en analoga a los genotipos. Estos genotipos
artificiales se componen de tantos elementos como variables haya en el problema a resolver, en
semejanza a los cromosomas, y pueden estar codificados como valores reales o en algn otro
lenguaje. Sobre estas estructuras de informacin se aplican las dependencias y restricciones que
existan en el problema real, y estn sujetas a las condiciones que impone el espacio de trabajo de ste.
Un fenotipo corresponde a la valoracin actual de un genotipo. El AE comienza con una valoracin
aleatoria del conjunto de estructuras de informacin. Sobre los individuos se aplican operadores
genticos, y aquellos que satisfagan la condicin de aptitud establecida por el usuario se seleccionan
para la siguiente generacin. En cada generacin, la poblacin de estructuras de informacin, como
resultado del previo proceso evolutivo, comienza con una nueva valoracin. Por su mejor adaptacin,
reflejada en un valor de aptitud, algunos individuos pueden prolongar su existencia durante varias
generaciones. El proceso se repite un cierto nmero de pasos generacionales o hasta cumplir una
condicin dada. La solucin al problema se establece como el individuo de mejor aptitud en la ltima
generacin, o durante todo el proceso evolutivo. En contraste con la evolucin natural, que parece
tener como nico fin la preservacin de la vida misma sin diferenciaciones, lo que se ha denominado
como evolucin de ciclo abierto, la evolucin artificial en los AE se dirige a un propsito especfico.
Sin embargo, aunque se trata de seres virtuales actuando en un entorno conocido, debe mantenerse
presente que la evolucin de la poblacin y la respuesta final en los AE, tambin son una
caracterstica emergente.
La evolucin biolgica natural, es decir, sin intervencin humana, es un sistema dinmico y complejo,
donde simultneamente pueden estar modificndose el medio ambiente, los planes de adaptacin y
las medidas de ajuste. Esto significa que las estructuras bajo adaptacin deben estar en capacidad de
manejar enormes cantidades de informacin, presentada en diversas formas, junto con elevados
grados de incertidumbre y ambigedad. Como no se tiene claridad sobre los objetivos a corto plazo de
la evolucin natural, sta se puede asociar de forma ligera a la lgica del azar con la produccin
indiscriminada de elementos. Algo muy lejano de lo que se observa en la naturaleza donde la formula
para el proceso evolutivo parece ser la de caos y orden trabajando en armona. No hay ninguna
contradiccin, porque del azar puede emerger cualquier cosa, incluso la posibilidad de suprimirse a s
mismo en el interior de algn dominio, al provocar la organizacin. Con el proceso de evolucin
aparecer con el tiempo un nuevo mundo de objetos organizados, en los cuales ya no existir el
azar, sino que en su interior estarn sometidos a un cierto orden, a una cierta lgica. Puede decirse
que el nacimiento de un ser se da con el brote de comportamientos reconocibles, sostenidos, durante
varias generaciones. Comportamientos que facultan a los objetos a funcionar de forma relativamente
autnoma de los acontecimientos que suceden en su medio exterior
No obstante, en los AE el proceso evolutivo que en ellos se encuentra, se acerca ms a la evolucin
forzada que ha ejercido el ser humano sobre otras especies naturales. Casos en los cuales la exigencia
de adaptacin se conoce, las estructuras bajo adaptacin estn claramente delimitadas, y tanto la
medida de aptitud para evaluar los cambios estructurales, as como las operaciones que se aplican
para realizar las modificaciones estn preestablecidas. En estos casos, se puede manejar interna o
externamente el reconocimiento del estado del sistema, la memoria, el mtodo de asignacin del
resultado final y los parmetros que controlan el proceso. En la Tabla 1 se presenta una comparacin
entre los aspectos comunes y las diferencias entre la computacin evolutiva y la evolucin biolgica

Familia Algoritmos:
Algoritmos que estn inspirados en biologa como:
Particle Swarm Optimization, Se trata de un algoritmo de optimizacin inspirado en las
bandadas de pjaros o bancos de peces. Dado un espacio de soluciones, se intenta mejorar una
solucin candidata con respecto a un criterio de calidad o fitness. La idea es moverse por el
espacio de bsqueda en base a una idea de velocidad que engloba la inercia o movimiento de
la partcula en el pasado, los resultados de la propia partcula y los resultados de sus vecinos.
El objetivo es encontrar una mejor solucin, que en ningn caso puede asegurar sea la ptima.
Aplicacin:
Supongamos que existe una poblacin de humanos en la cual todos toman diferentes caminos
caminos aleatorios, todos con el mismo objetivo. Si alguien se da cuenta que esta cerca del objetivo
manda una seal o en su defecto un aviso a los dems, los cuales tratan de aproximarse con una
velocidad mayor hacia el aviso. Conforme la tipologa avanza, ciertas personas se acercaran al
objetivo ms rpidamente, por lo cual todos estos humanos llegan hacia el objetivo final.
Se toma en cuenta lo siguiente:

Ant Colony Optimization Se trata de un algoritmo probabilstico inspirado en las colonias


de hormigas., ademas de algoritmos inspirados en el comportamiento de abejas, lucirnagas,
cucos, monos, el sistema inmunitario. Trata de solucionar problemas de bsqueda de
trayectorias ptimas o cuasi-ptimas en grafos, como puede ser el problema del viajante. Se
basa en la mecnica de las hormigas de depositar feromonas en las trayectorias utilizadas y
que derivan en una fuente de alimento. Las mejores trayectorias atraern un mayor nmero
de hormigas que a su vez reforzarn depositando una nueva cantidad de feromona, dando as
lugar a una retroalimentacin positiva. En cambio, las trayectorias sub-ptimas sufrirn la
evaporacin de la feromona al obtener un menor nmero de hormigas que las transiten,
evitando as converger en ptimos locales

Aplicaciones
Problema de programacin
Problema de empleo-shop programacin (JSP)
Problema Abra-shop programacin (OSP)
Problema Permutacin tienda de flujo (PPIP)
Ruteo de vehculos [ editar ]
Ruteo de vehculos capacitados (CVRP)
Multi-almacn de ruteo de vehculos (MDVRP)
Ruteo de vehculos Periodo (PVRP)
Tambin existen algoritmos inspirados en fenmenos fsicos como:

Intelligent Water Drops (IWD) inspirado en los ros naturales y cmo encontrar caminos
casi ptimas a su destino. Estas rutas ptimas o cerca del ptimo seguiendo las acciones y
reacciones que se producen entre las gotas de agua y las gotas de agua con sus cauces. En el
algoritmo de IWD, varias gotas de agua artificiales cooperan para cambiar su entorno de tal
manera que la ruta ptima se revela como el que tiene el ms bajo del suelo en sus enlaces.
Por lo tanto, el algoritmo de IWD es generalmente constructivo basado en la poblacin
algoritmo de optimizacin

Aplicaciones
Algunas de las investigaciones realizadas con los algoritmos basados en IWD para diferentes
aplicaciones se dan a continuacin:
Multidimensional problema de la mochila (MKP)
Aire Robot Ruta Planificacin
Ruteo de vehculos
MANET enrutamiento algoritmo
El problema del viajante de comercio(TSP)

River Formation Dynamics, (RFD) se basa en cmo el agua forma ros al erosionar el suelo
y depositar sedimentos. Ambiente plana local es proporcionado en el comenzando. Las gotas
se mueven en diferentes caminos. una gota selecciona diferentes caminos dependiendo de
cierta probabilidad criterios. Despus de gotas transformar el paisaje mediante el aumento o
disminuyendo la altura de los lugares, las soluciones se dan en la forma de caminos de
altitudes decrecientes. Decreciente gradientes se construyen, y estos gradientes son seguidas
por gotas posteriores para componer nuevos gradientes y reforzar las mejores. El esquema
bsico del algoritmo RFD es el siguiente:
1. gotas Inicializar
2. Los nodos Inicializar
3. mientras (No todas las gotas siguen mismo camino y no otro se cumple la condicin de
terminacin)
a. gotas Move
b. Erode caminos
c. sedimentos de depsitos
d. analizar caminos

e. extremo mientras

Gravitational Search Algorithm, que usa la interaccin de la fuerza de gravedad entre


partculas, el algoritmo de bsqueda gravitacional (GSA) en base a la ley de la gravedad y la
nocin de las interacciones de comunicacin. El algoritmo GSA utiliza la teora de la fsica
newtoniana y sus
agentes buscadores son la coleccin de masas. En GSA, no es un sistema
aislado de masas. Usa la fuerza gravitatoria, cada masa en el sistema puede ver la situacin de
las otras masas. La fuerza gravitatoria es por lo tanto una manera de transferir informacin
entre diferentes masas (Rashedi, Nezamabadi vertido y Saryazdi 2009).22 En GSA, los agentes
se consideran como objetos y su desempeo se mide por sus masas. Todos estos objetos se
atraen entre s por una fuerza de la gravedad, y esta fuerza causa un movimiento de todos los
objetos globalmente hacia los objetos con masas ms pesadas. Las masas pesadas
corresponden a buenas soluciones del problema. La posicin del agente corresponde a una
solucin del problema, y su masa se determina utilizando una funcin de aptitud. Al paso del
tiempo, las masas se sienten atrados por la mayor masa.

La aplicacin de todos estos algoritmos se ha ido extendiendo ms all de los problemas de


inteligencia artificial y se aplican a cualquier problema que involucre la optimizacin de una funcin
y que no se pueda resolver por mtodos clsicos. De hecho, todos estos algoritmos se incluyen en un
rea de computacin conocida como metaheursticas.

Algoritmo de Temple simulado (simulated annealing)


Hill-climbing estocstico inspirado en el proceso de enfriamiento de metales

Es un algoritmo de Hill-Climbing estocstico


Elegimos un sucesor de entre todos los posibles segn una distribucin de probabilidad.
La probabilidad de elegir a un sucesor es una funcin creciente del valor de la funcin
heurstica.
El sucesor puede ser peor.
Se hacen pasos aleatorios por el espacio de soluciones.
Inspirado en el proceso fsico de enfriamiento controlado (cristalizacin, templado de metales):
Se calienta un metal a alta temperatura y se enfra progresivamente de manera controlada.
Si el enfriamiento es adecuado se obtiene la estructura de menor energa (mnimo global).

Propsito: evitar el problema de los mximos (o mnimos) locales de la ascensin de colinas.

Solucin: ocasionalmente, dar un paso en una direccin diferente de la donde la tasa de cambio es
mxima.

Metodologa
Debemos identificar los elementos del problema con los del problema fsico

Temperatura: parmetro de control principal


Energa: funcin heurstica sobre la calidad de la solucin f(n)
Funcin que determina la eleccin de un estado sucesor: F(f ,T), depende de la
temperatura y la diferencia entre la calidad de los nodos
A menor temperatura menor probabilidad de elegir sucesores peores
Estrategia de enfriamiento: parmetros que determinan:
El nmero de iteraciones de la bsqueda
La disminucin de la temperatura
El nmero de pasos para cada temperatura

Algoritmo bsico

Aplicacin

Adaptable a problemas de optimizacin combinatoria (configuracin ptima de elementos) y


continua (punto ptimo en un espacio N-dimensional)
Indicado para problemas grandes en los que el ptimo esta rodeado de muchos ptimos
locales Indicado para problemas en los que encontrar una heurstica discriminante es difcil
una eleccin aleatoria es tan buena como otra cualquiera)
Aplicaciones: problema del viajante de comercio o travelling salesman problem (TSP), Diseo
de circuitos VLSI
Problemas: Determinar los valores de los parmetros requiere experimentacin

Ejemplo de aplicacin: El problema del viajante de comercio


En el Problema del Agente Viajero (o TSP por Travelling Salesman Problem) se dispone de un solo
vehculo que debe visitar a todos los clientes en una sola ruta y a costo mnimo. No suele haber un
depsito (y si lo hubiera no se distingue de los clientes), no hay demanda asociada a los clientes y
tampoco hay restricciones temporales.
El problema del viajante de comercio o agente viajero, en ingls Traveling Salesman Problem (TSP), es
uno de los problemas de optimizacin combinatorial NP-duros ms ampliamente estudiado. Su
declaracin es engaosamente simple: un viajante busca el camino ms corto para pasar por m
ciudades. En otras palabras, una persona debe visitar un conjunto de m ciudades, comenzando en una
ciudad determinada y finalizando en la misma ciudad; luego de haber visitado todas ellas slo una
vez. Esto significa que nunca regresa a una ciudad ya visitada, excepto la primera. Este problema
puede ser representado por un grafo, cuyos nodos representan cada ciudad y los arcos la distancia
entre un par de ellas; formando, de esta manera, un ciclo hamiltoniano.
El objetivo es encontrar la secuencia de visitas ptima; la cual puede ser evaluada segn distintos
criterios, como por ejemplo: la minimizacin del costo o del tiempo, la maximizacin de la velocidad.
El TSP puede ser simtrico o asimtrico. En el primer caso, dado un conjunto de m nodos y distancias
para cada par de nodos, la distancia desde el nodo i al nodo j es la misma que la distancia desde el
nodo j al nodo i. Mientras que en el caso del TSP asimtrico, la distancia desde el nodo i al nodo j es
distinta a la distancia desde el nodo j al nodo i
Formulacin
Un agente viajero, partiendo de su ciudad de origen, debe visitar cada ciudad de un conjunto de ellas.
Un recorrido con estas caractersticas, es llamado dentro de este contexto un tour. El problema
consiste en encontrar el tour para el cual la distancia total recorrida sea mnima. Se asume que se
conoce, para cada par de ciudades, la distancia entre ellas. El problema en si es fcil de formular. Sin
embargo es sumamente difcil de resolver (por resolver, nos referimos a encontrar la solucin optima
al problema y probar desde luego que esta es efectivamente la mejor solucin posible). Esto no
implica que el problema no pueda resolverse, sino que cada algoritmo existente para la solucin del
problema tiene un tiempo de ejecucin que crece explosivamente (exponencialmente) con el tamao
del problema.

Existen varias formulaciones matemticas del problema. La presentada a continuacin usa


relativamente pocas variables, y define las variables cero-uno de la siguiente manera:

Para todo i y j. El objetivo es minimizar.

Las restricciones (1), (2) y (3) aseguran que cada xij sea cero o uno. La restriccin (1) garantiza un
arribo a cada ciudad, mientras que la (2) requiere que un tour incluya una salida desde cada ciudad.
Aplicaciones
Robtica
Una aplicacin del Problema del Vendedor Viajero tiene que ver con la resolucin de problemas de
fabricacin de mquinas que realizan trabajos repetitivos y de alta precisin. Por ejemplo, minimizar
la cantidad de desplazamientos que la mquina debe realizar para perforar una plancha o en una
tarjeta de circuito integrado. Cada desplazamiento posee un costo, por lo que se busca que la mquina
realice el menor nmero de desplazamientos posibles
reas de logstica de Transporte
Una de las aplicaciones del Problema del Vendedor Viajero es en logstica de transporte. En diversos
tipos de situaciones interesa saber la ruta mnima .
Por ejemplo un sistema de despacho, donde la planificacin de la ruta de los vehculos de la empresa
busca minimizar el consumo de combustible y que el tiempo de reparto de sus productos se produzca
lo antes posible.

También podría gustarte