Algoritmické složení - Algorithmic composition

Algoritmická kompozice je technika používání algoritmů k vytváření hudby .

Algoritmy (nebo přinejmenším formální pravidla) byly používány ke komponování hudby po celá staletí; postupy používané například k vykreslení vedoucího hlasu v západním kontrapunktu lze často snížit na algoritmickou determinovanost. Termín lze použít k popisu technik generování hudby, které probíhají bez pokračujícího lidského zásahu, například zavedením náhodných postupů. Prostřednictvím živého kódování a dalších interaktivních rozhraní je však možný plně lidsky zaměřený přístup k algoritmickému složení.

Některé algoritmy nebo data, která nemají okamžitý hudební význam, používají skladatelé jako tvůrčí inspiraci pro svou hudbu. Jako zdrojové materiály byly použity algoritmy jako fraktály , L-systémy , statistické modely a dokonce libovolná data (např. Údaje ze sčítání , souřadnice GIS nebo měření magnetického pole ).

Modely pro algoritmické složení

Kompoziční algoritmy jsou obvykle klasifikovány podle konkrétních programovacích technik, které používají. Výsledky procesu lze poté rozdělit na 1) hudbu komponovanou počítačem a 2) hudbu komponovanou pomocí počítače. Hudbu lze považovat za komponovanou počítačem, pokud je algoritmus schopen během procesu vytváření provést vlastní výběr.

Dalším způsobem, jak třídit kompoziční algoritmy, je zkoumat výsledky jejich kompozičních procesů. Algoritmy mohou buď 1) poskytnout notační informace ( noty nebo MIDI ) pro jiné nástroje, nebo 2) poskytnout nezávislý způsob syntézy zvuku (samotné přehrávání skladby). Existují také algoritmy vytvářející jak notační data, tak zvukovou syntézu.

Jedním ze způsobů kategorizace kompozičních algoritmů je jejich struktura a způsob zpracování dat, jak je vidět v tomto modelu šesti částečně překrývajících se typů:

  • překladové modely
  • matematické modely
  • znalostní systémy
  • gramatiky
  • optimalizační přístupy
  • evoluční metody
  • systémy, které se učí
  • hybridní systémy

Překladové modely

Jedná se o přístup k hudební syntéze, který zahrnuje „překlad“ informací ze stávajícího nehudebního média do nového zvuku. Překlad může být buď na základě pravidel, nebo stochastický . Například při převádění obrazu do zvuku může být obrázek jpeg vodorovné čáry interpretován ve zvuku jako konstantní výška tónu, zatímco šikmá čára nahoru může být vzestupná stupnice. Tento software se často snaží extrahovat z média koncepty nebo metafory (například výšku nebo sentiment) a použít extrahované informace ke generování skladeb způsobem, který tyto pojmy obvykle představuje hudební teorie. Dalším příkladem je překlad textu do hudby, který může přistupovat ke kompozici extrakcí sentimentu (pozitivního nebo negativního) z textu pomocí metod strojového učení, jako je analýza sentimentu, a tento sentiment představuje z hlediska kvality akordu, jako je menší (smutný) nebo hlavní ( šťastný) akordy v generovaném hudebním výstupu.

Matematické modely

Matematické modely jsou založeny na matematických rovnicích a náhodných událostech. Nejběžnějším způsobem, jak vytvářet kompozice pomocí matematiky, jsou stochastické procesy . Ve stochastických modelech je skladba hudby výsledkem nedeterministických metod. Skladatelský proces je skladatelem kontrolován pouze částečně vážením možností náhodných událostí. Prominentními příklady stochastických algoritmů jsou Markovovy řetězce a různá použití Gaussových distribucí . Stochastické algoritmy se často používají společně s jinými algoritmy v různých rozhodovacích procesech.

Hudba byla také komponována prostřednictvím přírodních jevů. Tyto chaotické modely vytvářejí kompozice z harmonických a neharmonických jevů přírody. Například od 70. let byly fraktály studovány také jako modely pro algoritmické složení.

Jako příklad deterministických kompozic prostřednictvím matematických modelů nabízí On-line encyklopedie Integer Sequences možnost přehrát celočíselnou sekvenci jako 12ti tónová hudba stejného temperamentu . (Zpočátku je nastaveno převést každé celé číslo na notu na 88klavové hudební klávesnici výpočtem celočíselného modulo 88 ve stálém rytmu. Tedy 123456, přirozená čísla, se rovná polovině chromatické stupnice.) Jako další příklad, celo intervalová řada byla použita pro počítačově podporovanou kompozici

Znalostní systémy

Jedním ze způsobů, jak vytvářet skladby, je izolovat estetický kód určitého hudebního žánru a pomocí tohoto kódu vytvářet nové podobné skladby. Znalostní systémy jsou založeny na předem připravené sadě argumentů, které lze použít k sestavení nových děl stejného stylu nebo žánru. Obvykle je toho dosaženo souborem testů nebo pravidel vyžadujících splnění, aby složení bylo kompletní.

Gramatiky

Hudbu lze také zkoumat jako jazyk s výraznou gramatickou sadou. Skladby se vytvářejí nejprve vytvořením hudební gramatiky, která se poté použije k vytvoření srozumitelných hudebních skladeb. Gramatiky často obsahují pravidla pro skládání na makroúrovni, například harmonie a rytmus , spíše než jednotlivé noty.

Optimalizační přístupy

Při generování dobře definovaných stylů lze hudbu považovat za problém kombinatorické optimalizace, přičemž cílem je najít správnou kombinaci not tak, aby byla minimalizována objektivní funkce. Tato objektivní funkce obvykle obsahuje pravidla konkrétního stylu, ale mohla by se naučit pomocí metod strojového učení, jako jsou Markovovy modely. Vědci vytvořili hudbu pomocí nesčetných různých optimalizačních metod, včetně celočíselného programování, vyhledávání proměnných sousedství a evolučních metod, jak je uvedeno v následující podkapitole.

Evoluční metody

Evoluční metody skládání hudby jsou založeny na genetických algoritmech . Skladba se buduje pomocí evolučního procesu. Prostřednictvím mutací a přírodního výběru , různá řešení vyvíjet směrem k vhodné hudební kus. Iterační akce algoritmu odstraní špatná řešení a vytvoří nová od těch, kteří proces přežili. Na výsledky procesu dohlíží kritik, důležitá součást algoritmu kontrolujícího kvalitu vytvořených kompozic.

Přístup Evo-Devo

Evoluční metody v kombinaci s vývojovými procesy představují přístup evo-devo pro generování a optimalizaci složitých struktur. Tyto metody byly také aplikovány na hudební kompozici, kde je hudební struktura získána iteračním procesem, který transformuje velmi jednoduchou kompozici (vyrobenou z několika not) na komplexní plnohodnotný kus (ať už je to partitura, nebo MIDI soubor) ).

Systémy, které se učí

Učební systémy jsou programy, které nemají žádné znalosti žánru hudby, se kterým pracují. Místo toho shromažďují učební materiál sami z ukázkového materiálu dodaného uživatelem nebo programátorem. Materiál je poté zpracován na hudbu podobnou ukázkovému materiálu. Tato metoda algoritmického složení je silně spojena s algoritmickým modelováním stylu, strojovou improvizací a studiemi jako kognitivní věda a studium neuronových sítí . Assayag a Dubnov navrhli Markovův model s proměnnou délkou, aby se naučili různě dlouhá pokračování motivů a frází. Marchini a Purwins představili systém, který se učí strukturu zvukového záznamu rytmického perkusního fragmentu pomocí nekontrolovaného shlukování a Markovových řetězců s proměnnou délkou a který z něj syntetizuje hudební variace.

Hybridní systémy

Programy založené na jediném algoritmickém modelu zřídka uspějí při vytváření esteticky uspokojivých výsledků. Z tohoto důvodu se často používají společně různé algoritmy ke kombinování silných stránek a zmenšení slabin těchto algoritmů. Vytváření hybridních systémů pro hudební kompozici otevřelo pole algoritmické kompozice a vytvořilo také mnoho zbrusu nových způsobů algoritmické konstrukce kompozic. Jediným velkým problémem hybridních systémů je jejich rostoucí složitost a potřeba zdrojů kombinovat a testovat tyto algoritmy.

Dalším přístupem, který lze nazvat počítačem podporovanou kompozicí , je algoritmické vytvoření určitých struktur pro konečně „ručně vyrobené“ kompozice. Již v 60. letech vyvinul Gottfried Michael Koenig počítačové programy Project 1 a Project 2 pro aleatorickou hudbu , jejichž výstup byl rozumně strukturován „ručně“ pomocí instrukcí k vystoupení. V roce 2000 vyvinul Andranik Tangian počítačový algoritmus pro určení struktur časové události pro rytmické kánony a rytmické fugy, které byly následně zpracovány do harmonických skladeb Eine kleine Mathmusik I a Eine kleine Mathmusik II ; skóre a nahrávky viz.

Viz také

Reference

Zdroje

Články

Další čtení

externí odkazy