Escolar Documentos
Profissional Documentos
Cultura Documentos
Un algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, para dar solucin a
un problema especco. En los aos 1970, de la mano de
John Henry Holland, surgi una de las lneas ms prometedoras de la inteligencia articial, la de los algoritmos genticos.[1][2] Son llamados as porque se inspiran
en la evolucin biolgica y su base gentico-molecular.
Estos algoritmos hacen evolucionar una poblacin de individuos sometindola a acciones aleatorias semejantes
a las que actan en la evolucin biolgica (mutaciones
y recombinaciones genticas), as como tambin a una
seleccin de acuerdo con algn criterio, en funcin del
cual se decide cules son los individuos ms adaptados, que sobreviven, y cules los menos aptos, que son
descartados. Los algoritmos genticos se enmarcan dentro de los algoritmos evolutivos, que incluyen tambin
las estrategias evolutivas, la programacin evolutiva y la
programacin gentica.
3 Funcionamiento de un algoritmo
gentico bsico
Un algoritmo gentico puede presentar diversas variaciones, dependiendo de cmo se aplican los operadores genticos (cruzamiento, mutacin), de cmo se realiza la
seleccin y de cmo se decide el reemplazo de los individuos para formar la nueva poblacin. En general, el
pseudocdigo consiste de los siguientes pasos:
Funcionamiento
i
Inicializacin: Se genera aleatoriamente la poblacin inicial, que est constituida por un conjunto de
cromosomas los cuales representan las posibles soluciones del problema. En caso de no hacerlo aleatoriamente, es importante garantizar que dentro de la
poblacin inicial, se tenga la diversidad estructural
de estas soluciones para tener una representacin de
la mayor parte de la poblacin posible o al menos
evitar la convergencia prematura.
Evaluacin: A cada uno de los cromosomas de esta poblacin se aplicar la funcin de aptitud para
4 APLICACIONES
saber cmo de buena es la solucin que se est
codicando.
Condicin de trmino El AG se deber detener
cuando se alcance la solucin ptima, pero esta generalmente se desconoce, por lo que se deben utilizar otros criterios de detencin. Normalmente se
usan dos criterios: correr el AG un nmero mximo
de iteraciones (generaciones) o detenerlo cuando no
haya cambios en la poblacin. Mientras no se cumpla la condicin de trmino se hace lo siguiente:
Seleccin Despus de saber la aptitud de cada cromosoma se procede a elegir los cromosomas que sern cruzados en la siguiente generacin. Los cromosomas con mejor aptitud
tienen mayor probabilidad de ser seleccionados.
Recombinacin o Cruzamiento La recombinacin es el principal operador gentico, representa la reproduccin sexual, opera sobre
dos cromosomas a la vez para generar dos descendientes donde se combinan las caractersticas de ambos cromosomas padres.
Mutacin modica al azar parte del cromosoma de los individuos, y permite alcanzar zonas
del espacio de bsqueda que no estaban cubiertas por los individuos de la poblacin actual.
Aplicaciones
Diseo automatizado, incluyendo investigacin en
diseo de materiales y diseo multiobjetivo de componentes automovilsticos: mejor comportamiento
ante choques, ahorros de peso, mejora de aerodinmica, etc.
Diseo automatizado de equipamiento industrial.
Diseo automatizado de sistemas de comercio en el
sector nanciero.
Construccin de rboles logenticos.
Optimizacin de Layout.
Prediccin de estructura de ARN.
En bioinformtica, Alineamiento mltiple de secuencias.
Aplicaciones en planicacin de procesos industriales, incluyendo planicacin job-shop.
Seleccin ptima de modelos matemticos para la
descripcin de sistemas biolgicos.
Manejo de residuos slidos.
Ingeniera de software.
Construccin de horarios en grandes universidades,
evitando conictos de clases.
Problema del viajante.
Desventajas y Limitaciones
Mnimo/mximo local
Inteligencia Articial
Robtica Evolutiva
Emergencia
Autmata celular
7 Referencias
[1] J. H. Holland. University of Michigan Press, Ann Arbor.
1975. Adaptation in Natural and Articial Systems.
[2] D. E. Goldberg. Addison-Wesley Longman Publishing
Co., Inc., Boston, MA, USA. 1989. Genetic Algorithms in
Search, Optimization and Machine Learning.
8 Enlaces externos
(enlace roto) En esta Web se exponen varios algoritmos genticos junto a sus cdigos de programacin
y como se pueden usar para encontrar el punto ptimo de un proceso.
Aplicacin de los algoritmos genticos a la optimizacin de laminados de material compuesto
Juego de estrategia masivo multijugador en lnea basado en evolucionar y enfrentar especmenes mediante Algoritmos Genticos
(en ingls) A Practical Genetic Algorithm Tutorial
Programming step by step a Genetic Algorithm.
(en ingls) Introduction to Genetic Algorithms with
interactive Java applets
Tutorial de algoritmos genticos
El diseo, la creacin de la funcin de aptitud (tness), la seleccin de los criterios de mutacin entre
otros, necesitan de cierta pericia y conocimiento del
problema para obtener buenos resultados.
Vase tambin
Redes neuronales
Lgica difusa
Red bayesiana
8
Trabajo de Tesis de grado
Implementacin del problema de las 8 reinas en JAVA
ENLACES EXTERNOS
9.1
Texto
Algoritmo gentico Fuente: https://es.wikipedia.org/wiki/Algoritmo_gen%C3%A9tico?oldid=94686499 Colaboradores: Kyokpae~eswiki, Moriel, Riviera, Dodo, Triku, Ascnder, Sms, Jjmerelo, Tano4595, Enric Naval, Cinabrium, Chewie, Benjavalero, Renabot,
Rutrus, AlfonsoERomero, Rembiapo pohyiete (bot), Caiser, NekroByte, Orgullobot~eswiki, RobotQuistnix, Alhen, Superzerocool,
Caiserbot, Palmerabollo, YurikBot, KnightRider, Focojoaco, Chlewbot, BOTpolicia, Qwertyytrewqqwerty, CEM-bot, Jorgelrm,
Gonmator, Thijs!bot, Botones, Miguelangelwww~eswiki, PabloGN, JAnDbot, TXiKiBoT, Rei-bot, Plux, AlnoktaBOT, VolkovBot,
Snakeyes, Technopat, Miguepietro, Matdrodes, Muro Bot, Davidmosen, SieBot, Carrero, Mikirb, Loveless, Macarrones, Cobalttempest,
Manw, Greek, Tirithel, Javierito92, Kikobot, DragonBot, Brayan Jaimes, Farisori, Quijav, Botelln, Frei sein, Aipni-Lovrij, AVBOT,
A ver, Louperibot, MastiBot, HanPritcher, Ezarate, Sephirotmundi, Diegusjaimes, Jorge.maturana, Luckas-bot, MystBot, Nallimbot,
ArthurBot, Jkbw, Tipomuyduro, Javilondo5, TobeBot, RedBot, Dinamik-bot, Stiwi grin, Lexinerus, MerlIwBot, Invadibot, Acratta,
Elvisor, Raiuc3m12, Addbot, Jamez42, Japrera, Karl Schneider, BenjaBot, JesusArcas, Equipo22-UOC y Annimos: 110
9.2
Imgenes
Archivo:Evolutionary_algorithm.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/5/58/Evolutionary_algorithm.svg Licencia: CC-BY-SA-3.0 Colaboradores: Trabajo propio Artista original: Johann "nojhan" Dro
9.3