marcelo apolo e. césar menéndez c. nelson ruíz william sánchez v

35
Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V.

Upload: sofia-camarillo

Post on 28-Jan-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Marcelo Apolo E.César Menéndez C.Nelson RuízWilliam Sánchez V.

Page 2: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

HARMONY SEARCH

Es un algoritmo meta heurístico (también conocido como algoritmo de cálculo suave o algoritmo evolutivo), el cual imita el proceso de improvisación musical.

Page 3: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

HARMONY SEARCH

La música (del griego: μουσική [τέχνη] - mousikē [téchnē], "el arte de las musas") es, según la definición tradicional del término, el arte de organizar sensible y lógicamente una combinación coherente de sonidos y silencios utilizando los principios fundamentales de la melodía, la armonía y el ritmo, mediante la intervención de complejos procesos psico-anímicos.

Page 4: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Elementos de la músicaLa organización coherente de los sonidos y los

silencios (según una forma de percepción) nos da los parámetros fundamentales de la música, que son la melodía, la armonía y el ritmo.

La melodía es un conjunto de sonidos.La armonía, bajo una concepción vertical de la

sonoridad, y cuya unidad básica es el acorde, regula la concordancia entre sonidos que suenan simultáneamente y su enlace con sonidos vecinos.

La métrica, se refiere a la pauta de repetición a intervalos regulares, y en ciertas ocasiones irregulares, de sonidos fuertes o débiles y silencios en una composición.

El ritmo, es el resultado final de los elementos anteriores, a veces con variaciones muy notorias.

Page 5: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

FACTORES DE COMPARACION

Conjunto de Músicos → Variables de Decisión Rango de Afinación→ Rango de ValoresArmonía → Solución de vectores Estética → Función Objetivo Práctica → Iteración Experiencia → Matriz de memoria

Page 6: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Procedimientos de Harmony Search

1. Parámetros de inicialización2. Harmony Memory3. Nueva Armonía4. Actualización de Harmony Memory5. Criterio de Verificación y Terminación

Page 7: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Parámetros de Inicialización

Minimizar o Maximizar F(X) Sujeto ; i=1,2, … ,N

N es el número de variables de decisión K es el número de candidatos de las variables

de decisión.

Page 8: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

HARMONY MEMORY INICIAL

k

Page 9: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Nueva Armonía “Vector Harmony”

El nuevo vector Harmony x´ =

Dicho vector esta dado por tres reglas:1.Selección Aleatoria2.Se debe considerar HM3.Se debe hacer un ajuste (Ajuste de Tono)

Page 10: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Vector HarmonySELECCIÓN ALEATORIA

Partimos de que el músico puede entonar cualquier nota del pentagrama y que tiene grabada la melodía en su memoria (HM).

Page 11: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Vector HarmonySELECCIÓN ALEATORIA

Donde

Page 12: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Ajuste de TonoUna vez que obtuvimos el nuevo tono (Vector

Harmony), el músico puede ajustar aún mas el paso, probando con notas vecinas.

Ejemplo: Sol su vecindad es La o Fa

En este caso Do puede ajustar a Re

Page 13: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Ajuste de Tono

Donde se obtiene del HM y es el K-ésimo elemento de .

m es el índice de la vecindad ;

Para variables discretas m varía entre 1 y -1

Page 14: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Actualización de Harmony MemorySi x´ = tiene una

mejor respuesta en la función objetivo, lo reemplazamos en la Harmony Memory.

Page 15: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Presentación del AlgoritmoHarmony Search

Defina Función Objetivo F(x)Defina Harmony Memory (Raccept) Defina Ajuste de Tono (Rap)Generar Harmony Memory con armonías aleatorias While (t <Maximo_Numero_Iteraciones) While (i <=Numero_Variables) If (U [0,1 ] <Raccept) Elegir un valor del Harmony Memory por la variable i If (U [0,1] <Rap) Ajustar el valor mediante la adición de cierta cantidad End If Else Elegir un valor aleatorio End If End While Aceptar el new Harmony si es mejor End While Buscar la actual mejor soluciónEnd

Page 16: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Aplicaciones y Comparaciones con otros ModelosDiseño de Estructuras

Page 17: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Aplicaciones y Comparaciones con otros ModelosProblemas de Logística de Transportes

Page 18: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Aplicaciones y Comparaciones con otros ModelosDiseño de Redes de Aguas

Page 19: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Aplicaciones y Comparaciones con otros ModelosDiseño de Redes de Aguas en Gran Escala

Page 20: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Aplicaciones y Comparaciones con otros ModelosOperaciones de Represas

Page 21: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Aplicaciones y Comparaciones con otros ModelosOptimizar parámetros de Calibración

Hidrológicas

Page 22: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

Aplicaciones y Comparaciones con otros ModelosConservación Ecológica

Page 23: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

ConclusionesEl HS no requiere de cálculos complejos, por

lo tanto siempre esta libre de divergencia.El HS no requiere ajustes de valor inicial

para las variables de decisión.El HS puede manejar variables discretas, así

como variables continuas, mientras que las técnicas basadas en gradiente solo pueden manejar continuas.

Page 24: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

EJERCICIO DE APLICACION

OBS:

Page 25: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

PASO 1Generar una Harmony Memory

X1 X2 X3 F(X)

2 2 1 4

1 3 4 13

5 3 3 16

Page 26: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

PASO 2 “Recordar Bucles y Sentencias de Decisión”Seguir los pasos del algoritmo, lo volvemos a anunciar

While (t <Maximo_Numero_Iteraciones) While (i <=Numero_Variables) If (U [0,1 ] <Raccept) Elegir un valor del Harmony Memory por la variable i If (U [0,1] <Rap) Ajustar el valor mediante la adición de cierta

cantidad End If Else Elegir un valor aleatorio End If End While Aceptar el new Harmony si es mejor

Page 27: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

PASO 3I-ésima Iteración (Para este caso se cumplieron las 2

sentencias If)

Se generaron 2 números aleatorios adicionales de tal manera que el primero escogió la variable X1 y el 3er rank del mismo.

Como expone el algoritmo se cambio el componente del rank

próximo por un valor de ± 1. Siempre y cuando la función se optimice de acuerdo al criterio del problema.

X1 X2 X3 F(X)

Rank1 2 2 1 4

Rank2 2 3 4 12

Rank3 5 3 3 16

Page 28: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

X1 X2 X3 F(X)

Rank1 2 2 1 4

Rank2 2 3 4 12

Rank3 5 3 3 16

I+K Iteración (Para este caso se cumplieron las 2 sentencias If)

Se generaron 2 números aleatorios adicionales de tal manera que el primero escogió la variable X2 y el 3er rank del mismo.

Como expone el algoritmo se debería cambiar el componente del

Rank próximo por un valor de ± 1. Pero en este caso la función objetivo no optimiza por lo que no escogemos el vector Harmony en la Harmony Memory.

Page 29: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

X1 X2 X3 F(X)

Rank1 2 2 1 4

Rank2 2 3 4 12

Rank3 5 3 2 13

I+k+J Iteración (Para este caso se cumplieron las 2 sentencias If)

Se generaron 2 números aleatorios adicionales de tal manera que el primero escogió la variable X3 y el 2do rank del mismo.

Como expone el algoritmo se cambio el componente del rank próximo

por un valor de ± 1. Siempre y cuando la función se optimice de acuerdo al criterio del problema. Podíamos tomar el rank1 o el Rank 3. De manera aleatoria se obtuvo el tercero.

Page 30: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

X1 X2 X3 F(X)Rank1 2 2 1 4Rank2 2 3 4 12rank3 4 3 2 8

I+k+J+L Iteración (Para este caso se cumplieron las 2 sentencias If)

Se generaron 2 números aleatorios adicionales de tal manera que el primero escogió la variable X1 y el 2do rank del mismo. Como expone el algoritmo se cambio el componente del rank próximo por

un valor de ± 1. Siempre y cuando la función se optimice de acuerdo al criterio del problema. Podíamos tomar el Rank1 o el Rank 3. De manera aleatoria se obtuvo el tercero.

Para la nueva Harmony Memory se debe ordenar los vectores de la matriz de tal manera que los valores de F(X) sean ascendentes.

Page 31: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

X1 X2 X3 F(X)Rank1 2 2 1 4Rank2 4 3 2 8Rank3 2 3 3 7

I+k+J+L +H Iteración (Para este caso se cumplieron las 2 sentencias If)

Se generaron 2 números aleatorios adicionales de tal manera que el primero escogió la variable X3 y el 2do rank del mismo. Como expone el algoritmo se cambio el componente del rank próximo por un

valor de ± 1. Siempre y cuando la función se optimice de acuerdo al criterio del problema. Podíamos tomar el Rank1 o el Rank 3. De manera aleatoria se obtuvo el tercero.

Para la nueva Harmony Memory se debe ordenar los vectores de la matriz de tal manera que los valores de F(X) sean ascendentes.

Page 32: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

X1 X2 X3 F(X)Rank1 2 2 1 4Rank2 2 3 2 4Rank3 4 3 2 8

I+k+J+L +H+G Iteración (Para este caso se cumplieron las 2 sentencias If)

Se generaron 2 números aleatorios adicionales de tal manera que el primero escogió la variable X3 y el 3er rank del mismo. Como expone el algoritmo se cambio el componente del rank próximo por

un valor de ± 1. Siempre y cuando la función se optimice de acuerdo al criterio del problema.

Page 33: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

X1 X2 X3 F(X)

Rank1 2 2 1 4

Rank2 2 3 2 4

Rank3 4 3 2 8

I+k+J+L+H+G+D Iteración (Para este caso se cumplieron las 2 sentencias If)

Se generaron 2 números aleatorios adicionales de tal manera que el primero escogió la variable X2 y el 3er rank del mismo.

Como expone el algoritmo se debería cambiar el componente del Rank

próximo por un valor de ± 1. Pero en este caso la función objetivo no optimiza por lo que no escogemos el vector Harmony en la Harmony Memory.

Page 34: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

X1 X2 X3 F(X)

Rank1 2 2 1 4

Rank2 2 3 1 3

Rank3 4 3 2 8

I+k+J+L+H+G+D+X Iteración (Para este caso se cumplieron las 2 sentencias If)

Se generaron 2 números aleatorios adicionales de tal manera que el primero escogió la variable X3 y el 3er rank del mismo. Como expone el algoritmo se cambio el componente del rank próximo

por un valor de ± 1. Siempre y cuando la función se optimice de acuerdo al criterio del problema.

Para la nueva Harmony Memory se debe ordenar los vectores de la matriz de tal manera que los valores de F(X) sean ascendentes.

Page 35: Marcelo Apolo E. César Menéndez C. Nelson Ruíz William Sánchez V

X1 X2 X3 F(X)

Rank1 2 3 1 3

Rank2 2 2 1 4

Rank3 4 3 2 8

Solución ÓptimaRank 1= (2,3,1)F(X)=3

T= I+k+J+L+H+G+D+X