• Nenhum resultado encontrado

3.3 Gerador Harmˆonico

3.3.1 Representando Harmonias

´

E importante ter uma representa¸c˜ao das solu¸c˜oes que seja conveniente para mapear as- pectos fundamentais da m´usica ocidental, nomeadamente alturas tonais e acordes. Ainda considerando regras impl´ıcitas de composi¸c˜ao ocidental, o grupo de notas formando a tr´ıade de um acorde espec´ıfico ´e normalmente a base do processo de harmoniza¸c˜ao. As outras caracter´ısticas de acordes s˜ao normalmente descritas pelo grau da escala no qual uma nota dada est´a.

Como sistemas de afina¸c˜ao de escalas igualmente temperadas910 s˜ao o padr˜ao na m´usica ocidental, na maior parte dos casos, pode ser conveniente usar distˆancias relativas entre as notas ao inv´es de valores de altura tonal absolutos. Assim, o resultado final pode ser normalizado para representar esta solu¸c˜ao em um tom conveniente para o usu´ario. Tamb´em no resultado final, a oitava na qual cada nota ser´a executada pode ser convenientemente decidida, assim como a dura¸c˜ao de cada nota do acorde que formar´a seu ritmo.

Os nomes das notas est˜ao especificados na Tabela 3.8, com o grau das notas respecti- vas, considerando a escala natural de d´o. Existem doze notas, sete delas representando graus da escala natural (a escala de d´o ´e considerada no exemplo da Tabela 3.8). O grau das notas restantes devem ser representados em rela¸c˜ao ao grau de sua nota mais pr´oxima (por exemplo, F# pode ser 5-). O intervalo entre duas notas consecutivas ´e um intervalo de semitom (por exemplo, C e C#, ou E e F). Um intervalo de dois semitons ´e um intervalo de um tom (por exemplo, C e D, ou E e F#). Mais informa¸c˜ao sobre estas

9

O sistema de temperamento igual ´e baseado na divis˜ao de uma oitava em doze semitons com a mesma distˆancia entre si.

10

Tabela 3.8: Notas

Notas C C# D D# E F F# G G# A A# B

Grau 1 - 2 - 3 4 - 5 - 6 - 7

defini¸c˜oes pode ser encontrada em (Kennedy & Bourne 2004).

A representa¸c˜ao deve ser significativa para o dom´ınio espec´ıfico, que ´e apenas a representa¸c˜ao de harmonias neste segundo AG. Assim, uma harmonia dada ´e definida por um grupo de vetores, cada um deles definindo um conjunto espec´ıfico de notas, que devem ser executadas durante este compasso espec´ıfico. Este esquema de representa¸c˜ao considera um grau de granularidade m dos acordes no qual um grau m = 1 significa que um acorde ser´a procurado para cada compasso.

´

E comum definir uma granularidade para esquemas de representa¸c˜ao em aplica¸c˜oes computacionais para m´usica (Biles 2001) j´a que o espa¸co de busca seria infinito caso contr´ario. Se o usu´ario quer mais acordes por compasso, ´e apenas necess´ario aumentar o valor de m. Desda maneira, m se torna um parˆametro do algoritmo ou um aspecto do problema. Outra solu¸c˜ao poss´ıvel para a varia¸c˜ao na granularidade dos resultados finais ´e ter um banco de dados com algumas progress˜oes de acordes de diferentes granularidades que poderiam ser usadas entre acordes do resultado final.

Neste trabalho, prop˜oe-se uma forma de representa¸c˜ao da harmonia como na Tabela 3.9, onde ´e poss´ıvel perceber que as frequˆencias absolutas das notas n˜ao est˜ao represen- tadas. Estas frequˆencias n˜ao s˜ao inicialmente relevantes no contexto de harmonias pois a altura tonal de todas as notas podem ser definidas em rela¸c˜ao `a nota fundamental, enquanto sua pr´opria altura tonal pode ser previamente definida em rela¸c˜ao a uma nota conveniente.

A utiliza¸c˜ao de 5 notas torna poss´ıvel o uso de uma tr´ıade e duas notas extras no mesmo acorde. A 5a nota pode ser utilizada ou n˜ao, como no compasso 2 da Tabela 3.9, pois isso levaria a v´arias penalidades inevit´aveis durante a avalia¸c˜ao de solu¸c˜oes mais simples, nas quais notas al´em da tr´ıade n˜ao s˜ao desej´aveis, como ser´a visto em subse¸c˜oes seguintes. Assim, pode n˜ao haver uma nota na 5a posi¸c˜ao de um compasso e um acorde pode ter 4 ou 5 notas.

Tabela 3.9: Representa¸c˜ao de uma harmonia Compasso 1 2 ... n 5a Nota E ... D 4a Nota C D ... F 3a Nota G A ... D 2a Nota E F ... B Nota fundamental C D ... G

fundamental ´e usada como uma ˆancora para decidir a altura tonal das outras notas. A nota fundamental define a altura tonal da nota mais grave enquanto as outras notas s˜ao definidas com o menor intervalo vertical poss´ıvel em rela¸c˜ao `a ´ultima nota. Esta codifica¸c˜ao faz o sistema tamb´em ser mais flex´ıvel que outros com apenas 4 notas (que n˜ao tˆem a capacidade de representar alguns acordes dissonantes) e evita problemas como intervalos verticais muito largos (por causa da defini¸c˜ao das notas em termos relativos `a fundamental), que seria provavelmente tratado com penalidades na fun¸c˜ao de fitness se outras abordagens de representa¸c˜ao fossem usadas.

As notas podem ser representadas por n´umeros inteiros de 1 a 12 pois a codifica¸c˜ao n˜ao precisa definir a qual oitava pertence a nota. Os n´umeros de 1 a 12 n˜ao preci- sam necessariamente sempre corresponder `as mesmas notas j´a que a harmonia pode ser transposta para qualquer tom quando o gen´otipo ´e passado para o fen´otipo. Assim, na representa¸c˜ao da Tabela 3.9, os nomes das notas s˜ao meramente representativos. Isso acontece pois um sistema de igual temperamento ´e usado no trabalho e consequen- temente a rela¸c˜ao dos intervalos entre as notas se torna mais importante que o valor absoluto de cada nota. O conjunto de notas em cada acorde j ´e representado por:

hj =⌦⌘1j, ⌘2j, ⌘3j, ⌘4i, ⌘5j↵, j = 1, . . . , n (3.3) onde ⌘ij ∈{0, . . . , 12} e 0 significa a ausˆencia de uma nota.

3.3.2

Operadores Gen´eticos

A cria¸c˜ao de novos cromossomos atrav´es das gera¸c˜oes ´e feita por operadores gen´eticos cuidadosamente projetados, que de fato permitem a ocorrˆencia do processo evolucion´ario. Os operadores mais comuns s˜ao a muta¸c˜ao e o cruzamento, apesar de operadores mais complexos poderem ser projetados para um campo espec´ıfico de problemas. Estes ope- radores podem ser cegos ou guiados, o que significa que eles nem sempre ocorrem de uma maneira completamente aleat´oria. Operadores guiados podem ajudar aplica¸c˜oes musicais j´a que mudan¸cas completamente aleat´orias em cromossomos n˜ao s˜ao conveni- entes em algumas situa¸c˜oes. Por exemplo, se um gene representa uma nota, a muta¸c˜ao pode ser guiada para respeitar algumas regras harmˆonicas ou mel´odicas.

Alguns operadores musicais comuns s˜ao utilizados na implementa¸c˜ao deste trabalho para fazer o processo evolucion´ario mais eficiente. Kennedy & Bourne (2004) descre- vem alguns poss´ıveis operadores para harmoniza¸c˜ao, por´em, com um esquema de repre- senta¸c˜ao diferente. Al´em do cruzamento, todos os outros operadores ocorrem na fase de muta¸c˜ao. A probabilidade de se entrar na fase de muta¸c˜ao ´e de 20% e cada operador de muta¸c˜ao tem outra probabilidade de ocorrer. Este valor de 20% ´e definido relativamente alto pois algumas das muta¸c˜oes poss´ıveis que n˜ao afetam muito a qualidade das solu¸c˜oes tˆem uma grande chance de serem escolhidos. A probabilidade de se entrar na fase de cruzamento ´e de 90% e apenas um cruzamento musical pode ocorrer. Os operadores musicais utilizados para evoluir harmonias est˜ao descritos abaixo:

Cruzamento musical O cruzamento implementado neste trabalho n˜ao trabalha a n´ıvel de bits, j´a que isso poderia levar a muitas solu¸c˜oes aleat´orias. Similarmente ao cru- zamento comum, um ponto de corte ´e escolhido entre os pais e estes compartilham informa¸c˜ao considerando os genes (ou os dados) `a esquerda e `a direita deste ponto de corte na representa¸c˜ao dos indiv´ıduos. Contudo, a informa¸c˜ao de um compasso ´e insepar´avel e o ponto de corte deve ser entre 2 compassos. A sele¸c˜ao de apenas um ponto de corte ´e conveniente pois assim n˜ao se quebram muitas rela¸c˜oes entre os compassos, o que ´e considerado na avalia¸c˜ao das harmonias. Usar mais pontos de corte seria muito disruptivo. A probabilidade de um cruzamento ´e de 90%. Muta¸c˜ao da altura tonal Mudan¸cas na altura tonal de uma das notas em um com-

passo. A maior mudan¸ca poss´ıvel em uma nota ´e de 1 tom pois mesmo com alguns intervalos verticais muito largos sendo aceit´aveis, muitos deles levam a resultados pouco musicais. Um intervalo maior pode ser alcan¸cado pela aplica¸c˜ao de mais de

um operador ou mesmo por v´arias muta¸c˜oes na altura tonal mas n˜ao com uma ´

unica muta¸c˜ao da altura tonal. Intervalos de no m´aximo um tom tamb´em for¸cam o algoritmo a explorar mais acordes dissonantes pois uma nota de uma tr´ıade nunca ser´a mutada para outra nota da tr´ıade. Note que intervalos realmente muito lar- gos n˜ao s˜ao mesmo previstos pela representa¸c˜ao. A probabilidade de usar este operador ´e de 30%. Se n˜ao h´a nota alguma na posi¸c˜ao aleatoriamente selecionada (apenas poss´ıvel na quinta nota de um compasso), o operador n˜ao ´e aplicado. Troca entre o mesmo acorde Para trocar a posi¸c˜ao das notas no mesmo compasso.

Este operador cria invers˜oes em um acorde dado. A probabilidade de usar este operador ´e de 50%. Se uma posi¸c˜ao sem nota ´e selecionada, uma nova posi¸c˜ao ´e selecionada.

Reinicializa¸c˜ao do acorde Reinicializa todas as notas de um compasso usando uma tr´ıade com uma nota da melodia no compasso correspondente. Isso gera novos acordes com uma grande possibilidade de serem aceit´aveis. Todas as tr´ıades tem a mesma probabilidade de serem escolhidas e a probabilidade de se aplicar o operador ´e de 15%.

C´opia Copia a informa¸c˜ao de um compasso para outro, criando a repeti¸c˜ao de alguns acordes na harmonia. A probabilidade deste operador ´e de 5%.

A probabilidade de se entrar na fase de muta¸c˜ao ´e definida como 20% devido a algumas muta¸c˜oes que n˜ao alteram expressivamente o fitness das solu¸c˜oes, como a troca de notas entre o mesmo acorde, que pode apenas interferir na condi¸c˜ao da posi¸c˜ao da nota fundamental.

A Tabela 3.10 resume os operadores gen´eticos utilizados neste trabalho com suas respectivas probabilidades de serem aplicados.

Documentos relacionados