SlideShare una empresa de Scribd logo
1 de 10
ALGORITMOS GENÉTICOS



Los algoritmos genéticos nacieron con el planteamiento de crear un
algoritmo con la misma filosofía que emplea la naturaleza en la
selección natural. La idea básica es la siguiente: generemos un conjunto
con algunas de las posibles soluciones. Cada una va a ser
llamada individuo, y a dicho conjunto se le denominará población.
Cada individuo tiene una información asociada a él. A dicha
información se la va a denominar código genético. En un problema de
optimización corresponde a las variables libres, es decir, aquellas a las
que el algoritmo tiene que asignar un valor para que una función sea
mínima o máxima para esos valores. Esta función se denominará función
de adaptación y determina el grado de adaptación de un individuo.
Los algoritmos genéticos son métodos estocásticos de búsqueda ciega
de soluciones quasióptimas.
CLASES DE ALGORITMOS GENÉTICOS
         ALGORITMOS GENÉTICOS GENERACIONALES



Se asemejan a la forma de reproducción de los insectos, donde una
generación pone huevos, se aleja geográficamente o muere y es
substituida por una nueva. En este momento se realizan cruces en una
piscina de individuos, los descendientes son puestos en otra, al final de
la fase reproductiva se elimina la generación anterior y se pasa a utilizar
la nueva. Este modelo también es conocido como Algoritmo Genético
Canónico.

Algoritmos Genéticos de estado Fijo.
Utilizan el esquema generacional de los mamíferos y otros animales de
vida larga, donde coexisten padres y sus descendientes, permitiendo
que los hijos sean educados por sus progenitores, pero también que a la
larga se genere competencia entre ellos. En este modelo, no solo se
deben seleccionar los dos individuos a ser padres, si no también cuales
de la población anterior serán eliminados, para dar espacio a los
descendientes..
Algoritmos Genéticos Paralelos.
donde al evolucionar se recorren simultáneamente muchas
soluciones, cada una representada por un individuo de la
población. Sin embargo, es muy común en la naturaleza que no
solo sea una población evolucionando, si no varias poblaciones.

Modelos de Islas.
Si se tiene una población de individuos, esta se divide en
subpoblaciones que evolucionan independientemente como un
Algoritmo Genético normal.

Modelo Celular
Coloca cada individuo en una matriz, donde cada uno sólo podrá
buscar reproducirse con los individuos que tenga a su alrededor
(mas cerca de casa) escogiendo al azar o al mejor adaptado.
ELEMENTOS DE UN ALGORITMO GENETICO


Individuo
Un individuo es un ser que caracteriza su propia especie. El individuo es un
cromosoma y es el codigo de información sobre el cual opera el algoritmo. Cada
solución parcial del problema a optimizar está codificada en forma de cadena o String
en un alfabeto determinado, que puede ser binario.

Población
A un conjunto de individuos (Cromosomas) se le denomina población. El método de
A.G´s consiste en ir obteniendo de forma sucesiva distintas poblaciones. Por otra
parte un Algoritmo Genético trabaja con un conjunto de puntos representativos de
diferentes zonas del espacio de búsqueda y no con un solo punto (como lo hace
Hillclimbing).

Función Fitness.
La única restricción para usar un algoritmo genético es que exista una función
llamada fitness, que le informe de cuan bueno es un individuo dado en la solución de
un problema. Esta función fitness o de evaluación es el principal enlace entre el
Algoritmo Genético a un problema real, es la efectividad y eficiencia de la función
fitness que se tome, por lo tanto debe procurarse que la función fitness sea similar
ESTRUCTURA DE UN ALGORITMO GENÉTICO
Un AG esta compuesto, para su funcionamiento, básicamente por:

Codificación: los elementos característicos del problema se pueden representar
de tal forma que resulte sencilla su implementación y comprensión.La
codificación más común es a través de cadenas binarias


Población inicial: para constituir la población inicial, que será la
población base de las sucesivas generaciones, existen varios métodos.
Suele ser concebida aleatoriamente.

Función fitness: asigna a cada cromosoma un número real, que refleja el nivel
de adaptación al problema del individuo representado por el cromosoma.

Es la base para determinar qué soluciones tienen mayor o menor
probabilidad de sobrevivir.

Selección: es el proceso por el cual se eligen una o varias parejas de
individuos de la población inicial para que desempeñen el papel de
progenitores

Cruzamiento: el operador cruce permite el intercambio de información entre
individuos de una población.

Mutación: el operador mutación se aplica tras el cruce con el objetivo de
incrementar la diversidad poblacional. Se define como una variación
elemental de las informaciones contenidas en el código genético.
VENTAJAS DE LOS ALGORITMOS GENÉTICOS




                                  VENTAJAS DE LOS ALGORITMOS GENÉTICOS


                                       • Una clara ventaja es que los algoritmos genéticos son intrínsecamente paralelos, es
                                       decir, operan de forma simultánea con varias soluciones, en vez de trabajar de forma
                                       secuencial como las técnicas tradicionales. Esto significa que mientras técnicas
                                       tradicionales sólo pueden explorar el espacio de soluciones hacia una solución en una
                                       dirección al mismo tiempo, y si la solución que descubren resulta subóptima, no se
                                       puede hacer otra cosa que abandonar todo el trabajo hecho y empezar de nuevo.

                                       • Cuando se usan para problemas de optimización resultan menos afectados por los
                                       máximos locales (falsas soluciones) que las técnicas tradicionales.
                                       Muchos algoritmos de búsqueda pueden quedar atrapados en los óptimos locales: si
                                       llegan a lo alto de una colina del paisaje adaptativo, descubrirán que no existen
                                       soluciones mejores en las cercanías y concluirán que han alcanzado la mejor de
                                       todas, aunque existan picos más altos en algún otro lugar del mapa, situación que no
                                       sucede para algoritmos genéticos.
                                       • Otra ventaja es su habilidad para manipular muchos parámetros simultáneamente.
                                       Resulta interesante en caso de tener varios objetivos a resolver.
                                       • No necesitan conocimientos específicos sobre el problema que intentan resolver.
                                       Realizan cambios aleatorios en sus soluciones candidatas y luego utilizan la función
                                       de aptitud para determinar si esos cambios producen una mejora o no.
                                       • Resulta sumamente fácil ejecutarlos en las modernas arquitecturas masivas en
                                       paralelo.
                                       • Usan operadores probabilísticos, en vez de los típicos operadores determinísticos de
                                       las otras técnicas.
ALGUNAS APLICACIONES DE LOS ALGORITMOS GENÉTICOS
. Cabe destacar entre ellos:
Optimización: Se trata de un campo especialmente abonado para el uso de los
Algoritmos Genéticos, por las características intrínsecas de estos problemas.

Programación automática: Los Algoritmos Genéticos se han empleado para
desarrollar programas para tareas específicas, y para diseñar otras estructuras
computacionales.

Aprendizaje máquina: Los algoritmos genéticos se han utilizado también en muchas
de estas aplicaciones, tales como la predicción del tiempo o la estructura de una
proteína.

 El operador de selección
Para aplicar los operadores genéticos tendremos que seleccionar un subconjunto de la
población. Algunas de las técnicas que disponemos son:
Selección directa: toma elementos de acuerdo a un criterio objetivo, como son «los x
mejores», «los x peores»... los del tipo «el cuarto individuo a partir del último
escogido» son empleados con mucha frecuencia cuando se quieren seleccionar dos
individuos distintos, y se selecciona el primero por un método aleatorio o estocástico.
EL OPERADOR DE SELECCIÓN

Para aplicar los operadores genéticos tendremos que seleccionar un subconjunto de la población.
Algunas de las técnicas que disponemos son:
Selección directa: toma elementos de acuerdo a un criterio objetivo, como son «los x mejores»,
«los x peores»... los del tipo «el cuarto individuo a partir del último escogido» son empleados con
mucha frecuencia cuando se quieren seleccionar dos individuos distintos.
Selección aleatoria: puede ser realizado por selección equiprobable o selección estocástica.

Selección equiprobable: todos tienen la misma probabilidad de ser escogidos. Por ejemplo, en
nuestro algoritmo la madre en el cruce es escogida con probabilidad equiprobable.

Selección estocástica: la probabilidad de que un individuo sea escogido depende de una
heurística. Los distintos procedimientos estocásticos son:

Selección por sorteo: cada individuo de la población tiene asignado un rango proporcional -o
inversamente proporcional

Selección por escaños: se divide el rango del número aleatorio en un número predeterminado de
escaños

Selección por restos estocásticos: igual que el método de selección de escaños, sólo que los
escaños no asignados directamente

Por ruleta: definimos un rango con las características de la selección por sorteo. El número al azar
será un número aleatorio forzosamente menor que el tamaño del rango

Por torneo: escoge un subconjunto de individuos de acuerdo con una de las técnicas anteriores -
habitualmente, aleatoria o estocástica
EL OPERADOR DE CRUCE

Se denomina operador de cruce a la forma de calcular el genoma del
nuevo individuo en función del genoma del padre y de la madre.

Cruce básico: se selecciona un punto al azar de la cadena. La parte
anterior del punto es copiada del genoma del padre y la posterior del de
la madre.

ruce multipunto: igual que el cruce básico, sólo que estableciendo más
de un punto de cruce.

Cruce segmentado: existe una probabilidad de que un cromosoma sea
punto de un cruce.

Cruce uniforme: para cada gen de la cadena del descendiente existe
una probabilidad de que el gen pertenezca al padre, y otra de que
pertenezca a la madre.
El operador de mutación
Se define mutación como una variación de las informaciones contenidas en el
código genético -habitualmente, un cambio de un gen a otro producido por algún
factor exterior al algoritmo genético.

Algunas de las razones que pueden motivar a incorporar son:

Desbloqueo del algoritmo. Si el algoritmo se bloqueó en un mínimo parcial, una
mutación puede sacarlo al incorporar nuevos fenotipos de otras zonas del espacio.


Incrementar el número de saltos evolutivos. Los saltos evolutivos -aparición de un
fenotipo especialmente valioso, o, dicho de otra forma, salida de un mínimo local

Enriquecer la diversidad genética. Es un caso más suave que el de una población
degenerada -por ejemplo, que la población tenga una diversidad genética

Existen varias técnicas distintas de mutación. Algunas de éstas son:

Mutación de bit: existe una única probabilidad de que se produzca una mutación de
algún bit. De producirse, el algoritmo toma aleatoriamente un bit

Mutación de gen: igual que la mutación de bit, solamente que, en vez de cambiar un
bit, cambia un gen completo

Mutación multigen: igual que la mutación de multibit, solamente que, en vez de
cambiar un conjunto de bits

Más contenido relacionado

La actualidad más candente (7)

Algoritmos Evolutivos
Algoritmos EvolutivosAlgoritmos Evolutivos
Algoritmos Evolutivos
 
Algoritmos Evolutivos
Algoritmos EvolutivosAlgoritmos Evolutivos
Algoritmos Evolutivos
 
Algoritmos Evolutivos
Algoritmos EvolutivosAlgoritmos Evolutivos
Algoritmos Evolutivos
 
Inteligencia artificial (1)
Inteligencia artificial (1)Inteligencia artificial (1)
Inteligencia artificial (1)
 
Lagrange y kunh tucker
Lagrange y kunh tuckerLagrange y kunh tucker
Lagrange y kunh tucker
 
Todo sobre inteligencia artificial métodos de búsqueda ia
Todo sobre inteligencia artificial  métodos de búsqueda iaTodo sobre inteligencia artificial  métodos de búsqueda ia
Todo sobre inteligencia artificial métodos de búsqueda ia
 
Algoritmo Genetico
Algoritmo GeneticoAlgoritmo Genetico
Algoritmo Genetico
 

Similar a Trabajo algoritmo genetico uba

Utp i_ay_se_s10_algoritmo genéticos_
 Utp i_ay_se_s10_algoritmo genéticos_ Utp i_ay_se_s10_algoritmo genéticos_
Utp i_ay_se_s10_algoritmo genéticos_
jcbenitezp
 
Inteligencia Artificial Clase 5
Inteligencia Artificial Clase 5Inteligencia Artificial Clase 5
Inteligencia Artificial Clase 5
UNEFA
 
Algoritmos Genticos Optimizacin Presentacin
Algoritmos Genticos Optimizacin PresentacinAlgoritmos Genticos Optimizacin Presentacin
Algoritmos Genticos Optimizacin Presentacin
Hamilton
 
Algoritmos Genticos Optimizacin Presentacin
Algoritmos Genticos Optimizacin PresentacinAlgoritmos Genticos Optimizacin Presentacin
Algoritmos Genticos Optimizacin Presentacin
guest2f5cf8
 
Trabajo+completo+de+inteligencia+algoritmo+genetico
Trabajo+completo+de+inteligencia+algoritmo+geneticoTrabajo+completo+de+inteligencia+algoritmo+genetico
Trabajo+completo+de+inteligencia+algoritmo+genetico
Rufino meri?
 

Similar a Trabajo algoritmo genetico uba (20)

ALGORITMO GENETICO - II.pptx
ALGORITMO GENETICO - II.pptxALGORITMO GENETICO - II.pptx
ALGORITMO GENETICO - II.pptx
 
Algoritmos genéticos 2 s lun 30 sep-13
Algoritmos genéticos 2 s lun 30 sep-13Algoritmos genéticos 2 s lun 30 sep-13
Algoritmos genéticos 2 s lun 30 sep-13
 
Algoritmo Genético
Algoritmo GenéticoAlgoritmo Genético
Algoritmo Genético
 
Algoritmo Genético
Algoritmo GenéticoAlgoritmo Genético
Algoritmo Genético
 
Utp i_ay_se_s10_algoritmo genéticos_
 Utp i_ay_se_s10_algoritmo genéticos_ Utp i_ay_se_s10_algoritmo genéticos_
Utp i_ay_se_s10_algoritmo genéticos_
 
Algoritmos Genéticos (1).pptx
Algoritmos Genéticos (1).pptxAlgoritmos Genéticos (1).pptx
Algoritmos Genéticos (1).pptx
 
Algoritmos evolutivos
Algoritmos evolutivosAlgoritmos evolutivos
Algoritmos evolutivos
 
Analisis y diseño de algoritmo
Analisis y diseño de algoritmoAnalisis y diseño de algoritmo
Analisis y diseño de algoritmo
 
Alejandra Quintana
Alejandra Quintana Alejandra Quintana
Alejandra Quintana
 
Algoritmos Genéticos
Algoritmos GenéticosAlgoritmos Genéticos
Algoritmos Genéticos
 
Inteligencia Artificial Clase 5
Inteligencia Artificial Clase 5Inteligencia Artificial Clase 5
Inteligencia Artificial Clase 5
 
Algoritmos genéticos
Algoritmos genéticosAlgoritmos genéticos
Algoritmos genéticos
 
Algoritmo genetico
Algoritmo geneticoAlgoritmo genetico
Algoritmo genetico
 
Algoritmos Genticos Optimizacin Presentacin
Algoritmos Genticos Optimizacin PresentacinAlgoritmos Genticos Optimizacin Presentacin
Algoritmos Genticos Optimizacin Presentacin
 
Algoritmos Genticos Optimizacin Presentacin
Algoritmos Genticos Optimizacin PresentacinAlgoritmos Genticos Optimizacin Presentacin
Algoritmos Genticos Optimizacin Presentacin
 
Algoritmos geneticos
Algoritmos geneticosAlgoritmos geneticos
Algoritmos geneticos
 
Agente inteligente
Agente inteligenteAgente inteligente
Agente inteligente
 
Xpin algoritmos genéticos
Xpin   algoritmos genéticosXpin   algoritmos genéticos
Xpin algoritmos genéticos
 
Trabajo+completo+de+inteligencia+algoritmo+genetico
Trabajo+completo+de+inteligencia+algoritmo+geneticoTrabajo+completo+de+inteligencia+algoritmo+genetico
Trabajo+completo+de+inteligencia+algoritmo+genetico
 
Anatomía de un algoritmo genético en jenes
Anatomía de un algoritmo genético en jenesAnatomía de un algoritmo genético en jenes
Anatomía de un algoritmo genético en jenes
 

Último

COMPENDIO ECE 5 GRADO MATEMÁTICAS DE PRIMARIA
COMPENDIO ECE 5 GRADO MATEMÁTICAS DE PRIMARIACOMPENDIO ECE 5 GRADO MATEMÁTICAS DE PRIMARIA
COMPENDIO ECE 5 GRADO MATEMÁTICAS DE PRIMARIA
Wilian24
 
Apunte clase teorica propiedades de la Madera.pdf
Apunte clase teorica propiedades de la Madera.pdfApunte clase teorica propiedades de la Madera.pdf
Apunte clase teorica propiedades de la Madera.pdf
Gonella
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
amelia poma
 

Último (20)

activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdf
 
COMPENDIO ECE 5 GRADO MATEMÁTICAS DE PRIMARIA
COMPENDIO ECE 5 GRADO MATEMÁTICAS DE PRIMARIACOMPENDIO ECE 5 GRADO MATEMÁTICAS DE PRIMARIA
COMPENDIO ECE 5 GRADO MATEMÁTICAS DE PRIMARIA
 
La Evaluacion Formativa SM6 Ccesa007.pdf
La Evaluacion Formativa SM6  Ccesa007.pdfLa Evaluacion Formativa SM6  Ccesa007.pdf
La Evaluacion Formativa SM6 Ccesa007.pdf
 
Apunte clase teorica propiedades de la Madera.pdf
Apunte clase teorica propiedades de la Madera.pdfApunte clase teorica propiedades de la Madera.pdf
Apunte clase teorica propiedades de la Madera.pdf
 
Actividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docxActividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docx
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración Ambiental
 
REGLAMENTO FINAL DE EVALUACIÓN 2024 pdf.pdf
REGLAMENTO  FINAL DE EVALUACIÓN 2024 pdf.pdfREGLAMENTO  FINAL DE EVALUACIÓN 2024 pdf.pdf
REGLAMENTO FINAL DE EVALUACIÓN 2024 pdf.pdf
 
Planeacion para 1er Grado - (2023-2024)-1.docx
Planeacion para 1er Grado - (2023-2024)-1.docxPlaneacion para 1er Grado - (2023-2024)-1.docx
Planeacion para 1er Grado - (2023-2024)-1.docx
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
 
POEMAS ILUSTRADOS DE LUÍSA VILLALTA. Elaborados polos alumnos de 4º PDC do IE...
POEMAS ILUSTRADOS DE LUÍSA VILLALTA. Elaborados polos alumnos de 4º PDC do IE...POEMAS ILUSTRADOS DE LUÍSA VILLALTA. Elaborados polos alumnos de 4º PDC do IE...
POEMAS ILUSTRADOS DE LUÍSA VILLALTA. Elaborados polos alumnos de 4º PDC do IE...
 
EFEMERIDES DEL MES DE MAYO PERIODICO MURAL.pdf
EFEMERIDES DEL MES DE MAYO PERIODICO MURAL.pdfEFEMERIDES DEL MES DE MAYO PERIODICO MURAL.pdf
EFEMERIDES DEL MES DE MAYO PERIODICO MURAL.pdf
 
Diapositivas unidad de trabajo 7 sobre Coloración temporal y semipermanente
Diapositivas unidad de trabajo 7 sobre Coloración temporal y semipermanenteDiapositivas unidad de trabajo 7 sobre Coloración temporal y semipermanente
Diapositivas unidad de trabajo 7 sobre Coloración temporal y semipermanente
 
Sesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdfSesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdf
 
Programa dia de las madres para la convi
Programa dia de las madres para la conviPrograma dia de las madres para la convi
Programa dia de las madres para la convi
 
Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024
 
10-08 Avances tecnológicos del siglo XXI.pdf
10-08 Avances tecnológicos del siglo XXI.pdf10-08 Avances tecnológicos del siglo XXI.pdf
10-08 Avances tecnológicos del siglo XXI.pdf
 
12 - Planetas Extrasolares - Seminario de las Aulas de la Experiencia UPV/EHU
12 - Planetas Extrasolares - Seminario de las Aulas de la Experiencia UPV/EHU12 - Planetas Extrasolares - Seminario de las Aulas de la Experiencia UPV/EHU
12 - Planetas Extrasolares - Seminario de las Aulas de la Experiencia UPV/EHU
 
ACERTIJO EL NÚMERO PI COLOREA EMBLEMA OLÍMPICO DE PARÍS. Por JAVIER SOLIS NOYOLA
ACERTIJO EL NÚMERO PI COLOREA EMBLEMA OLÍMPICO DE PARÍS. Por JAVIER SOLIS NOYOLAACERTIJO EL NÚMERO PI COLOREA EMBLEMA OLÍMPICO DE PARÍS. Por JAVIER SOLIS NOYOLA
ACERTIJO EL NÚMERO PI COLOREA EMBLEMA OLÍMPICO DE PARÍS. Por JAVIER SOLIS NOYOLA
 
AEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptxAEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptx
 
FICHA CUENTO BUSCANDO UNA MAMÁ 2024 MAESTRA JANET.pdf
FICHA CUENTO BUSCANDO UNA MAMÁ  2024 MAESTRA JANET.pdfFICHA CUENTO BUSCANDO UNA MAMÁ  2024 MAESTRA JANET.pdf
FICHA CUENTO BUSCANDO UNA MAMÁ 2024 MAESTRA JANET.pdf
 

Trabajo algoritmo genetico uba

  • 1. ALGORITMOS GENÉTICOS Los algoritmos genéticos nacieron con el planteamiento de crear un algoritmo con la misma filosofía que emplea la naturaleza en la selección natural. La idea básica es la siguiente: generemos un conjunto con algunas de las posibles soluciones. Cada una va a ser llamada individuo, y a dicho conjunto se le denominará población. Cada individuo tiene una información asociada a él. A dicha información se la va a denominar código genético. En un problema de optimización corresponde a las variables libres, es decir, aquellas a las que el algoritmo tiene que asignar un valor para que una función sea mínima o máxima para esos valores. Esta función se denominará función de adaptación y determina el grado de adaptación de un individuo. Los algoritmos genéticos son métodos estocásticos de búsqueda ciega de soluciones quasióptimas.
  • 2. CLASES DE ALGORITMOS GENÉTICOS ALGORITMOS GENÉTICOS GENERACIONALES Se asemejan a la forma de reproducción de los insectos, donde una generación pone huevos, se aleja geográficamente o muere y es substituida por una nueva. En este momento se realizan cruces en una piscina de individuos, los descendientes son puestos en otra, al final de la fase reproductiva se elimina la generación anterior y se pasa a utilizar la nueva. Este modelo también es conocido como Algoritmo Genético Canónico. Algoritmos Genéticos de estado Fijo. Utilizan el esquema generacional de los mamíferos y otros animales de vida larga, donde coexisten padres y sus descendientes, permitiendo que los hijos sean educados por sus progenitores, pero también que a la larga se genere competencia entre ellos. En este modelo, no solo se deben seleccionar los dos individuos a ser padres, si no también cuales de la población anterior serán eliminados, para dar espacio a los descendientes..
  • 3. Algoritmos Genéticos Paralelos. donde al evolucionar se recorren simultáneamente muchas soluciones, cada una representada por un individuo de la población. Sin embargo, es muy común en la naturaleza que no solo sea una población evolucionando, si no varias poblaciones. Modelos de Islas. Si se tiene una población de individuos, esta se divide en subpoblaciones que evolucionan independientemente como un Algoritmo Genético normal. Modelo Celular Coloca cada individuo en una matriz, donde cada uno sólo podrá buscar reproducirse con los individuos que tenga a su alrededor (mas cerca de casa) escogiendo al azar o al mejor adaptado.
  • 4. ELEMENTOS DE UN ALGORITMO GENETICO Individuo Un individuo es un ser que caracteriza su propia especie. El individuo es un cromosoma y es el codigo de información sobre el cual opera el algoritmo. Cada solución parcial del problema a optimizar está codificada en forma de cadena o String en un alfabeto determinado, que puede ser binario. Población A un conjunto de individuos (Cromosomas) se le denomina población. El método de A.G´s consiste en ir obteniendo de forma sucesiva distintas poblaciones. Por otra parte un Algoritmo Genético trabaja con un conjunto de puntos representativos de diferentes zonas del espacio de búsqueda y no con un solo punto (como lo hace Hillclimbing). Función Fitness. La única restricción para usar un algoritmo genético es que exista una función llamada fitness, que le informe de cuan bueno es un individuo dado en la solución de un problema. Esta función fitness o de evaluación es el principal enlace entre el Algoritmo Genético a un problema real, es la efectividad y eficiencia de la función fitness que se tome, por lo tanto debe procurarse que la función fitness sea similar
  • 5. ESTRUCTURA DE UN ALGORITMO GENÉTICO Un AG esta compuesto, para su funcionamiento, básicamente por: Codificación: los elementos característicos del problema se pueden representar de tal forma que resulte sencilla su implementación y comprensión.La codificación más común es a través de cadenas binarias Población inicial: para constituir la población inicial, que será la población base de las sucesivas generaciones, existen varios métodos. Suele ser concebida aleatoriamente. Función fitness: asigna a cada cromosoma un número real, que refleja el nivel de adaptación al problema del individuo representado por el cromosoma. Es la base para determinar qué soluciones tienen mayor o menor probabilidad de sobrevivir. Selección: es el proceso por el cual se eligen una o varias parejas de individuos de la población inicial para que desempeñen el papel de progenitores Cruzamiento: el operador cruce permite el intercambio de información entre individuos de una población. Mutación: el operador mutación se aplica tras el cruce con el objetivo de incrementar la diversidad poblacional. Se define como una variación elemental de las informaciones contenidas en el código genético.
  • 6. VENTAJAS DE LOS ALGORITMOS GENÉTICOS VENTAJAS DE LOS ALGORITMOS GENÉTICOS • Una clara ventaja es que los algoritmos genéticos son intrínsecamente paralelos, es decir, operan de forma simultánea con varias soluciones, en vez de trabajar de forma secuencial como las técnicas tradicionales. Esto significa que mientras técnicas tradicionales sólo pueden explorar el espacio de soluciones hacia una solución en una dirección al mismo tiempo, y si la solución que descubren resulta subóptima, no se puede hacer otra cosa que abandonar todo el trabajo hecho y empezar de nuevo. • Cuando se usan para problemas de optimización resultan menos afectados por los máximos locales (falsas soluciones) que las técnicas tradicionales. Muchos algoritmos de búsqueda pueden quedar atrapados en los óptimos locales: si llegan a lo alto de una colina del paisaje adaptativo, descubrirán que no existen soluciones mejores en las cercanías y concluirán que han alcanzado la mejor de todas, aunque existan picos más altos en algún otro lugar del mapa, situación que no sucede para algoritmos genéticos. • Otra ventaja es su habilidad para manipular muchos parámetros simultáneamente. Resulta interesante en caso de tener varios objetivos a resolver. • No necesitan conocimientos específicos sobre el problema que intentan resolver. Realizan cambios aleatorios en sus soluciones candidatas y luego utilizan la función de aptitud para determinar si esos cambios producen una mejora o no. • Resulta sumamente fácil ejecutarlos en las modernas arquitecturas masivas en paralelo. • Usan operadores probabilísticos, en vez de los típicos operadores determinísticos de las otras técnicas.
  • 7. ALGUNAS APLICACIONES DE LOS ALGORITMOS GENÉTICOS . Cabe destacar entre ellos: Optimización: Se trata de un campo especialmente abonado para el uso de los Algoritmos Genéticos, por las características intrínsecas de estos problemas. Programación automática: Los Algoritmos Genéticos se han empleado para desarrollar programas para tareas específicas, y para diseñar otras estructuras computacionales. Aprendizaje máquina: Los algoritmos genéticos se han utilizado también en muchas de estas aplicaciones, tales como la predicción del tiempo o la estructura de una proteína. El operador de selección Para aplicar los operadores genéticos tendremos que seleccionar un subconjunto de la población. Algunas de las técnicas que disponemos son: Selección directa: toma elementos de acuerdo a un criterio objetivo, como son «los x mejores», «los x peores»... los del tipo «el cuarto individuo a partir del último escogido» son empleados con mucha frecuencia cuando se quieren seleccionar dos individuos distintos, y se selecciona el primero por un método aleatorio o estocástico.
  • 8. EL OPERADOR DE SELECCIÓN Para aplicar los operadores genéticos tendremos que seleccionar un subconjunto de la población. Algunas de las técnicas que disponemos son: Selección directa: toma elementos de acuerdo a un criterio objetivo, como son «los x mejores», «los x peores»... los del tipo «el cuarto individuo a partir del último escogido» son empleados con mucha frecuencia cuando se quieren seleccionar dos individuos distintos. Selección aleatoria: puede ser realizado por selección equiprobable o selección estocástica. Selección equiprobable: todos tienen la misma probabilidad de ser escogidos. Por ejemplo, en nuestro algoritmo la madre en el cruce es escogida con probabilidad equiprobable. Selección estocástica: la probabilidad de que un individuo sea escogido depende de una heurística. Los distintos procedimientos estocásticos son: Selección por sorteo: cada individuo de la población tiene asignado un rango proporcional -o inversamente proporcional Selección por escaños: se divide el rango del número aleatorio en un número predeterminado de escaños Selección por restos estocásticos: igual que el método de selección de escaños, sólo que los escaños no asignados directamente Por ruleta: definimos un rango con las características de la selección por sorteo. El número al azar será un número aleatorio forzosamente menor que el tamaño del rango Por torneo: escoge un subconjunto de individuos de acuerdo con una de las técnicas anteriores - habitualmente, aleatoria o estocástica
  • 9. EL OPERADOR DE CRUCE Se denomina operador de cruce a la forma de calcular el genoma del nuevo individuo en función del genoma del padre y de la madre. Cruce básico: se selecciona un punto al azar de la cadena. La parte anterior del punto es copiada del genoma del padre y la posterior del de la madre. ruce multipunto: igual que el cruce básico, sólo que estableciendo más de un punto de cruce. Cruce segmentado: existe una probabilidad de que un cromosoma sea punto de un cruce. Cruce uniforme: para cada gen de la cadena del descendiente existe una probabilidad de que el gen pertenezca al padre, y otra de que pertenezca a la madre.
  • 10. El operador de mutación Se define mutación como una variación de las informaciones contenidas en el código genético -habitualmente, un cambio de un gen a otro producido por algún factor exterior al algoritmo genético. Algunas de las razones que pueden motivar a incorporar son: Desbloqueo del algoritmo. Si el algoritmo se bloqueó en un mínimo parcial, una mutación puede sacarlo al incorporar nuevos fenotipos de otras zonas del espacio. Incrementar el número de saltos evolutivos. Los saltos evolutivos -aparición de un fenotipo especialmente valioso, o, dicho de otra forma, salida de un mínimo local Enriquecer la diversidad genética. Es un caso más suave que el de una población degenerada -por ejemplo, que la población tenga una diversidad genética Existen varias técnicas distintas de mutación. Algunas de éstas son: Mutación de bit: existe una única probabilidad de que se produzca una mutación de algún bit. De producirse, el algoritmo toma aleatoriamente un bit Mutación de gen: igual que la mutación de bit, solamente que, en vez de cambiar un bit, cambia un gen completo Mutación multigen: igual que la mutación de multibit, solamente que, en vez de cambiar un conjunto de bits