1 / 33

Acompanhamento musical em tempo real

Acompanhamento musical em tempo real. Geber Ramalho. Jam Session. Porque modelar este tipo de atividade?. A dificuldade intrínseca do problema faz a pesquisa em IA avançar... e pode ser útil em problemas semelhantes (ex. monitorar uma UTI) É relevante no mercado de software musical

shauna
Download Presentation

Acompanhamento musical em tempo real

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Acompanhamento musical em tempo real Geber Ramalho

  2. Jam Session

  3. Porque modelar este tipo de atividade? • A dificuldade intrínseca do problema • faz a pesquisa em IA avançar... • e pode ser útil em problemas semelhantes (ex. monitorar uma UTI) • É relevante no mercado de software musical • companheiro de ensaio • companheiro de palco • assistente de arranjo • E em outros... • jogos de computadores

  4. Sistemas de acompanhamento e improvisação

  5. Roteiro da apresentação • O que é um agente de acompanhamento? • Definição da tarefa • Dificuldades de implementação • Acompanhamento por reutilização de fragmentos musicais • Conceitos básicos e funcionamento • Pontos críticos da concepção • Sistema ImPact

  6. raciocínio • Conhecimento: • - teoria musical, frases melódicas, ... • - habilidade instrumental ... • Ações: • - escolher e tocar notas Agente • Objetivos: • - ficar feliz • - tocar bem percepção execução Acordes: ... A7(b9 | Cm7 | F7 | Fm7 | Bb7 | Ebmaj7 . . . Solo: ... Piano: ... Bateria: ... Publico: ... Baixo: ... b n A tarefa de um agente Jazzman

  7. Exemplo de uma Grade de Acordes Stella by Starlight

  8. É possível modelar este tipo de atividade? • Problema “mal colocado” • muitas soluções, objetivos dinâmicos e mal definidos • Criação coletiva e em tempo real • Reações adequadas, rápidas e coordenadas • Ambiente complexo • dinâmico, não-determinista, contínuo, e não-episódico A7(b9) | Cm7 | F7 | Fm7 | Bb7 . . .

  9. Conhecimento musical • Sua aquisição é o problema central! • grande “gap” entre a grade de acordes e a música tocada • falta de introspecção sobre como raciocinam • falta de justificativa em termos de nota por nota

  10. Fragmentos melódicos e rítmicos (1/2) • Eles têm um papel fundamental no jazz • aprendizado por imitação • reutilização de frases (“clichês”) Dm7 A7 Miles Davis:

  11. Cm7(b5) F7 Em7(b5) A7 Fragmentos melódicos e rítmicos (2/2) • Eles permitem minimizar o esforço de aquisição de conhecimento • Estão disponíveis • Exemplificam o conhecimento que é difícil de ser formalizado tons vizinhos, dissonante, pouco denso, ascendente, etc. arpejado, consonante, relativamente denso, em V, etc.

  12. Solução atual de maior “sucesso” • Reutilização de fragmentos musicais! • Idéia: • Resolver novos problemas baseando-se em problemas já resolvidos • Observação • igual ao case-based reasoning, • onde novos problemas (ex. seqüência de acordes) são resolvidos adaptando-se soluções (ex. fragmentos melódicos) de problemas já resolvidos

  13. Funcionamento: laço principal • Para um dado instrumento, enquanto sua posição_atual < final_da_grade, faça: • Descreva o contexto atual C; • Busque na biblioteca B o fragmento P mais adequado c/ relação a C; • Adapte P a C, obtendo P’; • Adicione (cole) P’ à melodia ou linha rítmica composta até então

  14. Quatro questões fundamentais • Qual a natureza e o tamanho dos fragmentos? • Como representá-los? • Como indexá-los? • Qual critérios utilizar para preferir um fragmento particular?

  15. Natureza dos casos • Conteúdo • com relação às dimensões: altura, duração, e amplitude Hodgson (67 sax), Ramalho (256 baixo) Band-in-a-box (100) alturas: {C3, D3, Eb3, E3, F3, D3, G3, G#3, A} intervalos: {2M, 2m, 2m, 2m, -3m, 4, 1#, 2m} intervalos diatônicos : {2, 2, 2, 2, 3, 4, 1, 2} durações: {1, 1, 1, 1, 0.5, 0.5, 1, 1, 1} ... spector (5) Ulrich (16) Baggi (16 piano + 22 bateria)

  16. |Em7(b5) | A7(b9)    | Cm7 | F7 | Fm7 ... Comprimento dos casos • Critérios • plausibilidade musical (fixo x variável) • granularidade (continuidade x reatividade) • Soluções atuais: • unidade de tempo (beat) - Johnson-Laird, • compasso - Brown, Baggi • acorde - Band-in-a-box, Pachet • esquema de acorde (II-V, II-V-I, II-SubV-I, ... ) - Ramalho, Hodgson

  17. Indexação dos casos • Objetivo • conjunto de índices para uma recuperação rápida e apropriada • Dois tipos de índices • Descrição do contexto: acordes sub-jascentes, posição, andamento, próximos acordes , ... • Propriedades musicais do fragmento: dissonância, densidade, tessitura, contorno melódico, dinâmica, ... • Janela: quão do passado deve ser considerado? • é preciso determinar o tamanho da janela de indexação:

  18. Janela de indexação Frase a ser armazenada Indexação dos casos: exemplo • Contexto • acordes subjascentes = “Dbmaj7 Gb7”; esquema de acorde = “II-V maior”; posição = “turnaround”; etc. • Propriedades • dissonância = baixa; densidade = média; sincopado = médio, estilo = arpejo; etc.

  19. Preferência • Caracterização da recuperação • Query Q = (C, D) , • onde C = {c1,...,ck} contexto D = {d1,...,dj} propriedades musicais • Função de recuperação • F(Q,L) -> fragmento P, onde L é a base de casos • F pode ser: • aleatória • baseada em similaridade • baseada em pesos fornecidos pelo usuário

  20. Adaptação • Objetivos: • coerência harmônica, continuidade melódica, intenções musicais... • Complicado: • transformações complexas e não ortogonais • Adaptações implementadas até agora • transposição, mudança de amplitude, inserção e eliminação de notas, mudança de alturas • Política de recuperação alternativa • não só pensar na similaridade mas na adaptabilidade também

  21. Abordagem Impact:improvisação como resolução de problemas 1) Determinar o segmento S da grade segundo os “esquemas de acordes” (ex. II-V-I) 2) Determinar os “critérios musicais” do segmento a - Ativar novas PACTs em função dos dados perceptivos; b - Selecionar as PACTs para o segmento S; c - Montar as PACTs selecionadas. 3) Recuperar um fragmento da Memória Musical e adaptá-lo segundo a PACT produzida no passo anterior

  22. Exemplo • “Stella by Starlight” segmentada

  23. Ativação de PACTs • Formato das regras • SE situação S ENTÃO ativar PACT Y • Regras relacionadas com os acordes: • SE o agente está em um acorde alterado, ENTÃO ativar PACT “usar cromatismo” neste compasso • Regras relacionadas com os outros músicos: • SE o pianista esta tocando acordes dissonantes, ENTÃO ativar PACT “tocar de maneira consonante privilegiando arpejos” até que o pianista mude

  24. Ativação de PACTs • Regras relacionadas com o próprio passado: • SE faz mais de 2 compassos que o agente sobe por tons vizinhos e si la tessitura já está alta, ENTÃO ativar PACT “fazer um drop” agora • Regras relacionadas com a forma: • SE o agente está no começo de um chorus, ENTÃO ativar PACT “tocar tônica no primeiro tempo” até o começo da próxima seção

  25. O solista tocacromáticamente O públicoaplaude Cenário: simulando o ambiente • A escuta é muito difícil de implementar (Hidaka et al. 95, Pennycook et al. 93, Walker 94) Cenário # @ % § $ Todos tocam “hot” Agente (execução) |Em7(b5) | A7(b9)    | Cm7 | F7 | Fm7 | Bb7 Grade

  26. Seleção de PACTs PACT 76 PACT 75 PACT 74 PACT 65 PACT 63 PACT 37 PACT 21 PACT 2 segmento atual tempo |Em7(b5) | A7(b9)    | Cm7 | F7 | Fm7 | Bb7 | Ebmaj7 | Ab7 ...

  27. combine propague elimine combine Montagem de PACTs • Resolução de conflitos e combinação de informação Estado final estado inicial PACTs (PACT tocável) Espaço de montagem elimine propague elimine

  28. Recuperação dos casos Caso fonte (memória musical) Caso alvo (query) Exemplo: http://www.di.ufpe.br/~musica/cmps/impact/caso.html proriedades do fragmento antecedente proriedades do fragmento conseqüente contexto do fragmento antecedente contexto do fragmento conseqüente

  29. Resultados • Sistema ImPact • Smalltalk-80 + MusES + NéOpus • Tempo real sem PC Pentium e Sun Sparc 10 • Mais de 230 classes (OOP) e 5000 métodos • 256 casos (354 fragmentos): Ron Carter • 6 bases de regras (85 regras) et 3 meta-bases de regras • Foi considerado o melhor baixo de jazz pelos especialistas (1997)

  30. Continuação do trabalho... • Outros estilos musicais, sobretudo os brasileiros • frevo, maracatú, bossa-nova, etc. • Outros instrumentos • bateria, percussão, piano, etc. • implica em sistema multiagentes • Projeto D’Accord Guitar • acompanhamento de violão onde ritmo segue mesma abordagem e harmonia baseada em regras (por enquanto) • Antecipação de acordes • acompanhamento “de ouvido” • Batucada: um lego rítmico

  31. Conclusões • A reutilização de fragmentos musicais é uma técnica promissora... • aquisição de conhecimento mais simples • melhores resultados musicais • é independente do domínio ...mas é necessária a integração de mais conhecimento • indexação, preferência, adaptação, etc. ...ou seja, a inteligência está na escolha do fragmento!

  32. Exemplos sonoros • Exemplos sonoros (Autumn Leaves) • 1 - Usando regras • 2 - Usando só o CBR • 3 - Usando CBR + PACTs • 4 - Usando CBR + PACTs + Cenário • http://www.di.ufpe.br/~glr/Thesis/examples.html

  33. Fragments Reuse • Three benefits that justify our choice • Minimizes the formalization problem • The fragments themselves embody a certain musical knowledge • Scalable • It is possible to use the same process to any instrument and style • Improves expressiveness • By reusing fragments directly captured from a human musician performance nuances can be taken into account

More Related