1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez...

20
1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad de Málaga ESPAÑA 10/25 de Septiembre. Corrientes. Argentina. 2001

Transcript of 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez...

Page 1: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

1

BIOINFORMÁTICA

TEMA 1

INTRODUCCIÓN

 Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López

Dpto. Lenguajes y Ciencias de la Computación

Universidad de Málaga

ESPAÑA

10/25 de Septiembre. Corrientes. Argentina. 2001

Page 2: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

2

BIOINFORMÁTICA

1.1 INTRODUCCIÓN.

1.2 EVOLUCIÓN NATURAL.

1.3 ALGORITMOS GENÉTICOS.

1.4 PROGRAMACIÓN EVOLUTIVA .

Page 3: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

3

1.1. INTRODUCCIÓN

Bioinformática: Es un área de especialización que estudia modelos y técnicas que, basándose en los patrones biológicos y aprovechado las metodologías informáticas, tratan de dar solución a diferentes tipos de problemas.

•Algoritmos que Conforman la Bioinformática: Programación Evolutiva, Redes Neuronales, Simulated Annealing.

Una de las aplicaciones más importantes de la informática basada en modelos biológicos, es la Programación Evolutiva, que usa los principios de la evolución como reglas para diseñar sistemas que resuelven problemas.

Evolución Natural: Supervivencia del mejor adaptado y herencia.

Page 4: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

4

1.2. EVOLUCIÓN NATURAL

Para que en la naturaleza se de un proceso evolutivo se deben cumplir las siguientes condiciones:

• Un individuo tiene la habilidad de reproducirse.

• Hay una población con la capacidad de reproducirse.

• Hay alguna variedad o diferencia entre los individuos que se reproducen.

• Algunas diferencias que los distingue están asociadas a la habilidad de sobrevivir.

Esta variedad o diferencia se manifiesta como variación en los cromosomas.

Page 5: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

5

1.2. EVOLUCIÓN NATURAL

Los mecanismos que conducen a la evolución no son totalmente conocidos pero si algunas de sus características:

• La evolución es un proceso que actúa sobre los cromosomas.

• La selección natural es un enlace entre los cromosomas y la actuación de las estructuras decodificadas.

• El proceso de reproducción es el punto en el que la evolución toma parte.En la recombinación se pueden crear distintos cromosomas hijos a raíz del material genético de los padres.

• La mutación puede hacer que los cromosomas de los hijos biológicos sea distintos de la los padres biológicos.

• La evolución biológica no tiene memoria.

Page 6: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

6

Los individuos que mejor se adaptan a su entorno son los que más sobreviven y más se reproducen. Este concepto de supervivencia de los más capacitados y de selección natural son descritos por charles Darwin en su trabajo On the origin of species by means of natural selection (John murray 1959).

Los mecanismos que conducen la evolución no son totalmente conocidos, pero si algunas de sus características:

• La evolución es un proceso que opera sobre los cromosomas más que sobre las estructuras de la vida que codifican.

• La selección natural es el enlace entre los cromosomas y la actuación de sus estructuras decodificadas.

1.2. EVOLUCIÓN NATURAL

Page 7: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

7

• El proceso de reproducción es el punto en el cual la evolución toma parte, actúa. El proceso de recombinación puede crear diferentes cromosomas en los hijos por combinación del material de los cromosomas de los padres.

• La mutación puede hacer que los cromosomas de los hijos biológicos sean diferentes de los de sus padres biológicos.

• La evolución biológica no tiene memoria.

1.2. EVOLUCIÓN NATURAL

Page 8: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

8

En los años 70 algunos investigadores incorporaron estas características a los algoritmos. Así comenzaron los trabajos sobre algoritmos que manipulaban cadenas de dígitos binarios llamadas cromosomas.

En la naturaleza, los cromosomas son cadenas de caracteres sobre un alfabeto de 4 caracteres: Las cuatro bases nucleónicas que aparecen a lo largo del ADN molecular son: adenina (A), citosina (C), guanina (G) y timina (T).

J. Oían fue pionero en la aplicación de los principios de la evolución natural como reglas para el diseño de sistemas artificiales para la resolución de problemas.En su libro Adaptación in Natural and Artificial Systems 1975, proporciona un marco general en el que se muestra cómo aplicar los procesos evolutivos a los sistemas artificiales diseñados a partir de los sistemas naturales.

1.2. EVOLUCIÓN NATURAL

Page 9: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

9

Cualquier problema de adaptación puede ser formulado en términos genéticos. Una vez formulados en estos términos, tales problemas pueden ser resueltos por lo que hoy se conoce como algoritmos genéticos. Los algoritmos genéticos simulan el proceso evolutivo Darwiniano y naturalmente utilizan operadores genéticos sobre los cromosomas.

1.2. EVOLUCIÓN NATURAL

Page 10: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

10

Desarrollados por J.Holland (Adaptación in Natural and Artificial Systems 1975), son procedimientos adaptativos que encuentran soluciones en espacios complejos inspirados en la evolución biológica.

• Utilizan patrones de operación basados en el principio de la evolución de Darwin y en la selección natural.

Existen problemas donde no existen algoritmos eficientes que los resuelva. Sería deseable disponer de métodos de resolución que proporcionen buenas soluciones. En espacios pequeños de soluciones factibles pueden resultar útiles los métodos exhaustivos de búsqueda clásicos, sin embargo, cuando los espacios de búsqueda son muy grandes se suelen utilizar otros métodos como son los algoritmos genéticos, los cuales son algoritmos de búsqueda que permiten obtener buenas soluciones para muchos de estos problemas.

1.3. ALGORITMOS Genéticos (AG)

Page 11: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

11

Un AG:•Empieza con una población inicial de candidatos (aleatorio) y evoluciona a una solución optimal en forma de selección.

•En cada evolución las soluciones mas buenas son las que se reproducen y las malas se mueren para ser reemplazadas por otras con las características de buenas soluciones. Para distinguir unas de otras se usa una función solución u objetivo.

Terminología usada en los AG está directamente importada de la genética y de la teoría de la evolución de las especies.

•Genotipo:En biología: el total de genes que contiene un organismo heredado de sus progenitores.En informática: son estructuras.

•Cromosomas:En biología:es la estructura correspondiente para el

empaquetamiento de un conjunto de genes.En informática:son las cadenas o strings.

1.3. ALGORITMOS Genéticos (AG)

Page 12: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

12

•Genes:En biología:son segmentos de ADN con la información

necesaria para la síntesis de una proteína.En informática:son caracteres o rasgos que están localizados

en ciertas posiciones del cromosoma.

•Loci:En biología:lugar que ocupa un gen en un cromosoma.En informática:posición del string.

•Hálelos:En biología:son los distintos genes resultantes de la mutación

de un gen.En informática:valores del rasgo.

•Fenotipo:En biología:es la manifestación externa del genotipo son los

caracteres observables.En informática:es la estructura decodificada.

1.3. ALGORITMOS Genéticos (AG)

Page 13: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

13

1.3.1 Fundamentos básicos de los AG: Reproducción, Cruce y Mutación.

La población inicial cambia siguiendo los pasos:1.- Evaluación de los individuos de una población.2.- Reproducción:selección de un nuevo conjunto de individuos

según unos criterios de conveniencia o adaptación.3.- Recombinación:para formar una nueva población a partir de

los operadores de cruce y mutación.

La población resultante de la ejecución de estos tres pasos es la siguiente población este proceso se repite hasta que la población cese de mejorar.

Normalmente los individuos son representados con una cadena binaria de longitud fija que codifica los valores de las variables que intervienen en el problema. Con lo cual las operaciones sobre ellas pueden manipularse para generar cadenas de bits que están bien adaptadas al problema a resolver.

1.3. ALGORITMOS Genéticos (AG)

Page 14: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

14

Procedimiento Algoritmo GenéticoComienzo(1)t=0inicializar P(t)evaluar P(t)Mientras (No se de la condición de parada) Hacer

Comienzo (2)t=t+1seleccionar P(t) desde P(t-1)recombinar P(t)evaluar P(t)

Final (2)Final (1)

1.3. ALGORITMOS Genéticos (AG)

Esquema General de un Algoritmo Genético.

Page 15: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

15

1.3. ALGORITMOS Genéticos (AG)

Page 16: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

16

Asociado a los operadores de cruce y mutación existe la probabilidad de cruce, Pc y Pm .

Generalmente se acepta que un algoritmo genético debe tener los siguientes 5 componentes:

1) Una representación genética.

2) Una población inicial de soluciones.

3) Una función de evaluación.

4) Operadores genéticos

5) Valores para los parámetros Pc, Pm.

1.3. ALGORITMOS Genéticos (AG)

Page 17: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

17

Es una técnica cuyo resultado al resolver un problema son los PROGRAMAS DE EVOLUCION (PE), y estos son una clase de algoritmos basados en el principio de evolución natural.

Los PE están basados en la idea de los AG;la diferencia es que los AG solo usan cadenas de bits como estructuras de datos y los PE pueden usar otras que no sean cadenas y sus operaciones correspondientes.

Para un mismo problema se pueden definir muchos PE y todos pueden diferir en:

• Las estructuras de datos utilizadas para implementar a los individuos.

• Los operadores genéticos usados para transformar los individuos.• Los métodos para crear la población inicial.• Los métodos para manejar restricciones del problema.• Los parámetros .

1.4. PROGAMACION EVOLUTIVA

Page 18: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

18

1.4. PROGAMACION EVOLUTIVA

Una expresión para los PE es la siguiente: PE=AG+ Estructuras de Datos. Para construir un PE se necesitan estructuras de datos adecuadas que representen los individuos de la población junto con algoritmos que corresponden a operadores genéticos que transformen uno o más individuos de la población.

PROBLEMA

PROBLEMA MODIFICADO

ALGORITMO GENETICO

ALGORITMO GENETICO

ALGORITMO GENETICO

PROGRAMA DE EVOLUCION

PROGRAMA DE EVOLUCION

PROBLEMA

Page 19: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

19

1.4.1 Algoritmos Genéticos que se consideran PE.

Este tipo de AG (modificados) son denominados Programas de evaluación, Programación Genética, Programación Evolutiva o Computación Evolutiva.

•1.-Algoritmos Genéticos Híbridos ,parten de:La incorporación de conocimiento especifico de un problema.La representación especifica del problema.El diseño de operadores genéticos adaptados a la

representación.La utilización de otras heurísticas como operadores genéticos.

•2.-Algoritmos Genéticos con parámetros reales.•3.-Algoritmos Genéticos Paralelos Híbridos.

1.4. PROGAMACION EVOLUTIVA

Page 20: 1 BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN Prof. Dr. José Ignacio Peláez Sánchez y Diego Vázquez López Dpto. Lenguajes y Ciencias de la Computación Universidad.

20

1.4.2 ¿Cual es la fuerza y la debilidad de la Programación Evolutiva?

Su mayor fuerza reside en su aplicabilidad.

Actúan de forma similar o paralela a la naturaleza.

En general,las estrategias de resolución de problemas de Inteligencia Artificial se clasifican en :

•Métodos Fuertes: hacen suposiciones fuertes sobre el dominio del problema pero pierde aplicabilidad.

•Métodos Débiles: hacen pocas suposiciones sobre el dominio del problema pero tiene una gran aplicabilidad.

Los PE están situados en algún lugar entre ambos métodos.

1.4. PROGAMACION EVOLUTIVA