(57)【要約】【課題】  自動的に音階を生成する音階生成装置および音階生成プログラムを提供する。【解決手段】  音階生成装置１０００は、エージェントのうち、発音を行なう発音エージェントと、受音を行なう受音エージェントとを選択し、発音エージェントからの音の倍音の周波数成分と受音エージェントの基本周波数の倍音の周波数成分との近さに応じて、報償値を算出するステップと（Ｓ１０６，Ｓ１０８）、報償値に応じて、各エージェントの属性情報である評価値を更新するステップ（Ｓ１１０）と、評価値の値が分裂しきい値となるに応じて、エージェントの分裂処理を行い、評価値の値が消滅しきい値となるに応じて、エージェントの消滅処理を行うステップ（Ｓ１１２）と、複数のエージェントの遺伝情報が対応する基本周波数についてのエージェント個体数分布に基づいて、音階を導出するステップ（Ｓ１２８）とを含む。【選択図】        図８
2007041226.tif 000002
【特許請求の範囲】
【請求項１】
遺伝情報で規定される基本周波数での発音と受音とを行なう複数のエージェントを特定するための属性情報と、前記発音および前記受音の基本周波数の倍音の周波数成分の強度分布を格納する記憶装置と、
前記記憶装置に格納された情報を参照して音階生成処理を行なうための演算装置とを備え、
前記演算装置は、
前記エージェントのうち、発音を行なう発音エージェントと、受音を行なう受音エージェントとを選択し、前記発音エージェントからの音の倍音の周波数成分と前記受音エージェントの前記基本周波数の倍音の周波数成分との近さに応じて、報償値を算出する共鳴演算手段と、
前記報償値に応じて、各前記エージェントの前記属性情報である評価値を更新する評価値更新演算手段と、
前記評価値の高いエージェントを優先的に残存させる処理を行なうエージェント選別手段と、
前記共鳴演算手段と、前記評価値更新演算手段と、前記エージェント選別手段の処理を、所定の条件を満たす回数だけ反復させる反復処理手段と、
前記複数のエージェントの前記遺伝情報が対応する基本周波数についての前記エージェント個体数分布に基づいて、音階を導出する音階構成手段とを含む、音階生成装置。
【請求項２】
前記エージェント選別手段は、
前記評価値の値が分裂しきい値となるに応じて、前記エージェントの分裂処理を行う分裂処理手段と、
前記評価値の値が消滅しきい値となるに応じて、前記エージェントの消滅処理を行うエージェント消滅処理手段とを含む、請求項１記載の音階生成装置。
【請求項３】
各前記エージェントは、前記属性情報として、複数のコロニーのうち所属するコロニーを識別するためのコロニー識別情報を有し、
前記演算装置は、
各前記コロニー内のエージェントの個体数が所定のしきい値を超えることに応じて、前記コロニー内の前記エージェントを２つのコロニーに離隔する動的離隔処理手段と、
各前記コロニー内のエージェントの個体数が所定のしきい値を下回ることに応じて、当該コロニーを消滅させる処理を行なうコロニー消滅処理手段とを含む、請求項１記載の音階生成装置。
【請求項４】
前記受音の基本周波数の倍音の周波数成分の強度分布と前記発音の基本周波数の倍音の周波数成分の強度分布とは異なる、請求項１記載の音階生成装置。
【請求項５】
前記発音の基本周波数の倍音の周波数成分の強度分布は、入力された音の音色をモデル化したものである、請求項４記載の音階生成装置。
【請求項６】
前記受音の基本周波数の倍音の周波数成分の強度分布は、ユーザの聴取可能な周波数帯域をモデル化したものである、請求項４記載の音階生成装置。
【請求項７】
前記共鳴演算手段の算出する前記報償値は、前記発音エージェントからの音の前記倍音の周波数成分と前記受音エージェントの前記基本周波数の前記倍音の周波数成分について、事前に決定したユーザの好む組合せに対してより大きくなるように重み付けされている、請求項１記載の音階生成装置。
【請求項８】
演算装置を有するコンピュータに音階生成処理を実行させるための音階生成プログラムであって、
遺伝情報で規定される基本周波数での発音と受音とを行なう複数のエージェントを特定するための属性情報と、前記発音および前記受音の基本周波数の倍音の周波数成分の強度分布を記憶装置に格納するステップと、
前記記憶装置に格納された情報を参照して前記演算装置が前記音階生成処理の演算を行なうステップとを備え、
前記音階生成処理の演算を行なうステップは、
前記エージェントのうち、発音を行なう発音エージェントと、受音を行なう受音エージェントとを選択し、前記発音エージェントからの音の倍音の周波数成分と前記受音エージェントの前記基本周波数の倍音の周波数成分との近さに応じて、共鳴に対応する報償値を算出するステップと、
前記報償値に応じて、各前記エージェントの前記属性情報である評価値を更新するステップと、
前記評価値の高いエージェントを優先的に残存させるようにエージェントの選別処理を行うステップと、
前記共鳴に対応する報償値を算出するステップと、前記評価値を更新するステップと、前記選別処理を行うステップの処理を、所定の条件を満たす回数だけ反復させるステップと、
前記複数のエージェントの前記遺伝情報が対応する基本周波数についての前記エージェント個体数分布に基づいて、音階を導出するステップと含む処理を、コンピュータに実行させる、音階生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動的に音階を生成する音階生成装置および音階生成プログラムに関する。
【背景技術】
【０００２】
現代音楽の多くでは、１オクターブがほぼ対数的に１２半音に分けられた純正律（Pure Temperament）または平均律（Equal Temperament）が用いられる。一部地域の民族音楽では、１オクターブを５等分や７等分した音階が用いられており、日本でも非１２音平均律による作曲がこころみられている（たとえば、非特許文献１を参照）。しかし、一般的に人が心地よいと感じるのは１２半音に分けられた音階（１２音階）であるといわれている。歴史上、ピタゴラス音階から純正律、そして平均律へと使用される音階は変化してきたことは知られている。
【０００３】
古代ギリシャにおいて音の協和性を数学的に探求したピタゴラスは、弦楽器を用いた実験から、二つの弦の長さの比が単純な整数比となるときに、二つの音の響きが心地よいことを発見したと言われている。弦楽器では倍音成分を多く含むため、二つの弦の長さの比が単純な整数比となる場合、二つの弦から発する音に同一周波数成分が多く含まれる。一方、人は、同一周波数成分を多く含む複数の音を聞くと心地よいと感じる。このため、人は弦の長さの比が単純な整数比となるときに音の響きが心地よいと感じると考えられている。これらのように、音階を科学的・解析的に理解する研究はなされているのに対し、工学的・構成論的な方法論による研究、すなわち、音階の創発的な生成にむけた研究は、あまり検討されていない。
【０００４】
また、人が身体的に同一周波数成分を多く含む音を快適と感じる感性（身体性）を共有し、弦楽器のように音を発生させる機器（環境）が倍音を多く含むという特徴を持つ場合、この身体性と環境との相互作用により現在の１２音階が成立した可能性があるものの、このような可能性についても、工学的に研究された例はみられない。
【０００５】
一方で、マルチエージェントシステム（以下、ＭＡＳと記す）の研究として、たとえば、エージェントが知覚できる範囲の情報である利得や報酬、評価などを個体最適性と定義し、システムの大域的目的として、すべてのエージェントがそれぞれの行動から得る利得の総和をシステム最適性とそれぞれ定義したときに、エージェント学習によるシステム最適性の向上をシミュレート可能な「動的離隔型遺伝的アルゴリズム（Dynamically Separating Genetic Algorithms、以下、ＤＳ−ＧＡと記す）」（たとえば、非特許文献２、非特許文献３を参照）の提案がなされている。
【０００６】
このＤＳ−ＧＡは、個体数に応じて個体を「コロニー」と呼ぶグループに動的に離隔する遺伝的アルゴリズム（以下、ＧＡ）である。個体を離隔する遺伝的アルゴリズムとしては、他に島モデルＧＡなどがあるが、ＤＳ−ＧＡは離隔状態が個体数に応じて動的に変化する点で異なる。
【非特許文献１】小方  厚：「非１２音平均律音楽のこころみ」情報処理学会研究報告、２００４−MUS−５４、pp．４７−５０（２００４）
【非特許文献２】中山  功一、松井博和、野村由司彦著：動的離隔型ＧＡ（ＤＳ−ＧＡ）の提案、情報処理学会誌：数理モデル化と応用、Vol.43, No.SIG10(TOM7), pp.95-109, Nov.2002.
【非特許文献３】K.Nakayama、K.Shimohara、and O.Katai：  Dynamically Separating GA：A New Method Of Achieving the System-level Optimality in MAS, The journal of the three dimensional images、Vol.１６, No.４、PP.１７７−１８３（２００２）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来は、現在用いられる音階以外の可能性を探るにあたり、工学的にどのように音階生成を実現すればよいかが明確でなく、まして、上述したようなＭＡＳを音階生成にどのように応用すればよいかが必ずしも明らかでない、という問題があった。
【０００８】
本発明は、上記のような問題を解決するためになされたものであって、その目的は、与えられたパラーメータに従って自動的に音階を生成する音階生成装置および音階生成プログラムを提供することである。
【課題を解決するための手段】
【０００９】
本発明の音階生成装置では、発音機器としての楽器の特徴と、受音機器としての身体性の特徴、および心地よいと感じられる音ほどより多くの頻度で発せられるようになるメカニズムを、ＭＡＳを用いてモデル化する。このモデルを用いたシミュレーションにより、音階が創発的に生成される。
【００１０】
このような目的を達成するために、本発明の音階生成装置は、遺伝情報で規定される基本周波数での発音と受音とを行なう複数のエージェントを特定するための属性情報と、発音および受音の基本周波数の倍音の周波数成分の強度分布を格納する記憶装置と、記憶装置に格納された情報を参照して音階生成処理を行なうための演算装置とを備え、演算装置は、エージェントのうち、発音を行なう発音エージェントと、受音を行なう受音エージェントとを選択し、発音エージェントからの音の倍音の周波数成分と受音エージェントの基本周波数の倍音の周波数成分との近さに応じて、報償値を算出する共鳴演算手段と、報償値に応じて、各エージェントの属性情報である評価値を更新する評価値更新演算手段と、評価値の高いエージェントを優先的に残存させる処理を行なうエージェント選別手段と、共鳴演算手段と、評価値更新演算手段と、エージェント選別手段の処理を、所定の条件を満たす回数だけ反復させる反復処理手段と、複数のエージェントの遺伝情報が対応する基本周波数についてのエージェント個体数分布に基づいて、音階を導出する音階構成手段とを含む。
【００１１】
好ましくは、エージェント選別手段は、評価値の値が分裂しきい値となるに応じて、エージェントの分裂処理を行なう分裂処理手段と、評価値の値が消滅しきい値となるに応じて、エージェントの消滅処理を行なうエージェント消滅処理手段とを含む。
【００１２】
好ましくは、各エージェントは、属性情報として、複数のコロニーのうち所属するコロニーを識別するためのコロニー識別情報を有し、演算装置は、各コロニー内のエージェントの個体数が所定のしきい値を超えることに応じて、コロニー内のエージェントを２つのコロニーに離隔する動的離隔処理手段と、各コロニー内のエージェントの個体数が所定のしきい値を下回ることに応じて、当該コロニーを消滅させる処理を行なうコロニー消滅処理手段とを含む。
【００１３】
好ましくは、受音の基本周波数の倍音の周波数成分の強度分布と発音の基本周波数の倍音の周波数成分の強度分布とは異なる。
【００１４】
好ましくは、発音の基本周波数の倍音の周波数成分の強度分布は、入力された音の音色をモデル化したものである。
【００１５】
好ましくは、受音の基本周波数の倍音の周波数成分の強度分布は、ユーザの聴取可能な周波数帯域をモデル化したものである。
【００１６】
好ましくは、共鳴演算手段の算出する報償値は、発音エージェントからの音の倍音の周波数成分と受音エージェントの基本周波数の倍音の周波数成分について、事前に決定したユーザの好む組合せに対してより大きくなるように重み付けされている。
【００１７】
この発明の他の局面に従うと、演算装置を有するコンピュータに音階生成処理を実行させるための音階生成プログラムであって、遺伝情報で規定される基本周波数での発音と受音とを行なう複数のエージェントを特定するための属性情報と、発音および受音の基本周波数の倍音の周波数成分の強度分布を記憶装置に格納するステップと、記憶装置に格納された情報を参照して演算装置が音階生成処理の演算を行なうステップとを備え、音階生成処理の演算を行なうステップは、エージェントのうち、発音を行なう発音エージェントと、受音を行なう受音エージェントとを選択し、発音エージェントからの音の倍音の周波数成分と受音エージェントの基本周波数の倍音の周波数成分との近さに応じて、共鳴に対応する報償値を算出するステップと、報償値に応じて、各エージェントの属性情報である評価値を更新するステップと、評価値の高いエージェントを優先的に残存させるようにエージェントの選別処理を行なうステップと、共鳴に対応する報償値を算出するステップと、評価値を更新するステップと、選別処理を行なうステップの処理を、所定の条件を満たす回数だけ反復させるステップと、複数のエージェントの遺伝情報が対応する基本周波数についてのエージェント個体数分布に基づいて、音階を導出するステップと含む処理を、コンピュータに実行させる。
【発明を実施するための最良の形態】
【００１８】
以下、図面を参照して本発明の実施の形態について説明する。
（本発明の概要）
以下にも説明するとおり、本発明では、音階を自動生成する手法として、ＭＡＳの学習手法、好ましくは、上述したＭＡＳの学習手法の一つであるＤＳ−ＧＡを用いる。
【００１９】
本発明では、音階の創発的な生成過程を、ＭＡＳを用いてモデル化する。人が発音や受音に用いる身体や機器類を単弦楽器モデルとして、発音用楽器および受音用楽器を用いた発音行為、および受音行為をエージェントとしてモデル化する。また、人がより心地よいと感じる音をより多くの頻度で発音するようになるメカニズムを、エージェントの学習アルゴリズムとしてモデル化する。
【００２０】
［ハードウェア構成］
図１は、本発明の音階生成装置１０００の外観の一例を示す概念図である。
【００２１】
図１を参照して、音階生成装置１０００を構成するコンピュータ１００は、ＣＤ−ＲＯＭ（Compact Disc Read-Only Memory ）等のディスク１１８上の情報を読込むためのディスクドライブ１０８およびフレキシブルディスク（Flexible Disk、以下ＦＤ）１１６に情報を読み書きするためのＦＤドライブ１０６を備えたコンピュータ本体１０２と、コンピュータ本体１０２に接続された表示装置としてのディスプレイ１０４と、同じくコンピュータ本体１０２に接続され、ユーザ２からの入力を受けるための入力装置としてのキーボード１１０およびマウス１１２と、コンピュータ本体１０２に接続されたマイク１３２およびスピーカ１３４とを含む。
【００２２】
音階生成装置１０００は、ユーザ２の指示に応じて、マイク１３２から入力された音声を録音可能なものとする。
【００２３】
図２は、コンピュータ１００の構成をブロック図形式で示す図である。
図２に示されるように、このコンピュータ１００を構成するコンピュータ本体１０２は、ディスクドライブ１０８およびＦＤドライブ１０６に加えて、それぞれバスＢＳに接続されたＣＰＵ（Central Processing Unit ）１２０と、ＲＯＭ（Read Only Memory) およびＲＡＭ （Random Access Memory）を含むメモリ１２２と、直接アクセスメモリ装置、たとえば、ハードディスク１２４と、マイク１３２およびスピーカ１３４とデータの授受を行なうためのインタフェース１２８とを含んでいる。ディスクドライブ１０８にはディスク１１８が装着される。ＦＤドライブ１０６にはＦＤ１１６が装着される。
【００２４】
なお、インタフェース１２８は、マイク１３２からの音声信号をサンプリングしてデジタル信号に変換する機能、ＣＰＵ１２０がハードディスク１２４からの情報に基づいて生成したデジタルデータを対応する音声信号に変換してスピーカ１３４に出力する機能を有する。
【００２５】
なお、ディスク１１８は、コンピュータ本体に対してインストールされるプログラム等の情報を記録可能な媒体であれば、ＣＤ−ＲＯＭ以外の他の媒体、たとえば、ＤＶＤ−ＲＯＭ（Digital Versatile Disc）やメモリカードなどでもよく、その場合は、コンピュータ本体１０２には、これらの媒体を読取ることが可能なドライブ装置が設けられる。
【００２６】
本発明の音階生成装置１０００の主要部は、コンピュータハードウェアと、ＣＰＵ１２０により実行されるソフトウェアとにより構成される。一般的にこうしたソフトウェアはディスク１１８、ＦＤ１１６等の記憶媒体に格納されて流通し、ディスクドライブ１０８またはＦＤドライブ１０６等により記憶媒体から読取られてハードディスク１２４に一旦格納される。または、当該装置がネットワークに接続されている場合には、ネットワーク上のサーバから一旦ハードディスク１２４にコピーされる。そうしてさらにハードディスク１２４からメモリ１２２中のＲＡＭに読出されてＣＰＵ１２０により実行される。なお、ネットワーク接続されている場合には、ハードディスク１２４に格納することなくＲＡＭに直接ロードして実行するようにしてもよい。
【００２７】
図１および図２に示したコンピュータのハードウェア自体およびその動作原理は一般的なものである。したがって、本発明の最も本質的な部分は、ＦＤ１１６、ディスク１１８、ハードディスク１２４等の記憶媒体に記憶されたソフトウェアである。
【００２８】
なお、一般的傾向として、コンピュータのオペレーティングシステムの一部として様々なプログラムモジュールを用意しておき、アプリケーションプログラムはこれらモジュールを所定の配列で必要な時に呼び出して処理を進める方式が一般的である。そうした場合、当該音声生成装置を実現するためのソフトウェア自体にはそうしたモジュールは含まれず、当該コンピュータでオペレーティングシステムと協働してはじめて音声生成装置が実現することになる。しかし、一般的なプラットフォームを使用する限り、そうしたモジュールを含ませたソフトウェアを流通させる必要はなく、それらモジュールを含まないソフトウェア自体およびそれらソフトウェアを記録した記録媒体（およびそれらソフトウェアがネットワーク上を流通する場合のデータ信号）が実施の形態を構成すると考えることができる。
【００２９】
（音階生成アルゴリズム）
以下の説明では、説明の簡単のために、１つのエージェントについて、発音と受音について共通な単弦楽器を想定するものとしている。ただし、録音されたある楽器の音色をモデル化するなどして、たとえば、発音についての倍音の周波数成分の強度分布を、受音についての倍音の周波数成分の強度分布とは異ならせることとしてもよい。
【００３０】
以下では、本発明において使用する基本的な構成要素、用語について説明する。
・エージェント：楽器などを用いた発音行為（音の発生）、および聴覚などを用いた受音行為（音の知覚）を、それぞれエージェントとしてモデル化する。エージェントは、発音および受音に関係する遺伝子を持つ。
【００３１】
各エージェントは、単位時間ごとに自らの遺伝子に応じて発音する。このとき、ランダムに選択された他のエージェントが、発せられた音を受音する。
【００３２】
・発音・受音用単弦楽器：図３は、発音・受音用単弦楽器を示す概念図である。エージェントが発音および受音に用いる機器として、それぞれ図３に示す所定の長さ、たとえば、長さ２の１本の弦からなる単弦楽器を想定する。発音用楽器と受音用楽器が平行においてあり、エージェントは、それぞれの楽器を用いて発音および受音する。
【００３３】
発音用の楽器には弦を弾くピックが、受音用の楽器には弦の振動を感知するセンサがそれぞれ駒の右寄りにあり、それぞれの弦を押さえる駒が弦の左寄りにある。駒は、それぞれ左からＬOut∈{０〜１}，ＬIn∈{０〜１}の範囲で移動可能であり、駒の位置は、各エージェントが持つ遺伝子により決定される。この弦は、駒の位置により決定される基本周波数（固有振動数）を持つ。
【００３４】
楽器の出す音の基本周波数は、弦の持つ固有振動数と等しいものとする。ここでは、４００Ｈｚから８００Ｈｚまでの１オクターブの音を出すモデルとして、基本周波数Ｆ1（Ｌ）は、ＬOut，ＬInに応じて、たとえば、式（１）で示される値とする。なお、Ｌは、発声の基本周波数または受音の基本周波数のいずれを表すかに応じて、それぞれＬOutまたはＬInのいずれかを示すものとする。
【００３５】
【数１】
2007041226.tif 000003
【００３６】
なお、このような１オクターブの音を出すモデルの基本周波数の関数形について、たとえば、ハードディスク１２４に格納しておき、その都度計算してもよいし、あるいは、Ｌに対するテーブルとして予め作成したものをハードディスク１２４に格納しておいてもよい。
【００３７】
言い換えると、発音モデルまたは受音モデルとしては、遺伝情報の値を決定すれば、事前に設定したパラメータまたは事前に計算したテーブルに基づいて、基本周波数を与えるものであればよい。
【００３８】
ピックにより弾かれた発音用楽器の弦は、基本周波数Ｆ1（ＬOut）と、その倍音の周波数成分Ｆn（ＬOut）｛＝ｎ×Ｆ1（ＬOut）｝（ｎは自然数）を含む音を発する。
【００３９】
・共鳴：弦は、弦の固有振動数と同一周波数成分を多く含む音を受けると共鳴する。受音用楽器の弦は、発音用楽器から発せられた音の周波数成分Ｆn（ＬOut）と、受音用楽器の持つ基本周波数Ｆ1（ＬIn）のｍ倍（ｍは自然数）の周波数成分Ｆm（ＬIn）が近い場合、式（２）に従い共鳴する。この式（２）の関数Ｒ（ＬOut，ＬIn）が、共鳴した場合のエージェントへの報償値を与える。
【００４０】
ただし、まずは、音階生成の観点から、除外条件として、発音エージェントと受音エージェントの基本周波数がほぼ等しく同一音と判断できる場合｛｜Ｆ1（ＬOut）―Ｆ1（ＬIn）｜＜１０｝は除くものとする。
【００４１】
【数２】
2007041226.tif 000004
【００４２】
なお、後に説明するように、この除外条件とそれに対する評価の与え方は、適宜、ユーザ２の指示により変更可能である。
【００４３】
また、共鳴の度合いを表す値の関数Ｒ（ＬOut，ＬIn）は、遺伝情報ＬOut，ＬInにより規定される発音と受音の基本周波数の倍音の周波数成分が、発音エージェントと受音エージェントの基本周波数がほぼ等しく同一音と判断できる場合を除いて、発音エージェント側と受音エージェント側で相互に近いことに応じて増加する関数形であれば、他の関数でもよい。
【００４４】
・学習アルゴリズム：エージェントは、より心地よい音をより多くの頻度で発音するように駒の位置を学習する。本発明では、同一周波数成分を多く含む音を心地よいと感じるという前提に基づき、時刻ｔにおけるエージェントａの評価値Ｅ（ａ，ｔ）を、式（２）で示された共鳴の度合いに応じて、式（３）に従い決定する。より高い評価を得たエージェントが分裂し、低い評価を得たエージェントが消滅する。
【００４５】
【数３】
2007041226.tif 000005
【００４６】
なお、より高い評価を得たエージェントの個体を優先的に残すためには、上述したような評価値に応じて、「より高い評価を得たエージェントが分裂し、低い評価を得たエージェントが消滅する」との処理以外にも、たとえば、より高い評価のエージェントほど選択される確率が高くなるように設定したルーレット選択などにより、選択されたエージェントが残存するとの処理を行なってもよい。
【００４７】
さらに、関数Ｒ（ＬOut，ＬIn）については、上述したように「発音と受音の基本周波数の倍音の周波数成分が、発音エージェント側と受音エージェント側で相互に近い」ことに応じて単純に増加するのではなく、事前に実験的に求めておいた、対象となるユーザが好む個別の音の組み合わせについては、より大きな値を与える重み付けを付けておくように、その関数形を定めておいてもよい。このときは、単なる物理的な共鳴による心地よさだけでなく、ユーザの好みという主観的な要素も、音階生成に取り込むことができる。
【００４８】
エージェント間相互作用のモデルとして、局所性を考慮できる「動的離隔モデル」を用いる。実空間では、より近くの個体間ほどより多くの頻度で相互作用が発生する。動的離隔モデルは、そのような相互作用の局所性や密度依存性をモデル化したものである。
【００４９】
図４は、このような「動的離隔モデル」の構成を説明するための概念図である。
図４に示すとおり、動的離隔モデルでは、各エージェントはコロニーと呼ぶグループごとに離隔される。異なるコロニーに存在するエージェントとは相互作用しない。
【００５０】
図５は、動的離隔の処理を説明するための概念図である。
まず、特定のコロニー内では、各エージェントは、評価値Ｅに応じて、分裂または消滅する。さらに、同一コロニー内に存在するエージェント数が増加し限界数以上になる場合、そのコロニーに存在するエージェントは、さらに半数ずつのコロニーに離隔され、エージェント数が０になる場合、そのコロニーを消滅させる。
【００５１】
［シミュレーション実験に用いるＤＳ−ＧＡのアルゴリズム］
図６は、音階生成装置１０００で用いる音階生成のための処理の概要をNassi-Shneidermanチャート（以下、「ＮＳチャート」と呼ぶ）を示す図である。
【００５２】
また、図７は、たとえば、ハードディスク１２４内に格納される（ａ）各エージェントの属性変数の管理テーブルと、（ｂ）音階生成装置１０００のシステム全体で使用される変数の管理テーブルを示す図である。
【００５３】
各エージェントの属性変数としては、ａ番目のエージェントについては、所属するコロニーの番号ｎｃ（ａ）、遺伝子Ｌ（ａ）＝（ＬOut，ＬIn）と、タイムステップ（時刻）ｔにおける評価値Ｅ（ａ，ｔ）とが格納される。以下では、１つのエージェントについては、Ｌ（ａ）＝ＬOut＝ＬInとする。すなわち、基本周波数については、発音も受音も１つのエージェントについては共通とする。
【００５４】
また、システムの管理テーブルには、現在存在する各コロニーｎｃに含まれるエージェントの個数や、基本周波数のｎ倍の倍音成分の強度分布（基本周波数の強度を１としたときの相対値）が格納される。ここでは、上述のとおり、発音も受音も倍音の周波数成分の強度分布は、共通としている。しかし、発音と受音で、倍音成分の強度分布は個別に規定してもよい。また、強度分布については、テーブルではなく、関数形として規定してもよい。
【００５５】
図８は、図６に示したＮＳチャートをフローチャートで表現したものである。以下、音階生成のための処理を図８のフローチャートに基づいて説明する。
（１）初期設定：まず、ＣＰＵ１２０は、仮想環境内に、所定数、たとえば、１０００個のコロニーを作成する。さらに、ＣＰＵ１２０は、各コロニー内に、これも所定数、たとえば１００個のエージェントａを作成する。ＣＰＵ１２０は、各エージェントａの初期属性として、初期評価値１０と、無作為に決定された駒の位置を示す遺伝子Ｌ（ａ）＝（ＬOut，ＬIn）を生成して、ハードディスク１２４に格納する（ステップＳ１００）。
【００５６】
タイムステップを表す変数ｔ、コロニーを識別するための変数ｎｃの値が初期値として１に設定される（ステップＳ１０２，Ｓ１０４）。
（２）行動：続いて、ＣＰＵ１２０は、処理対象となる識別番号ｎｃのコロニー内の全エージェントについて、それぞれの遺伝子に従い駒の位置を決定し、式（１）の基本周波数と図７（ｂ）の倍音成分の強度分布に基づいて発音の強度周波数分布を算出する（ステップＳ１０６）。さらに、ＣＰＵ１２０の処理により、各エージェントの発音ごとに、同一コロニー内からランダムに選択された他のエージェントがその音を受音することに相当する処理が行なわれる。すなわち、ＣＰＵ１２０は、発音および受音エージェントに、式（２）で示される共鳴の程度に応じて報償値を割り当てる（ステップＳ１０８）。
【００５７】
さらに、ＣＰＵ１２０は、このとき得た報償値により、評価値Ｅを式（３）に従い各エージェントに累積させて、図７（ａ）の管理テーブルを更新する（ステップＳ１１０）。
（３）エージェントの分裂と消滅：ＣＰＵ１２０は、つづいて、エージェントの評価値が初期値の倍以上になると、エージェントを分裂する処理を行なう。このとき、エージェントは、分裂前のエージェントの評価値を半分ずつ持つ２つのエージェントに分裂し、それぞれ遺伝子を引き継ぐ。ただし、遺伝子は突然変異確率Ｐmut（たとえば、０．０１）で変異する。また、エージェントは、エージェントの評価値が所定値、たとえば０以下になると消滅する（ステップＳ１１２）。
【００５８】
ＣＰＵ１２０は、変数ｎｃの値を１だけインクリメントさせ（ステップＳ１１４）、変数ｎｃが所定のコロニー数の上限値Ｎｃｃを比較し、変数ｎｃが上限値Ｎｃｃ以下の場合は処理をステップ１０６に復帰させる一方、変数ｎｃが上限値Ｎｃｃを超える場合は、処理をステップＳ１１８に進める。
（４）エージェントの移動：ステップＳ１１８において、ＣＰＵ１２０は、全エージェントについて、移動確率Ｐmig（たとえば、０．０１）に従い、現在所属するコロニーからランダムに選択された他のコロニーに移動させる（ステップＳ１１８）。
（５）コロニーへの動的離隔：ＣＰＵ１２０は、コロニー内のエージェント数がコロニーの限界エージェント数Ｎcmax、たとえば、１００を超えると、コロニーへの動的離隔の処理を行なう。このとき、１個のコロニー内に存在するエージェントは、２個のコロニーに離隔される。ただし、２個のコロニーに存在するエージェント数の差は１以下とする。また、コロニー内のエージェント数が所定値、たとえば１以下になるとコロニーは消滅する（ステップＳ１２０）。
（６）ランダム消去：次に、ＣＰＵ１２０は、コロニー数が初期コロニー数より増えた場合、コロニー数が初期コロニー数と同数になるまでコロニーを無作為に消去する（ステップＳ１２２）。
（７）ＣＰＵ１２０は、タイムステップｔ（時刻）の値を１だけインクリメントさせた後、変数ｔが所定の処理時間Ｔｍａｘ以下の場合は処理をステップＳ１０４に復帰させる。
【００５９】
一方、変数ｔが処理時間Ｔｍａｘを超えると、続いて、ＣＰＵ１２０は、エージェントの遺伝子（駒の位置）の値を所定の値、たとえば、０．０１ごとに分類した個体数比率を求める。この場合、分類された駒の位置が、複数の値に収束しているときには、各収束した駒の位置に対応する音の集合が音階を構成する（ステップＳ１２８）。
【００６０】
なお、以上の説明では、ステップＳ１２０で「動的離隔処理」を行なうものとしたが、コロニーを動的に離隔することなく、その他の処理について実行することでも、音階の生成を行なうことは可能である。
【００６１】
［シミュレーション実験］
（実験例１：単純なモデルによる音階の生成）
以下では、まず、本発明の実験モデルにおける音階の生成過程を明らかにするため、単純なモデルを用いた音階の生成について考える。発音用楽器が発する音には、ｎ∈｛２，３，４，５｝倍の倍音成分を均等に含むものとする。
【００６２】
（実験例１の実験結果）
図９は、実験例１の実験結果として、エージェントの遺伝子（駒の位置）の値を０．０１ごとに分類した個体数比率を示す図であり、図１０は、実験例１においてエージェントの単位時間ごとの獲得した評価値の平均を示す図である。
【００６３】
図１０から、進化的学習の結果、エージェントはより多く共鳴する音を獲得し、高い評価値を得たことが分かる。一方、図９から、エージェントの遺伝子が３つの値に収束したことが分かる。これら３つの値が示す音の周波数比は、４５２Ｈｚを基準としたとき、ほぼ３：４：５となり、４５２Ｈｚをドとすると、それぞれド・ファ・ラに相当する。また、このときのファとラの周波数は、平均律におけるファ・ラより絶対律におけるフア・ラに近い値となった。
【００６４】
実験例１では、いずれも事前に明示的な音階は与えていないが、エージェントの自律的な学習から、音階生成装置１０００は、現在の１２音階においてド・ファ・ラに相当する音からなる音階を生成した。
【００６５】
これは見方を変えると、人類が用いてきた楽器などの発音機器が「発せられる音に倍音成分が含まれる」という条件を満たし、人の聴覚などの受音機器が「同一周波数成分を含む音を心地よいと感じる」という条件を満たす場合には、「より心地よいと感じる音の発生頻度を増加させる」という学習メカニズムにより、元始の音階が創発的に生成されることに対応する。
【００６６】
実験例１のモデルでは、３つの音からなる音階は現れたが、それ以上の音からなる音階は現れなかった。これは、本モデルに組み込んだ５倍音までしか用いない条件は、現在の１２音階の生成には十分ではないためであると考えられる。
【００６７】
（実験例２：実際の環境により近いモデルによる音階の生成）
実験例１では、発音用楽器は、基本周波数のｎ∈｛２，３，４，５｝倍の周波数成分を均等に含む音を発するものとした。また、受音用楽器は、基本周波数のｎ∈｛２，３，４，５｝倍の周波数成分を含む音に対して均等に共鳴するものとした。実際の弦では、基本周波数に比べて倍音成分の音量は高倍音ほど減衰して小さくなる。また、必ずしも５倍音までを含むわけではなく、それ以上の倍音成分を含む場合がある。
【００６８】
そこで、実験例２では、現在の音階が生成されたと考えられる環境により近いモデルにより、より複雑な音階の生成について、試行した結果を説明する。
【００６９】
発音用楽器が含む倍音成分を基本周波数のｎ∈｛２，３，…，１０｝倍とし、ｎ倍音の音量を基本周波数における音の０．９n倍とする。さらに、音階生成の観点から、発音エージェントと受音エージェントの基本周波数がほぼ等しく同一音と判断できる場合｛｜Ｆ1（ＬOut）―Ｆ1（ＬIn）｜＜１０｝、負の評価として−１０を与えるものとする。すなわち、式（４）に従い共鳴する。
【００７０】
【数４】
2007041226.tif 000006
【００７１】
（実験例２の実験結果）
図１１は、実験例２の実験結果として、エージェントの遺伝子（駒の位置）の値を０．０１ごとに分類した個体数比率を示し、図１２は、実験例２においてエージェントの単位時間ごとの平均評価値を示す図である。
【００７２】
図１２から、進化的学習の結果、エージェントはより多く共鳴する音を獲得し、高い評価値を得たことが分かる。図１１から、エージェントの遺伝子が６つの値に収束したことが分かる。これら６つの値が示す音の周波数比は、４０８Ｈｚを基準としたとき、ほぼ３６：４０：４５：４８：５４：６０となり、４０８Ｈｚをソとすると、それぞれソ・ラ・シ・ド・レ・ミに相当する。また、このときそれぞれの音の周波数は、平均律における値より絶対律における値に近いものであった。
【００７３】
実験例２では、より現実に近いと考えられる環境のモデルとして、１０倍音までを含み、高倍音ほど音量が減衰し、同一音を心地よいと感じない場合に、音階生成装置１０００は、現在の１２音階により近いソ・ラ・シ・ド・レ・ミに相当する６つの音からなる音階を生成した。これは、「発音用楽器が１０倍音までを含む」、「高倍音の音量が減衰して小さくなる」、「同一音を発音した場合に不快と感じる」といった条件が満たされる場合には、現在の１２音階に近いより多くの音からなる音階が生成されることを示すものである。また、この結果は、どのような成分の音を発するかという楽器（発音機器）の特徴や、どのような音を心地よいと感じるかという人の身体性（受音機器）に応じて、生成される音階は異なることも示している。
【００７４】
言い換えると、音階生成装置１０００において、特定の楽器の音色を録音したものを発音エージェントの発音の倍音の周波数成分の強度分布としてモデル化すると、楽器の特徴に応じたその楽器のための音階を生成したり、あるいは、聞き手が聞き取りやすい音域での受音感度をモデル化する、たとえば、所定の周波数帯域についてのみ強度を有するようにモデル化することで、聴覚などの個人が持つ身体性の特徴に応じた音階など、カスタムメイドな音階生成を行なうことが可能であることを示している。
【００７５】
（実験例３：現実の環境とは異なるモデルによる音階の生成）
実験例２では、現実により近いと考えられるモデルにより、現在の１２音階に含まれる６音からなる音階を獲得した。以下の実験例３では、現実の環境とは異なると考えられるモデルを用いて、新しい音階の生成について述べる。
【００７６】
実験例３では、２０倍音（ｎ∈｛２，３，…，２０｝，約４．３オクターブ上）まで減衰なく含む音を発生する発音機器と、それらの全ての音を知覚可能な受音機器をモデル化する。また、前節と同様に、発音エージェントと受音エージェントの基本周波数がほぼ等しく同一音と判断できる場合｛｜Ｆ1（ＬOut）―Ｆ1（ＬIn）｜＜１０｝には、負の評価として−１０を与えるものとする。すなわち、式（５）に従い共鳴する。
【００７７】
【数５】
2007041226.tif 000007
【００７８】
（実験例３の実験結果）
図１３は、実験例３の実験結果として、エージェントの遺伝子（駒の位置）の値を０．０１ごとに分類した個体数比率を示し、図１４は、実験例３においてエージェントの単位時間ごとの平均評価値を示す図である。
【００７９】
図１４から、進化的学習の結果、エージェントはより多く共鳴する音を獲得し、高い評価値を得たことが分かる。
【００８０】
また、図１３から、エージェントの遺伝子が９つの値に収束したことが分かる。これら９つの値が示す音の周波数比は、１０等分平均律に近い値となり、現在の１２音階や、主に用いられている他の音階とは異なる音階が生成された。
【００８１】
以上説明したように、本発明では、「楽器など音を発する機器に倍音成分を含む」という特徴と「人が身体的に同一周波数成分を多く含む音を心地よいと感じる」という特徴がある場合、より心地よい音をより多くの頻度で発生させることにより、マルチエージェント・シミュレーションにより音階を生成できる。
【００８２】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【００８３】
【図１】本発明の音階生成装置１０００の外観の一例を示す概念図である。
【図２】コンピュータ１００の構成をブロック図形式で示す図である。
【図３】発音・受音用単弦楽器を示す概念図である。
【図４】「動的離隔モデル」の構成を説明するための概念図である。
【図５】動的離隔の処理を説明するための概念図である。
【図６】音階生成装置１０００で用いる音階生成のための処理の概要をＮＳチャートを示す図である。
【図７】ハードディスク１２４内に格納される（ａ）各エージェントの属性変数の管理テーブルと、（ｂ）音階生成装置１０００のシステム全体で使用される変数の管理テーブルを示す図である。
【図８】図６に示したＮＳチャートをフローチャートで表現したものである。
【図９】実験例１の実験結果として、エージェントの遺伝子（駒の位置）の値を０．０１ごとに分類した個体数比率を示す図である。
【図１０】実験例１においてエージェントの単位時間ごとの獲得した評価値の平均を示す図である。
【図１１】実験例２の実験結果として、エージェントの遺伝子（駒の位置）の値を０．０１ごとに分類した個体数比率を示す図である。
【図１２】実験例２においてエージェントの単位時間ごとの平均評価値を示す図である。
【図１３】実験例３の実験結果として、エージェントの遺伝子（駒の位置）の値を０．０１ごとに分類した個体数比率を示す図である。
【図１４】実験例３においてエージェントの単位時間ごとの平均評価値を示す図である。
【符号の説明】
【００８４】
１００  コンピュータ、１０２  コンピュータ本体、１０４  ディスプレイ、１０６  ＦＤドライブ、１０８  ディスクドライブ、１１０  キーボード、１１２  マウス、１３２  マイク、１３４  スピーカ、１１８  ＣＤ−ＲＯＭ、１２０  ＣＰＵ、  １２２  メモリ、１２４  ハードディスク、１２８  インタフェース、１０００  システム。
【図１】
2007041226.tif 000008
【図２】
2007041226.tif 000009
【図３】
2007041226.tif 000010
【図４】
2007041226.tif 000011
【図５】
2007041226.tif 000012
【図６】
2007041226.tif 000013
【図７】
2007041226.tif 000014
【図８】
2007041226.tif 000015
【図９】
2007041226.tif 000016
【図１０】
2007041226.tif 000017
【図１１】
2007041226.tif 000018
【図１２】
2007041226.tif 000019
【図１３】
2007041226.tif 000020
【図１４】
2007041226.tif 000021