guias de practica de bioinformatica i unidad 1

13
GUIAS DE PRACTICA DE BIOINFORMATICA

Upload: thalia-mejia-pichen

Post on 30-Dec-2014

13 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Guias de Practica de BIOINFORMATICA I Unidad 1

GUIAS DE PRACTICA DE BIOINFORMATICA

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

PRACTICA 01

1 Realizar un Algoritmo Geneacutetico para una pareja de padres que tengan 5 cromosomas

cada uno

Ingrese el coacutedigo de la madre 24

Su Cromosoma es 11000

Ingrese el coacutedigo del padre 19

Su Cromosoma es 10011

Realizar el cruce de un punto el nuacutemero de posicioacuten del punto del cruce es 2

[1] [2] [3] [4]

Obtener los Hijos realizando el respectivo cruce

Hijo 01 11011

Hijo 02 10000

2 Realizar un Algoritmo Geneacutetico para una pareja de individuos X que tengan 5

cromosomas y hallar

A) ingresar el padre y la madre elegidos

Padre 13

Madre 24

B) Representar sus cromosomas

Padre 01101

Madre 11000

C) Realizar el cruce de un punto ingresando el lugar de la posicioacuten del cruce (1-3)

Cruce 1 Cruce 2 Cruce 3

Padre 0 1 1 0 1 01000 01100 01100

Madre 1 1 0 0 0 11101 11001 11001

D) Realizar la mutacioacuten cambio de un bit ingresando la posicioacuten del bit a mutar(solo del

padre) ingrese posicioacuten del bit a mutar 4

Padre 0 1 1 0 1

Padre Mutado 0 1 1 1 1

2 Ing Lizbeth Dora Briones Pereyra

1 2

1 2 3 4 5

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

E) Realizar el cruce con el nuevo padre mutado y la madre

Padre 01111

Madre 11000

Ingresar la cantidad de puntos a cruzar y sus posiciones Ejemplo 2 puntos

Primer punto (posicioacuten 2) y segundo punto (posicioacuten 4)

Padre 0 1 1 1 1

Madre 1 1 0 0 0

Hijos del primer punto

Hijo 01 0 1 000

Hijo 02 1 1 111

Padre 0 1 1 1 1

Madre 1 1 0 0 0

Hijos del segundo punto

Hijo 01 0 1 1 1 0

Hijo 02 1 1 0 0 1

3 Para 2 poblaciones de A Y B y X individuos de tal manera que tengan 5 cromosomas

cada uno hallar

A) ingresar el padre y la madre de las 2 poblaciones

Poblacioacuten A Padre A 13 Madre A 24

Poblacioacuten B Padre B 8 Madre B 19

B) Representar sus cromosomas

Padre A 01101 Madre A 11000

Padre B 01000 Madre B 10011

C) Realizar el cruce de un punto con posicioacuten 2 para ambas parejas

3 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Poblacioacuten A Cruce A

Padre A 0 1 1 0 1 01000 hijo1 A

Madre A 1 1 0 0 0 11101 hijo2 A

Poblacioacuten B Cruce B

Padre B 0 1 0 0 0 01011 hijo1 B

Madre B 1 0 0 1 1 10000 hijo2 B

D) Realizar el cruce de 1 punto (posicioacuten2) del hijo 2A con el hijo 1B y hallar la 3era

generacioacuten

11101 hijo2 A

01011 hijo1 B

Hijos de la tercera generacioacuten

11 011

01 01

4 Presentar el avance del problema de la Mochila

PRACTICA 02

PROBLEMA DE LA MOCHILA

Para el problema de la mochila basado en la Optimizacioacuten basada en colonias de hormigas

Crear el programa de la Mochila usando cualquier lenguaje de programacioacuten estructurada (C

C++ C Java etc) veamos el siguiente Algoritmo Propuesto

Capturar Paraacutemetros

Inicializar los rastros de feromonas

Colocar hormigas en posicioacuten inicial

Repetir

Para K desde 1 Hasta el numero de hormigas Hacer

Construir la solucioacuten para la hormiga K

Seleccionar la mejor solucioacuten

Actualizar los rastros de feromonas

Hasta Alcanzar el nuacutemero de ciclos o encontrar la solucioacuten optima

4 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Donde cada paso quiere decir

Inicializacioacuten de la feromona Las hormigas se comunican a traveacutes de la feromona

depositada en los objetos debido a que no se cuenta con ninguna relacioacuten entre ellos

estos son tomados como objetos independientes y cada objeto contiene la concentracioacuten

de la feromona La concentracioacuten de feromona en el Objeto i es denotada por y

inicialmente se coloca un valor pequentildeo a todos los objetos

Colocar hormigas en posicioacuten inicial Se coloca cada una de las hormigas en una posicioacuten

inicial (objeto) manualmente o aleatoreamente

Construccioacuten de la solucioacuten con las hormigas Iterativamente se escoge el siguiente objeto

para ser agregado a la mochila Dentro de un conjunto de candidatos que contiene todos

los objetos que no han sido colocados en la mochila y no sobrepasan el peso restante es

decir la capacidad de la mochila menos el peso de los objetos seleccionados hasta el

momento

Seleccionar la mejor solucioacuten Consiste en seleccionar la solucioacuten que da mayor utilidad

Actualizar los rastros de feromonas Se actualiza las feromonas en cada uno de los objetos

utilizando la Ec (1)

La simbologiacutea utilizada en el algoritmo es Es la solucioacuten la cual contiene el objeto donde

fue colocada inicialmente la hormiga k P es la suma de los pesos de los objetos dentro del

conjunto solucioacuten (S) U es la suma de la utilidad de los objetos dentro del conjunto

solucioacuten (S) Op es el primer objeto dentro de la solucioacuten Candidatos es la lista de los

objetos que pueden ser seleccionados

5 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

CORRIDA DEL PROBLEMA DE LA MOCHILA

Para realizar el disentildeo de experimento se tiene es el numero de hormigas es la

concentracioacuten inicial de la feromona la capacidad de la mochila 1049121 que es el factor de

evaporacioacuten de la feromona Nc el nuacutemero de ciclos que se correraacute el algoritmo ademaacutes de

los mencionados anteriormente Se crearon varios archivos con extensioacutendat los cuales

contienen las instancias con las cuales fue corrido el algoritmo actualmente se cuenta con

10 instancias creadas en este formato las cuales seraacuten utilizadas para generar un disentildeo

de experimento maacutes robusto la informacioacuten de estas instancias se encuentra guardada

como se muestra en la siguiente 2

La solucioacuten para el siguiente problema seriacutea el siguiente

6 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Como se puede ver el formato es sencillo y puede ser modificado faacutecilmente estas

modificaciones serian por ejemplo poner maacutes objetos por lo cual cambiariacuteamos el nuacutemero

de iacutetems cambiar la capacidad de la mochila y finalmente algo que se tendriacutea que hacer es

aumentar o disminuir el nuacutemero de objeto para que la lista sea igual al nuacutemero de iacutetems

puesto anteriormente tambieacuten puede ser modificado el peso y la utilidad de los objetos

anteriores una vez hecho el archivo este puede ser leiacutedo por el sistema sin ninguacuten

problema y no hay que modificar el coacutedigo

Se puede observar que se pueden ingresar maacutes objetos como se muestra en a figura

La solucioacuten para el ingreso de 20 objetos se muestra a continuacioacuten

7 Ing Lizbeth Dora Briones Pereyra

Solucioacuten 8 41

El peso de los objetos es 5

La Utilidad es 11

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

PRACTICA 03

Problema de Poblaciones

Partiendo de una poblacioacuten inicial (soluciones factibles) donde se selecciona individuos

(favorecer a los de mayor calidad) luego Recombinarlos Introducir mutaciones en sus

descendientes y Insertarlos en la siguiente generacioacuten

POBLACION Toda el aula de Bioinformaacutetica SECCION ldquoArdquo

MUESTRA 4 INDIVIDUOS (2 MUJERES Y 2 HOMBRES)

Crear un programa en cualquier lenguaje de programacioacuten estructurada (C C++ C Java

etc)

Codificacioacuten

ndash Utilizar cadenas de bits para representar las soluciones

ndash Los bits pueden codificar nuacutemeros enteros reales conjuntos

ndash Ventaja los operadores de cruce y mutacioacuten son simples

ndash Inconveniente no siempre resulta ldquonaturalrdquo

Seleccioacuten

ndash Asignar una probabilidad de supervivencia proporcional a la calidad

ndash Generar una poblacioacuten intermedia

ndash Elegir parejas de forma aleatoria o de acuerdo a criterios como rendimiento acadeacutemico y

valores en cada individuo

No se pueden cruzar elementos de dos generaciones distintas

Operador de cruce de un punto

Mutacioacuten

ndash Hay una pequentildea probabilidad de cambio de un bit

Ejemplo Suponiendo que de nuestra poblacioacuten se seleccionoacute 4 individuos

Seleccioacuten de la muestra = 4 individuos 1324 8 y 19

8 Ing Lizbeth Dora Briones Pereyra

Solucioacuten 1 4 2 13 10 11 18

El peso de los objetos es 15

La Utilidad es 26

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Hallar

a) La seleccioacuten aleatoria o manual del aula de Bioinformaacutetica (4 individuos)

b) Mostrar los resultados como en la tabla anterior

c) Realizar el cruce y mostrar los hijos de cada pareja

d) Construir el cuadro de la segunda generacioacuten

e) Cruzar los hijos y construir el cuadro de la tercera generacioacuten

f) Dar una conclusioacuten Final

PRACTICA 04

El Problema del Viajante

Para el problema del viajante Crear el programa usando cualquier lenguaje de programacioacuten

estructurada (C C++ C Java etc)

El viajante sale de una ciudad para visitar todas las demaacutes pasando exactamente una vez por

cada una y volver al punto de partida habiendo recorrido la menor distancia posible

El problema se representa como un grafo no dirigido con n nodos

Un ciclo del grafo que pase por todos los nodos exactamente una vez se denomina ciclo

hamiltoniano Por lo tanto para resolver el problema hay que hallar el ciclo hamiltoniano maacutes

corto del grafo

Por ejemplo

En este caso el recorrido oacuteptimo tiene una longitud de 58

Estaacute distancia se logroacute haciendo el recorrido 1236451 Nuestro algoritmo heuriacutestico

comenzaraacute en un nodo arbitrario y ahiacute decidiraacute visitar el nodo maacutes cercano que no haya sido

Visitado Asiacute si comienzo en 1 recorriendo las distancias maacutes cortas seraacute 1-2-3-5-4-6-1

dando un total de 60

Aunque este algoritmo heuriacutestico no es tan oacuteptimo tampoco estaacute mal y puede ser utilizado

PRACTICA 05

9 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Coloreado de un grafo (Tarea para Casa)

1 Colorear cada nodo de manera que no haya dos nodos adyacentes del mismo color

2 Cuaacutel es el nuacutemero miacutenimo de colores La solucioacuten oacuteptima nos dice que el miacutenimo son dos

colores Secuencia 1-2-3-4-5

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 pinta

Pasa al 4 pinta

Pasa al 5 no puede pintar (3 y 4 ya estaacuten pintados)

Selecciona otro nodo y pinta con otro color

Pasa al siguiente etc

Solucioacuten oacuteptima

3) Secuencia 1-5-2-3-4

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 5 pinta

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 no puede pintar (5 ya estaacute pintado)

Pasa al 4 no puede pintar (5 ya estaacute pintado)

Selecciona otro nodo (2) y pinta con otro color

Pasa al 3 y al 4 no puede pintar (2 ya estaacute pintado)

Solucioacuten NO oacuteptima

Pasa al siguiente (3) y selecciona otro color

Pasa al 4 pinta

10 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

11 Ing Lizbeth Dora Briones Pereyra

Page 2: Guias de Practica de BIOINFORMATICA I Unidad 1

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

PRACTICA 01

1 Realizar un Algoritmo Geneacutetico para una pareja de padres que tengan 5 cromosomas

cada uno

Ingrese el coacutedigo de la madre 24

Su Cromosoma es 11000

Ingrese el coacutedigo del padre 19

Su Cromosoma es 10011

Realizar el cruce de un punto el nuacutemero de posicioacuten del punto del cruce es 2

[1] [2] [3] [4]

Obtener los Hijos realizando el respectivo cruce

Hijo 01 11011

Hijo 02 10000

2 Realizar un Algoritmo Geneacutetico para una pareja de individuos X que tengan 5

cromosomas y hallar

A) ingresar el padre y la madre elegidos

Padre 13

Madre 24

B) Representar sus cromosomas

Padre 01101

Madre 11000

C) Realizar el cruce de un punto ingresando el lugar de la posicioacuten del cruce (1-3)

Cruce 1 Cruce 2 Cruce 3

Padre 0 1 1 0 1 01000 01100 01100

Madre 1 1 0 0 0 11101 11001 11001

D) Realizar la mutacioacuten cambio de un bit ingresando la posicioacuten del bit a mutar(solo del

padre) ingrese posicioacuten del bit a mutar 4

Padre 0 1 1 0 1

Padre Mutado 0 1 1 1 1

2 Ing Lizbeth Dora Briones Pereyra

1 2

1 2 3 4 5

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

E) Realizar el cruce con el nuevo padre mutado y la madre

Padre 01111

Madre 11000

Ingresar la cantidad de puntos a cruzar y sus posiciones Ejemplo 2 puntos

Primer punto (posicioacuten 2) y segundo punto (posicioacuten 4)

Padre 0 1 1 1 1

Madre 1 1 0 0 0

Hijos del primer punto

Hijo 01 0 1 000

Hijo 02 1 1 111

Padre 0 1 1 1 1

Madre 1 1 0 0 0

Hijos del segundo punto

Hijo 01 0 1 1 1 0

Hijo 02 1 1 0 0 1

3 Para 2 poblaciones de A Y B y X individuos de tal manera que tengan 5 cromosomas

cada uno hallar

A) ingresar el padre y la madre de las 2 poblaciones

Poblacioacuten A Padre A 13 Madre A 24

Poblacioacuten B Padre B 8 Madre B 19

B) Representar sus cromosomas

Padre A 01101 Madre A 11000

Padre B 01000 Madre B 10011

C) Realizar el cruce de un punto con posicioacuten 2 para ambas parejas

3 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Poblacioacuten A Cruce A

Padre A 0 1 1 0 1 01000 hijo1 A

Madre A 1 1 0 0 0 11101 hijo2 A

Poblacioacuten B Cruce B

Padre B 0 1 0 0 0 01011 hijo1 B

Madre B 1 0 0 1 1 10000 hijo2 B

D) Realizar el cruce de 1 punto (posicioacuten2) del hijo 2A con el hijo 1B y hallar la 3era

generacioacuten

11101 hijo2 A

01011 hijo1 B

Hijos de la tercera generacioacuten

11 011

01 01

4 Presentar el avance del problema de la Mochila

PRACTICA 02

PROBLEMA DE LA MOCHILA

Para el problema de la mochila basado en la Optimizacioacuten basada en colonias de hormigas

Crear el programa de la Mochila usando cualquier lenguaje de programacioacuten estructurada (C

C++ C Java etc) veamos el siguiente Algoritmo Propuesto

Capturar Paraacutemetros

Inicializar los rastros de feromonas

Colocar hormigas en posicioacuten inicial

Repetir

Para K desde 1 Hasta el numero de hormigas Hacer

Construir la solucioacuten para la hormiga K

Seleccionar la mejor solucioacuten

Actualizar los rastros de feromonas

Hasta Alcanzar el nuacutemero de ciclos o encontrar la solucioacuten optima

4 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Donde cada paso quiere decir

Inicializacioacuten de la feromona Las hormigas se comunican a traveacutes de la feromona

depositada en los objetos debido a que no se cuenta con ninguna relacioacuten entre ellos

estos son tomados como objetos independientes y cada objeto contiene la concentracioacuten

de la feromona La concentracioacuten de feromona en el Objeto i es denotada por y

inicialmente se coloca un valor pequentildeo a todos los objetos

Colocar hormigas en posicioacuten inicial Se coloca cada una de las hormigas en una posicioacuten

inicial (objeto) manualmente o aleatoreamente

Construccioacuten de la solucioacuten con las hormigas Iterativamente se escoge el siguiente objeto

para ser agregado a la mochila Dentro de un conjunto de candidatos que contiene todos

los objetos que no han sido colocados en la mochila y no sobrepasan el peso restante es

decir la capacidad de la mochila menos el peso de los objetos seleccionados hasta el

momento

Seleccionar la mejor solucioacuten Consiste en seleccionar la solucioacuten que da mayor utilidad

Actualizar los rastros de feromonas Se actualiza las feromonas en cada uno de los objetos

utilizando la Ec (1)

La simbologiacutea utilizada en el algoritmo es Es la solucioacuten la cual contiene el objeto donde

fue colocada inicialmente la hormiga k P es la suma de los pesos de los objetos dentro del

conjunto solucioacuten (S) U es la suma de la utilidad de los objetos dentro del conjunto

solucioacuten (S) Op es el primer objeto dentro de la solucioacuten Candidatos es la lista de los

objetos que pueden ser seleccionados

5 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

CORRIDA DEL PROBLEMA DE LA MOCHILA

Para realizar el disentildeo de experimento se tiene es el numero de hormigas es la

concentracioacuten inicial de la feromona la capacidad de la mochila 1049121 que es el factor de

evaporacioacuten de la feromona Nc el nuacutemero de ciclos que se correraacute el algoritmo ademaacutes de

los mencionados anteriormente Se crearon varios archivos con extensioacutendat los cuales

contienen las instancias con las cuales fue corrido el algoritmo actualmente se cuenta con

10 instancias creadas en este formato las cuales seraacuten utilizadas para generar un disentildeo

de experimento maacutes robusto la informacioacuten de estas instancias se encuentra guardada

como se muestra en la siguiente 2

La solucioacuten para el siguiente problema seriacutea el siguiente

6 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Como se puede ver el formato es sencillo y puede ser modificado faacutecilmente estas

modificaciones serian por ejemplo poner maacutes objetos por lo cual cambiariacuteamos el nuacutemero

de iacutetems cambiar la capacidad de la mochila y finalmente algo que se tendriacutea que hacer es

aumentar o disminuir el nuacutemero de objeto para que la lista sea igual al nuacutemero de iacutetems

puesto anteriormente tambieacuten puede ser modificado el peso y la utilidad de los objetos

anteriores una vez hecho el archivo este puede ser leiacutedo por el sistema sin ninguacuten

problema y no hay que modificar el coacutedigo

Se puede observar que se pueden ingresar maacutes objetos como se muestra en a figura

La solucioacuten para el ingreso de 20 objetos se muestra a continuacioacuten

7 Ing Lizbeth Dora Briones Pereyra

Solucioacuten 8 41

El peso de los objetos es 5

La Utilidad es 11

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

PRACTICA 03

Problema de Poblaciones

Partiendo de una poblacioacuten inicial (soluciones factibles) donde se selecciona individuos

(favorecer a los de mayor calidad) luego Recombinarlos Introducir mutaciones en sus

descendientes y Insertarlos en la siguiente generacioacuten

POBLACION Toda el aula de Bioinformaacutetica SECCION ldquoArdquo

MUESTRA 4 INDIVIDUOS (2 MUJERES Y 2 HOMBRES)

Crear un programa en cualquier lenguaje de programacioacuten estructurada (C C++ C Java

etc)

Codificacioacuten

ndash Utilizar cadenas de bits para representar las soluciones

ndash Los bits pueden codificar nuacutemeros enteros reales conjuntos

ndash Ventaja los operadores de cruce y mutacioacuten son simples

ndash Inconveniente no siempre resulta ldquonaturalrdquo

Seleccioacuten

ndash Asignar una probabilidad de supervivencia proporcional a la calidad

ndash Generar una poblacioacuten intermedia

ndash Elegir parejas de forma aleatoria o de acuerdo a criterios como rendimiento acadeacutemico y

valores en cada individuo

No se pueden cruzar elementos de dos generaciones distintas

Operador de cruce de un punto

Mutacioacuten

ndash Hay una pequentildea probabilidad de cambio de un bit

Ejemplo Suponiendo que de nuestra poblacioacuten se seleccionoacute 4 individuos

Seleccioacuten de la muestra = 4 individuos 1324 8 y 19

8 Ing Lizbeth Dora Briones Pereyra

Solucioacuten 1 4 2 13 10 11 18

El peso de los objetos es 15

La Utilidad es 26

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Hallar

a) La seleccioacuten aleatoria o manual del aula de Bioinformaacutetica (4 individuos)

b) Mostrar los resultados como en la tabla anterior

c) Realizar el cruce y mostrar los hijos de cada pareja

d) Construir el cuadro de la segunda generacioacuten

e) Cruzar los hijos y construir el cuadro de la tercera generacioacuten

f) Dar una conclusioacuten Final

PRACTICA 04

El Problema del Viajante

Para el problema del viajante Crear el programa usando cualquier lenguaje de programacioacuten

estructurada (C C++ C Java etc)

El viajante sale de una ciudad para visitar todas las demaacutes pasando exactamente una vez por

cada una y volver al punto de partida habiendo recorrido la menor distancia posible

El problema se representa como un grafo no dirigido con n nodos

Un ciclo del grafo que pase por todos los nodos exactamente una vez se denomina ciclo

hamiltoniano Por lo tanto para resolver el problema hay que hallar el ciclo hamiltoniano maacutes

corto del grafo

Por ejemplo

En este caso el recorrido oacuteptimo tiene una longitud de 58

Estaacute distancia se logroacute haciendo el recorrido 1236451 Nuestro algoritmo heuriacutestico

comenzaraacute en un nodo arbitrario y ahiacute decidiraacute visitar el nodo maacutes cercano que no haya sido

Visitado Asiacute si comienzo en 1 recorriendo las distancias maacutes cortas seraacute 1-2-3-5-4-6-1

dando un total de 60

Aunque este algoritmo heuriacutestico no es tan oacuteptimo tampoco estaacute mal y puede ser utilizado

PRACTICA 05

9 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Coloreado de un grafo (Tarea para Casa)

1 Colorear cada nodo de manera que no haya dos nodos adyacentes del mismo color

2 Cuaacutel es el nuacutemero miacutenimo de colores La solucioacuten oacuteptima nos dice que el miacutenimo son dos

colores Secuencia 1-2-3-4-5

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 pinta

Pasa al 4 pinta

Pasa al 5 no puede pintar (3 y 4 ya estaacuten pintados)

Selecciona otro nodo y pinta con otro color

Pasa al siguiente etc

Solucioacuten oacuteptima

3) Secuencia 1-5-2-3-4

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 5 pinta

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 no puede pintar (5 ya estaacute pintado)

Pasa al 4 no puede pintar (5 ya estaacute pintado)

Selecciona otro nodo (2) y pinta con otro color

Pasa al 3 y al 4 no puede pintar (2 ya estaacute pintado)

Solucioacuten NO oacuteptima

Pasa al siguiente (3) y selecciona otro color

Pasa al 4 pinta

10 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

11 Ing Lizbeth Dora Briones Pereyra

Page 3: Guias de Practica de BIOINFORMATICA I Unidad 1

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

E) Realizar el cruce con el nuevo padre mutado y la madre

Padre 01111

Madre 11000

Ingresar la cantidad de puntos a cruzar y sus posiciones Ejemplo 2 puntos

Primer punto (posicioacuten 2) y segundo punto (posicioacuten 4)

Padre 0 1 1 1 1

Madre 1 1 0 0 0

Hijos del primer punto

Hijo 01 0 1 000

Hijo 02 1 1 111

Padre 0 1 1 1 1

Madre 1 1 0 0 0

Hijos del segundo punto

Hijo 01 0 1 1 1 0

Hijo 02 1 1 0 0 1

3 Para 2 poblaciones de A Y B y X individuos de tal manera que tengan 5 cromosomas

cada uno hallar

A) ingresar el padre y la madre de las 2 poblaciones

Poblacioacuten A Padre A 13 Madre A 24

Poblacioacuten B Padre B 8 Madre B 19

B) Representar sus cromosomas

Padre A 01101 Madre A 11000

Padre B 01000 Madre B 10011

C) Realizar el cruce de un punto con posicioacuten 2 para ambas parejas

3 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Poblacioacuten A Cruce A

Padre A 0 1 1 0 1 01000 hijo1 A

Madre A 1 1 0 0 0 11101 hijo2 A

Poblacioacuten B Cruce B

Padre B 0 1 0 0 0 01011 hijo1 B

Madre B 1 0 0 1 1 10000 hijo2 B

D) Realizar el cruce de 1 punto (posicioacuten2) del hijo 2A con el hijo 1B y hallar la 3era

generacioacuten

11101 hijo2 A

01011 hijo1 B

Hijos de la tercera generacioacuten

11 011

01 01

4 Presentar el avance del problema de la Mochila

PRACTICA 02

PROBLEMA DE LA MOCHILA

Para el problema de la mochila basado en la Optimizacioacuten basada en colonias de hormigas

Crear el programa de la Mochila usando cualquier lenguaje de programacioacuten estructurada (C

C++ C Java etc) veamos el siguiente Algoritmo Propuesto

Capturar Paraacutemetros

Inicializar los rastros de feromonas

Colocar hormigas en posicioacuten inicial

Repetir

Para K desde 1 Hasta el numero de hormigas Hacer

Construir la solucioacuten para la hormiga K

Seleccionar la mejor solucioacuten

Actualizar los rastros de feromonas

Hasta Alcanzar el nuacutemero de ciclos o encontrar la solucioacuten optima

4 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Donde cada paso quiere decir

Inicializacioacuten de la feromona Las hormigas se comunican a traveacutes de la feromona

depositada en los objetos debido a que no se cuenta con ninguna relacioacuten entre ellos

estos son tomados como objetos independientes y cada objeto contiene la concentracioacuten

de la feromona La concentracioacuten de feromona en el Objeto i es denotada por y

inicialmente se coloca un valor pequentildeo a todos los objetos

Colocar hormigas en posicioacuten inicial Se coloca cada una de las hormigas en una posicioacuten

inicial (objeto) manualmente o aleatoreamente

Construccioacuten de la solucioacuten con las hormigas Iterativamente se escoge el siguiente objeto

para ser agregado a la mochila Dentro de un conjunto de candidatos que contiene todos

los objetos que no han sido colocados en la mochila y no sobrepasan el peso restante es

decir la capacidad de la mochila menos el peso de los objetos seleccionados hasta el

momento

Seleccionar la mejor solucioacuten Consiste en seleccionar la solucioacuten que da mayor utilidad

Actualizar los rastros de feromonas Se actualiza las feromonas en cada uno de los objetos

utilizando la Ec (1)

La simbologiacutea utilizada en el algoritmo es Es la solucioacuten la cual contiene el objeto donde

fue colocada inicialmente la hormiga k P es la suma de los pesos de los objetos dentro del

conjunto solucioacuten (S) U es la suma de la utilidad de los objetos dentro del conjunto

solucioacuten (S) Op es el primer objeto dentro de la solucioacuten Candidatos es la lista de los

objetos que pueden ser seleccionados

5 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

CORRIDA DEL PROBLEMA DE LA MOCHILA

Para realizar el disentildeo de experimento se tiene es el numero de hormigas es la

concentracioacuten inicial de la feromona la capacidad de la mochila 1049121 que es el factor de

evaporacioacuten de la feromona Nc el nuacutemero de ciclos que se correraacute el algoritmo ademaacutes de

los mencionados anteriormente Se crearon varios archivos con extensioacutendat los cuales

contienen las instancias con las cuales fue corrido el algoritmo actualmente se cuenta con

10 instancias creadas en este formato las cuales seraacuten utilizadas para generar un disentildeo

de experimento maacutes robusto la informacioacuten de estas instancias se encuentra guardada

como se muestra en la siguiente 2

La solucioacuten para el siguiente problema seriacutea el siguiente

6 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Como se puede ver el formato es sencillo y puede ser modificado faacutecilmente estas

modificaciones serian por ejemplo poner maacutes objetos por lo cual cambiariacuteamos el nuacutemero

de iacutetems cambiar la capacidad de la mochila y finalmente algo que se tendriacutea que hacer es

aumentar o disminuir el nuacutemero de objeto para que la lista sea igual al nuacutemero de iacutetems

puesto anteriormente tambieacuten puede ser modificado el peso y la utilidad de los objetos

anteriores una vez hecho el archivo este puede ser leiacutedo por el sistema sin ninguacuten

problema y no hay que modificar el coacutedigo

Se puede observar que se pueden ingresar maacutes objetos como se muestra en a figura

La solucioacuten para el ingreso de 20 objetos se muestra a continuacioacuten

7 Ing Lizbeth Dora Briones Pereyra

Solucioacuten 8 41

El peso de los objetos es 5

La Utilidad es 11

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

PRACTICA 03

Problema de Poblaciones

Partiendo de una poblacioacuten inicial (soluciones factibles) donde se selecciona individuos

(favorecer a los de mayor calidad) luego Recombinarlos Introducir mutaciones en sus

descendientes y Insertarlos en la siguiente generacioacuten

POBLACION Toda el aula de Bioinformaacutetica SECCION ldquoArdquo

MUESTRA 4 INDIVIDUOS (2 MUJERES Y 2 HOMBRES)

Crear un programa en cualquier lenguaje de programacioacuten estructurada (C C++ C Java

etc)

Codificacioacuten

ndash Utilizar cadenas de bits para representar las soluciones

ndash Los bits pueden codificar nuacutemeros enteros reales conjuntos

ndash Ventaja los operadores de cruce y mutacioacuten son simples

ndash Inconveniente no siempre resulta ldquonaturalrdquo

Seleccioacuten

ndash Asignar una probabilidad de supervivencia proporcional a la calidad

ndash Generar una poblacioacuten intermedia

ndash Elegir parejas de forma aleatoria o de acuerdo a criterios como rendimiento acadeacutemico y

valores en cada individuo

No se pueden cruzar elementos de dos generaciones distintas

Operador de cruce de un punto

Mutacioacuten

ndash Hay una pequentildea probabilidad de cambio de un bit

Ejemplo Suponiendo que de nuestra poblacioacuten se seleccionoacute 4 individuos

Seleccioacuten de la muestra = 4 individuos 1324 8 y 19

8 Ing Lizbeth Dora Briones Pereyra

Solucioacuten 1 4 2 13 10 11 18

El peso de los objetos es 15

La Utilidad es 26

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Hallar

a) La seleccioacuten aleatoria o manual del aula de Bioinformaacutetica (4 individuos)

b) Mostrar los resultados como en la tabla anterior

c) Realizar el cruce y mostrar los hijos de cada pareja

d) Construir el cuadro de la segunda generacioacuten

e) Cruzar los hijos y construir el cuadro de la tercera generacioacuten

f) Dar una conclusioacuten Final

PRACTICA 04

El Problema del Viajante

Para el problema del viajante Crear el programa usando cualquier lenguaje de programacioacuten

estructurada (C C++ C Java etc)

El viajante sale de una ciudad para visitar todas las demaacutes pasando exactamente una vez por

cada una y volver al punto de partida habiendo recorrido la menor distancia posible

El problema se representa como un grafo no dirigido con n nodos

Un ciclo del grafo que pase por todos los nodos exactamente una vez se denomina ciclo

hamiltoniano Por lo tanto para resolver el problema hay que hallar el ciclo hamiltoniano maacutes

corto del grafo

Por ejemplo

En este caso el recorrido oacuteptimo tiene una longitud de 58

Estaacute distancia se logroacute haciendo el recorrido 1236451 Nuestro algoritmo heuriacutestico

comenzaraacute en un nodo arbitrario y ahiacute decidiraacute visitar el nodo maacutes cercano que no haya sido

Visitado Asiacute si comienzo en 1 recorriendo las distancias maacutes cortas seraacute 1-2-3-5-4-6-1

dando un total de 60

Aunque este algoritmo heuriacutestico no es tan oacuteptimo tampoco estaacute mal y puede ser utilizado

PRACTICA 05

9 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Coloreado de un grafo (Tarea para Casa)

1 Colorear cada nodo de manera que no haya dos nodos adyacentes del mismo color

2 Cuaacutel es el nuacutemero miacutenimo de colores La solucioacuten oacuteptima nos dice que el miacutenimo son dos

colores Secuencia 1-2-3-4-5

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 pinta

Pasa al 4 pinta

Pasa al 5 no puede pintar (3 y 4 ya estaacuten pintados)

Selecciona otro nodo y pinta con otro color

Pasa al siguiente etc

Solucioacuten oacuteptima

3) Secuencia 1-5-2-3-4

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 5 pinta

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 no puede pintar (5 ya estaacute pintado)

Pasa al 4 no puede pintar (5 ya estaacute pintado)

Selecciona otro nodo (2) y pinta con otro color

Pasa al 3 y al 4 no puede pintar (2 ya estaacute pintado)

Solucioacuten NO oacuteptima

Pasa al siguiente (3) y selecciona otro color

Pasa al 4 pinta

10 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

11 Ing Lizbeth Dora Briones Pereyra

Page 4: Guias de Practica de BIOINFORMATICA I Unidad 1

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Poblacioacuten A Cruce A

Padre A 0 1 1 0 1 01000 hijo1 A

Madre A 1 1 0 0 0 11101 hijo2 A

Poblacioacuten B Cruce B

Padre B 0 1 0 0 0 01011 hijo1 B

Madre B 1 0 0 1 1 10000 hijo2 B

D) Realizar el cruce de 1 punto (posicioacuten2) del hijo 2A con el hijo 1B y hallar la 3era

generacioacuten

11101 hijo2 A

01011 hijo1 B

Hijos de la tercera generacioacuten

11 011

01 01

4 Presentar el avance del problema de la Mochila

PRACTICA 02

PROBLEMA DE LA MOCHILA

Para el problema de la mochila basado en la Optimizacioacuten basada en colonias de hormigas

Crear el programa de la Mochila usando cualquier lenguaje de programacioacuten estructurada (C

C++ C Java etc) veamos el siguiente Algoritmo Propuesto

Capturar Paraacutemetros

Inicializar los rastros de feromonas

Colocar hormigas en posicioacuten inicial

Repetir

Para K desde 1 Hasta el numero de hormigas Hacer

Construir la solucioacuten para la hormiga K

Seleccionar la mejor solucioacuten

Actualizar los rastros de feromonas

Hasta Alcanzar el nuacutemero de ciclos o encontrar la solucioacuten optima

4 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Donde cada paso quiere decir

Inicializacioacuten de la feromona Las hormigas se comunican a traveacutes de la feromona

depositada en los objetos debido a que no se cuenta con ninguna relacioacuten entre ellos

estos son tomados como objetos independientes y cada objeto contiene la concentracioacuten

de la feromona La concentracioacuten de feromona en el Objeto i es denotada por y

inicialmente se coloca un valor pequentildeo a todos los objetos

Colocar hormigas en posicioacuten inicial Se coloca cada una de las hormigas en una posicioacuten

inicial (objeto) manualmente o aleatoreamente

Construccioacuten de la solucioacuten con las hormigas Iterativamente se escoge el siguiente objeto

para ser agregado a la mochila Dentro de un conjunto de candidatos que contiene todos

los objetos que no han sido colocados en la mochila y no sobrepasan el peso restante es

decir la capacidad de la mochila menos el peso de los objetos seleccionados hasta el

momento

Seleccionar la mejor solucioacuten Consiste en seleccionar la solucioacuten que da mayor utilidad

Actualizar los rastros de feromonas Se actualiza las feromonas en cada uno de los objetos

utilizando la Ec (1)

La simbologiacutea utilizada en el algoritmo es Es la solucioacuten la cual contiene el objeto donde

fue colocada inicialmente la hormiga k P es la suma de los pesos de los objetos dentro del

conjunto solucioacuten (S) U es la suma de la utilidad de los objetos dentro del conjunto

solucioacuten (S) Op es el primer objeto dentro de la solucioacuten Candidatos es la lista de los

objetos que pueden ser seleccionados

5 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

CORRIDA DEL PROBLEMA DE LA MOCHILA

Para realizar el disentildeo de experimento se tiene es el numero de hormigas es la

concentracioacuten inicial de la feromona la capacidad de la mochila 1049121 que es el factor de

evaporacioacuten de la feromona Nc el nuacutemero de ciclos que se correraacute el algoritmo ademaacutes de

los mencionados anteriormente Se crearon varios archivos con extensioacutendat los cuales

contienen las instancias con las cuales fue corrido el algoritmo actualmente se cuenta con

10 instancias creadas en este formato las cuales seraacuten utilizadas para generar un disentildeo

de experimento maacutes robusto la informacioacuten de estas instancias se encuentra guardada

como se muestra en la siguiente 2

La solucioacuten para el siguiente problema seriacutea el siguiente

6 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Como se puede ver el formato es sencillo y puede ser modificado faacutecilmente estas

modificaciones serian por ejemplo poner maacutes objetos por lo cual cambiariacuteamos el nuacutemero

de iacutetems cambiar la capacidad de la mochila y finalmente algo que se tendriacutea que hacer es

aumentar o disminuir el nuacutemero de objeto para que la lista sea igual al nuacutemero de iacutetems

puesto anteriormente tambieacuten puede ser modificado el peso y la utilidad de los objetos

anteriores una vez hecho el archivo este puede ser leiacutedo por el sistema sin ninguacuten

problema y no hay que modificar el coacutedigo

Se puede observar que se pueden ingresar maacutes objetos como se muestra en a figura

La solucioacuten para el ingreso de 20 objetos se muestra a continuacioacuten

7 Ing Lizbeth Dora Briones Pereyra

Solucioacuten 8 41

El peso de los objetos es 5

La Utilidad es 11

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

PRACTICA 03

Problema de Poblaciones

Partiendo de una poblacioacuten inicial (soluciones factibles) donde se selecciona individuos

(favorecer a los de mayor calidad) luego Recombinarlos Introducir mutaciones en sus

descendientes y Insertarlos en la siguiente generacioacuten

POBLACION Toda el aula de Bioinformaacutetica SECCION ldquoArdquo

MUESTRA 4 INDIVIDUOS (2 MUJERES Y 2 HOMBRES)

Crear un programa en cualquier lenguaje de programacioacuten estructurada (C C++ C Java

etc)

Codificacioacuten

ndash Utilizar cadenas de bits para representar las soluciones

ndash Los bits pueden codificar nuacutemeros enteros reales conjuntos

ndash Ventaja los operadores de cruce y mutacioacuten son simples

ndash Inconveniente no siempre resulta ldquonaturalrdquo

Seleccioacuten

ndash Asignar una probabilidad de supervivencia proporcional a la calidad

ndash Generar una poblacioacuten intermedia

ndash Elegir parejas de forma aleatoria o de acuerdo a criterios como rendimiento acadeacutemico y

valores en cada individuo

No se pueden cruzar elementos de dos generaciones distintas

Operador de cruce de un punto

Mutacioacuten

ndash Hay una pequentildea probabilidad de cambio de un bit

Ejemplo Suponiendo que de nuestra poblacioacuten se seleccionoacute 4 individuos

Seleccioacuten de la muestra = 4 individuos 1324 8 y 19

8 Ing Lizbeth Dora Briones Pereyra

Solucioacuten 1 4 2 13 10 11 18

El peso de los objetos es 15

La Utilidad es 26

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Hallar

a) La seleccioacuten aleatoria o manual del aula de Bioinformaacutetica (4 individuos)

b) Mostrar los resultados como en la tabla anterior

c) Realizar el cruce y mostrar los hijos de cada pareja

d) Construir el cuadro de la segunda generacioacuten

e) Cruzar los hijos y construir el cuadro de la tercera generacioacuten

f) Dar una conclusioacuten Final

PRACTICA 04

El Problema del Viajante

Para el problema del viajante Crear el programa usando cualquier lenguaje de programacioacuten

estructurada (C C++ C Java etc)

El viajante sale de una ciudad para visitar todas las demaacutes pasando exactamente una vez por

cada una y volver al punto de partida habiendo recorrido la menor distancia posible

El problema se representa como un grafo no dirigido con n nodos

Un ciclo del grafo que pase por todos los nodos exactamente una vez se denomina ciclo

hamiltoniano Por lo tanto para resolver el problema hay que hallar el ciclo hamiltoniano maacutes

corto del grafo

Por ejemplo

En este caso el recorrido oacuteptimo tiene una longitud de 58

Estaacute distancia se logroacute haciendo el recorrido 1236451 Nuestro algoritmo heuriacutestico

comenzaraacute en un nodo arbitrario y ahiacute decidiraacute visitar el nodo maacutes cercano que no haya sido

Visitado Asiacute si comienzo en 1 recorriendo las distancias maacutes cortas seraacute 1-2-3-5-4-6-1

dando un total de 60

Aunque este algoritmo heuriacutestico no es tan oacuteptimo tampoco estaacute mal y puede ser utilizado

PRACTICA 05

9 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Coloreado de un grafo (Tarea para Casa)

1 Colorear cada nodo de manera que no haya dos nodos adyacentes del mismo color

2 Cuaacutel es el nuacutemero miacutenimo de colores La solucioacuten oacuteptima nos dice que el miacutenimo son dos

colores Secuencia 1-2-3-4-5

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 pinta

Pasa al 4 pinta

Pasa al 5 no puede pintar (3 y 4 ya estaacuten pintados)

Selecciona otro nodo y pinta con otro color

Pasa al siguiente etc

Solucioacuten oacuteptima

3) Secuencia 1-5-2-3-4

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 5 pinta

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 no puede pintar (5 ya estaacute pintado)

Pasa al 4 no puede pintar (5 ya estaacute pintado)

Selecciona otro nodo (2) y pinta con otro color

Pasa al 3 y al 4 no puede pintar (2 ya estaacute pintado)

Solucioacuten NO oacuteptima

Pasa al siguiente (3) y selecciona otro color

Pasa al 4 pinta

10 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

11 Ing Lizbeth Dora Briones Pereyra

Page 5: Guias de Practica de BIOINFORMATICA I Unidad 1

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Donde cada paso quiere decir

Inicializacioacuten de la feromona Las hormigas se comunican a traveacutes de la feromona

depositada en los objetos debido a que no se cuenta con ninguna relacioacuten entre ellos

estos son tomados como objetos independientes y cada objeto contiene la concentracioacuten

de la feromona La concentracioacuten de feromona en el Objeto i es denotada por y

inicialmente se coloca un valor pequentildeo a todos los objetos

Colocar hormigas en posicioacuten inicial Se coloca cada una de las hormigas en una posicioacuten

inicial (objeto) manualmente o aleatoreamente

Construccioacuten de la solucioacuten con las hormigas Iterativamente se escoge el siguiente objeto

para ser agregado a la mochila Dentro de un conjunto de candidatos que contiene todos

los objetos que no han sido colocados en la mochila y no sobrepasan el peso restante es

decir la capacidad de la mochila menos el peso de los objetos seleccionados hasta el

momento

Seleccionar la mejor solucioacuten Consiste en seleccionar la solucioacuten que da mayor utilidad

Actualizar los rastros de feromonas Se actualiza las feromonas en cada uno de los objetos

utilizando la Ec (1)

La simbologiacutea utilizada en el algoritmo es Es la solucioacuten la cual contiene el objeto donde

fue colocada inicialmente la hormiga k P es la suma de los pesos de los objetos dentro del

conjunto solucioacuten (S) U es la suma de la utilidad de los objetos dentro del conjunto

solucioacuten (S) Op es el primer objeto dentro de la solucioacuten Candidatos es la lista de los

objetos que pueden ser seleccionados

5 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

CORRIDA DEL PROBLEMA DE LA MOCHILA

Para realizar el disentildeo de experimento se tiene es el numero de hormigas es la

concentracioacuten inicial de la feromona la capacidad de la mochila 1049121 que es el factor de

evaporacioacuten de la feromona Nc el nuacutemero de ciclos que se correraacute el algoritmo ademaacutes de

los mencionados anteriormente Se crearon varios archivos con extensioacutendat los cuales

contienen las instancias con las cuales fue corrido el algoritmo actualmente se cuenta con

10 instancias creadas en este formato las cuales seraacuten utilizadas para generar un disentildeo

de experimento maacutes robusto la informacioacuten de estas instancias se encuentra guardada

como se muestra en la siguiente 2

La solucioacuten para el siguiente problema seriacutea el siguiente

6 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Como se puede ver el formato es sencillo y puede ser modificado faacutecilmente estas

modificaciones serian por ejemplo poner maacutes objetos por lo cual cambiariacuteamos el nuacutemero

de iacutetems cambiar la capacidad de la mochila y finalmente algo que se tendriacutea que hacer es

aumentar o disminuir el nuacutemero de objeto para que la lista sea igual al nuacutemero de iacutetems

puesto anteriormente tambieacuten puede ser modificado el peso y la utilidad de los objetos

anteriores una vez hecho el archivo este puede ser leiacutedo por el sistema sin ninguacuten

problema y no hay que modificar el coacutedigo

Se puede observar que se pueden ingresar maacutes objetos como se muestra en a figura

La solucioacuten para el ingreso de 20 objetos se muestra a continuacioacuten

7 Ing Lizbeth Dora Briones Pereyra

Solucioacuten 8 41

El peso de los objetos es 5

La Utilidad es 11

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

PRACTICA 03

Problema de Poblaciones

Partiendo de una poblacioacuten inicial (soluciones factibles) donde se selecciona individuos

(favorecer a los de mayor calidad) luego Recombinarlos Introducir mutaciones en sus

descendientes y Insertarlos en la siguiente generacioacuten

POBLACION Toda el aula de Bioinformaacutetica SECCION ldquoArdquo

MUESTRA 4 INDIVIDUOS (2 MUJERES Y 2 HOMBRES)

Crear un programa en cualquier lenguaje de programacioacuten estructurada (C C++ C Java

etc)

Codificacioacuten

ndash Utilizar cadenas de bits para representar las soluciones

ndash Los bits pueden codificar nuacutemeros enteros reales conjuntos

ndash Ventaja los operadores de cruce y mutacioacuten son simples

ndash Inconveniente no siempre resulta ldquonaturalrdquo

Seleccioacuten

ndash Asignar una probabilidad de supervivencia proporcional a la calidad

ndash Generar una poblacioacuten intermedia

ndash Elegir parejas de forma aleatoria o de acuerdo a criterios como rendimiento acadeacutemico y

valores en cada individuo

No se pueden cruzar elementos de dos generaciones distintas

Operador de cruce de un punto

Mutacioacuten

ndash Hay una pequentildea probabilidad de cambio de un bit

Ejemplo Suponiendo que de nuestra poblacioacuten se seleccionoacute 4 individuos

Seleccioacuten de la muestra = 4 individuos 1324 8 y 19

8 Ing Lizbeth Dora Briones Pereyra

Solucioacuten 1 4 2 13 10 11 18

El peso de los objetos es 15

La Utilidad es 26

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Hallar

a) La seleccioacuten aleatoria o manual del aula de Bioinformaacutetica (4 individuos)

b) Mostrar los resultados como en la tabla anterior

c) Realizar el cruce y mostrar los hijos de cada pareja

d) Construir el cuadro de la segunda generacioacuten

e) Cruzar los hijos y construir el cuadro de la tercera generacioacuten

f) Dar una conclusioacuten Final

PRACTICA 04

El Problema del Viajante

Para el problema del viajante Crear el programa usando cualquier lenguaje de programacioacuten

estructurada (C C++ C Java etc)

El viajante sale de una ciudad para visitar todas las demaacutes pasando exactamente una vez por

cada una y volver al punto de partida habiendo recorrido la menor distancia posible

El problema se representa como un grafo no dirigido con n nodos

Un ciclo del grafo que pase por todos los nodos exactamente una vez se denomina ciclo

hamiltoniano Por lo tanto para resolver el problema hay que hallar el ciclo hamiltoniano maacutes

corto del grafo

Por ejemplo

En este caso el recorrido oacuteptimo tiene una longitud de 58

Estaacute distancia se logroacute haciendo el recorrido 1236451 Nuestro algoritmo heuriacutestico

comenzaraacute en un nodo arbitrario y ahiacute decidiraacute visitar el nodo maacutes cercano que no haya sido

Visitado Asiacute si comienzo en 1 recorriendo las distancias maacutes cortas seraacute 1-2-3-5-4-6-1

dando un total de 60

Aunque este algoritmo heuriacutestico no es tan oacuteptimo tampoco estaacute mal y puede ser utilizado

PRACTICA 05

9 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Coloreado de un grafo (Tarea para Casa)

1 Colorear cada nodo de manera que no haya dos nodos adyacentes del mismo color

2 Cuaacutel es el nuacutemero miacutenimo de colores La solucioacuten oacuteptima nos dice que el miacutenimo son dos

colores Secuencia 1-2-3-4-5

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 pinta

Pasa al 4 pinta

Pasa al 5 no puede pintar (3 y 4 ya estaacuten pintados)

Selecciona otro nodo y pinta con otro color

Pasa al siguiente etc

Solucioacuten oacuteptima

3) Secuencia 1-5-2-3-4

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 5 pinta

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 no puede pintar (5 ya estaacute pintado)

Pasa al 4 no puede pintar (5 ya estaacute pintado)

Selecciona otro nodo (2) y pinta con otro color

Pasa al 3 y al 4 no puede pintar (2 ya estaacute pintado)

Solucioacuten NO oacuteptima

Pasa al siguiente (3) y selecciona otro color

Pasa al 4 pinta

10 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

11 Ing Lizbeth Dora Briones Pereyra

Page 6: Guias de Practica de BIOINFORMATICA I Unidad 1

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

CORRIDA DEL PROBLEMA DE LA MOCHILA

Para realizar el disentildeo de experimento se tiene es el numero de hormigas es la

concentracioacuten inicial de la feromona la capacidad de la mochila 1049121 que es el factor de

evaporacioacuten de la feromona Nc el nuacutemero de ciclos que se correraacute el algoritmo ademaacutes de

los mencionados anteriormente Se crearon varios archivos con extensioacutendat los cuales

contienen las instancias con las cuales fue corrido el algoritmo actualmente se cuenta con

10 instancias creadas en este formato las cuales seraacuten utilizadas para generar un disentildeo

de experimento maacutes robusto la informacioacuten de estas instancias se encuentra guardada

como se muestra en la siguiente 2

La solucioacuten para el siguiente problema seriacutea el siguiente

6 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Como se puede ver el formato es sencillo y puede ser modificado faacutecilmente estas

modificaciones serian por ejemplo poner maacutes objetos por lo cual cambiariacuteamos el nuacutemero

de iacutetems cambiar la capacidad de la mochila y finalmente algo que se tendriacutea que hacer es

aumentar o disminuir el nuacutemero de objeto para que la lista sea igual al nuacutemero de iacutetems

puesto anteriormente tambieacuten puede ser modificado el peso y la utilidad de los objetos

anteriores una vez hecho el archivo este puede ser leiacutedo por el sistema sin ninguacuten

problema y no hay que modificar el coacutedigo

Se puede observar que se pueden ingresar maacutes objetos como se muestra en a figura

La solucioacuten para el ingreso de 20 objetos se muestra a continuacioacuten

7 Ing Lizbeth Dora Briones Pereyra

Solucioacuten 8 41

El peso de los objetos es 5

La Utilidad es 11

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

PRACTICA 03

Problema de Poblaciones

Partiendo de una poblacioacuten inicial (soluciones factibles) donde se selecciona individuos

(favorecer a los de mayor calidad) luego Recombinarlos Introducir mutaciones en sus

descendientes y Insertarlos en la siguiente generacioacuten

POBLACION Toda el aula de Bioinformaacutetica SECCION ldquoArdquo

MUESTRA 4 INDIVIDUOS (2 MUJERES Y 2 HOMBRES)

Crear un programa en cualquier lenguaje de programacioacuten estructurada (C C++ C Java

etc)

Codificacioacuten

ndash Utilizar cadenas de bits para representar las soluciones

ndash Los bits pueden codificar nuacutemeros enteros reales conjuntos

ndash Ventaja los operadores de cruce y mutacioacuten son simples

ndash Inconveniente no siempre resulta ldquonaturalrdquo

Seleccioacuten

ndash Asignar una probabilidad de supervivencia proporcional a la calidad

ndash Generar una poblacioacuten intermedia

ndash Elegir parejas de forma aleatoria o de acuerdo a criterios como rendimiento acadeacutemico y

valores en cada individuo

No se pueden cruzar elementos de dos generaciones distintas

Operador de cruce de un punto

Mutacioacuten

ndash Hay una pequentildea probabilidad de cambio de un bit

Ejemplo Suponiendo que de nuestra poblacioacuten se seleccionoacute 4 individuos

Seleccioacuten de la muestra = 4 individuos 1324 8 y 19

8 Ing Lizbeth Dora Briones Pereyra

Solucioacuten 1 4 2 13 10 11 18

El peso de los objetos es 15

La Utilidad es 26

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Hallar

a) La seleccioacuten aleatoria o manual del aula de Bioinformaacutetica (4 individuos)

b) Mostrar los resultados como en la tabla anterior

c) Realizar el cruce y mostrar los hijos de cada pareja

d) Construir el cuadro de la segunda generacioacuten

e) Cruzar los hijos y construir el cuadro de la tercera generacioacuten

f) Dar una conclusioacuten Final

PRACTICA 04

El Problema del Viajante

Para el problema del viajante Crear el programa usando cualquier lenguaje de programacioacuten

estructurada (C C++ C Java etc)

El viajante sale de una ciudad para visitar todas las demaacutes pasando exactamente una vez por

cada una y volver al punto de partida habiendo recorrido la menor distancia posible

El problema se representa como un grafo no dirigido con n nodos

Un ciclo del grafo que pase por todos los nodos exactamente una vez se denomina ciclo

hamiltoniano Por lo tanto para resolver el problema hay que hallar el ciclo hamiltoniano maacutes

corto del grafo

Por ejemplo

En este caso el recorrido oacuteptimo tiene una longitud de 58

Estaacute distancia se logroacute haciendo el recorrido 1236451 Nuestro algoritmo heuriacutestico

comenzaraacute en un nodo arbitrario y ahiacute decidiraacute visitar el nodo maacutes cercano que no haya sido

Visitado Asiacute si comienzo en 1 recorriendo las distancias maacutes cortas seraacute 1-2-3-5-4-6-1

dando un total de 60

Aunque este algoritmo heuriacutestico no es tan oacuteptimo tampoco estaacute mal y puede ser utilizado

PRACTICA 05

9 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Coloreado de un grafo (Tarea para Casa)

1 Colorear cada nodo de manera que no haya dos nodos adyacentes del mismo color

2 Cuaacutel es el nuacutemero miacutenimo de colores La solucioacuten oacuteptima nos dice que el miacutenimo son dos

colores Secuencia 1-2-3-4-5

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 pinta

Pasa al 4 pinta

Pasa al 5 no puede pintar (3 y 4 ya estaacuten pintados)

Selecciona otro nodo y pinta con otro color

Pasa al siguiente etc

Solucioacuten oacuteptima

3) Secuencia 1-5-2-3-4

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 5 pinta

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 no puede pintar (5 ya estaacute pintado)

Pasa al 4 no puede pintar (5 ya estaacute pintado)

Selecciona otro nodo (2) y pinta con otro color

Pasa al 3 y al 4 no puede pintar (2 ya estaacute pintado)

Solucioacuten NO oacuteptima

Pasa al siguiente (3) y selecciona otro color

Pasa al 4 pinta

10 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

11 Ing Lizbeth Dora Briones Pereyra

Page 7: Guias de Practica de BIOINFORMATICA I Unidad 1

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Como se puede ver el formato es sencillo y puede ser modificado faacutecilmente estas

modificaciones serian por ejemplo poner maacutes objetos por lo cual cambiariacuteamos el nuacutemero

de iacutetems cambiar la capacidad de la mochila y finalmente algo que se tendriacutea que hacer es

aumentar o disminuir el nuacutemero de objeto para que la lista sea igual al nuacutemero de iacutetems

puesto anteriormente tambieacuten puede ser modificado el peso y la utilidad de los objetos

anteriores una vez hecho el archivo este puede ser leiacutedo por el sistema sin ninguacuten

problema y no hay que modificar el coacutedigo

Se puede observar que se pueden ingresar maacutes objetos como se muestra en a figura

La solucioacuten para el ingreso de 20 objetos se muestra a continuacioacuten

7 Ing Lizbeth Dora Briones Pereyra

Solucioacuten 8 41

El peso de los objetos es 5

La Utilidad es 11

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

PRACTICA 03

Problema de Poblaciones

Partiendo de una poblacioacuten inicial (soluciones factibles) donde se selecciona individuos

(favorecer a los de mayor calidad) luego Recombinarlos Introducir mutaciones en sus

descendientes y Insertarlos en la siguiente generacioacuten

POBLACION Toda el aula de Bioinformaacutetica SECCION ldquoArdquo

MUESTRA 4 INDIVIDUOS (2 MUJERES Y 2 HOMBRES)

Crear un programa en cualquier lenguaje de programacioacuten estructurada (C C++ C Java

etc)

Codificacioacuten

ndash Utilizar cadenas de bits para representar las soluciones

ndash Los bits pueden codificar nuacutemeros enteros reales conjuntos

ndash Ventaja los operadores de cruce y mutacioacuten son simples

ndash Inconveniente no siempre resulta ldquonaturalrdquo

Seleccioacuten

ndash Asignar una probabilidad de supervivencia proporcional a la calidad

ndash Generar una poblacioacuten intermedia

ndash Elegir parejas de forma aleatoria o de acuerdo a criterios como rendimiento acadeacutemico y

valores en cada individuo

No se pueden cruzar elementos de dos generaciones distintas

Operador de cruce de un punto

Mutacioacuten

ndash Hay una pequentildea probabilidad de cambio de un bit

Ejemplo Suponiendo que de nuestra poblacioacuten se seleccionoacute 4 individuos

Seleccioacuten de la muestra = 4 individuos 1324 8 y 19

8 Ing Lizbeth Dora Briones Pereyra

Solucioacuten 1 4 2 13 10 11 18

El peso de los objetos es 15

La Utilidad es 26

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Hallar

a) La seleccioacuten aleatoria o manual del aula de Bioinformaacutetica (4 individuos)

b) Mostrar los resultados como en la tabla anterior

c) Realizar el cruce y mostrar los hijos de cada pareja

d) Construir el cuadro de la segunda generacioacuten

e) Cruzar los hijos y construir el cuadro de la tercera generacioacuten

f) Dar una conclusioacuten Final

PRACTICA 04

El Problema del Viajante

Para el problema del viajante Crear el programa usando cualquier lenguaje de programacioacuten

estructurada (C C++ C Java etc)

El viajante sale de una ciudad para visitar todas las demaacutes pasando exactamente una vez por

cada una y volver al punto de partida habiendo recorrido la menor distancia posible

El problema se representa como un grafo no dirigido con n nodos

Un ciclo del grafo que pase por todos los nodos exactamente una vez se denomina ciclo

hamiltoniano Por lo tanto para resolver el problema hay que hallar el ciclo hamiltoniano maacutes

corto del grafo

Por ejemplo

En este caso el recorrido oacuteptimo tiene una longitud de 58

Estaacute distancia se logroacute haciendo el recorrido 1236451 Nuestro algoritmo heuriacutestico

comenzaraacute en un nodo arbitrario y ahiacute decidiraacute visitar el nodo maacutes cercano que no haya sido

Visitado Asiacute si comienzo en 1 recorriendo las distancias maacutes cortas seraacute 1-2-3-5-4-6-1

dando un total de 60

Aunque este algoritmo heuriacutestico no es tan oacuteptimo tampoco estaacute mal y puede ser utilizado

PRACTICA 05

9 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Coloreado de un grafo (Tarea para Casa)

1 Colorear cada nodo de manera que no haya dos nodos adyacentes del mismo color

2 Cuaacutel es el nuacutemero miacutenimo de colores La solucioacuten oacuteptima nos dice que el miacutenimo son dos

colores Secuencia 1-2-3-4-5

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 pinta

Pasa al 4 pinta

Pasa al 5 no puede pintar (3 y 4 ya estaacuten pintados)

Selecciona otro nodo y pinta con otro color

Pasa al siguiente etc

Solucioacuten oacuteptima

3) Secuencia 1-5-2-3-4

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 5 pinta

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 no puede pintar (5 ya estaacute pintado)

Pasa al 4 no puede pintar (5 ya estaacute pintado)

Selecciona otro nodo (2) y pinta con otro color

Pasa al 3 y al 4 no puede pintar (2 ya estaacute pintado)

Solucioacuten NO oacuteptima

Pasa al siguiente (3) y selecciona otro color

Pasa al 4 pinta

10 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

11 Ing Lizbeth Dora Briones Pereyra

Page 8: Guias de Practica de BIOINFORMATICA I Unidad 1

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

PRACTICA 03

Problema de Poblaciones

Partiendo de una poblacioacuten inicial (soluciones factibles) donde se selecciona individuos

(favorecer a los de mayor calidad) luego Recombinarlos Introducir mutaciones en sus

descendientes y Insertarlos en la siguiente generacioacuten

POBLACION Toda el aula de Bioinformaacutetica SECCION ldquoArdquo

MUESTRA 4 INDIVIDUOS (2 MUJERES Y 2 HOMBRES)

Crear un programa en cualquier lenguaje de programacioacuten estructurada (C C++ C Java

etc)

Codificacioacuten

ndash Utilizar cadenas de bits para representar las soluciones

ndash Los bits pueden codificar nuacutemeros enteros reales conjuntos

ndash Ventaja los operadores de cruce y mutacioacuten son simples

ndash Inconveniente no siempre resulta ldquonaturalrdquo

Seleccioacuten

ndash Asignar una probabilidad de supervivencia proporcional a la calidad

ndash Generar una poblacioacuten intermedia

ndash Elegir parejas de forma aleatoria o de acuerdo a criterios como rendimiento acadeacutemico y

valores en cada individuo

No se pueden cruzar elementos de dos generaciones distintas

Operador de cruce de un punto

Mutacioacuten

ndash Hay una pequentildea probabilidad de cambio de un bit

Ejemplo Suponiendo que de nuestra poblacioacuten se seleccionoacute 4 individuos

Seleccioacuten de la muestra = 4 individuos 1324 8 y 19

8 Ing Lizbeth Dora Briones Pereyra

Solucioacuten 1 4 2 13 10 11 18

El peso de los objetos es 15

La Utilidad es 26

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Hallar

a) La seleccioacuten aleatoria o manual del aula de Bioinformaacutetica (4 individuos)

b) Mostrar los resultados como en la tabla anterior

c) Realizar el cruce y mostrar los hijos de cada pareja

d) Construir el cuadro de la segunda generacioacuten

e) Cruzar los hijos y construir el cuadro de la tercera generacioacuten

f) Dar una conclusioacuten Final

PRACTICA 04

El Problema del Viajante

Para el problema del viajante Crear el programa usando cualquier lenguaje de programacioacuten

estructurada (C C++ C Java etc)

El viajante sale de una ciudad para visitar todas las demaacutes pasando exactamente una vez por

cada una y volver al punto de partida habiendo recorrido la menor distancia posible

El problema se representa como un grafo no dirigido con n nodos

Un ciclo del grafo que pase por todos los nodos exactamente una vez se denomina ciclo

hamiltoniano Por lo tanto para resolver el problema hay que hallar el ciclo hamiltoniano maacutes

corto del grafo

Por ejemplo

En este caso el recorrido oacuteptimo tiene una longitud de 58

Estaacute distancia se logroacute haciendo el recorrido 1236451 Nuestro algoritmo heuriacutestico

comenzaraacute en un nodo arbitrario y ahiacute decidiraacute visitar el nodo maacutes cercano que no haya sido

Visitado Asiacute si comienzo en 1 recorriendo las distancias maacutes cortas seraacute 1-2-3-5-4-6-1

dando un total de 60

Aunque este algoritmo heuriacutestico no es tan oacuteptimo tampoco estaacute mal y puede ser utilizado

PRACTICA 05

9 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Coloreado de un grafo (Tarea para Casa)

1 Colorear cada nodo de manera que no haya dos nodos adyacentes del mismo color

2 Cuaacutel es el nuacutemero miacutenimo de colores La solucioacuten oacuteptima nos dice que el miacutenimo son dos

colores Secuencia 1-2-3-4-5

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 pinta

Pasa al 4 pinta

Pasa al 5 no puede pintar (3 y 4 ya estaacuten pintados)

Selecciona otro nodo y pinta con otro color

Pasa al siguiente etc

Solucioacuten oacuteptima

3) Secuencia 1-5-2-3-4

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 5 pinta

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 no puede pintar (5 ya estaacute pintado)

Pasa al 4 no puede pintar (5 ya estaacute pintado)

Selecciona otro nodo (2) y pinta con otro color

Pasa al 3 y al 4 no puede pintar (2 ya estaacute pintado)

Solucioacuten NO oacuteptima

Pasa al siguiente (3) y selecciona otro color

Pasa al 4 pinta

10 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

11 Ing Lizbeth Dora Briones Pereyra

Page 9: Guias de Practica de BIOINFORMATICA I Unidad 1

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Hallar

a) La seleccioacuten aleatoria o manual del aula de Bioinformaacutetica (4 individuos)

b) Mostrar los resultados como en la tabla anterior

c) Realizar el cruce y mostrar los hijos de cada pareja

d) Construir el cuadro de la segunda generacioacuten

e) Cruzar los hijos y construir el cuadro de la tercera generacioacuten

f) Dar una conclusioacuten Final

PRACTICA 04

El Problema del Viajante

Para el problema del viajante Crear el programa usando cualquier lenguaje de programacioacuten

estructurada (C C++ C Java etc)

El viajante sale de una ciudad para visitar todas las demaacutes pasando exactamente una vez por

cada una y volver al punto de partida habiendo recorrido la menor distancia posible

El problema se representa como un grafo no dirigido con n nodos

Un ciclo del grafo que pase por todos los nodos exactamente una vez se denomina ciclo

hamiltoniano Por lo tanto para resolver el problema hay que hallar el ciclo hamiltoniano maacutes

corto del grafo

Por ejemplo

En este caso el recorrido oacuteptimo tiene una longitud de 58

Estaacute distancia se logroacute haciendo el recorrido 1236451 Nuestro algoritmo heuriacutestico

comenzaraacute en un nodo arbitrario y ahiacute decidiraacute visitar el nodo maacutes cercano que no haya sido

Visitado Asiacute si comienzo en 1 recorriendo las distancias maacutes cortas seraacute 1-2-3-5-4-6-1

dando un total de 60

Aunque este algoritmo heuriacutestico no es tan oacuteptimo tampoco estaacute mal y puede ser utilizado

PRACTICA 05

9 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Coloreado de un grafo (Tarea para Casa)

1 Colorear cada nodo de manera que no haya dos nodos adyacentes del mismo color

2 Cuaacutel es el nuacutemero miacutenimo de colores La solucioacuten oacuteptima nos dice que el miacutenimo son dos

colores Secuencia 1-2-3-4-5

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 pinta

Pasa al 4 pinta

Pasa al 5 no puede pintar (3 y 4 ya estaacuten pintados)

Selecciona otro nodo y pinta con otro color

Pasa al siguiente etc

Solucioacuten oacuteptima

3) Secuencia 1-5-2-3-4

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 5 pinta

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 no puede pintar (5 ya estaacute pintado)

Pasa al 4 no puede pintar (5 ya estaacute pintado)

Selecciona otro nodo (2) y pinta con otro color

Pasa al 3 y al 4 no puede pintar (2 ya estaacute pintado)

Solucioacuten NO oacuteptima

Pasa al siguiente (3) y selecciona otro color

Pasa al 4 pinta

10 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

11 Ing Lizbeth Dora Briones Pereyra

Page 10: Guias de Practica de BIOINFORMATICA I Unidad 1

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

Coloreado de un grafo (Tarea para Casa)

1 Colorear cada nodo de manera que no haya dos nodos adyacentes del mismo color

2 Cuaacutel es el nuacutemero miacutenimo de colores La solucioacuten oacuteptima nos dice que el miacutenimo son dos

colores Secuencia 1-2-3-4-5

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 pinta

Pasa al 4 pinta

Pasa al 5 no puede pintar (3 y 4 ya estaacuten pintados)

Selecciona otro nodo y pinta con otro color

Pasa al siguiente etc

Solucioacuten oacuteptima

3) Secuencia 1-5-2-3-4

Selecciona el nodo 1 como inicial pinta con un color al azar

Pasa al 5 pinta

Pasa al 2 no puede pintar (1 ya estaacute pintado)

Pasa al 3 no puede pintar (5 ya estaacute pintado)

Pasa al 4 no puede pintar (5 ya estaacute pintado)

Selecciona otro nodo (2) y pinta con otro color

Pasa al 3 y al 4 no puede pintar (2 ya estaacute pintado)

Solucioacuten NO oacuteptima

Pasa al siguiente (3) y selecciona otro color

Pasa al 4 pinta

10 Ing Lizbeth Dora Briones Pereyra

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

11 Ing Lizbeth Dora Briones Pereyra

Page 11: Guias de Practica de BIOINFORMATICA I Unidad 1

Universidad Nacional del Santa Facultad de Ingenieriacutea Guiacuteas de Praacutectica de Bioinformaacutetica E A P Ingenieriacutea de Sistemas e Informaacutetica Unidad I

11 Ing Lizbeth Dora Briones Pereyra