Prírodou inšpirované algoritmy

študijné materiály pre projekt mobilnej triedy umelej inteligencie

Späť ku kurzom triedy
Obsah
Evolučné algoritmy
Prístupy založené na celulárnych automatoch
Prístupy založené na svete Creatures
Fraktálové prístupy
Prekódovanie DNK do podoby hudby
Prístupy založené na neurónových sieťach



Ostatné kapitoly
Freemanove K modely
Umelé imunitné systémy
Biomimicry - Biomimetics
Umelé chémie
Chemické vlny
DNK počítače
Artificial Music
Memetika
Artificial Life Games
Artificial Art
Väzenská dilema


Tutoriály
 Celulárne automaty
 Morfogenéza
 Simulátory
 Evolučné algoritmy
 Chaos
 Roboty
 Rôzne


Evolučné algoritmy

Tento prístup je postavený na evolučných algoritmoch, ktoré sú schopné prehľadávať priestor a tým generovať riešenia. Na výsledok prehľadávania má značný vplyv funkcia fitness, ktorá ohodnocuje jedincov. Pravé táto časť celej schémy je z hľadiska riešenia najzaujímavejšia. Rôzni autori k tejto funkcii pristupujú rôznym spôsobom. Prvé aplikácie uprednostňujú človeka ako supervízora, ktorý vyberá a určuje smer, ktorým sa má prehľadávanie uberať. Toto riešenie však nie je autonómne na človeku a preto sa mnoho autorov pokúšalo vytvoriť úplne samostatný generický systém. Tu však vyvstáva problém ako určovať funkciu fitness.
Ja som sa stretol s dvoma základnými prístupmi:

  • systém, ktorý sumarizuje a váhuje množinu rôznych faktorov vplývajúcich na kvalitu výsledku
  • systémy, kde ako ohodnocovač funguje neurónová sieť
Uvediem zopár príkladov čiastkových pravidiel, z ktorých sa skladá funkcia fitness:
  • dĺžka prázdneho intervalu (dlhé pauzy pôsobia disharmonicky)
  • redukcia "špičiek" (bez ohľadu na rytmiku) - vyhladzuje melódiu
  • pravidlá týkajúce sa rytmiky a nôt, napr. výrazná zmena je povolená na každú tretiu dobu
  • pravidlá týkajúce sa dĺžky nôt

Ako je zrejmé, tieto pravidlá sú dosť viazané na znalosti týkajúce sa rytmiky (aké základné schémy existujú), melodiky a celkovej harmónie (teória hudby). Je zrejmé, že pri zostavovaní pravidiel je potrebné implementovať skúsenosti človeka, ktorý vie komponovať. Takéto systémy sa často skladajú z niekoľkých desiatok pravidiel, ktoré sa navzájom dopĺňajú. V podstate sa však jedná o dve skupiny pravidiel - jednu tvoria pravidlá, ktoré sa starajú o rytmiku a druhú skupinu tvoria pravidlá zabezpečujúce melodiku.


Ďaľšou skupinou parametrov, ktoré vplývajú na výsledok sú genetické operátory, hlavne mutácia. Tak ako funkcia fitness, aj mutácia sa často skladá z viacerých podmutácií. Takto sa dá riadiť smer, akým sa má prehľadávanie uberať. Fitness a genetické operátory ovplyvňujú to, či skladba bude rýchla, alebo tiahla a pomalá, či bude melodická, alebo viacej zameraná na improvizáciu .
Existujú aj také prístupy, ktoré pracujú "on-line" a spolupracujú s hudobníkom priamo keď hraje, jedná sa väčšinou o jazzové improvizácie.


Linky:
GP-Music -klasický systém kde fitness je určovaná pravidlami
Genetic Algorithm Utilising Neural Network Fitness Evaluation for Musical Composition -fitness určuje neurónová sieť
A Genetic Algorithm for the Generation of Jazz Melodies -generovanie jazzu pomocou GA
Evolutionary Computation for Music Evolution -generovanie melódií pomocou GA
GenBebop -generovanie jazzu 1.ukážka 2.ukážka
GAmusic -generovanie melódií pomocou GA


Hore
Kontakt: Marek Bundzel