Algoritmisk sammensætning - Algorithmic composition

Algoritmisk komposition er teknikken til at bruge algoritmer til at skabe musik .

Algoritmer (eller i det mindste formelle regelsæt) er blevet brugt til at komponere musik i århundreder; de procedurer, der bruges til at plotte stemmeføring i f.eks. vestlig kontrapunkt , kan ofte reduceres til algoritmisk bestemmelse. Udtrykket kan bruges til at beskrive musikgenererende teknikker, der kører uden løbende menneskelig indgriben, for eksempel gennem indførelse af tilfældige procedurer. Men gennem live kodning og andre interaktive grænseflader er en fuldstændig menneskecentreret tilgang til algoritmisk sammensætning mulig.

Nogle algoritmer eller data, der ikke har nogen øjeblikkelig musikalsk relevans, bruges af komponister som kreativ inspiration til deres musik. Algoritmer som fraktaler , L-systemer , statistiske modeller og endda vilkårlige data (f.eks. Folketællingstal , GIS- koordinater eller magnetfeltmålinger ) er blevet anvendt som kildemateriale.

Modeller til algoritmisk sammensætning

Kompositionsalgoritmer klassificeres normalt efter de specifikke programmeringsteknikker, de bruger. Resultaterne af processen kan derefter opdeles i 1) musik komponeret af computer og 2) musik komponeret ved hjælp af computer. Musik kan betragtes som komponeret af computeren, når algoritmen er i stand til at træffe sine egne valg under oprettelsesprocessen.

En anden måde at sortere kompositionsalgoritmer på er at undersøge resultaterne af deres kompositionsprocesser. Algoritmer kan enten 1) give notationsinformation ( noder eller MIDI ) til andre instrumenter eller 2) give en uafhængig måde til lydsyntese (afspille kompositionen i sig selv). Der er også algoritmer, der skaber både notationsdata og lydsyntese.

En måde at kategorisere kompositionsalgoritmer på er deres struktur og måde at behandle data på, som det ses i denne model af seks delvis overlappende typer:

  • translationelle modeller
  • matematiske modeller
  • videnbaserede systemer
  • grammatikker
  • optimeringsmetoder
  • evolutionære metoder
  • systemer, der lærer
  • hybridsystemer

Translationsmodeller

Dette er en tilgang til musiksyntese, der involverer "oversættelse" af information fra et eksisterende ikke-musikalsk medium til en ny lyd. Oversættelsen kan være enten regelbaseret eller stokastisk . For eksempel, når et billede oversættes til lyd, kan et jpeg- billede af en vandret linje fortolkes i lyd som en konstant tonehøjde, mens en opad skråt streg kan være en stigende skala. Ofte søger softwaren at udtrække koncepter eller metaforer fra mediet (såsom højde eller stemning) og anvende den udpakkede information til at generere sange ved hjælp af måder, som musikteori typisk repræsenterer disse begreber. Et andet eksempel er oversættelse af tekst til musik, som kan nærme sig komposition ved at udtrække sentiment (positiv eller negativ) fra teksten ved hjælp af maskinlæringsmetoder som sentimentanalyse og repræsenterer den stemning med hensyn til akkordkvalitet som mindre (trist) eller dur ( glade) akkorder i den genererede musikalske output.

Matematiske modeller

Matematiske modeller er baseret på matematiske ligninger og tilfældige begivenheder. Den mest almindelige måde at skabe kompositioner gennem matematik på er stokastiske processer . I stokastiske modeller er et stykke musik komponeret som et resultat af ikke- deterministiske metoder. Kompositionsprocessen styres kun delvist af komponisten ved at vægte mulighederne for tilfældige begivenheder. Fremtrædende eksempler på stokastiske algoritmer er Markov-kæder og forskellige anvendelser af Gaussiske distributioner . Stokastiske algoritmer bruges ofte sammen med andre algoritmer i forskellige beslutningsprocesser.

Musik er også blevet komponeret gennem naturlige fænomener. Disse kaotiske modeller skaber kompositioner fra naturens harmoniske og inharmoniske fænomener. For eksempel er fraktaler siden 1970'erne også blevet undersøgt som modeller for algoritmisk sammensætning.

Som et eksempel på deterministiske kompositioner gennem matematiske modeller giver On-Line Encyclopedia of Integer Sequences en mulighed for at spille en heltalssekvens som 12-tone lige temperamentmusik . (Det er oprindeligt indstillet til at konvertere hvert heltal til en note på et 88-tangent musikalsk keyboard ved at beregne heltal modulo 88 ved en stabil rytme. 123456 svarer således til de naturlige tal til halvdelen af ​​en kromatisk skala.) Som et andet eksempel, serien med alle intervaller er blevet brugt til computerstøttet komposition

Videnbaserede systemer

En måde at skabe kompositioner på er at isolere den æstetiske kode for en bestemt musikgenre og bruge denne kode til at skabe nye lignende kompositioner. Videnbaserede systemer er baseret på et foruddefineret sæt argumenter, der kan bruges til at komponere nye værker af samme stil eller genre. Normalt opnås dette ved et sæt tests eller regler, der kræver opfyldelse for at kompositionen skal være komplet.

Grammatikker

Musik kan også undersøges som et sprog med et særpræget grammatiksæt . Kompositioner oprettes ved først at konstruere en musikalsk grammatik, som derefter bruges til at skabe forståelige musikstykker. Grammatikker indeholder ofte regler for komponering på makroniveau, for eksempel harmonier og rytme , snarere end enkeltnoter .

Optimeringsmetoder

Når der genereres veldefinerede stilarter, kan musik ses som et kombinatorisk optimeringsproblem, hvor målet er at finde den rigtige kombination af toner, så objektivfunktionen minimeres. Denne objektive funktion indeholder typisk regler i en bestemt stil, men kunne læres ved hjælp af maskinlæringsmetoder såsom Markov-modeller. Forskere har genereret musik ved hjælp af et utal af forskellige optimeringsmetoder, herunder heltalsprogrammering, variabel nabosøgning og evolutionære metoder som nævnt i næste underafsnit.

Evolutionære metoder

Evolutionære metoder til komponering af musik er baseret på genetiske algoritmer . Kompositionen bygges ved hjælp af en evolutionær proces. Gennem mutation og naturlig udvælgelse udvikler forskellige løsninger sig mod et passende musikstykke. Iterativ handling af algoritmen skærer dårlige løsninger ud og skaber nye fra dem, der overlever processen. Resultaterne af processen overvåges af kritikeren, en vigtig del af algoritmen, der styrer kvaliteten af ​​de oprettede kompositioner.

Evo-Devo tilgang

Evolutionære metoder kombineret med udviklingsprocesser udgør evo-devo- tilgangen til generering og optimering af komplekse strukturer. Disse metoder er også blevet anvendt på musiksammensætning, hvor den musikalske struktur opnås ved en iterativ proces, der omdanner en meget enkel komposition (lavet af nogle få noter) til et komplekst fuldt udbygget stykke (det være sig en score eller en MIDI-fil ).

Systemer, der lærer

Læringssystemer er programmer, der ikke har noget givet kendskab til den musikgenre, de arbejder med. I stedet indsamler de læringsmaterialet alene fra det eksempelmateriale, der leveres af brugeren eller programmøren. Materialet behandles derefter til et stykke musik, der ligner eksemplet. Denne metode til algoritmisk sammensætning er stærkt knyttet til algoritmisk modellering af stil, maskinimprovisation og sådanne studier som kognitiv videnskab og studiet af neurale netværk . Assayag og Dubnov foreslog en Markov-model med variabel længde for at lære motiv og sætningskontinueringer af forskellig længde. Marchini og Purwins præsenterede et system, der lærer strukturen i en lydoptagelse af et rytmisk percussionfragment ved hjælp af tilsyn med klyngedannelse og Markov-kæder med variabel længde, og som syntetiserer musikalske variationer ud fra det.

Hybride systemer

Programmer baseret på en enkelt algoritmisk model lykkes sjældent med at skabe æstetisk tilfredsstillende resultater. Af den grund bruges algoritmer af forskellig type ofte sammen for at kombinere styrkerne og mindske svaghederne ved disse algoritmer. Oprettelse af hybridsystemer til musiksammensætning har åbnet feltet for algoritmisk komposition og skabt også mange helt nye måder at konstruere kompositioner algoritmisk på. Det eneste store problem med hybridsystemer er deres voksende kompleksitet og behovet for ressourcer til at kombinere og teste disse algoritmer.

En anden tilgang, som kan kaldes computerassisteret komposition , er at algoritmisk skabe visse strukturer til endelig "håndlavede" kompositioner. Allerede i 1960'erne udviklede Gottfried Michael Koenig computerprogrammer Project 1 og Project 2 til aleatorisk musik , hvis output var fornuftigt struktureret "manuelt" ved hjælp af ydeevneinstruktioner. I 2000'erne udviklede Andranik Tangian en computeralgoritme til at bestemme tidsbegivenhedsstrukturer for rytmiske kanoner og rytmiske fuguer, som derefter blev udarbejdet til harmoniske kompositioner Eine kleine Mathmusik I og Eine kleine Mathmusik II ; for partiturer og optagelser se.

Se også

Referencer

Kilder

Artikler

Yderligere læsning

eksterne links