(57)【要約】【課題】本発明は、演算量が少なく、簡易な構成で音声合成用の読上げ文章を生成できる音声合成用読上げ文章生成装置を提供することを目的とする。【解決手段】音声合成用読上げ文章生成装置１は、グラフ入力手段１１と、ＤＰマッチング法によって、統合グラフＴを生成する統合グラフ生成手段１２と、ノードＮの通過回数をノードＮに対応するリストＬが格納した語句の個数以上とする第１の条件式及びノードＮ間の接続関係に基づいて、第２の条件式を生成する条件式生成手段１３と、第１の条件式及び第２の条件式を満たすように、文章の先頭における通過回数が最小になる最小通過回数をシンプレックス法で算出する最小通過回数算出手段１４と、最小通過回数と等しい数、リストＬに格納した語句の組み合わせを変えて読上げ文章を生成する読上げ文章生成手段１５と、を備える。【選択図】図１
2010033462.tif 000002
【特許請求の範囲】
【請求項１】
文章に含まれる語句の位置を示す複数のノードと前記ノード間において分岐及び合流が可能なエッジとで構成された有向グラフによって前記文章が表現され、当該有向グラフを用いて、音声合成に必要となる音声合成データベース用の読上げ文章を生成する音声合成用読上げ文章生成装置であって、
前記有向グラフと、当該有向グラフの前記ノードに対応する前記語句を１以上格納するリストとが入力されるグラフ入力手段と、
前記ノード毎に、当該ノードの通過回数を当該ノードに対応する前記リストが格納した前記語句の個数以上とする第１の条件式を生成すると共に、前記エッジが前記ノード間の接続を示すときは前記ノード間の通過回数を等しくする第２の条件式を生成し、前記エッジが前記ノード間の分岐を示すときは分岐前の前記ノードの通過回数と分岐した前記ノードの通過回数の合算値とを等しくする前記第２の条件式を生成し、前記エッジが前記ノード間の合流を示すときは合流する前記ノードの通過回数の合算値と合流後の前記ノードの通過回数とを等しくする前記第２の条件式を生成する条件式生成手段と、
前記条件式生成手段が生成した第１の条件式及び第２の条件式を満たすように、前記文章の先頭における通過回数が最小になる最小通過回数を算出する最小通過回数算出手段と、
前記最小通過回数算出手段が算出した最小通過回数と等しい数、前記リストに格納した前記語句の組み合わせを変えて前記読上げ文章を生成する読上げ文章生成手段と、
を備えることを特徴とする音声合成用読上げ文章生成装置。
【請求項２】
前記グラフ入力手段は、複数の前記有向グラフが入力され、
ＤＰマッチング法によって、前記複数の有向グラフの前記ノードの一致と挿入誤りと欠落誤りと代替誤りとを求めて前記複数の有向グラフが類似するか否かを判定し、前記複数の有向グラフが類似する場合、前記ＤＰマッチング法の結果に基づいて、前記複数の有向グラフを統合グラフに統合すると共に、前記複数の有向グラフが類似しない場合、前記複数の有向グラフのそれぞれを新たな前記統合グラフとする統合グラフ生成手段、をさらに備えることを特徴とする請求項１に記載の音声合成用読上げ文章生成装置。
【請求項３】
文章に含まれる語句の位置を示す複数のノードと前記ノード間において分岐及び合流が可能なエッジとで構成された有向グラフによって前記文章が表現され、当該有向グラフを用いて、音声合成に必要となる音声合成データベース用の読上げ文章を生成するために、コンピュータを、
前記有向グラフと、当該有向グラフの前記ノードに対応する前記語句を１以上格納するリストとが入力されるグラフ入力手段、
前記ノード毎に、当該ノードの通過回数を当該ノードに対応する前記リストが格納した前記語句の個数以上とする第１の条件式を生成すると共に、前記エッジが前記ノード間の接続を示すときは前記ノード間の通過回数を等しくする第２の条件式を生成し、前記エッジが前記ノード間の分岐を示すときは分岐前の前記ノードの通過回数と分岐した前記ノードの通過回数の合算値とを等しくする前記第２の条件式を生成し、前記エッジが前記ノード間の合流を示すときは合流する前記ノードの通過回数の合算値と合流後の前記ノードの通過回数とを等しくする前記第２の条件式を生成する条件式生成手段、
前記条件式生成手段が生成した第１の条件式及び第２の条件式を満たすように、前記文章の先頭における通過回数が最小になる最小通過回数を算出する最小通過回数算出手段、
前記最小通過回数算出手段が算出した最小通過回数と等しい数、前記リストに格納した前記語句の組み合わせを変えて前記読上げ文章を生成する読上げ文章生成手段、
として機能させることを特徴とする音声合成用読上げ文章生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声合成に必要となる音声合成用データベースに登録する音声合成用の読上げ文章を、有向グラフを用いて生成する音声合成用読上げ文章生成装置及びそのプログラムに関する。
【背景技術】
【０００２】
従来から、音声合成用の読上げ文章を生成する発明が知られている（特許文献１参照）。例えば、特許文献１に記載された発明は、入力文章の構成要素が多い順番に入力文章を選択して音声合成用の読上げ文章を生成するものである。
【特許文献１】特開２００６−３０８９２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、特許文献１に記載された発明は、有向グラフで表現できる文章であっても、有向グラフの各ノードに対応する語句を全て組み合わせた数の音声合成用の読上げ文章を生成し、これら全ての読上げ文章に対して計算を行う必要がある。このように、読上げ文章の数が多くなると、特許文献１に記載された発明では、現実的でない程の演算時間が必要となり、演算量が多く、装置の大規模化を招く問題があった。
【０００４】
そこで、本発明は、演算量が少なく、簡易な構成で音声合成用の読上げ文章を生成できる音声合成用読上げ文章生成装置及びそのプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
前記した課題を解決するため、請求項１に係る音声合成用読上げ文章生成装置は、文章に含まれる語句の位置を示す複数のノードとノード間において分岐及び合流が可能なエッジとで構成された有向グラフによって文章が表現され、有向グラフを用いて、音声合成に必要となる音声合成データベース用の読上げ文章を生成する音声合成用読上げ文章生成装置であって、グラフ入力手段と、条件式生成手段と、最小通過回数算出手段と、読上げ文章生成手段と、を備える構成とした。
【０００６】
かかる構成において、音声合成用読上げ文章生成装置は、グラフ入力手段によって、有向グラフと、有向グラフのノードに対応する語句を１以上格納するリストとが入力される。
【０００７】
また、音声合成用読上げ文章生成装置は、条件式生成手段によって、ノード毎に、ノードの通過回数をノードに対応するリストが格納した語句の個数以上とする第１の条件式を生成する。そして、音声合成用読上げ文章生成装置は、条件式生成手段によって、エッジがノード間の接続を示すときはノード間の通過回数を等しくする第２の条件式を生成し、エッジがノード間の分岐を示すときは分岐前のノードの通過回数と分岐したノードの通過回数の合算値とを等しくする第２の条件式を生成し、エッジがノード間の合流を示すときは合流するノードの通過回数の合算値と合流後のノードの通過回数とを等しくする第２の条件式を生成する。
【０００８】
また、音声合成用読上げ文章生成装置は、最小通過回数算出手段によって、条件式生成手段が生成した第１の条件式及び第２の条件式を満たすように、文章の先頭における通過回数が最小になる最小通過回数を、例えば、シンプレックス法又は内点法で算出する。ここで、第１の条件式及び第２の条件式が一次関数又は一次不等式であるため、音声合成用読上げ文章生成装置では、シンプレックス法を用いることができる。
【０００９】
また、音声合成用読上げ文章生成装置は、読上げ文章生成手段によって、最小通過回数算出手段が算出した最小通過回数と等しい数、リストに格納した語句の組み合わせを変えて読上げ文章を生成する。このように、文章を表現した有向グラフを用いることで、音声合成用読上げ文章生成装置は、最小通過回数と等しい数の読上げ文章を生成すれば良く、有向グラフの各ノードに対応する語句を全て組み合わせた数の読上げ文章を生成する必要がなくなる。
【００１０】
請求項２に係る音声合成用読上げ文章生成装置は、請求項１に係る音声合成用読上げ文章生成装置において、グラフ入力手段が、複数の有向グラフが入力され、ＤＰマッチング法によって、複数の有向グラフのノードの一致と挿入誤りと欠落誤りと代替誤りとを求めて複数の有向グラフが類似するか否かを判定し、複数の有向グラフが類似する場合、ＤＰマッチング法の結果に基づいて、複数の有向グラフを統合グラフに統合すると共に、複数の有向グラフが類似しない場合、複数の有向グラフのそれぞれを新たな統合グラフとする統合グラフ生成手段、をさらに備えることを特徴とする。
【００１１】
かかる構成において、音声合成用読上げ文章生成装置は、入力された複数の有向グラフを、これらより少ない数の統合グラフに統合してから条件式を生成する。
【００１２】
また、前記した課題を解決するため、請求項３に係る音声合成用読上げ文章生成プログラムは、文章に含まれる語句の位置を示す複数のノードとノード間において分岐及び合流が可能なエッジとで構成された有向グラフによって文章が表現され、有向グラフを用いて、音声合成に必要となる音声合成データベース用の読上げ文章を生成するために、コンピュータを、グラフ入力手段、条件式生成手段、最小通過回数算出手段、読上げ文章生成手段、として機能させる構成とした。
【００１３】
かかる構成において、音声合成用読上げ文章生成プログラムは、グラフ入力手段によって、有向グラフと、有向グラフのノードに対応する語句を１以上格納するリストとが入力される。
【００１４】
また、音声合成用読上げ文章生成プログラムは、条件式生成手段によって、ノード毎に、ノードの通過回数をノードに対応するリストが格納した語句の個数以上とする第１の条件式を生成する。そして、音声合成用読上げ文章生成プログラムは、条件式生成手段によって、エッジがノード間の接続を示すときはノード間の通過回数を等しくする第２の条件式を生成し、エッジがノード間の分岐を示すときは分岐前のノードの通過回数と分岐したノードの通過回数の合算値とを等しくする第２の条件式を生成し、エッジがノード間の合流を示すときは合流するノードの通過回数の合算値と合流後のノードの通過回数とを等しくする第２の条件式を生成する。
【００１５】
また、音声合成用読上げ文章生成プログラムは、最小通過回数算出手段によって、条件式生成手段が生成した第１の条件式及び第２の条件式を満たすように、文章の先頭における通過回数が最小になる最小通過回数を、例えば、シンプレックス法又は内点法で算出する。ここで、第１の条件式及び第２の条件式が一次関数又は一次不等式であるため、音声合成用読上げ文章生成プログラムでは、シンプレックス法を用いることができる。
【００１６】
また、音声合成用読上げ文章生成プログラムは、読上げ文章生成手段によって、最小通過回数算出手段が算出した最小通過回数と等しい数、リストに格納した語句の組み合わせを変えて読上げ文章を生成する。このように、文章を表現した有向グラフを用いることで、音声合成用読上げ文章生成プログラムは、最小通過回数と等しい数の読上げ文章を生成すれば良く、有向グラフの各ノードに対応する語句を全て組み合わせた数の読上げ文章を生成する必要がなくなる。
【発明の効果】
【００１７】
本発明に係る音声合成用読上げ文章生成装置及びそのプログラムによれば、以下のような優れた効果を奏する。
請求項１，３に係る発明によれば、文章を表現した有向グラフを用いることで、有向グラフの各ノードに対応する語句を全ての組み合わせ数の読上げ文章を生成する必要がなくなるため、演算量を少なくし、音声合成用読上げ文章生成装置を簡易な構成とすることができる。
【００１８】
請求項２に係る発明によれば、入力された複数の有向グラフを、これらより少ない数の統合グラフに統合してから条件式を生成するため、全ての有向グラフに対して条件式を生成する場合に比べ、音声合成音の品質を高くすることができる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施形態について、適宜図面を参照しながら詳細に説明する。なお、各実施形態において、同一の機能を有する手段には同一の符号を付し、説明を省略した。
【００２０】
［音声合成用読上げ文章生成装置の構成］
図１を参照して、本発明の実施形態に係る音声合成用読上げ文章生成装置の構成について説明する。図１は、本発明の実施形態に係る音声合成用読上げ文章生成装置のブロック図である。
【００２１】
図１の音声合成用読上げ文章生成装置１は、文章を表現した有向グラフを用いて、音声合成に必要となる音声合成データベース用の読上げ文章を生成するものであって、グラフ入力手段１１と、統合グラフ生成手段１２と、条件式生成手段１３と、最小通過回数算出手段１４と、読上げ文章生成手段１５と、を備える。以下、有向グラフを符号Ｇ、リストを符号Ｌ、及び、統合グラフを符号Ｔと記す。
【００２２】
グラフ入力手段１１は、有向グラフＧと、有向グラフＧのノードＮに対応する語句を１以上格納するリストＬとが入力されるものである。例えば、グラフ入力手段１１としては、有向グラフＧ及びリストＬを外部から受信する通信ポート、又は、磁気ディスク等の記憶媒体に記憶された有向グラフＧ及びリストＬを読み取る読取装置がある。また、グラフ入力手段１１は、１個の有向グラフＧが入力されても良く、２個以上の有向グラフＧが入力されても良い。なお、有向グラフＧ及びリストＬの詳細は、後記する。
【００２３】
統合グラフ生成手段１２は、グラフ入力手段１１に有向グラフＧが複数入力された場合、ＤＰマッチング法によって、複数の有向グラフＧのノードＮの一致と挿入誤りと欠落誤りと代替誤りとを求めて複数の有向グラフＧが類似するか否かを判定するものである。また、統合グラフ生成手段１２は、複数の有向グラフＧが類似する場合、ＤＰマッチング法の結果に基づいて、複数の有向グラフＧを統合グラフＴに統合して生成する。一方、統合グラフ生成手段１２は、複数の有向グラフＧが類似しない場合、複数の有向グラフＧのそれぞれを新たな統合グラフＴとして生成する。なお、統合グラフＴの生成の詳細は、後記する。
【００２４】
条件式生成手段１３は、ノードＮ毎に、ノードＮの通過回数をノードＮに対応するリストＬが格納した語句の個数以上とする第１の条件式を生成するものである。また、条件式生成手段１３は、エッジがノードＮ間の接続を示すときはノードＮ間の通過回数を等しくする第２の条件式を生成する。また、条件式生成手段１３は、エッジがノードＮ間の分岐を示すときは分岐前のノードＮの通過回数と分岐したノードＮの通過回数の合算値とを等しく第２の条件式を生成する。さらに、条件式生成手段１３は、エッジがノードＮ間の合流を示すときは合流するノードＮの通過回数の合算値と合流後のノードＮの通過回数とを等しくする第２の条件式を生成する。
【００２５】
最小通過回数算出手段１４は、条件式生成手段１３が生成した第１の条件式及び第２の条件式を満たすように、文章の先頭における通過回数が最小になる最小通過回数を、例えば、シンプレックス法又は内点法で算出するものである。なお、シンプレックス法の詳細は、文献「シンプレックス法、ニューメリカル・レシピ・イン・シー、技術評論社、Ｐ３１７〜Ｐ３３０」に記載されている。また、内点法の詳細は、文献「内点法、小島  政和他、朝倉書店」に記載されている。
【００２６】
読上げ文章生成手段１５は、最小通過回数算出手段１４が算出した最小通過回数と等しい数、リストＬに格納した語句の組み合わせを変えて読上げ文章を生成するものである。ここで、読上げ文章生成手段１５が生成した読上げ文章は、例えば、音声データベース（不図示）に登録され、音声合成に用いられる。なお、条件式及び読上げ文章の生成の詳細は、後記する。
【００２７】
また、音声合成用読上げ文章生成装置１は、グラフ入力手段１１に入力された有向グラフＧやリストＬ、統合グラフ生成手段１２が生成した統合グラフＴ、条件式生成手段１３が生成した条件式、読上げ文章生成手段１５が生成した読上げ文章、及び、前記した閾値等のパラメータを記憶するＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）等の記憶手段を備えても良い（不図示）。
【００２８】
＜有向グラフ及びリストの具体例＞
以下、図２及び図３を参照して、有向グラフ及びリストの具体例について説明する（適宜図１参照）。図２は図１のグラフ入力手段に入力された有向グラフを説明する図であり、（ａ）は有向グラフの第１例であり、（ｂ）は有向グラフの第２例である。また、図３は図１のグラフ入力手段に入力されたリストを説明する図であり、（ａ）は図２（ａ）のノードＮ１に対応するリストの例であり、（ｂ）は図２（ｂ）のノードＮ１２に対応するリストの例である。
【００２９】
図２に示すように、有向グラフＧは、グラフ理論で用いられる有向グラフで文章（例えば、天気予報番組の読上げ原稿）を表現しており、ノードＮ及びエッジ（図２ではノードＮ間を結ぶ矢印）を有するものである。なお、図２（ａ）の有向グラフＧ１及び図２（ｂ）の有向グラフＧ２を区別しないで説明する場合、単に有向グラフＧとする。また、図２では、有向グラフＧにおける文章の先頭を「先頭」、及び、有向グラフＧにおける文章の終了を「終了」として図示した。
【００３０】
ここで、図２に示すように、有向グラフＧ１は、６個のノードＮ１〜ノードＮ６を有し、有向グラフＧ２は、７個のノードＮ１１〜ノードＮ１７を有する。なお、図２では、説明の為に、ノードＮ１〜ノードＮ６及びノードＮ１１〜ノードＮ１７に対応する語句を総括したものを、各ノードＮの枠内に示した。例えば、ノードＮ１は、場所に関する語句を総括し、ノードＮ１２は、緯度分に対応する語句を総括する。
【００３１】
また、各ノードＮには、リストＬがそれぞれ対応する。例えば、有向グラフＧ１では、６個のノードＮ１〜ノードＮ６に６個のリストＬ１〜リストＬ６が対応し、有向グラフＧ２では、７個のノードＮ１１〜ノードＮ１７に７個のリストＬ１１〜リストＬ１７が対応する。なお、ノードＮ１〜ノードＮ６及びノードＮ１１〜ノードＮ１７を区別しないで説明する場合、単にノードＮとする。
【００３２】
エッジは、例えば、ノードＮ間の接続、ノードＮ間の分岐及びノードＮ間の合流といったノードＮ間の接続関係を示すものである。例えば、図２（ａ）では、ノードＮ１とノードＮ２とを１本のエッジで接続しているので、エッジが、ノードＮ１とノードＮ２との接続を示す。
【００３３】
リストＬは、ノードＮ毎に、文章を構成する語句を１以上格納したものである。例えば、図３（ａ）のリストＬ１は、図２（ａ）ノードＮ１に対応しており、「日本海の」、「東シナ海の」、「太平洋の」等の場所に関連する語句を格納する。また、図３（ｂ）のリストＬ１２は、図２（ｂ）のノードＮ１２に対応しており、「北緯０度」、「北緯１度」、「南緯９０度」等の緯度分に関連する語句を格納する。なお、リストＬ１〜リストＬ６、及び、リストＬ１１〜リストＬ１７を区別しないで説明する場合、単にリストＬとする。
【００３４】
ここで、図２（ａ）の有向グラフＧ１において、ノードＮ１〜ノードＮ６に対応するリストＬ１〜リストＬ６が格納した語句の個数を例示する。なお、この語句の個数は、後記する条件式の生成に用いる。
リストＬ１が格納した語句の個数：１００
リストＬ２が格納した語句の個数：６００
リストＬ３が格納した語句の個数：４００
リストＬ４が格納した語句の個数：２００
リストＬ５が格納した語句の個数：７
リストＬ６が格納した語句の個数：１
【００３５】
また、図２（ｂ）の有向グラフＧ２において、ノードＮ１１〜ノードＮ１７に対応するリストＬ１１〜リストＬ１７が格納した語句の個数を例示する。
リストＬ１１が格納した語句の個数：１００
リストＬ１２が格納した語句の個数：１８０
リストＬ１３が格納した語句の個数：９０
リストＬ１４が格納した語句の個数：２００
リストＬ１５が格納した語句の個数：７
リストＬ１６が格納した語句の個数：１６
リストＬ１７が格納した語句の個数：１００
【００３６】
なお、ノードＮ１とノードＮ１１とが両方とも「場所の」であり一致するため、リストＬ１とリストＬ１１とを共通化しても良い。また、同様に、リストＬ４とリストＬ１４とを共通化しても良い。また、エッジは、有向グラフＧにおける最初のノードＮと「先頭」との接続、及び、有向グラフＧにおける最後のノードＮと終了との「接続」を示しても良い。
【００３７】
なお、あるノードＮから２本のエッジが分岐し、それぞれのエッジに異なるノードＮが接続する場合、エッジが、ノードＮの分岐を示すこととしても良い。さらに、異なるノードＮから複数のエッジが合流してあるノードＮに接続する場合、エッジが、ノードＮの合流を示すこととしても良い。
【００３８】
＜統合グラフの生成＞
以下、図４を参照して、統合グラフの生成について説明する（適宜図１，図２参照）。図４は、図１の統合グラフ生成手段が生成した統合グラフを説明する図である。なお、図４では、統合グラフＴにおける文章の先頭を「先頭」、及び、統合グラフＴにおける文章の終了を「終了」として図示した。
【００３９】
ここでは、統合グラフ生成手段１２は、ＤＰマッチング法によって、図２の有向グラフＧ１，Ｇ２のノードＮの一致（Ｈ）と、挿入誤り（Ｉ）と、欠落誤り（Ｄ）と、代替誤り（Ｓ）とを求め、ＤＰマッチングの結果に基づいて、類似度を算出する。ここで、例えば、統合グラフ生成手段１２は、ＤＰマッチングの結果を下記式（１）に代入して類似度を算出する。
【００４０】
類似度＝（Ｈ−Ｉ）／（Ｈ＋Ｓ＋Ｄ）・・・式（１）
【００４１】
また、統合グラフ生成手段１２は、この類似度と所定の閾値とを比較し、この類似度が閾値以上のときに有向グラフＧ１，Ｇ２が類似するとして、有向グラフＧ１，Ｇ２を統合グラフＴに統合しても良い。一方、統合グラフ生成手段１２は、この類似度が閾値未満ときに有向グラフＧ１，Ｇ２が類似しないとして、有向グラフＧ１，Ｇ２のそれぞれを統合グラフＴとしても良い。
【００４２】
具体的には、この判定結果において、ノードＮ１とノードＮ１１とが一致するため、統合グラフ生成手段１２は、図４に示すように、統合グラフＴにノード１１を追加する。また、この判定結果において、ノードＮ２とノードＮ１２とが代替え誤りとなるため、統合グラフ生成手段１２は、ノード１１から２本のエッジを分岐させてノード１１に接続するように、統合グラフＴにノードＮ２とノードＮ１２とが並行になるように追加する。さらに、この判定結果において、ノードＮ３とノードＮ３とが代替え誤りとなるため、統合グラフ生成手段１２は、ノード２に接続するようにノードＮ３を追加し、ノード１２に接続してノードＮ３と並行になるようにノードＮ１３を追加する。
【００４３】
また、この判定結果において、ノードＮ４とノードＮ１４とが一致するため、統合グラフ生成手段１２は、図４に示すように、ノードＮ３とノードＮ１３とのエッジを合流させてノードＮ１４に接続するように、統合グラフＴにノード１４を追加する。また、この判定結果において、ノードＮ５とノードＮ１５とが一致するため、統合グラフＴにノード１５を追加する。また、この判定結果において、ノードＮ６とノードＮ１６とが代替え誤りとなり、ノードＮ１７が挿入誤りとなるため、統合グラフ生成手段１２は、ノード１５から２本のエッジを分岐させて統合グラフＴにノードＮ６とノードＮ１６とを追加し、ノードＮ１６に接続するようにノードＮ１７を追加する。
【００４４】
以上のようにして、統合グラフ生成手段１２は、図４に示す統合ノードＴを生成する。なお、統合グラフＴは、特開２００３−１５６８５号公報に記載された発明を用いて生成しても良い。
【００４５】
なお、統合グラフ生成手段１２は、ＤＰマッチングの結果が挿入誤りとなるノードＮについては、そのノードＮを統合グラフＴに挿入しても良い。さらに、統合グラフ生成手段１２は、ＤＰマッチングの結果が欠落誤りとなるノードＮについては、そのノードＮをスキップするように、そのノードＮに前後するノードＮ間を直接接続するエッジを追加する。
【００４６】
図４では、統合グラフＴが１個の場合を例として説明したが、統合グラフＴの個数は特に限定されない。例えば、統合グラフＴが複数ある場合においては、類似する統合グラフＴをさらに統合し（変数の共通化）、類似しない統合グラフＴをそれぞれ個別のものとして扱うことで、全体としてシンプレックス法を用いることが可能となる。
【００４７】
＜条件式及び読上げ文章の生成＞
以下、条件式及び読上げ文章の生成について説明する（適宜図１，図４参照）。
条件式生成手段１３は、ノードＮ毎に、一次関数又は一次不等式であり、かつ、各ノードＮの通過回数（変数）が正となる条件式を生成する。以下、ノードＮ１〜ノードＮ６の通過回数をそれぞれＸ１〜Ｘ６とし、ノードＮ１１〜ノードＮ１７の通過回数をそれぞれＸ１１〜Ｘ１７とする。また、文章の先頭における通過回数をＸＳとし、文章の終了における通過回数をＸＥとする。
【００４８】
ここでは、条件式生成手段１３が、図４の統合グラフＴについて、条件式を生成する例で説明する。条件式生成手段１３は、エッジが示すノードＮ間の接続関係、例えば、ノードＮ間の接続、ノードＮ間の分岐及びノードＮ間の合流に基づいて、条件式を生成する。また、最初のノードＮと文章の先頭、及び、最後のノードＮと文章の終了についても、同様とする。
【００４９】
まず、条件式生成手段１３は、エッジが文章の先頭とノードＮ１１との接続を示すので、文章の先頭における通過回数ＸＳとノードＮ１１の通過回数Ｘ１１とを等しいとする条件式を生成する（下記式（１）参照）。
ＸＳ＝Ｘ１・・・式（１）
【００５０】
また、条件式生成手段１３は、エッジがノードＮ１１からノードＮ２及びノードＮ１２への分岐を示すので、分岐前のノードＮ１１の通過回数Ｘ１１と、分岐後のノードＮ２の通過回数Ｘ２とノードＮ１２の通過回数Ｘ１２との合算値を等しいとする条件式を生成する（下記式（２）参照）。
Ｘ１１＝Ｘ２＋Ｘ１２・・・式（２）
【００５１】
また、条件式生成手段１３は、エッジがノードＮ２とノードＮ３との接続を示すので、ノードＮ２の通過回数Ｘ２と、ノードＮ３の通過回数Ｘ３とを等しいとする条件式を生成する（下記式（３）参照）。
Ｘ２＝Ｘ３・・・式（３）
【００５２】
また、条件式生成手段１３は、エッジがノードＮ１２とノードＮ１３との接続を示すので、前記と同様に条件式を生成する（下記式（４）参照）。
Ｘ１２＝Ｘ１３・・・式（４）
【００５３】
また、条件式生成手段１３は、エッジがノードＮ３及びノードＮ１３からノードＮ１４への合流を示すので、合流前のノードＮ３の通過回数Ｘ３とノードＮ１３の通過回数Ｘ１３との合算値と、合流後のノードＮ１４の通過回数Ｘ１４とを等しいとする条件式を生成する（下記式（５）参照）。
Ｘ３＋Ｘ１３＝Ｘ１４・・・式（５）
【００５４】
また、条件式生成手段１３は、エッジがノードＮ１４とノードＮ５との接続を示すので、前記と同様に条件式を生成する（下記式（６）参照）。
Ｘ１４＝Ｘ１５・・・式（６）
【００５５】
また、条件式生成手段１３は、エッジがノードＮ１５からノードＮ６及びノードＮ１６への分岐を示すので、前記と同様に条件式を生成する（下記式（７）参照）。
Ｘ１５＝Ｘ６＋Ｘ１６・・・式（７）
【００５６】
また、条件式生成手段１３は、ノードＮ１６の通過回数Ｘ６とノードＮ１７の通過回数Ｘ１７との合算値を等しいとする条件式を生成する（下記式（８）参照）。
Ｘ１６＝Ｘ１７・・・式（８）
【００５７】
また、条件式生成手段１３は、エッジがノードＮ６及びノードＮ１７から文章の終了への合流を示すので、前記と同様に、条件式を生成する（下記式（９）参照）。なお、式（１）〜式（９）が請求項に記載の第２の条件式に相当する。
Ｘ６＋Ｘ１７＝ＸＥ・・・式（９）
【００５８】
また、条件式生成手段１３は、ノードＮ毎に、ノードＮの通過回数をノードＮに対応するリストＬが格納した語句の個数以上とする条件式を生成する。ここでは、条件式生成手段１３は、ノードＮ１〜ノードＮ６及びノードＮ１１〜ノードＮ１７について、下記式（１０）〜式（１９）を生成する。なお、式（１０）〜式（１９）が請求項に記載の第１の条件式に相当する。
Ｘ２≧６００  ・・・式（１０）
Ｘ３≧４００  ・・・式（１１）
Ｘ６≧１      ・・・式（１２）
Ｘ１１≧１００・・・式（１３）
Ｘ１２≧１８０・・・式（１４）
Ｘ１３≧９０  ・・・式（１５）
Ｘ１４≧２００・・・式（１６）
Ｘ１５≧７    ・・・式（１７）
Ｘ１６≧１６  ・・・式（１８）
Ｘ１７≧１００・・・式（１９）
【００５９】
以上のように、条件式生成手段１３は、条件式として、一次方程式と一次不等式で表され、かつ、各通過回数（変数）が正の値となる式（１）〜式（１９）を生成する。このため、最小通過回数算出手段１４は、文章の先頭における最小通過回数（パスの数）を、文章の先頭における通過回数ＸＳの負の値（−ＸＳ）を最大化する問題として、シンプレックス法で解くことができる。例えば、最小通過回数算出手段１４は、文章の先頭における最小通過回数を算出する。
【００６０】
そして、読上げ文章生成手段１５は、文章の先頭における最小通過回数と等しい数で、語句の組み合わせが異なる読上げ文章を生成する。具体的には、読上げ文章生成手段１５は、先頭側のノードＮから順に、各ノードＮに対応するリストＬに含まれる語句を順に組み合わせて読上げ文章を生成する。
【００６１】
例えば、読上げ文章生成手段１５は、ノードＮ１に対応するリストＬ１に１番目に含まれる語句（日本海の）、ノードＮ２に対応するリストＬ２に１番目に含まれる語句・・・ノードＮ６に対応するリストＬ６に１番目に含まれる語句を用いて、１個目の読上げ文章を生成する。次に、読上げ文章生成手段１５は、ノードＮ１に対応するリストＬ１に２番目に含まれる語句（東シナ海の）、ノードＮ２に対応するリストＬ２に２番目に含まれる語句・・・ノードＮ６に対応するリストＬ６に２番目に含まれる語句を用いて、２個目の読上げ文章を生成する。
【００６２】
ここで、最小通過回数がリストＬに含まれる語句の個数以上の場合、読上げ文章生成手段１５は、そのリストＬに含まれる語句を再び用いる。例えば、５個目の読上げ文章を生成する場合、リストＬ５が４個の語句しか含まないので、読上げ文章生成手段１５は、リストＬ５に含まれる１番目の語句を再び用いる。
【００６３】
さらに、最小通過回数がリストＬに含まれる語句の個数以上、かつ、ノードＮが分岐する場合、別の分岐先のノードＮに対応するリストＬに含まれる語句を用いる。例えば、６０１個目の読上げ文章を生成する場合、リストＬ２が６００個の語句しか含まないので、読上げ文章生成手段１５は、ノードＮ１からノードＮ２とは別の分岐先のノードＮ１２に対応するリストＬ１２に含まれる語句を用いる。この場合、読上げ文章生成手段１５は、リストＬ１２に含まれる１番目の語句（北緯０度）から順に用いる。
【００６４】
［音声合成用読上げ文章生成装置の動作］
以下、図５を参照して、図１の音声合成用読上げ文章生成装置の動作について説明する（適宜図１参照）。図５は、図１の音声合成用読上げ文章生成装置の動作を示すフローチャートである。なお、音声合成用読上げ文章生成装置１は、グラフ入力手段１１にリストＬ及び有向グラフＧが入力されたものとして説明する。
【００６５】
まず、音声合成用読上げ文章生成装置１は、統合グラフ生成手段１２によって、ＤＰマッチング法によって、有向グラフＧの類似度を求め、統合グラフＴを生成する（ステップＳ１）。また、音声合成用読上げ文章生成装置１は、統合グラフ生成手段１２によって、グラフ入力手段１１に入力された全有向グラフＧの類似度の算出を終了したか否かを判定する（ステップＳ２）。ここで、全有向グラフＧの類似度の算出を終了していない場合（ステップＳ２でＮｏ）、音声合成用読上げ文章生成装置１は、統合グラフ生成手段１２によって、ステップＳ１の処理に戻り、残りの有向グラフＧの類似度を算出する。
【００６６】
一方、全有向グラフＧの類似度の算出を終了した場合（ステップＳ２でＹｅｓ）、音声合成用読上げ文章生成装置１は、条件式生成手段１３によって、ノードＮの通過回数をノードＮに対応するリストＬが格納した語句の個数以上とする第１の条件式を生成する。また、音声合成用読上げ文章生成装置１は、条件式生成手段１３によって、エッジがノードＮ間の接続を示すときはノードＮ間の通過回数を等しくする第２の条件式を生成する。
【００６７】
また、音声合成用読上げ文章生成装置１は、条件式生成手段１３によって、エッジがノードＮ間の分岐を示すときは分岐前のノードＮの通過回数と分岐したノードＮの通過回数の合算値とを等しく第２の条件式を生成する。さらに、音声合成用読上げ文章生成装置１は、条件式生成手段１３によって、エッジがノードＮ間の合流を示すときは合流するノードＮの通過回数の合算値と合流後のノードＮの通過回数とを等しくする第２の条件式を生成する（ステップＳ３）。
【００６８】
また、ステップＳ３において、音声合成用読上げ文章生成装置１は、条件式生成手段１３によって、全ての条件式を生成したか否かも判定する。ここで、全ての条件式を生成していない場合（ステップＳ３でＮｏ）、音声合成用読上げ文章生成装置１は、条件式生成手段１３によって、残りの条件式を生成する。
【００６９】
一方、全ノードＮについて全条件式を生成した場合（ステップＳ３でＹｅｓ）、音声合成用読上げ文章生成装置１は、最小通過回数算出手段１４によって、条件式生成手段１３が生成した第１の条件式及び第２の条件式を満たすように、文章の先頭における通過回数が最小となる最小通過回数をシンプレックス法で算出する（ステップＳ４）。
【００７０】
ステップＳ４に続いて、音声合成用読上げ文章生成装置１は、読上げ文章生成手段１５によって、最小通過回数算出手段１４が算出した最小通過回数と等しい数、リストＬに格納した語句の組み合わせを変えて読上げ文章を生成する（ステップＳ５）。
【００７１】
なお、本実施形態では、本発明に係る音声合成用読上げ文章生成装置を独立した装置として説明したが、本発明では、一般的なコンピュータを、前記した各手段として機能させるプログラムによって動作させることもできる。このプログラムは、通信回線を介して配布しても良く、ＣＤ−ＲＯＭやフラッシュメモリ等の記録媒体に書き込んで配布しても良い。
【図面の簡単な説明】
【００７２】
【図１】本発明の実施形態に係る音声合成用読上げ文章生成装置のブロック図である。
【図２】図１のグラフ入力手段に入力された有向グラフを説明する図であり、（ａ）は有向グラフの第１例であり、（ｂ）は有向グラフの第２例である。
【図３】図１のグラフ入力手段に入力されたリストを説明する図であり、（ａ）は図２（ａ）のノードＮ１に対応するリストの例であり、（ｂ）は図２（ｂ）のノードＮ１２に対応するリストの例である。
【図４】図１の統合グラフ生成手段が生成した統合グラフを説明する図である。
【図５】図１の音声合成用読上げ文章生成装置の動作を示すフローチャートである。
【符号の説明】
【００７３】
１    音声合成用読上げ文章生成装置
１１  グラフ入力手段
１２  統合グラフ生成手段
１３  条件式生成手段
１４  最小通過回数算出手段
１５  読上げ文章生成手段
Ｇ    有向グラフ
Ｌ    リスト
Ｔ    統合グラフ
【図１】
2010033462.tif 000003
【図２】
2010033462.tif 000004
【図３】
2010033462.tif 000005
【図４】
2010033462.tif 000006
【図５】
2010033462.tif 000007