"複数の単位区間の各々について旋律が付与された楽曲を生成する装置であって、相異なる旋律を指定する複数の旋律データを記憶する記憶手段と、楽曲のコード進行を指定するコード進行データを取得するコード取得手段と、前記複数の単位区間の各々について、前記コード進行データが指定する当該単位区間でのコード進行と前記旋律データが指定する旋律との関係に応じた旋律評価値を旋律データ毎に算定する旋律評価手段と、前記複数の単位区間の各々について、当該単位区間における前記各旋律データの旋律評価値に応じて前記複数の旋律データの何れかを選択する旋律選択手段とを具備する楽曲生成装置。前記旋律評価手段は、前記旋律データが指定する旋律の複数の音符の各々について、前記コード進行データが指定するコードと当該音符の音高との関係に応じた第1評価値と、当該音符の継続長に応じた第2評価値とから音符評価値を算定し、前記複数の音符の音符評価値に応じた前記旋律評価値を算定する請求項1の楽曲生成装置。前記旋律評価手段は、前記旋律データが指定する旋律を構成する音符が、前記コード進行データで指定されるコードの構成音に該当する場合と、当該コードの根音に対応するペンタトニックの構成音に該当する場合と、当該コードの構成音およびペンタトニックの構成音の何れにも該当しない場合とで、前記第1評価値を個別に設定する請求項2の楽曲生成装置。前記旋律評価手段は、前記旋律データが指定する旋律を構成する音符が特定の音高である場合に、前記第1評価値を、当該音符の音符評価値を低下させる数値に設定する請求項3の楽曲生成装置。前記旋律評価手段は、前記複数の音符の音符評価値の加算値を前記複数の音符の合計長により除算することで前記旋律評価値を算定する請求項2から請求項4の何れかの楽曲生成装置。しかし、非特許文献1の技術では、歌詞の韻律に対応するように楽曲の音符列が制約されるから、音楽的に不自然で単調な楽曲が生成される可能性がある。以上の事情を考慮して、本発明は、音楽的に自然で多様な楽曲を生成することを目的とする。以上の課題を解決するために本発明が採用する手段を説明する。なお、本発明の理解を容易にするために、以下の説明では、本発明の各要素と後述の各実施形態の要素との対応を括弧書で付記するが、本発明の範囲を実施形態の例示に限定する趣旨ではない。本発明の楽曲生成装置は、複数の単位区間の各々について旋律が付与された楽曲を生成する装置であって、相異なる旋律を指定する複数の旋律データを記憶する記憶手段例えば記憶装置24と、楽曲のコード進行を指定するコード進行データを取得するコード取得手段例えば情報取得部32と、複数の単位区間の各々について、コード進行データが指定する当該単位区間でのコード進行と旋律データが指定する旋律との関係に応じた旋律評価値例えば旋律評価値EAを旋律データ毎に算定する旋律評価手段例えば楽曲生成部34/旋律評価処理S13と、複数の単位区間の各々について、当該単位区間における各旋律データの旋律評価値に応じて複数の旋律データの何れかを選択する旋律選択手段例えば楽曲生成部34/旋律選択処理S15とを具備する。以上の構成では、楽曲のコード進行を指定するコード進行データに応じた旋律評価値が旋律データ毎に算定されて旋律データの選択に反映される。したがって、歌詞の韻律に対応するように楽曲の音符列が制約される非特許文献1の技術と比較して、音楽的に自然で多様な楽曲を生成できるという利点がある。なお、本発明における旋律は、複数の音の時系列音の並びを意味する。本発明の好適な態様において、旋律評価手段は、旋律データが指定する旋律の複数の音符の各々について、コード進行データが指定するコードと当該音符の音高との関係に応じた第1評価値例えば第1評価値e1と、当該音符の継続長に応じた第2評価値例えば第2評価値e2とから音符評価値例えば音符評価値eを算定し、複数の音符の音符評価値に応じた旋律評価値を算定する、以上の態様では、コード進行データが指定するコードと音符の音高との関係に応じた第1評価値と音符の継続長に応じた第2評価値とを反映した音符毎の音符評価値が算定される。したがって、例えばコード進行データが指定するコードと特定の関係にある音符や継続長が長い音符音楽的に重要な音符を含む旋律データを優先的に選択することが可能である。本発明の好適な態様において、旋律評価手段は、旋律データが指定する旋律を構成する音符が、コード進行データで指定されるコードの構成音に該当する場合と、当該コードの根音に対応するペンタトニックの構成音に該当する場合と、当該コードの構成音およびペンタトニックの構成音の何れにも該当しない場合とで、第1評価値を個別に設定する。以上の態様では、コードの構成音やペンタトニックの構成音を含む旋律データを優先的に選択したり、コードの構成音やペンタトニックの構成音を含まない旋律データを優先的に選択したりすることが可能である。本発明の好適な態様において、旋律評価手段は、旋律データが指定する旋律を構成する音符が特定の音高である場合に、第1評価値を、当該音符の音符評価値を低下させる数値に設定する。以上の態様では、旋律データが特定の音高の音符を指定する場合に音符指標値が小さい数値に設定されるから、特定の音高を含む旋律の旋律データが選択される可能性を低減することが可能である。本発明の好適な態様において、旋律評価手段は、複数の音符の音符評価値の加算値例えば加算値Taを複数の音符の合計長例えば合計長Tbにより除算することで旋律評価値を算定する。以上の態様では、音符指標値の加算値を音符の合計長により除算することで、評価指標値を、音符の合計長に依存しない数値に正規化できるという利点がある。以上の各態様に係る楽曲生成装置は、専用のDSPDigitalSignalProcessorなどのハードウェア電子回路によって実現されるほか、CPUCentralProcessingUnitなどの汎用の演算処理装置とプログラムとの協働によっても実現される。本発明に係るプログラムは、複数の単位区間の各々について旋律が付与された楽曲を生成するために、相異なる旋律を指定する複数の旋律データを記憶する記憶手段を具備するコンピュータに、楽曲のコード進行を指定するコード進行データを取得するコード取得処理と、複数の単位区間の各々について、コード進行データが指定する当該単位区間でのコード進行と旋律データが指定する旋律との関係に応じた旋律評価値を旋律データ毎に算定する旋律評価処理旋律評価処理S13と、複数の単位区間の各々について、当該単位区間における各旋律データの旋律評価値に応じて複数の旋律データの何れかを選択する旋律選択処理旋律選択処理S15とを実行させる。以上のプログラムによれば、本発明に係る楽曲生成装置と同様の作用および効果が実現される。なお、本発明のプログラムは、コンピュータが読取可能な記録媒体に格納された形態で提供されてコンピュータにインストールされるほか、通信網を介した配信の形態で提供されてコンピュータにインストールされる。<第1実施形態>図1は、本発明の第1実施形態に係る楽曲生成装置100Aのブロック図である。楽曲生成装置100Aは、楽曲を生成してその楽曲の演奏音の音響信号Vを出力する信号処理装置自動作曲装置である。以下の説明では、歌唱音が旋律を担当する歌唱曲を生成する場合を例示する。楽曲生成装置100Aには入力装置12と放音装置14とが接続される。入力装置12は、利用者からの指示を受付ける機器例えばマウスやキーボードである。放音装置14例えばスピーカやヘッドホンは、楽曲生成装置100Aから供給される音響信号Vに応じた音波を放射する。なお、音響信号Vをデジタルからアナログに変換するDA変換器等の図示は便宜的に省略されている。第1実施形態の楽曲生成装置100Aは、演算処理装置22と記憶装置24とを具備するコンピュータシステムで実現される。演算処理装置22は、記憶装置24に記憶されたプログラムPGMを実行することで、楽曲を生成するための複数の機能情報取得部32,楽曲生成部34,楽音生成部42,音声合成部44,混合部46を実現する。なお、演算処理装置22の各機能を複数の集積回路に分散した構成や、専用の電子回路DSPが一部の機能を分担する構成も採用され得る。記憶装置24は、演算処理装置22が記憶するプログラムPGMや演算処理装置22が使用する各種のデータを記憶する。半導体記録媒体や磁気記録媒体等の公知の記録媒体が記憶装置24として任意に採用され得る。記憶装置24を複数の記録媒体で構成することも可能である。図1に示すように、記憶装置24は、複数の旋律データDMを記憶する。複数の旋律データDMの各々は、楽曲生成の素材として使用される旋律以下素材旋律というを指定するデータであり、図1に示すように、音符列データDM1と区間データDM2とを含んで構成される。音符列データDM1は、図2に示すように、素材旋律を構成する複数の音符の時系列を指定する。具体的には、音符列データDM1は、素材旋律の複数の音符の各々について音高と発音期間発音時点および継続長とを指定する。既存の楽曲から抽出された所定長の旋律を素材旋律として各音符列データDM1が生成される。第1実施形態では、44拍子の楽曲の2小節分8分音符の16個分を素材旋律とした場合を例示する。音符列データDM1は、例えばMIDIMusicalInstrumentDigitalInterface規格に準拠した形式で記述され得る。具体的には、素材旋律の各音符の音高ノートナンバを指定して発音や消音を指定するイベントデータと各イベントデータの処理間隔音符の継続長や間隔を指定するタイミングデータとを配列した時系列データが音符列データDM1として好適である。第1実施形態の楽曲生成装置100Aは、図3に示すように、複数K個の単位区間Uで構成される楽曲を生成する。1個の単位区間Uは、例えば楽曲の所定個の小節に相当する区間である。以下の説明では、1個の単位区間Uが、素材旋律と同様に、44拍子の楽曲の2小節分8分音符16個分に相当する場合を想定する。K個の単位区間Uの各々について複数の旋律データDMの何れかが順次に選択され、旋律データDM音符列データDM1に応じて単位区間U毎の旋律を選定した楽曲が生成される。区間データDM2は、図2に示すように、音符列データDM1が指定する素材旋律を時間軸上で複数の区間以下旋律区間というBに区分するためのデータであり、時間軸上での各旋律区間Bの境界点を指定する。例えば素材旋律内で音楽的な纏まりがある区間を単位として各旋律区間Bが画定される。区間データDM2は、例えば旋律データDMの制作者楽曲生成装置100Aの提供者が素材旋律を聴取したうえで音楽的な印象を考慮して任意に設定する。以上に説明した各旋律データDMは、例えばSMFStandardMIDIFile形式の音楽ファイルとして記述され得る。具体的には、音符列データDM1と区間データDM2とは別個のトラックチャネルとして記述される。区間データDM2は、例えば境界点を意味するイベントデータと各イベントデータの時点境界点の時点を指定するタイミングデータとを配列したMIDI形式のデータとして記述される。図1の情報取得部32は、楽曲生成に適用される情報を取得する。第1実施形態の情報取得部32は、コード進行データDCと指定文字列DLと変数データDXとを入力装置12に対する利用者からの指示に応じて生成する。図1に示すように、情報取得部32が生成した情報DC,DL,DXは記憶装置24に格納される。なお、可搬型または据置型の記録媒体から情報取得部32が情報DC,DL,DXを取得する構成や、通信網を介して他の通信端末から情報取得部32が情報を取得する構成も採用され得る。コード進行データDCは、楽曲のコード進行を指定する。具体的には、コード進行データDCは、図4に示すように、楽曲内の各拍点例えば8分音符毎に対応する単位データDUを時系列に配列した構造である。具体的には、各単位データDUは、小節番号と拍点番号とコードとを指定する。例えば、図4において11:Cと表記された単位データDUは、楽曲の1小節目の第1拍目最初の8分音符のコードとしてCを指定し、15:Fと表記された単位データDUは、楽曲の1小節目の第5拍目のコードとしてFを指定する。コードの指定を含まない単位データDU例えば図4の12:と表記された単位データDUは、直前に指定されたコードが維持されることを意味する。コード進行データDCは、例えばテキスト形式の文書ファイルとして記述される。すなわち、図4に例示される通り、単位データDUの内容を1行毎に利用者が入力装置12から順次に文字入力し、情報取得部32は、利用者が作成した文書ファイルをコード進行データDCとして記憶装置24に格納する。利用者は、コード進行データDC内の単位データDUの総数を任意に設定し得る。楽曲を構成する単位区間Uの総数K楽曲の時間長は、コード進行データDC内の単位データDUの総数に応じて可変に設定される。第1実施形態では、1個の単位データDUが8分音符に対応するとともに1個の単位区間Uが44拍子の2小節分8分音符の16個分に相当するから、例えばコード進行データDCが64個の単位データDUを含む場合には、4個の単位区間U8分音符の64個に相当する8小節分で構成される楽曲が生成される。指定文字列DLは、楽曲の歌詞の文字列である。情報取得部32は、入力装置12に対する利用者からの指示文字入力に応じて指定文字列DLを可変に設定する。変数データDXは、楽曲生成に適用される変数を指定する。情報取得部32は、入力装置12に対する利用者からの指示に応じて各変数の数値を可変に設定する。変数データDXが指定する変数の具体例については後述する。以上の説明から理解されるように、演算処理装置22が実現する情報取得部32は、コード進行データDCを取得する要素コード取得手段,指定文字列DLを取得する要素文字列取得手段,および変数データDXを取得する要素として機能する。図1の楽曲生成部34は、各旋律データDMとコード進行データDCと指定文字列DLと変数データDXとを利用して楽曲データQを生成する。楽曲データQは、楽曲の旋律を指定するデータであり、図3に示すように、各単位区間Uに対応する旋律データQUの時系列で構成される。図5は、楽曲生成部34が楽曲データQを生成する処理以下楽曲生成処理というのフローチャートである。コード進行データDCと指定文字列DLと変数データDXとが記憶装置24に記憶された状態で、入力装置12に対する操作により利用者が楽曲生成の開始を指示した場合に図5の楽曲生成処理が開始される。楽曲生成処理を開始すると、楽曲生成部34は、記憶装置24に記憶された指定文字列DLとK個の単位区間Uの各々とを相互に対応させる文字割当処理S11を実行する。図6は、文字割当処理S11のフローチャートである。文字割当処理S11を開始すると、楽曲生成部34は、指定文字列DLを平仮名に変換したうえでSA11、図3に示すように指定文字列DLを複数の文字群Gに区分するSA12。第1実施形態では、指定文字列DLを文節毎に文字群Gに区分する。したがって、文字群G毎に文字数は相違する。指定文字列DLの文節の特定には、形態素解析等の公知の自然言語処理が任意に利用され得る。なお、指定文字列DLが平仮名で入力された場合にはステップSA11の処理は省略される。楽曲生成部34は、図3に示すように、指定文字列DLを区分した複数の文字群GをK個の単位区間Uに分配するSA13。具体的には、指定文字列DLの複数の文字群Gの時系列が、相異なる単位区間Uに対応するK個の集合に区分される。例えば、各単位区間Uに分配される文字群Gの個数がK個の単位区間Uについて可能な限り均等化される単位区間U毎の文字群Gの個数の差異が最小化されるように複数の文字群Gが時系列の順番で各単位区間Uに区分される。以上に説明したように、演算処理装置22が文字割当処理S11を実行することで、指定文字列DLの複数の文字群Gを各単位区間Uに分配する要素文字割当手段が実現される。文字割当処理S11が終了すると、楽曲生成部34は、K個の単位区間Uから1個の単位区間U以下対象単位区間Uというを選択するS12。楽曲生成処理の開始直後のステップS12では第1番目の単位区間Uが対象単位区間Uとして選択される。楽曲生成部34は、対象単位区間Uについて旋律データQUを生成する旋律生成処理S13~S16を実行し、K個の単位区間Uの各々について旋律生成処理が完了したか否かを判定するS17。旋律データQUを生成していない単位区間Uが存在する場合S17:NO、楽曲生成部34は、現在の対象単位区間Uの直後の単位区間Uを新たな対象単位区間Uとして選択したうえでS12、更新後の対象単位区間Uについて旋律生成処理S13~S16を実行する。すなわち、K個の単位区間Uの各々について旋律生成処理S13~S16が順次に反復されることで楽曲の各単位区間Uの旋律データQUが生成される。なお、第1実施形態ではK個の単位区間Uを先頭から末尾に向かう順番で順次に選択するが、K個の単位区間Uを末尾から先頭に向かう順番で順次に選択することも可能である。旋律生成処理S13~S16は、旋律評価処理S13と文字列評価処理S14と旋律選択処理S15と旋律調整処理S16とを含んで構成される。旋律評価処理S13は、対象単位区間Uについてコード進行データDCが指定するコード進行と旋律データDMが指定する旋律との関係音楽的な相関度に応じた旋律評価値EAを記憶装置24内の複数の旋律データDMの各々について算定する処理である。文字列評価処理S14は、文字割当処理S11で対象単位区間Uに分配した各文字群Gと旋律データDMが指定する旋律との関係に応じた旋律評価値EBを記憶装置24内の複数の旋律データDMの各々について算定する処理である。第1実施形態では、旋律評価処理S13で算定された旋律評価値EAを文字列評価処理S14により調整することで旋律評価値EBを算定する。旋律選択処理S15は、旋律データDM毎に算定された旋律評価値EBに応じて記憶装置24内の複数の旋律データDMから1個の旋律データDMを選択する処理である。具体的には、複数の旋律データDMのうち旋律評価値EBが最大となる旋律データDMが選択される。旋律調整処理S16は、旋律選択処理S15で選択した1個の旋律データDMを調整することで対象単位区間Uの旋律データQUを生成する処理である。以上に概説した旋律生成処理S13~S16がK個の単位区間Uの各々について順次に実行される。各処理S13~S16の具体的な内容を以下に説明する。<旋律評価処理S13>図7は、旋律評価処理S13のフローチャートである。旋律評価処理S13を開始すると、楽曲生成部34は、記憶装置24に記憶された複数の旋律データDMのうち1個の旋律データDM以下対象旋律データDMというを選択するSB11。そして、楽曲生成部34は、対象旋律データDMの音符列データDM1が指定する素材旋律の複数の音符の各々について音符評価値eを算定するSB12。音符評価値eは、図2に示すように、第1評価値e1と第2評価値e2とに応じて算定される。第1実施形態の楽曲生成部34は、第1評価値e1と第2評価値e2との乗算値を音符評価値eとして算定する。1個の音符の第1評価値e1は、その音符の発音時点についてコード進行データDCが指定するコードZCとその音符の音高ZPとの関係に応じた数値に設定される。具体的には、第1評価値e1は、音符の音高ZPがコードZCの構成音に該当する場合には数値a1に設定され、音高ZPがコードZCの根音のペンタトニックの構成音コードZCの構成音を除くに該当する場合には数値a2に設定され、音高ZPがコードZCの構成音およびペンタトニックの構成音の何れにも該当しない幹音である場合には数値a3に設定される。音符の音高ZPが何れにも該当しない場合、第1評価値e1はゼロに設定される。数値a1から数値a3の各々は、変数データDXにて指定される正数である。情報取得部32は、入力装置12に対する利用者からの指示に応じて数値a1から数値a3の各々を個別に設定する。図2では、コードの構成音に対応する数値a1を5に設定し、ペンタトニックの構成音に対応する数値a2を3に設定し、他の幹音に対応する数値a3を1に設定した場合が想定されている。したがって、コード進行データDCが指定するコードZCがFである区間に着目すると、図2に示すように、音高ZPがFファコードの構成音に設定された音符の第1評価値e1は5a1に設定され、音高ZPがDレペンタトニックの構成音に設定された音符の第1評価値e1は3a2に設定され、音高ZPがEミ何れにも該当しない幹音に設定された音符の第1評価値e1は1a3に設定される。他方、第2評価値e2は、各音符の継続長に応じた数値例えば各音符の発音区間内のtick数に設定される。具体的には、図2から理解されるように、音符の継続長が長いほど第2評価値e2は大きい数値に設定される。以上に説明した第1評価値e1と第2評価値e2との乗算値が、対象旋律データDMで指定される複数の音符の各々について音符評価値eとして算定される。楽曲生成部34は、対象旋律データDMが指定する各音符の音符評価値eから対象旋律データDMの旋律評価値EAを算定するSB13,SB14。具体的には、楽曲生成部34は、対象旋律データDMが指定する全部の音符にわたる音符評価値eの合計値Taを算定しSB13、対象旋律データDMが全部の音符の継続長の合計値第2評価値e2の合計値Tbにより音符評価値eの合計値Taを除算することで旋律評価値EAEA=Ta/Tbを算定するSB14。合計値Tbによる除算は、素材旋律毎の合計値Tbの相違を補償した数値に正規化するための演算である。以上の説明から理解されるように、数値a1と数値a2とを数値a3と比較して大きい数値に設定した場合を想定すると、コード進行データDCが指定するコードの構成音やペンタトニックの構成音の継続長が長い素材旋律ほど旋律評価値EAが大きい数値すなわち旋律選択処理S15で選択され易い数値になるという傾向がある。すなわち、旋律評価値EAは、コード進行データDCが指定するコードと素材旋律の各音符とが音楽的に相関調和する度合の指標として利用可能である。以上の手順で対象旋律データDMの旋律評価値EAを算定すると、楽曲生成部34は、記憶装置24に記憶された全部の旋律データDMについて旋律評価値EAの算定が完了したか否かを判定するSB15。旋律評価値EAの未算定の旋律データDMが存在する場合SB15:NO、楽曲生成部34は、旋律評価値EAを算定していない旋律データDMを新たな対象旋律データDMとして選択しSB11、更新後の対象旋律データDMについて旋律評価値EAを算定するSB12~SB14。他方、全部の旋律データDMについて旋律評価値EAの算定が完了した段階SB15:YESで旋律評価処理S13は終了する。以上の説明から理解されるように、演算処理装置22が旋律評価処理S13を実行することで、旋律データDM毎素材旋律毎に旋律評価値EAを算定する要素旋律評価手段が実現される。<文字列評価処理S14>図8は、文字列評価処理S14のフローチャートである。文字列評価処理S14を開始すると、楽曲生成部34は、記憶装置24に記憶された複数の旋律データDMから1個の対象旋律データDMを選択するSC10。楽曲生成部34は、旋律評価処理S13で対象旋律データDMについて算定した旋律評価値EAを、以下に詳述する第1調整処理SC11から第4調整処理SC14までの各処理により順次に調整することで旋律評価値EBを算定する。第1調整処理SC11は、文字割当処理S11で対象単位区間Uに分配した文字群Gの個数NAと対象旋律データDMの区間データDM2に応じて素材旋律を区分した旋律区間Bの個数MAとの差分絶対値ΔAに応じて対象旋律データDMの旋律評価値EAを調整する処理である。具体的には、差分ΔAが大きいほど旋律評価値EAは小さい数値に調整される。例えば、旋律評価値EAは、所定の数値b1のΔA乗を現段階の旋律評価値EAに乗算した数値に更新されるEA=EA×b1ΔA。数値b1は1以下の正数である。以上の説明から理解されるように、文字群Gの個数NAと旋律区間Bの個数MAとの差分ΔAが大きい素材旋律の旋律データDMほど旋律選択処理S15で選択され難くなるという傾向がある。すなわち、文字群Gの個数NAと旋律区間Bの個数MAとが極端に相違する楽曲例えば過度に多数の文字群Gが1個の旋律区間Bに対応する楽曲や、過度に多数の旋律区間Bが1個の文字群Gに対応する楽曲が生成される可能性は低減される。第2調整処理SC12は、対象単位区間Uに割当てた各文字群Gと対象旋律データDMが指定する素材旋律の各旋律区間Bとを対応させ、各旋律区間Bにおける文字群Gの文字の個数NBとその旋律区間B内の音符の個数MBとの差分絶対値ΔBに応じて旋律評価値EAを調整する処理である。具体的には、楽曲生成部34は、第1に、対象旋律データDMが指定する素材旋律の各旋律区間Bと対象単位区間Uに割当てた各文字群Gとを時系列の順番で相互に対応させる全通りの組合せについて差分ΔBを算定する。差分ΔBは、旋律区間Bにおける文字群Gの文字の個数NBと音符の個数MBとの差異を素材旋律の全部の旋律区間Bについて加算した数値である。楽曲生成部34は、第2に、各旋律区間Bと各文字群Gとの対応を差分ΔBが最小となる関係に確定し、第3に、確定後の関係における差分ΔBが大きいほど旋律評価値EAを小さい数値に調整する。例えば、旋律評価値EAは、所定の数値b2のΔB乗を第1調整処理SC11の実行後の旋律評価値EAに乗算した数値に更新されるEA=EA×b2ΔB。数値b2は1以下の正数である。以上の説明から理解されるように、各旋律区間B内で文字の個数NBと音符の個数MBとの差分ΔBが大きい素材旋律の旋律データDMほど旋律選択処理S15で選択され難くなるという傾向がある。すなわち、各旋律区間B内で文字の個数NBと音符の個数MBとが極端に相違する楽曲例えば過度に多数の文字が1個の旋律区間Bに対応する楽曲や、過度に多数の音符が1個の文字群Gに対応する楽曲が生成される可能性は低減される。第3調整処理SC13は、各旋律区間Bに対応する文字の個数NBが所定の許容値THを上回る場合に旋律評価値EAを低下させる処理である。許容値THは、各旋律区間Bに包含され得る16分音符の個数したがって旋律区間Bの時間長に応じた可変値に設定される。各旋律区間Bの時間長は相違し得るから、許容値THも旋律区間B毎に個別に算定される。楽曲生成部34は、1個の旋律区間Bについて許容値THと文字の個数NBとの差分ΔCを算定しΔC=TH-ZC、差分ΔCが正数である場合すなわち1個の文字について16分音符よりも長い時間長を旋律区間B内に確保できる場合には旋律評価値EAを維持する一方、差分ΔCが負数である場合1個の文字について16分音符の時間長を旋律区間B内に確保できない場合には旋律評価値EAを減少させる。具体的には、旋律評価値EAは、所定の数値b3のΔC負数乗を第2調整処理SC12の実行後の旋律評価値EAに乗算した数値に更新されるEA=EA×b3ΔC。数値b3は1以上の正数である。以上の処理が素材旋律内の旋律区間B毎に反復される。以上の説明から理解されるように、各旋律区間B内の文字の個数NAが許容値THを上回る素材旋律の旋律データDMほど旋律選択処理S15で選択され難くなるという傾向がある。すなわち、各文字の発声速度が過度に速い楽曲例えば16分音符を上回る速度で各文字が発声される楽曲が生成される可能性は低減される。第4調整処理SC14は、対象単位区間Uに対応する文字の個数対象単位区間Uに分配した各文字群Gの文字数の合計値NDが対象旋律データDMの素材旋律を構成する音符の個数素材旋律の各旋律区間Bの音符数の合計値MDを上回る場合に旋律評価値EAを低下させる処理である。具体的には、楽曲生成部34は、対象単位区間U内の文字の個数NDが素材旋律の音符の個数MD以下である場合には旋律評価値EAを維持し、対象単位区間U内の文字の個数NDが素材旋律の音符の個数MDを上回る場合には、第3調整処理SC13の実行後の旋律評価値EAに所定の数値b4を乗算するEA=EA×b4。数値b4は1以下の正数である。以上の説明から理解されるように、対象単位区間Uに対応する文字の個数NDが音符の個数MDを上回る素材旋律の旋律データDMは旋律選択処理S15にて選択され難くなるという傾向がある。すなわち、単位区間U内の文字の個数が音符の個数に対して過度に多い楽曲が生成される可能性は低減される。文字列評価処理S14に適用される数値b1から数値b4の各々は、第1実施形態の数値a1から数値a3と同様に、変数データDXが指定する変数であり、利用者からの指示に応じて可変に設定される。以上に説明した処理SC11~SC14を対象旋律データDMの旋律評価値EAに対して順次に実行することで対象旋律データDMの旋律評価値EBを算定すると、楽曲生成部34は、記憶装置24に記憶された全部の旋律データDMについて旋律評価値EBの算定が完了したか否かを判定するSC15。旋律評価値EBを算定していない旋律データDMが存在する場合SC15:NO、楽曲生成部34は、旋律評価値EBを算定していない旋律データDMを新たな対象旋律データDMとして選択しSC10、更新後の対象旋律データDMについて旋律評価値EBを算定するSC11~SC14。他方、全部の旋律データDMについて旋律評価値EBの算定が完了した段階SC15:YESで文字列評価処理S14は終了する。以上の説明から理解されるように、演算処理装置22が文字列評価処理S14を実行することで、各単位区間Uに対応する文字数または文字群Gの個数と旋律データDMが指定する素材旋律の音符数または旋律区間Bの個数とに応じた旋律評価値EBを旋律データDM毎に算定する要素文字列評価手段が実現される。なお、第1調整処理SC11から第4調整処理SC14の順序は適宜に変更される。<旋律選択処理S15>楽曲生成部34は、文字列評価処理S14で旋律データDM毎に算定した旋律評価値EBが最大となる1個の旋律データDM以下選択旋律データDMというを記憶装置24内の複数の旋律データDMから選択するS15。すなわち、演算処理装置22が旋律選択処理S15を実行することで、旋律評価値EBに応じて旋律データDMを選択する要素旋律選択手段が実現される。なお、楽曲生成部34が各旋律データDMの旋律評価値EBに応じて選択旋律データDMを選択する方法は適宜に変更される。例えば、旋律評価値EBが所定の閾値を上回る複数の旋律データDMから楽曲生成部34がランダムに1個の選択旋律データDMを選択する方法や、旋律評価値EBの降順で上位に位置する所定個の旋律データDMから楽曲生成部34がランダムに1個の選択旋律データDMを選択する方法も採用され得る。以上の方法によれば、楽曲の生成のたびに別個の楽曲を生成することが可能である。<旋律調整処理S16>楽曲生成部34は、旋律選択処理S15で選択した選択旋律データDMが指定する音符の個数を、対象単位区間U内で文字と音符とが1対1に対応するように調整することで対象単位区間Uの旋律データQUを生成するS16。図9は、旋律調整処理S16のフローチャートである。旋律調整処理S16を開始すると、楽曲生成部34は、対象単位区間Uに分配された文字の個数NDが、選択旋律データDMが指定する音符の個数MDを上回るか否かを判定するSD11。文字の個数NDが音符の個数MDを上回る場合SD11:YES、楽曲生成部34は、音符の個数MDを文字の個数NDまで増加させるSD12。具体的には、楽曲生成部34は、選択旋律データDMが指定する複数の音符のうち継続長が最長である1個の音符を2個の音符に分割する処理を、音符の個数MDが文字の個数NDに到達するまで順次に反復する。1個の音符は、例えば拍点に対応する時点で分割される。ステップSD12の処理後の選択旋律データDMが対象単位区間Uの旋律データQUとして確定する。他方、ステップSD11の判定結果が否定である場合SD11:NO、楽曲生成部34は、文字の個数NDが音符の個数MDを下回るか否かを判定するSD13。文字の個数NDが音符の個数MDを下回る場合SD13:YES、楽曲生成部34は、選択旋律データDMが指定するMD個の音符から文字と同数のND個の音符を選択するSD14。ND個の音符の選択には、旋律評価処理S13SB12で音符毎に算定した音符評価値eが利用される。具体的には、楽曲生成部34は、選択旋律データDMが指定するMD個の音符のうち音符評価値eの降順大→小で上位に位置するND個の音符を選択する。ただし、旋律区間B内の先頭の音符すなわち音楽的に重要な音符は、音符評価値eに関わらず優先的に選択される。また、楽曲生成部34は、選択旋律データDMが指定するMD個の音符のうちステップSD14で選択されない音符を処理するSD15。例えば、楽曲生成部34は、非選択の音符を削除するとともに直前の音符を削除分だけ時間軸方向に伸長する。ただし、非選択の音符と直前の音符との音高差が閾値例えば4半音程度を下回る場合には、直前の音符の文字の継続を意味する長音記号ーを非選択の音符に対応させる。直前の音符に音高が近い音符に限定して長音記号を付加するのは、直前の音符から大幅に音高が変化する音符についても文字を直前の音符から継続させると、楽曲が不自然な印象と知覚されるからである。ステップSD15の処理後の選択旋律データDMが対象単位区間Uの旋律データQUとして確定する。他方、ステップSD13の判定結果が否定である場合すなわち、音符の個数MDと文字の個数NDとが合致する場合、楽曲生成部34は、音符の個数MDの調整SD12,SD14,SD15を実行しない。すなわち、選択旋律データDMが対象単位区間Uの旋律データQUとして確定する。以上に説明した処理SD11~SD15により文字の個数NDと音符の個数MDとが合致する。すなわち、指定文字列DLの各文字と素材旋律の各音符とが1対1に対応した旋律データQUが生成される。以上の説明から理解されるように、演算処理装置22が旋律調整処理S16を実行することで、対象単位区間Uの選択旋律データDMが指定する素材旋律の音符の個数MDを調整して各文字に対応させる要素旋律調整手段が実現される。なお、以上に例示した旋律調整処理S16では、文字と音符とを対象単位区間U内で1対1に対応させたが、相互に対応する旋律区間Bと文字群Gとの間で旋律区間B内の各音符と文字群G内の各文字とを1対1に対応させることも可能である。例えば、楽曲生成部34は、前述の第2調整処理SC12と同様に、旋律区間B内の音符の個数MBと文字群G内の文字の個数NBとの差分ΔBが最小となるように各旋律区間Bと各文字群Gとの対応を確定し、旋律区間Bと文字群Gとの組合せ毎に、旋律区間B内の音符数と文字群G内の文字数とが合致するように旋律調性処理S16SD11~SD15を実行する。旋律生成処理S13~S16の具体的な内容は以上の通りである。前述のように、旋律生成処理がK個の単位区間Uの各々について反復されることで楽曲データQを構成するK個の旋律データQUが生成される。楽曲生成部34が生成した楽曲データQは、図1の楽音生成部42と音声合成部44とに供給される。楽音生成部42は、楽曲データQが指定する各音符の演奏音を示す楽音信号V1を生成する。具体的には、公知のMIDI音源が楽音生成部42として好適に採用される。他方、音声合成部44は、楽曲生成部34が生成した楽曲データQと情報取得部32が生成した指定文字列DLとに応じた音声信号V2を生成する。音声信号V2は、指定文字列DLの各文字を、楽曲データQがその文字に対応する音符に指定する音高で発声した歌唱音を示す音響信号である。音声信号V2の生成には、例えば公知の素片接続型の音声合成処理が好適に採用され得る。すなわち、音声合成部44は、指定文字列DLの各文字に対応する音声素片を順次に選択し、各音声素片を、楽曲データQが指定する各音符の音高と発音期間とに調整したうえで相互に連結することで音声信号V2を生成する。混合部46は、楽音生成部42が生成した楽音信号V1と音声合成部44が生成した音声信号V2との混合加重和で音響信号Vを生成する。混合部46が生成した音響信号Vが放音装置14に供給されることで音波が再生される。以上に説明したように、第1実施形態では、楽曲のコード進行を指定するコード進行データDCに応じた旋律評価値EAが旋律データDM毎に算定されて旋律データDMの選択に反映される。したがって、歌詞の韻律に対応するように楽曲の音符列が制約される非特許文献1の技術と比較して、音楽的に自然で多様な楽曲を生成できるという利点がある。また、利用者からの指示に応じたコード進行データDCに応じて旋律評価値EAが算定されるから、利用者の意図を高い水準で反映した多様な楽曲を生成できるという利点もある。ところで、非特許文献1の技術では、歌詞の韻律に応じた音符列が生成されるに過ぎず、楽曲内で音楽的な纏まりがある各単位区間例えば2小節の区間と歌詞との関係は何ら加味されない。したがって、例えば歌詞の1個の文節が楽曲の2個の単位区間に跨る可能性があり、歌詞の配列が不自然で聴取し難い楽曲が生成される可能性がある。第1実施形態では、指定文字列DLを区分した複数の文字群Gが各単位区間Uに分配される。したがって、歌詞の韻律に応じて音符列を生成する非特許文献1の技術と比較して、指定文字列DLの各文字群Gと楽曲の各単位区間とが無理なく対応した自然な楽曲を生成することが可能である。例えば、第1実施形態の例示のように指定文字列DLを文節単位で複数の文字群Gに区分すれば、楽曲の音楽的な纏まりと指定文字列DLの意味的な纏まりとが相互に対応する自然な楽曲を生成することが可能である。すなわち、例えば音楽的な纏まりの境界が文節の途中に位置するような不自然な楽曲が生成される可能性は低減される。また、第1実施形態では、各単位区間Uに対応する文字または文字群Gの個数と旋律データDMが指定する音符または旋律区間Bの個数との関係に応じた旋律評価値EBが旋律データDM毎に算定されて旋律データDMの選択に適用される。したがって、例えば旋律評価処理S13で算定された旋律評価値EAに応じて各単位区間Uの旋律データDMを選択する構成と比較して、文字または文字群Gの個数と音符または旋律区間Bの個数とが乖離した不自然な楽曲が生成される可能性を低減できるという利点がある。また、旋律評価値EAの算定に適用される変数の数値a1~a3や旋律評価値EBの算定に適用される変数の数値b1~b4は利用者からの指示に応じて可変に設定される。したがって、利用者の意図に適合した楽曲を生成できるという利点がある。例えば、数値a1と数値a2とを数値a3と比較して大きい数値に設定すれば、コード進行データDCが指定するコードの構成音やペンタトニックの構成音が優勢な楽曲コード進行データDCが指定するコード進行に類似する楽曲が生成され、数値a3を数値a1や数値a2と比較して大きい数値に設定すれば、コード進行データDCが指定するコード進行から乖離した楽曲が生成される。また、文字列評価処理S14に適用される数値b1~b4を適宜に調整することで、文字と音符とが自然に対応する楽曲を生成できるという利点がある。<第2実施形態>本発明の第2実施形態を以下に説明する。なお、以下に例示する各形態において作用や機能が第1実施形態と同等である要素については、以上の説明で参照した符号を流用して各々の詳細な説明を適宜に省略する。図10は、第2実施形態におけるコード進行データDCを構成する1個の単位データDUの模式図である。図10に示すように、第2実施形態の単位データDUでは、第1実施形態と同様のコードの指定に加えて、第1特定音と第2特定音と減点音とを指定することが可能である。図10の例示では、記号H:で指定された音高Dレが第1特定音を意味し、記号L:で指定された音高Aラが第2特定音を意味し、記号Minus:で指定された音高Fファが減点音を意味する。第1特定音と第2特定音と減点音とは、利用者からの指示に応じて設定される。なお、1個の単位データDUにおける各音符第1特定音,第2特定音,減点音の指定の効果は、その単位データDUに対応する時点拍点のみで有効とされるが、時間的に後方の単位データDUにて指定が解除されるまで有効に維持することも可能である。旋律評価処理S13SB12において、楽曲生成部34は、対象旋律データDMで指定される音符が、その音符の発音時点の単位データDUが指定する第1特定音に該当する場合には、コードの構成音やペンタトニックの構成音に該当するか否かに関わらず、第1評価値e1を数値a4に設定する。同様に、音符が第2特定音に該当する場合には第1評価値e1が数値a5に設定され、音符が減点音に該当する場合には第1評価値e1が数値a6に設定される。数値a4から数値a6の各々は、第1実施形態の数値a1から数値a3と同様に、変数データDXが指定する変数であり、利用者からの指示に応じて可変に設定される。数値a4および数値a5は正数に設定されるa4>a5。例えば数値a4を数値a1から数値a3と比較して大きい数値に設定すれば、第1特定音に該当する音符を含む素材旋律を旋律選択処理S15にて優先的に選択することが可能である。また、数値a5を数値a1や数値a2と比較して小さい数値に設定すれば、第2特定音に該当する音符が多い素材旋律が旋律選択処理S15で選択される可能性は低減される。他方、数値a6は負数に設定される。したがって、減点音に該当する音符の音符評価値eは負数すなわち旋律評価値EAを低下させる数値となる。すなわち、減点音に該当する音符を含む素材旋律の選択を高い確度で回避することが可能である。第2実施形態においても第1実施形態と同様の効果が実現される。また、第2実施形態では、第1特定音と第2特定音と減点音とをコード進行データDCで指定して各々について第1評価値e1の数値a4~a6を個別に設定できる。したがって、利用者の意図を精緻に反映した楽曲を生成できるという利点がある。例えば、利用者が優先させたい音符を含む楽曲や利用者が回避したい音符を含まない楽曲を生成することが可能である。<第3実施形態>第1実施形態では、指定文字列DLを文節単位で複数の文字群Gに区分した。第3実施形態では、利用者が文字群Gの境界を任意に指定することが可能である。図11は、入力装置12の操作で利用者が入力した指定文字列DLの模式図である。指定文字列DLは、改行記号82を境界とした複数行にわたる文字列で構成されて相前後する文字間に区切記号84が挿入され得る。図11では:コロンを区切記号84とした場合を例示したが、句読点句点や読点を区切記号84とすることも可能である。利用者は、文字列の入力とともに指定文字列DLの改行記号82や区切記号84の位置を任意に選定することが可能である。図6の文字割当処理S11において、楽曲生成部34は、改行記号82および区切記号84を境界として指定文字列DLを複数の文字群Gに区分するSA12。そして、楽曲生成部34は、指定文字列DLに設定された改行記号82の前後で各文字群Gが別個の単位区間Uに対応するように各文字群GをK個の単位区間Uに分配するSA13。指定文字列DLに改行記号82が設定されていない場合には、第1実施形態と同様に、文字群Gの個数がK個の単位区間Uについて均等化されるように指定文字列DLの複数の文字群Gが単位区間U毎に区分される。第3実施形態においても第1実施形態と同様の効果が実現される。また、第3実施形態では、指定文字列DLの文字群Gを利用者が任意に指定できるから、利用者が指定した文字群Gを単位として指定文字列DLを各単位区間Uに分配した自然な楽曲を生成することが可能である。なお、改行記号82や区切記号84の位置に加えて文節の境界で指定文字列DLを文字群Gに区分することも可能である。<第4実施形態>第4実施形態の音声合成部44は、合成音に音楽的な表情を付与するための処理表情付与処理を実行する。表情付与処理の具体例は以下の通りである。1楽曲データQが指定する音符の音高が音高ZP1から音高ZP2に変化する場合に、音高ZP2の音符の先頭にポルタメントしゃくりを付与する。例えば、音高ZP2が音高ZP1を上回る場合、音高ZP1を下回る数値に低下させてから目標の音高ZP2まで音高を連続的に上昇させる効果上行ポルタメントを音高ZP2の音符の先頭に付加する。また、音高ZP2が音高ZP1を下回る場合、音高ZP1を上回る数値に上昇させてから目標の音高ZP2まで音高を連続的に低下させる効果下行ポルタメントを音高ZP2の音符の先頭に付加する。2各音符にビブラートを付加する。具体的には、例えば継続長が所定の閾値を上回る音符の全体または一部例えば終点から前方の所定長にわたる区間にビブラートが付加される。3所定時間毎の文字の個数が閾値を上回る場合すなわち合成音が早口な場合に合成音の明瞭度発声時の開口の度合を低下させ、口を完全に開かずに発声した場合のような曖昧な音声に制御する。4楽曲の最初の音符や各単位区間Uまたは各旋律区間Bの最初の音符については音量を上昇させる。また、音量の上昇に代えてまたは音量の上昇とともに、小節こぶしを付与することも可能である。5相前後する音符の間隔の時間長が所定の閾値を上回る場合に、間隔内に息継ぎの音声を追加する。息継ぎの音声は、例えば音声素片として事前に用意される。また、相前後する音符の間隔の時間長が所定の閾値を下回る場合に各音符を時間軸上で連続させる。すなわち、相前後する音符の間にレガートを付与する。6音高やリズムのパターンと音量の時間変化とを対応させたテーブルを用意し、旋律区間内の音符の音高のパターンに対応した音量の時間変化を付与する。また、音符の音高が変化した直後に音量を一時的に増加させる構成や、音符の継続長に応じて音量を変化させる例えば継続長が長いほど音量を増加させる構成も採用され得る。7合成音の音楽的な表情を制御するための制御変数例えば音量や明瞭度等の時間変化を各旋律データDMに事前に設定して音声合成時に適用する。8相異なる特性の音声毎に音声素片を用意し、指定文字列DLに含まれる単語の種類やコード進行や曲調等に応じて、音声合成に実際に適用される音声素片を変更する。以上が表情付与処理の具体例である。第4実施形態においても第1実施形態と同様の効果が実現される。また、第4実施形態では、音声合成部44による音声合成の実行時音声信号V2の生成時に表情付与処理が実行されるから、音楽的な表情が多様な合成音を生成できるという利点がある。<第5実施形態>第5実施形態の各旋律データDMは、音符列データDM1および区間データDM2に加えて属性データDM3および属性データDM4を含んで構成される。属性データDM3は、素材旋律が楽曲内の何れの位置の旋律として好適であるかを指定する。具体的には、楽曲の先頭と中央と末尾との何れかを属性データDM3は指定する。すなわち、楽曲の先頭の旋律として好適な素材旋律の属性データDM3は先頭を指定し、楽曲の末尾の旋律として好適な素材旋律の属性データDM3は末尾を指定する。また、属性データDM4は、素材旋律が特に印象的な旋律であるか否かを指定する。具体的には、属性データDM4は、素材旋律が印象的な旋律である場合に有効状態に設定され、旋律が印象的でない場合に無効状態に設定される。属性データDM3および属性データDM4は、例えば旋律データDMの制作者が素材旋律を聴取したうえで音楽的な印象を考慮して任意に設定する。楽曲生成部34は、文字列評価処理S14の実行時に、前述の第1調整処理SC11から第4調整処理SC14に加えて、以下に例示する第5調整処理から第7調整処理を実行する。第5調整処理から第7調整処理は、旋律評価処理S13で各旋律データDMについて算定された旋律評価値EAを調整する処理である。第5調整処理は、対象旋律データDMの属性データDM3に応じて旋律評価値EAを調整する処理である。すなわち、楽曲生成部34は、対象単位区間Uの時間軸上の位置楽曲内の先頭/中央/末尾が属性データDM3による指定位置に合致する場合には、旋律評価値EAを維持する一方、対象単位区間Uの位置が属性データDM3による指定位置に合致しない場合には旋律評価値EAを減少させる。具体的には、楽曲生成部34は、旋律評価値EAに所定の数値b5を乗算するEA=EA×b5。数値b5は1を下回る正数である。したがって、楽曲内の単位区間Uの位置に好適な素材旋律の旋律データDMほど旋律選択処理S15で選択され易くなるという傾向がある。第6調整処理は、対象単位区間Uの直前の単位区間Uについて楽曲調整処理S16で生成された旋律データQUの旋律と対象旋律データDMが指定する素材旋律との音域差に応じて旋律評価値EAを調整する処理である。具体的には、楽曲生成部34は、直前の旋律データQUと対象旋律データDMとの間で旋律の音域差が大きいほど旋律評価値EAを小さい数値に調整する。例えば、直前の旋律データQUの旋律と対象旋律データDMの素材旋律との各々について各音符の音高の平均値と分散値とを算定し、旋律間の平均値の差分ΔE1と分散値の差分ΔE2とを算定する。そして、所定の数値b61の差分ΔE1乗と所定の数値b62の差分ΔE2乗とを現段階の旋律評価値EAに乗算することで調整後の旋律評価値EAを算定するEA=EA×b61ΔE1×b62ΔE2。したがって、直前の単位区間Uの旋律データQUが指定する旋律に音域が類似する素材旋律の旋律データDMほど旋律選択処理S15で選択され易くなるという傾向がある。第7調整処理は、対象単位区間Uが楽曲の最初または最後の単位区間Uに該当し、かつ、対象旋律データDMの属性データDM4が有効状態に設定されている場合すなわち、対象旋律データDMの素材旋律が音楽的に印象的である場合に、旋律評価値EAを大きい数値に調整する。具体的には、旋律評価値EAは、所定の数値b7を現段階の旋律評価値EAに乗算した数値に更新されるEA=EA×b7。数値b7は1を上回る正数である。したがって、楽曲の先頭や末尾の単位区間Uについては属性データDM4が有効状態に設定された旋律データDMが選択され易い。すなわち、印象的な旋律が先頭や末尾に付与された楽曲が生成され易いという傾向がある。第5調整処理に適用される数値b5と第6調整処理に適用される数値b61およびb62と第7調整処理に適用される数値b7とは、第1実施形態の数値b1から数値b4と同様に、変数データDXが指定する変数であり、利用者からの指示に応じて可変に設定される。以上に説明した第1調整処理から第7調整処理の実行後の旋律評価値EAが旋律評価値EBとして確定される。なお、第1調整処理から第7調整処理の順序は任意である。例えば、第5調整処理を第1調整処理SC11の直前に実行し、第6調整処理および第7調整処理を第4調整処理SC14の直後に実行することが可能である。第5実施形態においても第1実施形態と同様の効果が実現される。また、第5実施形態では、第1調整処理SC11から第4調整処理SC14に加えて第5調整処理から第7調整処理が実行されるから、文字列評価処理S14が第1調整処理SC11から第4調整処理SC14までの各処理のみを実行する構成と比較して、音楽的に自然な楽曲を生成できるという利点がある。<第6実施形態>前述の各形態では、事前に作成された歌詞の各文字が指定された指定文字列DLに対応する楽曲を生成した。第6実施形態の指定文字列DLは、図12に例示されるように、任意不特定の1文字を意味する特定文字図12の例示では記号86の配列で構成される。すなわち、指定文字列DLは歌詞の文字数のみを指定する。利用者は、特定文字86の時系列の任意の位置に区切記号88を挿入することが可能である。図13は、第6実施形態の楽曲生成装置100Bのブロック図である。第6実施形態の楽曲生成装置100Bは、歌詞が確定していない段階で指定文字列DLに適合する楽曲を生成するために好適に利用される。すなわち、楽曲生成装置100Bによる楽曲の生成後に、指定文字列DLの各特定文字86に歌詞の特定の文字を付与することで歌唱曲が完成する。図13に示すように、楽曲生成装置100Bは、第1実施形態の楽曲生成装置100Aから音声合成部44と混合部46とを省略した構成である。楽曲生成部34が生成した楽曲データQに応じて楽音生成部42が生成した音響信号V楽音信号V1が放音装置14に供給されて音波として再生される。楽曲生成部34は、図6の文字割当処理S11において、指定文字列DLの区切記号88を境界として指定文字列DLを複数の文字群Gに区分するSA12。第6実施形態においても第1実施形態と同様の効果が実現される。<変形例>以上の各形態は多様に変形され得る。具体的な変形の態様を以下に例示する。以下の例示から任意に選択された2以上の態様は適宜に併合され得る。1前述の各形態では、旋律評価処理S13および文字列評価処理S14の実行で各旋律データDMの旋律評価値EBを算定したが、旋律評価処理S13で算定された旋律評価値EAを旋律選択処理S15での旋律データDMの選択に適用することも可能である。すなわち、文字列評価処理S14は省略され得る。2例えば指定文字列DLの各文字と楽曲の各音符とを厳格に1対1に対応させる必要がない場合には、旋律調整処理S16は省略され得る。すなわち、旋律選択処理S15で単位区間U毎に選択された旋律データDMの時系列を最終的な楽曲データQとして確定することも可能である。3各音符列データDM1が指定する音符の時系列やコード進行データDCで前提となる調性を共通させ例えばハ長調、楽曲生成部34が生成した楽曲データQが指定する旋律を、利用者からの指示に応じた調性や音楽的に適切な調性に転調することも可能である。4前述の各形態では、楽曲データQに応じた音響信号Vを生成したが、音響信号Vの生成は省略され得る。例えば、楽曲生成部34が生成した楽曲データQを記録媒体例えば記憶装置24や他の記録媒体に格納する構成や、楽曲生成部34が生成した楽曲データQを通信網から他の端末装置に送信する構成も採用され得る。5前述の各形態では、利用者からの指示に応じてコード進行データDCを生成したが、例えば相異なるジャンルに対応する複数のコード進行データDCを記憶装置に事前に格納し、複数のコード進行データDCの何れかを例えば利用者からの指示に応じて選択して楽曲生成処理に適用することも可能である。6前述の各形態では、記憶装置24に記憶された全部の旋律データDMを旋律選択処理S15での選択候補としたが、記憶装置24に記憶された複数の旋律データDMのうちの一部の旋律データDMのみを選択候補とすることも可能である。例えば、素材旋律の音符数や音域毎に旋律データDMを複数の集合以下旋律データ群というに区分し、複数の旋律データ群から選択された1個の旋律データ群を対象として楽曲生成処理S11~S17を実行する構成が採用され得る。例えば、1個の旋律データ群を選択する方法は任意であるが、例えば以下の方法が好適に採用される。楽曲生成部34は、記憶装置24に格納された複数の旋律データDMの各々について、前述の各形態と同様の方法で、各単位区間Uの旋律評価値EBを算定し、K個の単位区間Uについて旋律評価値EBの平均値EBaveを算定する。そして、楽曲生成部34は、複数の旋律データ群の各々について、旋律データ群に属する複数の旋律データDMの平均値EBaveの平均値μおよび標準偏差σを算定し、複数の旋律データ群のうち、平均値μが最大で標準偏差σが最小平均値EBaveのバラツキが少ないとなる1個の旋律データ群を、旋律選択処理S15での選択候補として決定する。以上の構成によれば、旋律評価値EBの平均値EBaveが高くてバラツキが少ない旋律データDMが選択候補とされるから、自然な楽曲を生成できるという効果は格別に顕著である。なお、以上の例示では旋律評価値EBを例示したが、旋律評価値EBを旋律評価値EAに置換することも可能である。"