情報処理学会研究報告
IPSJ SIG Technical Report

1. は じ め に

非和声音規則に基づく経路制約を用いた旋律自動生成

作曲は人間の行う行為の中でも感性や創造性に頼る部分の多い行為である。しかし一方では、型にはまった方法でもそれなりの曲が作れてしまうという一面もある。実際多くの作曲

深小山野順

覚†1
貴†1

西 本 卓 也†1嵯 峨 山 茂 樹†1

家の卵たちは、将来独創的な作風の作曲家になることを志すにしても、はじめは正格な書法（エクリチュール）と呼ばれる古典的な作曲スタイルを勉強して、過去の作曲家達が築いてきた音楽文化のエッセンスを体得し、音楽大学に入学する前にはバッハ風のフーガやフォーレ風の合唱曲などが一応書けるようになる。そしてこれらの習得は学習者の才能に任せられ

本稿では古典的な作曲法に基づいて適切に非和声音を生成できる旋律生成モデルを提案する。非和声音は和音とメロディの関係を見る上で重要であり、音楽理論でその用法が整理されている。しかし離れた音との関係を考慮して判断する必要があるなどその用法は多様かつ複雑で、計算機で旋律を自動生成する際にどのようにそれらを制約として取り入れるかが問題である。本研究では非和声音の規則を局所的な経路制約として扱うことで、それらの制約条件下で最適なメロディを動的計画法を用いて探索して生成できるアルゴリズムを提案する。ているというより、教師から「これはやってはいけない」「普通はこうする」といった規則や用例によって伝授されるもので、習得にかかる時間を別にすれば、才能とはさほど関係なく習得できるものである。
このような背景を踏まえると、計算機を用いた形式的な処理によって人間が作っているよ
うに音楽を作曲できるのではないかという発想は比較的自然なものであるといえよう。実際、音楽理論や作曲法の規則に基づいたアルゴリズミックな処理によって（平凡かもしれないが）理論的に間違いのない音楽を自動生成できる可能性は、計算機を用いた自動作曲研究

Automatic Melody Composition Using
Path Constraints of Nonchord Tone Rulesの初期から示唆されてきた1) 。主旋律と対旋律が協和するように厳格な規則が決められている「対位法」に基づいた楽曲生成2) や、メロディと和声進行の関係についての理論である

Satoru FUKAYAMA,†1 Takuya NISHIMOTO,†1Nobutaka ONO†1 and Shigeki SAGAYAMA †1「和声法」を用いた自動和声づけシステム3) やコラールを生成するシステム4) 、ジャズならばインプロヴィゼーションをするシステム5) などが提案されている。
しかし問題は作曲法や音楽理論を計算機に実装しようとする際に困難が生じる点である。

In this paper, we discuss a model that can generate a melody which satisfies non-chord tone rules given by the classical methods of composition. Since
non-chord tones are important when musicians analyze the relationship between
the melody and the chord, rules of non-chord tones are relatively well-organizedin music theories. However there were some difficulties in appling those rules
to automatic composition because of the variety and complexity of non-chord
tone usages. We show that non-chord tone rules can be represented as local
constratins on the melody path and the melodies can be automatically generated by finding the optimal melody paths using dynamic programming underconstraints of those local constraints.

本稿で扱う非和声音についての規則もそのような問題の一つである。第一に既存の理論を整理して、計算機で扱える数理的な理論として規則を書き直す必要がある。確率自由文脈文法を用いた研究8) があるが、生成規則が膨大になる、省略が扱えない、など問題がある。第二に自動作曲において、非和声音の制約を満たすメロディを候補の中から探索するときに、メロディの組み合わせ爆発を防ぐ必要がある。この問題に対しては動的計画法を用いて効率的に求めるメロディの探索を行う研究12) 13) があるが、離れた音を考慮する必要のある非和声音規則については扱えていない。これは一般的に動的計画法において 2 つ以上前の状態を考慮に入れた制約を扱うには、 1 つ前の状態を場合分けする必要があり、遡って考慮する分の指数のオーダで計算量が増えてしまうからである。そこで本稿では、局所経路制約を導入した動的計画法によって、計算量を指数的に増やすことなく非和声音規則を満たす旋律生†1 東京大学大学院情報理工学系研究科
Graduate School of Information Science and Technology, the University of Tokyo

成が行う方法について議論する。

1c 2009 Information Processing Society of Japan

情報処理学会研究報告IPSJ SIG Technical Report

図1

経過音 (passing tone) の例: 枠で囲ってあるものが経過音。2 個の和声音の間を音階的につなぎ合わす非和声音で、弱拍または拍の弱部に置かれる。

図2

刺繍音 (neighbor tone) の例: 枠で囲ってあるものが刺繍音。2 個の同じ高さの和声音の中間にはさまれた隣接音度の非和声音で、弱拍あたは拍の弱部に置かれる。

図3

2. 準備: 非和声音とその分類⋆1

非和声音の分類: 前後の和声音との隣接関係と拍の強弱で分類できる

メロディ中には一見和音とは関係のないように見える音が現れる。たとえば図 1 では、第二声部の分散和音を見ても明らかなように、I の３和音 (構成音 i,iii,v) がここの部分での和音である。しかし第一声部（メロディ）に含まれる ii の音（図中枠で囲った音）は、この和音の構成音ではない。このような音を非和声音と呼ぶ。逆に和音の構成音である ii と i の音を和声音と呼ぶ。
非和声音は隣接する和声音との相対的な音高関係と拍の強弱によって分類される。たとえば図 1 の例では、非和声音である ii の音が、前後の iii および i と音階をなしている。このような「２個の和声音の間を音階的につなぎあわす非和声音」を経過音 (passing tone) と図4いう。経過音は弱拍または拍の弱部で用いられる。図 2 の例では隣り合う音高に移って戻る形で非和声音が現れている（図中枠で囲った音）。このような「２個の同じ高さの和声音非和声音の連続と非和声音への非和声音の例: 左から 2 つは刺繍音が倚音に連続する場合、3 番めは経過音が倚音に連続する場合、最後は非和声音へと解決する非和声音（半音階進行）。このように非和声音用法の組み合わせが解釈として許される。の中間にはさまれた隣接音度の非和声音」を刺繍音 (neighbor tone) という。刺繍音も弱拍ある。これらは弱拍または拍の弱部で用いられる。さらに非和声音は和声音へと進行する

または拍の弱部で用いられる。これら経過音と刺繍音の他には、これら以外の非和声音の用前に再び連続して非和声音が挿入されることがある。そのような例を連続非和声音という。

法をも含めて、分類を図 3 に示す。倚音 (appoggiatura)、掛留音 (suspension) は経過音と刺繍音が連続する、掛留音と倚音が連続する、経過音と倚音が連続する、などといった用法

刺繍音の次によく使われる。これらの非和声音は強拍または拍の強部に置かれる。またそれが見られる。また、和声音に対して隣接するのではなく、非和声音に対して隣接関係を持つほど多くは使われないが、逸音 (escape tone)、先取音 (anticipation) といった非和声音も非和声音、すなわち非和声音に対する非和声音という用法もありうる。図 4 に連続非和声音と非和声音への非和声音の例を示す。

⋆1 非和声音の定義とその分類には幾つか方法があるがここでは島岡譲の文献

9)に従った2

c 2009 Information Processing Society of Japan情報処理学会研究報告
IPSJ SIG Technical Report

3. 非和声音規則を満たす旋律自動生成
前節において述べた非和声音の規則は、歌唱曲のメロディのようにメロディックな音の動きを持つ旋律の作曲で重要視される。そこで本研究では歌唱曲を自動生成する場合において非和声音規則を導入する方法について議論する。

3.1 制約条件に基づいた歌唱旋律生成
1 節で述べたように正格な書法に基づいた楽曲を作る際には、多くの禁則や推奨される形による制約がある。特に歌唱曲を生成する場合には、文献12) 13) における議論に従うと次のような制約がある。
第一に歌詞の意味理解に基づいた曲想による制約である。曲想は、マイナーコードを多用した暗い曲、ギャロップのリズムを含む快活な曲、といったように、用いる和声進行と旋律のリズムにより特徴づけられる。第二に歌詞の韻律に基づく制約である。日本語はピッチア
クセントの言語であるため、聴き手の言語理解は、発話される言葉のピッチの高低という韻図 5 旋律生成のモデル: 制約を最もよく満たし確率が最大となるメロディを探索することで旋律が自動生成できる

律情報に大きく依存する。そこでクラシックスタイルの作曲法においては、日本語歌詞に旋律を付ける際に歌詞を読み上げるときの音の高低と旋律の音の上下を一致させることが重要とされているれらの出現確率と遷移確率は先に述べた制約条件によって決まる。

。第三に楽曲のスタイルやジャンルの背景には音楽文化があり、その音逆に歌詞をよく反映する旋律が作曲されたとすれば、その旋律はこれらの制約を同時に一楽文化の経験則が体系化されたものとしての音楽理論が、意識的にしろ、無意識的にしろ作番良く満たしているものであると考えられる。すなわち、歌唱曲の旋律生成はこれら制約に曲されるメロディへの制約として加わる。

よって決まる音の出現確率と遷移確率の下で、メロディの確率 P (X) を最大化する音高列10)

ここで、あるメロディが与えられたときにそのメロディが正格な書法に沿っている度合い

X ∗ を探索する問題となる (図 5):を計算することを考える。先に述べた制約によって、メロディの音の現れ方には確率的な偏X ∗ = argmax P (X)りが生じている。具体的には、和声進行と歌唱音域の制限による音高の出現確率の偏り、リXズムによる音の出現タイミングの偏り、平行 8 度の禁止など音楽理論に基づく音高の遷移確

このとき i 番めの音高が k であるときの i 番めの音符までのメロディの最大確率 δ (i, k) が、率の偏りなどである。これらはメロディの部分部分の確率を与えるので、それらの掛け合わδ (i, k) =せによってメロディ全体が正格な書法に沿っているかどうかを確率値として求めることができる。メロディの音高列 X = {x0 , x1 , · · · , xn } が与えられると、メロディの確率 P (X) は= bx 0nYaxi−1 xi bxi

max

X ′ ={x0 ,···,xi−1 }

= max
j

以下のようにして計算できる:

P (X) = bx0 ax0 x1 bx1 ax1 x2 · · · axn−1 xn bxn(3)

P X ′ , xi = kmax

X ′′ ={x0 ,···,xi−2 }j(4)P X ′′ , xi−1 = j ajk bk= max [δ (i − 1, j) ajk ] bk
(1)





(5)
(6)のように 1 音符前の確率値 δ (i − 1, j) を用いて書けるので、動的計画法11) を用いて

(2)

X ∗ = {x∗0 , x∗1 , · · · , x∗n } は効率的に求めることができる。

i=1

ここで bk は音高 k が出現する確率, ajk は音高 j から音高 k へと遷移する確率である。こ3

c 2009 Information Processing Society of Japan情報処理学会研究報告
IPSJ SIG Technical Report

動的計画法を用いた確率最大となるメロディX の探索∗Step.1 初期化
各音高 j = 0, · · · , M について以下の初期化を行う。

δ (0, j) = bj (0)ψ (0, j) = 0
Step.2 再帰計算
各音符 i = 1, · · · , n、各音高 k = 0, · · · , M について以下を計算。

δ (i, k) = max [δ (i − 1, j) ajk (i)] bk (i)jψ (i, k) = argmax [δ (i − 1, j) ajk (i)]jStep.3 再帰計算の終了

図 6 局所的な経路制約を用いた旋律の経路探索: 局所経路同士が両端でのみ重なり合うことで、指数的に状態を増やすことなく、各局所経路を状態とする動的計画法としてメロディを求めることができる

P̂ = max δ (n, k)kx∗n = argmax δ (n, k)δ (i, k) =k

Step.4 バックトラック=音符インデックスの i = n, n − 1, · · · , 1 に対して以下を行い、最大確率を与えるメロディX ∗ = {x∗0 , · · · , x∗n } を得る。

x∗i−1 = ψ (i, x∗i )3.2 非和声音規則に基づく経路制約の導入

max[P (x0 , · · · , xi−3 ) P (xi−2 , xi−1 , xi = k)]max"X ′ ={x0 ,···,xi−1 }(xi−3 ,xi−2 ,xi−1 )δ (i − 3, xi−3 )1Yaxi−s xi−(s−1) bxi−(s−1)

s=3(7)#(8)となり、各音符について音高の候補が K 個あれば、(xi−3 , xi−2 , xi−1 ) の組み合わせだけの数 K 3 個について計算する必要がある。

2 節で議論したように非和声音の用法は前後の和声音との隣接関係で表せる。またメロ
ディを構成する音は和声音と非和声音のいずれかであるので、両端が和声音で間が非和声音

前節の定式化ではメロディ生成に課す制約条件は、1 つ前の音との遷移確率 ajk と出現確のみである局所経路の組み合わせとしてメロディを扱うことができる (図 6)。

率 bk によって表されており、考慮する必要のある音は 1 つ前の音のみであった。非和声音

そこで事前に楽曲で用いる非和声音の規則に基づく局所経路を準備しておく。このとき、規則を制約として表すとき、刺繍音、経過音、一部の倚音については 1 つ前の音のみを考慮

メロディを構成する各局所経路が両端でのみが重なる、という条件下では、確率最大となるした制約条件で生成可能である。しかし、逸音や非和声音の連続などの制約条件を実装するメロディの探索を動的計画法を用いて、指数的な計算量の増加を抑えつつ求めることができためには、2 つ以上前の音についての考慮が必要である。

る。次節において、このことを示す。

一般に動的計画法で経路探索を行う際に m 個前の状態を考慮する必要のある制約条件が3.3 動的計画法を用いた可変長経路制約の条件下での旋律生成あるときには、元の状態数 n に対して n × m 個の状態数に展開して扱う必要がある。たと(8) 式でみたように、2 つ以上前の音を考慮する必要のある非和声音の制約条件を含む

えば 3 つ前の状態を考慮する必要があるとき、(4) 式は、場合は、(6) 式のように 1 状態前の確率値を用いて再帰的に確率が計算できない。まず簡単のため長さ 3 の局所経路 (この経路の名前を l、経路内の音高を右端を基準にして4c 2009 Information Processing Society of Japan

情報処理学会研究報告
IPSJ SIG Technical Report

動的計画法を用いた可変長経路制約の条件下で確率最大となるメロディX の探索∗

Step.1 初期化各音高 j = 0, · · · , M について以下の初期化を行う。

δ (0, j) = bj (0)φ (0, j) = 0
Step.2 再帰計算

図 8 非和声音規則に基づく経路制約の例
図7

(l)

各音符 i = 1, · · · , n、各音高 k = 0, · · · , M について以下を計算。

非和声音規則に基づく経路制約を導入した旋律の探索

(l)

(l)

(l)

∆0 = 0, ∆1 , ∆2 , ∆3(l)

(l)

(l)



確率が最大となる局所経路のインデックス l を保存する。

図 8 の l = 1) のみ制約として与えられる場合を考える。経路制(l)

(l)

(l)

lδ (i, k) =max(l)(l)(l)
k+∆3 ,k+∆2 ,k+∆1"(l)= max δ i − 3, k + ∆3l1
Yak+∆(l) k+∆(l) bk+∆(l)
ss−1

s−1

s=3(l)

このように δ i − 3, k + ∆3

s−1

s−1

s=3ak+∆(l) k+∆(l) bk+∆(l)
s#

#(9)l

s−1

s−1

P̂ = max δ (n, k)(10)kx∗n = argmax δ (n, k)kStep.4 バックトラック
(l)

(l)

s

Step.3 再帰計算の終了(l)

音符インデックスの i = n から i = 0 になるまで以下を繰り返し、であるときを考える。経路制約の長さ n は l に依って決まるので n(l) と書くと、

ak+∆(l) k+∆(l) bk+∆(l)s=n(l)#

また局所経路が拍の強弱と合致しないときには計算しない。

を用いて最大確率を計算することができる。

δ (i, k) = max δ i − n(l) , k + ∆n(l)1
 Y

但し、局所経路の始点 i − n(l) が 0 未満のとき、次に経路制約の長さが可変である場合に拡張する。経路制約が ∆(l) = {∆0 , · · · , ∆n }"(l), k + ∆n(l)l(l)
 δ i − 3, k + ∆3
1
Y(l)φ (i, k) = argmax δ (i, k)と決まるので、(8) 式は以下のように変形できる。

δ (i, k) = max δ i − n(l)約 ∆l = {∆0 , ∆1 , ∆2 , ∆3 } を使えば、xi−3 = k + ∆3 , xi−2 = k + ∆2 , xi−1 = ∆1""1 Yak+∆(l) k+∆(l) bk+∆(l)ss−1s=n(l)s−1#(l)よって δ (i, k) は、局所経路 l の始点における最大確率 δ i − n(l) , k + ∆n(l)最大確率を与えるメロディX ∗ = {x∗0 , · · · , x∗n } を得る。

l̂(11)

= φ (i, x∗i )(l̂)

x∗i−1 = x∗i + ∆1 ,を使って再i(l̂)

x∗i−2 = x∗i + ∆2···(l̂)

x∗i−n(l̂) = x∗i + ∆ (l̂)
n:= i − n(l̂)



帰的に書けることがわかったので、動的計画法を用いて計算量の指数的増加を防ぎつつ計算することができる。

5c 2009 Information Processing Society of Japan情報処理学会研究報告
IPSJ SIG Technical Report

経路制約を確率自由文脈文法などを用いて生成する、逆問題として扱ってメロディに対する自動和声づけなどを行う予定である。また非和声音の適用確率の重み付けを行い、特徴ある作風が自動生成できるかについても検討したい。

謝辞

本研究の一部は科学技術振興機構 CREST の補助を受けて行われた。
図9

非和声音規則に基づいた経路制約を用いて生成した楽曲例: 枠で囲まれた音符が非和声音である。経過音、逸音、刺繍音、掛留音や刺繍音が連続する用法が生成できている。

参的

非和声音規則に基づく経路制約を用いた歌唱旋律の生成を行ない、これまで生成できなかった非和声音を生成可能であるかについて検証した。

4.2 生 成 条 件
作曲に用いる歌詞は「我輩は猫である。名前はまだない。どこで生まれたかとんと見当がつかぬ。」を用いた。1 種類の歌詞に対して、54 種類の経路制約と 19 種類の和声進行によって、計 19 曲を生成した。

4.3 結果と考察生成された旋律の例を図 9 に示す。1 つ前の音符のみ考慮した制約条件では生成できなかった逸音、掛留音や非和声音が連続する用法が生成できた。一方、音の長さによる制約がないため、前後の和声音との位置関係と拍の強弱関係は規則にあっているものの、長い逸音など不自然な非和声音も生じた。

5. 結文

献1) L. Hiller, L. Isaacson: Musical Composition with a High-Speed Digital Computer,in Machines Models of Music, M. Schwanauer, and D. Levitt Eds, MIT Press pp.9–21, Reprint of original article in Journal of Audio Engineering Society, 1958.
2) W. Shottstaedt: Automatic counterpoint, In M. Mathews and J. R. Pierce, Current
Directions in Computer Music Research, pp.225–262, Cambridge, Massachusetts,The MIT Press, 1989.
3) R. Ramirez, J. Peralta: A constraint-based melody harmonizer, ECAI’98 Workshop on Constraints and Artistic Applications, Brighton, 1998.
4) M. Allan, C. Williams: Harmonizing Chorales by Probabilistic Inference, Proceedings of Advances in Neural Information Processing Systems, 17, 2005.
5) D. Levitt: A melody description system for jazz improvisation, M. S. Thesis, Artificial Intelligence Laboratory, Chambridge, Massachusetts, 1981.
6) F. Pachet, P. Roy: Musical harmonization with constraints: A survey, Constraints
Journal, 6(1):7-19, 2001.
7) M. Baroni, R. Brunetti, L. Callegari, and C. Jacobini: A grammar for melody:relationships between melody and harmony, In M. Baroni and L. Callegari, eds.
Musical Grammars and Computer Analysis, Florence: L. Olshki, pp.201–218, 1984.
8) 諸岡孟, 西本卓也, 嵯峨山茂樹: 確率自由文脈文法による和声学規則の表現と楽曲の自動和声解析, 情報処理学会研究報告, 2008-MUS-74, pp.77–82, 2008.
9) 島岡譲: 和声と楽式のアナリーゼ, pp.8–9, pp.18–20, pp.37–39, 音楽之友社, 1964.
10) 長谷川良夫: 作曲法教程 上巻, pp.68–89, 音楽之友社, 1950.
11) Bellman, R. E.: Dynamic Programming, Princeton University Press, Princeton,
New Jersey, 1957.
12) 中妻啓, 酒向慎司, 小野順貴, 嵯峨山茂樹: 歌詞の韻律を用いた自動作曲, 日本音響学会
春季研究発表会講演論文集, pp.739-740, 2007.
13) 深山覚, 中妻啓, 米林裕一郎, 酒向慎司, 西本卓也, 小野順貴, 嵯峨山茂樹: Orpheus 歌詞の韻律に基づいた自動作曲システム, 情報処理学会研究報告, 2008-MUS-76, pp.179–184,
2008.

4. 旋律生成実験
4.1 目考論

本稿では経路制約を用いて非和声音規則を満たす非和声音を含むメロディを自動生成する手法を提案した。非和声音規則に基づく制約条件は 2 音以前の音の状態を考慮する必要があり、動的計画法で解く際に計算量が指数的に増大してしまうが、局所経路の組み合わせでメロディが生成されるというモデルとしたことで、可変長の経路制約を含む場合でも動的計画法でメロディを探索する手法とすることができた。また実際に旋律を生成し、2 つ以上前の音の考慮が必要な非和声音を生成できた。今後は非和声音の音価を含めた制約条件や、

6c 2009 Information Processing Society of Japan