- 172 -Enders, Bernd (Hrsg.): KlangArt-Kongreß 1993: Neue Musiktechnologie II 
  Erste Seite (3) Vorherige Seite (171)Nächste Seite (173) Letzte Seite (381)      Suchen  Nur aktuelle Seite durchsuchen Gesamtes Dokument durchsuchen     Aktuelle Seite drucken Hilfe 


generieren, Prolog berücksichtigt - bedingt durch die einfache Abarbeitungsstrategie - aber nur die erste rekursive Regel, erzeugt also nur die Folge:


        a aa aaa aaaa ... .


Zudem ergibt jeder Aufruf von S als erste Lösung "a". Im Fall musikalischer Anwendungen führt dies zu relativ uninteressanten Ergebnissen.

Stochastische DCG's (SDCG's) liefern zumindest teilweise eine Lösung dieses Problems:

Regeln können mit Wahrscheinlichkeiten versehen und per Zufallsprozeß ausgewählt werden. Am besten wäre eine durch einen Zufallsprozeß gesteuerte dynamische Umsortierung der Regeln. Dies ist jedoch sehr aufwendig zu implementieren. Hier wird der einfachere Weg gewählt, indem eine Regel ausgewählt wird, und falls diese gelingt, keine Alternativen mehr betrachtet werden.

Die Implementation ließe sich sehr einfach dahingehend ändern, daß, falls die zufällig gewählte

Regel nicht funktioniert und auch alle folgenden fehlschlagen, die Regelmenge noch einmal von vorn durchsucht wird. Dies würde den Effekt einer dynamischen Umsortierung haben, für den Preis, daß Teile der Regelmenge zweimal versucht würden.

Der Zufallsprozeß zur Regelauswahl ist optional, und muß - falls gewünscht - durch ein "$" vor

dem entsprechenden nichtterminalen Symbol auf der rechten Regelseite markiert werden. Nichtterminale Symbole ohne "$"-Prefix werden wie in normalen DCG's expandiert. Vor Regeln darf ein Wahrscheinlichkeitswert zwischen 0 und 100 angegeben werden. Eine SDCG für obiges Beispiel kann folgendermaßen aussehen:


    S -> $ S0 .

    25 S0 -> [a] .

    25 S0 -> [a] $ S .

    25 S0 -> [b] .

    25 S0 -> [b] $ S .


Die zusätzliche 1. Regel ist hier notwendig, um für die Expansion von S0 den Zufallsprozeß zu benutzen. Das erste Argument dient dabei zur Verwaltung der Zufallswerte.



Beispiel: ein (sehr) einfacher Blues-Generator


    Blues -> Teil1 Teil2 Teil3 .

    Teil1 -> $ Anrufung  $ Kommentar .

    Teil2 -> $ Anrufungwiederholung  $ Kommentar .

    Teil3 -> $ Beantwortung  Kommentar .

    Anrufung -> $ Tonika  $ Tonika .


Erste Seite (3) Vorherige Seite (171)Nächste Seite (173) Letzte Seite (381)      Suchen  Nur aktuelle Seite durchsuchen Gesamtes Dokument durchsuchen     Aktuelle Seite drucken Hilfe 
- 172 -Enders, Bernd (Hrsg.): KlangArt-Kongreß 1993: Neue Musiktechnologie II