Este documento trata sobre la evolución de las especies y las teorías que intentan explicar su origen. Brevemente describe que la teoría más aceptada anteriormente era el creacionismo, pero que luego Charles Darwin propuso la teoría de la evolución por selección natural en 1858. También menciona brevemente otros científicos como Lamarck y Weismann que contribuyeron al desarrollo de la teoría de la evolución.
1. INTRODUCCION
Durante muchos años, la tesis más
aceptadas obre el origen de las especies
fue el creacionismo : Dios creó a todas
las especies del planeta de forma
separada.
Además, según el creacionismo, las especies estaban jerarquizadas por Dios de tal
manera que el hombre ocupaba el rango superior, al lado del creador.
2. COMPUTACION EVOLUTIVA
Está compuesta por modelos de
evolución basados en poblaciones
cuyos elementos representan
soluciones a problemas.
La simulación de este proceso en un ordenador resulta ser una técnica de
optimización probabilística, que con frecuencia mejora a otros métodos
clásicos en problemas difíciles.
4. Georges Louis Leclerc (Conde de Buffon), 1749-1788,
Historia fue tal vez el primero en especular (que las especies
se originaron entre sí, en una abierta oposición al
“creacionismo”.
El naturalista inglés Charles Darwin enunció su teoría
sobre el origen de las especies en 1858, derrumbando el El biólogo francés Jean-BaptisteLamarck enunció
Lamarckismoal indicar que la evolución se origina a una teoría sobre la evolución a principios del siglo
través de cambios aleatorios de características heredi- XIX.
tarias, combinados con un proceso de selección natural
El científico alemán August Weismann formuló en el
siglo XIX una teoría denominada delgermoplasma, El monje austriaco Johann GregorMendelrealizó una
según la cual la información hereditaria se transmite a serie de experi-mentoscon guisantes durante una
través de ciertas células (llamadas germinales), mien- buena parte de su vida, enunciando a partir de ellos
tras que otras células (llamadas somáticas) no pueden las leyes básicas que gobiernan la herencia.
transmitir nada.
James Mark Baldwin propuso en 1896 que si el apren- James Mark Baldwin propuso en 1896 que si el apren-
dizajeayuda a la supervivencia, entonces los orga- dizajeayuda a la supervivencia, entonces los orga-
nismoscon mayor capacidad de aprendizaje tendrán nismoscon mayor capacidad de aprendizaje tendrán
más descendientes, incrementando de esa manera la más descendientes, incrementando de esa manera la
frecuencia de los genes responsables del aprendizaje frecuencia de los genes responsables del aprendizaje
5. Darwin Weismann Mendel
Neo-Darwinismo
El cual establece que toda la vida en el planeta puede ser explicada a través de sólo 4
procesos:
Reproducción Mutación Competencia Selección
6. Dentro de la computación evolutiva tenemos:
ALGORITMOS GENETICOS
(Holland 1975)
ESTRATEGIAS EVOLUTIVAS
(Rechenberg 1962)
PROGRAMACION EVOLUTIVA
(Fogel 1962)
PROGRAMACION GENETICA
(Kosa 1992)
SISTEMAS CLASIFICATORIOS
(Holland 1962)
8. ¿QUE ES UN ALGORITMO?
Un algoritmo es una serie de pasos organizados que describe el
proceso que se debe seguir, para dar solución aun problema
especifico.
¿QUE ES GENETICA?
La genética es el campo de la biología que busca comprender la
herencia biológica que se transmite de generación en generación
9. ¿QUE ES UN ALGORITMO GENETICO?
Denominados originalmente “planes reproductivos”),fueron
desarrollados por John H. Holland a principios de los 1960s.
Son métodos adaptivos que pueden usarcé para resolver
problemas de búsqueda y optimización. Están basados en el
proceso genético de los organismos vivos. Que utilizan operadores
genéticos sobre cromosomas.
Su característica principal es que se basan en técnicas inspiradas
en la evolución biológica.
10. SIMILITUD CON SISTEMAS BILOGICOS
Sistemas Biológicos Algoritmos Genéticos
Los miembros de una Muchas soluciones compiten por
población compiten por resolver el problema y
sobrevivir y reproducirse. reproducirse
Las especies que mejor se
Las soluciones que mejor
adapten a su ambiente son las resuelven el problema son las que
que tienen más posibilidades tienen más posibilidades de
de reproducirse reproducirse.
Los hijos son un híbrido de sus
A partir de 2 soluciones se
padres. obtienen otras mediante el
operador crossover.
11. GENES
En un AG los genes son evaluados según una llamada
Fitness Function y los mejores son los que pasaran ala
próxima iteración.
REPRESENTACION DE LOS GENES EN UN AG
•En la naturaleza: •En un algoritmo genético (ejemplos):
Un valor numérico (178) expresado en binario
Una secuencia de nucleótidos
1 0 1 1 0 0 1 0
A C C T G C A G G
12. HERENCIA
Es la transmisión del material genético contenido en núcleo celular
En los seres humanos el 50% del material genético proviene de la
madre y el otro 50 del padre; pero el individuo resultante es
distinto a los dos progenitores. Algo análogo se hace con
algoritmos genéticos.
13. MUTACION
En Biología En un AG
Es una alteración o cambio en la 1. Se decide con alguna
información genética(genotipo) de probabilidad si se aplica la
un ser vivo y que, por lo tanto, va a mutación o no.
producir un cambio de
2. De aplicarse se selecciona con
características, que se presenta
alguna probabilidad el bit (o
subita y expontaneamente, y que se
item del arreglo) a mutar.
puede transmitir o heredar ala
descendencia 3. De no ser un bit (que sería
negado) se elije con alguna
probabilidad en que muta.
1 0 1 1 0 0 1 0
1 0 1 1 1 0 1 0
14. CROMOSOMAS
En Biología En un AG
Es un sistema de los parámetros Suponga que el problema es
que definen una solución encontrar el valor del número
propuesta al problema que el entero de x entre 0 y 255
algoritmo genético está intentando
solucionar
El cromosoma se representa a
menudo como simple secuencia,
aunque una variedad amplia de
otra estructuras de datos también Secuencias binarias de 8 dígitos
se utilizan.
Si un cromosoma dado en la
población representa el valor 155,
su cromosoma sería 10011011.
15. CRUCES
El Algoritmo Genético Canónico descrito anteriormente utiliza el cruce basado en un
punto, en el cual los dos individuos seleccionados para jugar el papel de padres, son
recombinados por medio de la selección de un punto de corte, para posteriormente
intercambiar las secciones que se encuentran a la derecha de dicho punto.
En el operador de cruce basado en dos puntos, los cromosomas (individuos) pueden
contemplarse como un circuito en el cual se efectúa la selección aleatoria de dos puntos,
tal y como se indica en la Figura .
16. CRUCES
1. Se decide con alguna probabilidad si se aplica la cruza o no.
2. De aplicarse se selecciona con alguna probabilidad la posición del arreglo donde se
aplica.
Gen A 1 0 1 1 0 0 1 0
Gen B 0 0 1 1 1 0 0 1
1 0 1 1 1 0 0 1
0 0 1 1 0 0 1 0
17. MUTACION
La mutación se considera un operador básico, que proporciona un pequeño elemento
de aleatoriedad en la vecindad (entorno) de los individuos de la población. Si bien se
admite que el operador de cruce es el responsable de efectuar la búsqueda a lo largo del
espacio de posibles soluciones, también parece desprenderse de los experimentos
efectuados por varios investigadores que el operador de mutación va ganando en
importancia a medida que la población de individuos va convergiendo (Davis).
19. EL ALGORITMO BASICO ES EL SIGUIENTE
GENERAR UNA POBLACION (ALEATORIA) DE
UNA POBLACION
CALCULAR APTITUD DE CADA INDIVIDUO
SELECCIONAR (PROBALISTICAMENTE) CON
BASE EN APTITUD
APLICAR OPERADORES GENETICOS (CRUCE Y
MUTACION) PARA GENERAR LA SIGUIENTE
POBLACION
CICLAR HASTA QUE CIERTA CONDICION SE
SATISFAGA
20.
21. CUANDO USAR LOS A.G
Si la función a optimizar tiene muchos máximos/mínimos locales se
requerirán más iteraciones del algoritmo para "asegurar" el
máximo/mínimo global.Si la función a optimizar contiene varios puntos
muy cercanos en valor al óptimo, solamente podemos "asegurar" que
encontraremos uno de ellos (no necesariamente el óptimo).
COMO SABER SI ES POSIBLE USAR UN A.G
Su espacio de búsqueda (i.e., sus posibles soluciones) debe estar
delimitado dentro de un cierto rango. Debe poderse definir una función
de aptitud que nos indique qué tan buena o mala es una cierta respuesta.
Las soluciones deben codificarse de una forma que resulte relativamente
fácil de implementar en la computadora.
22. VENTAJAS
Son intrínsecamente paralelos.
Pueden evaluar implícitamente muchos esquemas a la vez.
Se desenvuelven bien en problemas donde la función de aptitud es discontinua,
ruidosa, cambia con el tiempo, o tiene muchos óptimos locales.
Tienen habilidad para manipular muchos parámetros simultáneamente.
DESVENTAJAS
El lenguaje utilizado para especificar soluciones candidatas debe ser robusto.
El problema de cómo escribir la función de aptitud debe considerarse
cuidadosamente para que se pueda alcanzar una mayor aptitud y
verdaderamente signifique una solución mejor para el problema dado.
El problema de cómo escribir la función de aptitud debe considerarse
cuidadosamente para que se pueda alcanzar una mayor aptitud y
verdaderamente signifique una solución mejor para el problema dado.
La situación de los puntos mejorados ofrecen información engañosa sobre
dónde se encuentra probablemente el óptimo global.
25. Esta técnica esta básicamente enfocada hacia la optimización paramétrica. En esencia son
métodos estocásticos con paso adaptativo, que permiten resolver problemas de
optimización paramétrica.
Las EEs pueden definirse como algoritmos evolutivos enfocados hacia la optimización
paramétrica, teniendo como características principales que utilizan una representación a
través de vectores reales, una selección determinística y operadores genéticos específicos
de cruce y mutación. Además, su objetivo fundamental consiste en encontrar el valor real
de un vector de N dimensiones.
26. EE SIMPLES: (1+1) EE
En este caso, se hace evolucionar un solo individuo usando únicamente a la
mutación como operador genético. Son relativamente sencillas, y se
denominan también EEs de dos miembros. Debido a que evoluciona un solo
individuo a la vez, no son consideradas estrictamente como métodos
evolutivos.
27. EE MÚLTIPLES (λ+μ) EE Ó(λ,μ) EE
Tamaño de la población ( λ)
Tamaño de la descendencia ( μ)
Reemplazo por inclusión ( +)
se juntan los μ descendientes con los λ progenitores en una única
población y en ella se muestrean λ miembros (normalmente los
mejores)
Reemplazo por inserción ( , )
Se muestrean (según un criterio: normalmente los peores) μ miembros
de la población para ser eliminados y sustituidos por sus descendientes
Permiten corregir la convergencia hacia sub-óptimos
33. PROGRAMACION GENETICA
La programación genética provee un mecanismo automático para la creación de
programas de alto nivel (también se conoce como síntesis o inducción de programas).
La idea consiste en evolucionar en forma iterativa una población de programas de
computadora generados aleatoriamente.
Se utiliza un conjunto de terminales para representar las variables independientes del
problema, las funciones sin parámetros y las constantes.
Se maneja un conjunto de funciones primitivas que pueden ser aplicadas sobre los
terminales.
Es una abstracción de la evolución a nivel de las especies.
Enfatiza fuertemente los nexos de comportamiento entre padre e hijos.
Utiliza selección probabilística.
34. Emplea cuatro operadores
Emplea cuatro operadores:
Reproducción:
copia un programa a la nueva población.
Cruzamiento:
crea nuevo(s) programa(s) combinando partes de dos programas.
Mutación:
crea un nuevo programa, modificando una parte de un programa ya
existente.
Operación de cambio de arquitectura:
selecciona una operación de la biblioteca de este tipo de
operaciones y la aplica a un programa.
35. DEFINICIÓN DE UN PROBLEMA EN PG
1.Conjunto de símbolos terminales
Variables independientes.
Funciones con aridad= 0 (sin operandos)
Constantes aleatorias
2.Conjunto de funciones permitidas junto con la aridad de cada función (nºde
operandos)
3.Método para evaluar el desempeño de los programas
4.Valores de los parámetros que controlan el desarrollo del proceso evolutivo
Tamaño de la población
Probabilidades de los operadores genéticos
Técnica de creación de los individuos (programas) de la población inicial
5.Criterio de terminación
38. INTRODUCCION
Neurocomputación:
Modelo computacional.
Basado en redes neuronales.
Gran apogeo en los 80’s y 90’s.
Objetivo de crear sistemas inteligentes:
“tareas inteligentes -> reservadas al
cerebro”
Idea inicial:
“un modelo computacional más cercano
al cerebro”
39. Modelo alternativo de computación en
contraposición con el de Von Neumann:
Masivamente paralelos
Computación y representación
distribuida.
Computación y representación
distribuida.
Generalización.
Adaptabilidad.
Procesamiento de la información
inherente al contexto.
Tolerante a fallos.
Bajo consumo de energía
41. MODELO BIOLOGICO
Neuronas sensitivas:
Reciben las entradas directamente
Neuronas actuadoras:
Materializan la respuesta
Velocidad de procesamiento:
1011 neuronas en el cortex.
103 – 104 conexiones.
Lentitud de las señales electroquímicas
Reconocimiento de una cara en
milisegundos.
Por tanto, es un sistema conexionista.
42. BREVE RESEÑA HISTORICA
(1943) El neurobiólogo McCulloch y el (1982) Hopfield:
estadístico Pitts:
Red más plausible con el modelo
Modelo de neurona artificial biológico
(1986) Rumelhart y McClelland:
(1962) Rosenblatt:
Aprendizaje del perceptrón
Teorema de convergencia del
multicapa
perceptrón.
Original de Werbos (1974): Tesis
Extendió la euforia: “RNA, solución
Doctoral
universal”
(1969) Minsky y Papert:
Limitaciones del perceptrón: problema del
XOR
43. Modelo de McCulloch y Pitts
RNA (sistema computacional):
Conjunto de autómatas celulares
(neuronas).
Flujo de información según una
topología de interconexiones
(sinapsis).
El paralelismo está marcado por la
disponibilidad de las entradas
44. APRENDIZAJE Y RECUPERACION
Sistema neuronal:
Altamente no lineal
Gran robustez
Tolerante a fallos
Adicionalmente:
Aprendizaje: adaptación de sus pesos a cambios
en el entorno.
Manejo de información imprecisa, difusa, con
ruido y basada en probabilidades.
Generalización: respuesta satisfactoria ante
casos desconocidos.
45. El modelo computacional equivalente al
de Von Neumann
Principal inconveniente:
No se conoce algoritmo capaz de entrenar
una RNA arbitraria
Actualmente:
Se conocen tipos particulares de redes con,
al menos, un algoritmo de aprendizaje.
46. Aprendizaje:
Definir una función objetivo explícita o
implícitamente para representar el estado
de la red.
Buscar un óptimo de esta función
modificando los pesos.
Tipos:
Supervisado: maneja (entrada, salida deseada)
Ajuste de pesos para minimizar esta diferencia
Ejemplo: perceptrón multicapa (MLP)
No supervisado:
Evolución del sistema hasta un estado
estable
Ejemplo: mapa autoorganizado (SOM)
47. Principal característica:
Capacidad de GENERALIZACIÓN:
Calidad de la respuesta ante ejemplos
desconocidos: no utilizados en el aprendizaje
Dos modos de funcionamiento:
Aprendizaje y recuperación
Redes heteroasociativas
Aprendizaje conlleva mayor cómputo
Redes autoasocitivas
Recuperación es la fase más costosa
48. APLICACIONES
Reconocimiento de patrones:
Asignar a cada entrada un patrón:
Estáticos
Dinámicos: trata explícitamente el tiempo
Clustering:
Agrupamiento no supervisado de muestras
Extracción de características diferenciadoras entre
muestras
Actúa de forma opaca: espacio de características
50. Optimización
Definir función objetivo
Encontrar óptimo bajo restricciones
Ejemplo: problema del viajante
Memorias asociativas:
Direccionables por contenido
Recuperar la información original a
partir de una parcialmente distorsionada
51. Generación de señales de control
Calcular señales de control para que la
“consigna” siga a la “referencia”.
Especialmente aplicables en sistemas
altamente no lineales y complejos.
Se consigue la respuesta a partir del
aprendizaje con ejemplos.