有更高维度的生成语法吗?


9

我对计算机音乐感兴趣,在计算机音乐中,有一些方法可以将音乐片段视为生成语法或L系统中的句子。除了作曲外,还可以指定一种语法,然后让计算机生成音乐。例如,已故的保罗·哈达克(Paul Hudak)周围的耶鲁大学在这方面非常强大。

令我惊讶的是,我们似乎使用信息的一维表示来表示高维事物,例如使用L系统的植物生长。在我看来,音乐似乎至少具有两个维度:明显的时间维度和“乐器”维度,即同时具有多种不同声音的能力。确实,音乐符号具有这两个方面。

有诸如Befunge之类的2维编程语言,对我来说没有什么用(还),但是我找不到关于生成语法的任何东西,因为这些语法是2维的。

我用二维句子来表示字符分布在二维网格上,例如:

ab cde
 aabce
dca  b

生产规则在规则的任一侧也可以具有二维句子:

a -> bc
     e

b -> cd
e    ab

以前有没有研究过类似的东西?

例如,在计算机音乐中,这可能非常有用。像Ravel'sBoléro这样的作品可以通过二维生产规则生成,如下所示:

t -> tt
      t

可以理解为“如果在某个乐曲t中某个时刻乐器1播放了该主题,那么我们可以制作一个新乐曲,其中t乐器1同时播放,然后紧随乐器1和2播放。 ”


2
存在可能至少相关或有用的“图文法”。
2015年

您的“ n维”概念似乎是您自己的概念,不会在CS中用这些术语进行定义,并且它没有正式定义,并且似乎在上面以多种方式使用。
vzn

@vzn,我想问这个想法是否已经在某处严格定义。我只是想激励一下为什么它可能有用。您为什么认为此处已以不同方式使用它?
特里

实际上,在思考您的想法时,傅立叶分析有时可以隔离单独的乐器和您所指的“维度”,并且有一些CS /算法研究致力于将单独的乐器或声音与“混合”(例如,聚会中的多个声音)分开。这个问题也让我想起了分开的乐器具有独特的“泛音签名”的方式。至于所有语法,它们都有与您所指的“维度”相关的方面...例如,派生发生在二维空间或符号网格(或树/图等)中,因此在某些方面问题不清楚或范围太广(wrt SE stds)。
vzn

@vzn,很公平,我试图弄清楚我的意思。
炫龙

Answers:



1

使用CS形式语法对音乐建模有一些理论/科学/应用研究。见例如

然而,语法通常可能过于“常规”而无法产生有趣的音乐。为此,正在探索不同的方法,例如遗传算法,对此有很多参考。接下来,一篇高被引用的文章。现在被称为进化音乐领域


另请参见计算机音乐创作 cs.se
vzn

2
我看不到二维语法在这里出现的地方。
特里翁2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.