Tesis que para obtener el




descargar 373.05 Kb.
títuloTesis que para obtener el
página3/7
fecha de publicación19.10.2016
tamaño373.05 Kb.
tipoTesis
b.se-todo.com > Derecho > Tesis
1   2   3   4   5   6   7

Nota = 39


Contador

= 0

Binario

0

0

0

0

0

0

0

0

0

0



Se tienen 10 dados de juego, un contador con incremento igual a 1, dicho contador será un número binario de 10 dígitos y deberá de ser inicializado a cero. Supóngase que los dados han sido lanzados, que cayeron y quedaron en la posición que se muestra a continuación, una variable, a la cual denominaremos Nota, irá tomando los valores de la suma de los puntos que muestran las caras superiores de cada dado.

Haciendo coincidir cada dado con cada una de las posiciones de los dígitos del contador. En este caso, se obtiene el valor de Nota = 39, que corresponde al #Re (re sostenido) que se toma como la primer nota de la melodía.

El siguiente paso, es obtener la siguiente Nota de la melodía, primeramente se incrementa el contador, pasando de 0 a 1, con lo que el 0 del bit menos significativo, cambia de estado a 1, siendo, en este paso, el único componente del contador que cambia de estado, es decir, el único de los 10 dígitos del contador, que manifestó un cambio, entonces el dado correspondiente al bit menos significativo, se lanza, mientras los dados restantes permanecen en reposo; se calcula el valor de nota, sumando el número de puntos que indique la cara superior de cada uno de los dados. Si por ejemplo, el número de puntos de la cara superior del dado lanzado fue igual a 6, entonces nota = 41 (Fa), siendo ésta la siguiente nota de la melodía.

Decimal

Contador

= 1

Binario

5 + 6 + 1 + 6 + 2 + 1 + 3 + 6 + 5 + 6

Nota = 41


0

0

0

0

0

0

0

0

1

0



El siguiente incremento del contador, hará que sus dígitos pasen de 0000000001 a 0000000010. Los dos bits menos significativos cambian de estado, el bit menos significativo pasa de 1 a 0 y el segundo bit menos significativo de 0 pasa a 1, luego los dados correspondientes a estos bits se toman y se lanzan, mientras los dados restantes permanecen sin cambio, supongamos que los puntos que muestran los dados ahora son 3 y 1, se repite el procedimiento para calcular el valor de nota que ahora es igual a 34, que será la tercer nota de la melodía.

Decimal

Contador

= 2

Binario

5 + 6 + 1 + 6 + 2 + 1 + 3 + 6 + 3 + 1

Nota = 34


0

0

0

0

0

0

0

1

0

0



Para obtener la siguiente nota hay que seguir el mismo procedimiento:

-         Se incrementa en uno el contador, para que pase de 2 a 3, es decir, de 0000000010 a 0000000011 ( en este caso, el valor del primer bit pasa de 0 a 1 siendo el único dado que se lanzará ).

-         Se lanzan todos los dados cuyo dígito haya experimentado un cambio de estado.

-         Se suman los valores de los 10 dados, y se obtiene la nueva Nota.

Y el proceso se repite indefinidamente. La figura 7 muestra algunas notas generadas de esta manera.

a

b

Fig. 7: (a) Gráfica en dos dimensiones de ruido 1/f. (b) Partitura de ruido 1/f.

tiempo

notas

do

re

mi

fa

sol

la

si

do

re



Y enseguida se lista el pseudocódigo para generar música 1/f que desarrollamos basándonos en el algorítmo de Voss.


1 2 .... ... 60

notas {do, re, mi, fa, sol, la, si, do, re, mi,....,la,si}

avienta_dado [10]

numero_binario = 0000000000

numero_binario2 = 1111111111

main()

{

While( No Esc )

{

for( nn=0; nn<=9; nn++ )

{

if( bit nn de numero_binario != bit nn de numero_binario2 );

avienta_dado[nn] = random(7);

Nota += avienta_dado[nn];

}

sound( notas[Nota]);

delay(200); //en milisegundos

numero_binario2 = numero_binario;

numero_binario ++;

}

nosound();

}

 

Prog. 4: Psudocódigo para la generación de ruido 1/f.

 




 
2.0 SISTEMA EVOLUTIVO GENERADOR DE MÚSICA

2.1 Introducción a los Sistemas Evolutivos

En las páginas anteriores, se ha descrito como generar música parda, blanca y 1/f. La música obtenida a partir de estos ruidos, es ya agradable, sobre todo la música 1/f, sin embargo, no basta con utilizar estas técnicas para desarrollar un verdadero sistema compositor. Supongamos que se desarrollan diferentes algoritmos que hagan composición musical, es posible, que en un momento dado, se encuentre alguno que genere música agradable, sin duda alguna, dicho algoritmo presentaría una densidad espectral alrededor de 1/f. Pero, un primer problema es que existen una cantidad enorme de algoritmos para generar música, de esta manera, encontrar uno que genere música “humana”, puede tomar algo de tiempo. Por otro lado, se van a tener que encontrar tantos algoritmos como diferentes géneros de música existen y ¿qué tal si quisiéramos que el sistema compusiera música parecida a las composiciones hechas por algún autor en especial?, esto, implica que cada autor debe de tener su propio algoritmo, lo cual, vuelve a ésta, una tarea titánica.

¿Porqué no permitir que sea el mismo sistema el que encuentre las reglas de composición, el algoritmo a seguir?

Con lo cual ha llegado el momento, para hablar de un poco de magia, para hablar de los Sistemas Evolutivos.

Resulta que uno de los problemas que comúnmente se encuentran en el desarrollo de sistemas, es encontrar las reglas de operación, muchas veces, esta búsqueda no es tan trivial, por ejemplo ¿cómo encontrar las reglas de composición del maestro Nicolo Paganini? Los sistemas evolutivos están diseñados para encontrar las reglas del medio que los rodea y aplicarlas para resolver los problemas. Un sistema evolutivo tiene la capacidad de aprender cotidianamente; a un sistema tal se le pueden dar ejemplos de música de Paganini y encontrará las reglas con las cuales compuso dicho autor, una vez que se hayan encontrado, el sistema podrá componer música basándose en ellas, como el mismo Paganini lo haría.

La característica principal de un sistema evolutivo está en que es un sistema capaz de aprender permanentemente de su medio ambiente, por ejemplo, los seres humanos somos sistemas evolutivos de lo más sofisticados que hay, un niño desde que nace empieza a conocer y a aprender del medio que lo rodea. Uno de los primeros elementos que aprende, es a reconocer quien es su madre y dado que la madre se viste cada día diferente, usa peinados distintos, se pinta de diferente manera y toda una serie de factores que cambian día con día, el niño va evolucionando; encuentra un valor medio de quien es su madre y aprende a reconocerla, se vista como se vista o se peine como se peine. Lo mismo ocurre cuando aprende a hablar, primero reconoce los diferentes tonos de voz y pese a que no sabe “Lenguaje Natural” reconoce perfectamente cuando su madre habla con tono de enojo y cuando está contenta; ya cuando domina ciertas palabras entonces todo lo que no conoce: lo inquiere, pregunta qué significa, permitiendo que la base de conocimientos aumente y entonces se encuentra en el camino en el que todos estamos, aprender a hablar, unos saben más y unos menos pero el proceso de aprendizaje es el mismo y permanente.

Esa es la forma en la que los sistemas evolutivos trabajan, aprenden continuamente las reglas del medio que los rodea y las aplican para resolver problemas.

2.2 Sistema Compositor

Para ver como se aplican los sistemas evolutivos en el desarrollo de un sistema compositor, primero presentaremos el algoritmo base que usaremos para generar música y luego veremos la componente evolutiva.

Primero: Utilizaremos sólo siete notas ordenadas, Do, Re, Mi, Fa, Sol, La, Si; no implica esto que se limite a siete notas, ya que pueden ser n escalas y sólo es con el fin de hacer más sencilla la explicación.

Segundo: Con estas siete notas, construiremos una matriz cuadrada, de columnas Do, Re, Mi, Fa, Sol, La, Si e igualmente renglones Do, Re, Mi, Fa, Sol, La, Si.

Tercero: Llenamos algunas casillas de la matriz con números generados en forma aleatoria, por lo que la llamamos matriz evolutiva aleatoria. Por ejemplo, los números diferentes de cero que tiene la siguiente matriz, han sido escogidos aleatoriamente.

Matriz Evolutiva Aleatoria

 

Do

Re

Mi

Fa

Sol

La

Si

Do

0

0

90

0

30

40

0

 

Re

10

0

15

45

20

70

80

 

Mi

5

25

0

60

0

30

90

 

Fa

0

80

10

40

15

95

30

 

Sol

25

15

0

40

65

70

0

 

La

0

35

5

10

0

0

0

 

Si

20

30

0

0

60

0

70

 

 

Nota: Si en cada renglón de la matriz se divide el valor de cada casilla entre el Total del renglón, entonces lo que obtenemos es una matriz de probabilidades y lo que representa es la probabilidad de pasar de una nota a otra.

Por ejemplo, si tomamos el renglón del Do

 

Do

Re

Mi

Fa

Sol

La

Si

Do

0

0

90

0

30

40

0

 

El total vale 90+30+40 = 160. Si dividimos el renglón entre 160, queda:

 

Do

Re

Mi

Fa

Sol

La

Si

Do

0

0

9/16

0

3/16

4/16

0

 

La probabilidad de pasar de Do a Fa es cero y de Do a Mi es 9/16. O sea que, este algoritmo se basa en una matriz de probabilidad, aunque para propósitos prácticos, seguiremos trabajando con los valores enteros.

Cuarto: Agregamos una columna llamada Total, que originalmente está llena de ceros, a la derecha en la matriz evolutiva aleatoria.

Quinto: En cada renglón vamos a hacer un recorrido de izquierda a derecha ignorando las casillas con valor cero.

El primer número (más a la izquierda) diferente de cero, se suma a Total y el resultado sustituye al primer número.

El segundo número diferente de cero se suma a Total y el resultado se sustituye en el segundo número.

Así sucesivamente con todos los valores diferentes de cero, el i-ésimo número diferente de cero se suma al Total y el resultado sustituye al i-ésimo número. Agotados estos, la suma debe quedar almacenada en la columna Total del renglón. Por ejemplo, el renglón original es

 

Do

Re

Mi

Fa

Sol

La

Si

Total

Do

0

0

90

0

30

40

0

 

0
1   2   3   4   5   6   7

similar:

Tesis que para obtener el iconTesis que para obtener el grado de

Tesis que para obtener el iconTesis que para obtener el grado

Tesis que para obtener el iconTesis que, para obtener el grado de

Tesis que para obtener el iconTesis que para obtener el grado de maestro en ciencias de la educacióN

Tesis que para obtener el iconTesis monográfica para obtener el grado de bachiller en música

Tesis que para obtener el iconMientras que los profesionales contactados pueden obtener asesoría...

Tesis que para obtener el iconInvestigación dirigida para obtener el título

Tesis que para obtener el iconTaller de grado para obtener el título de Médico Veterinario y Zootecnista

Tesis que para obtener el iconUtilizar adecuadamente una técnica fácil para obtener dermatoglifos

Tesis que para obtener el iconRequisitos mínimos para obtener calificación positiva en la asignatura...




Todos los derechos reservados. Copyright © 2019
contactos
b.se-todo.com