(57)【要約】  名前の作成を実施するための方法および装置。一実装形態においては、名前を作成するためのシステムは、対応する特徴および名前の長さを表す値を含むユーザ入力を受け取るユーザインターフェースと、1つまたは複数のルールを示すルール辞書であって、それぞれのルールが、音素と特徴との間における関係を示すルール辞書と、前記ユーザインターフェースを通じて受け取った特徴を表す値、およびその特徴に対応するルールを使用して音素を選択する音素セレクタと、選択された音素どうしを組み合わせて名前を形成する音素コンパイラであって、前記名前が、前記名前の長さに基づく文字数を含む音素コンパイラと、前記ユーザ入力を表すデータおよび前記ルール辞書を含む、データを保存するストレージと、前記ユーザインターフェース、前記第1の音素セレクタ、前記第2の音素セレクタ、および前記音素コンパイラを提供する命令を実行するためのプロセッサとを含む。
2008538036.tif 000002
【特許請求の範囲】
【請求項１】
名前を作成するためのシステムであって、
対応する特徴および名前の長さを表す値を含むユーザ入力を受け取るユーザインターフェースと、
1つまたは複数のルールを示すルール辞書であって、それぞれのルールが、音素と特徴との間における関係を示すルール辞書と、
前記ユーザインターフェースを通じて受け取った特徴を表す値、およびその特徴に対応するルールを使用して音素を選択する音素セレクタと、
選択された音素どうしを組み合わせて名前を形成する音素コンパイラであって、前記名前が、前記名前の長さに基づく文字数を含む、音素コンパイラと、
前記ユーザ入力を表すデータおよび前記ルール辞書を含む、データを保存するストレージと、
前記ユーザインターフェース、前記第1の音素セレクタ、前記第2の音素セレクタ、および前記音素コンパイラを提供する命令を実行するためのプロセッサとを含むシステム。
【請求項２】
前記音素セレクタがまた、前記ユーザインターフェースを通じて受け取った名前の長さを使用して音素を選択する請求項1に記載のシステム。
【請求項３】
前記音素セレクタによって選択された音素を表す1つまたは複数の文字を選択する文字セレクタをさらに含む請求項1に記載のシステム。
【請求項４】
前記文字セレクタが、文字のうちの英語のアルファベットから文字を選択する請求項3に記載のシステム。
【請求項５】
前記文字セレクタが、中国語において使用されているキャラクタを文字として選択する請求項3に記載のシステム。
【請求項６】
文字や音素を使用する上での1つまたは複数の制限を示す制限辞書と、
前記音素コンパイラからの名前が前記制限辞書からのいずれかの制限に違反しているかどうかをチェックする名前フィルタとをさらに含み、
前記ストレージが、前記制限辞書を表すデータを保存する請求項1に記載のシステム。
【請求項７】
名前を作成する方法であって、
1つまたは複数の特徴の選択を受け取るステップと、
音象徴ルールの辞書を使用して、それぞれの選択された特徴を表す音素を選択するステップと、
前記選択した音素どうしを組み合わせて名前を形成するステップとを含む方法。
【請求項８】
それぞれの選択された特徴を表す値を受け取るステップをさらに含み、
それぞれの特徴を表す音素を選択するステップが、前記対応する特徴を表す前記受け取った値を使用して、前記辞書内のルールによって示される1つまたは複数の音素から1つの音素を選択するステップを含む請求項7に記載の方法。
【請求項９】
目標の言語を受け取るステップと、
前記名前内の前記音素に従って前記目標の言語から1つまたは複数のシンボルを選択するステップとをさらに含む請求項7に記載の方法。
【請求項１０】
前記シンボルが文字である請求項9に記載の方法。
【請求項１１】
前記シンボルがキャラクタである請求項9に記載の方法。
【請求項１２】
前記名前を1つまたは複数の制限と比較することによって前記名前をフィルタにかけるステップをさらに含む請求項7に記載の方法。
【請求項１３】
音素の重み付けを受け取るステップをさらに含み、
前記音素の重み付けが、前記選択された音素どうしを組み合わせる際に音素を並べるために使用される請求項7に記載の方法。
【請求項１４】
複数の名前を作成するステップと、
前記作成した名前のうちの1つの選択を受け取るステップとをさらに含む請求項7に記載の方法。
【請求項１５】
名前の長さを受け取るステップと、
前記名前の長さに従ってゼロまたはより多くのさらなる音素を選択するステップとをさらに含む請求項7に記載の方法。
【請求項１６】
名前の長さを受け取るステップと、
前記名前の長さに等しい文字数を前記名前が含むように前記名前内の前記音素に従って1つまたは複数の文字を選択するステップとをさらに含む請求項7に記載の方法。
【請求項１７】
名前を作成するためのシステムであって、
1つまたは複数の特徴の選択を受け取るための手段と、
音象徴ルールの辞書を使用して、それぞれの選択された特徴を表す音素を選択するための手段と、
前記選択された音素どうしを組み合わせて名前を形成するための手段とを含むシステム。
【請求項１８】
それぞれの選択された特徴を表す値を受け取るための手段をさらに含み、
それぞれの特徴を表す音素を選択するための手段が、前記対応する特徴を表す前記受け取った値を使用して、前記辞書内のルールによって示される1つまたは複数の音素から1つの音素を選択することを含む請求項17に記載のシステム。
【請求項１９】
名前を作成する際に使用するために具体的なストレージメディア上に格納されているコンピュータプログラムであって、
受け取った1つまたは複数の特徴の選択を処理するステップと、
音象徴ルールの辞書を使用して、それぞれの選択された特徴を表す音素を選択するステップと、
前記選択された音素どうしを組み合わせて名前を形成するステップとをコンピュータに行わせる実行可能な命令を含むコンピュータプログラム。
【請求項２０】
それぞれの選択された特徴を表す受け取った値を処理するステップをコンピュータに行わせる命令をさらに含み、
それぞれの特徴を表す音素を選択するステップが、前記対応する特徴を表す前記受け取った値を使用して、前記辞書内のルールによって示される1つまたは複数の音素から1つの音素を選択するステップを含む請求項19に記載のコンピュータプログラム。
【請求項２１】
単語を分析する方法であって、
1つまたは複数の音素を含む単語を受け取るステップと、
音象徴ルールの辞書を使用して、前記単語内のそれぞれの音素に関する1つまたは複数の特徴を選択するステップと、
前記選択された特徴を示す前記単語のプロファイルを構築するステップとを含む方法。
【発明の詳細な説明】
【技術分野】
【０００１】
音象徴および音感覚素の分野においては、いくつかの音素は特定の特徴を連想させるということが、研究によって分かっている(たとえば、"Evidence for Pervasive Synesthetic Sound Symbolism in Ethnozoological Nomenclature" by Brent Berlin in Sound Symbolism (L. Hinton, J. Nichols, and J.J. Ohala (eds.); published by Cambridge University Press; pages 76-93)を参照されたい)。興味深いことに、いくつかの連想は、文化および言語とは無関係のように思われる。
【発明の開示】
【発明が解決しようとする課題】
【０００２】
あるアイテムの名前が、連想させる音素を含んでいる場合、その名前は、そのアイテムに関する想定を聞き手に抱かせる傾向がある。適切な連想させる音素を含む名前が選択されている場合、その名前は、聞き手にとって「適切に聞こえる」ことが多い。たとえば、ほとんどの言語またはすべての言語において、鳥の名前は通常、高い前舌母音、および高周波の破裂音を伴う子音など、高周波音を含むということが、証拠によって示されている。対照的に、哺乳類および魚の名前は、これらの音を含まない傾向がある。したがって、鳥のための名前を作成する場合には、鳥を連想させるこれらの音を含めることによって、結果として適切に聞こえる名前ができ上がる可能性が高くなる。
【課題を解決するための手段】
【０００３】
本発明は、名前の作成を実施するための方法および装置を提供する。一実装形態においては、名前を作成するためのシステムは、対応する特徴および名前の長さを表す値を含むユーザ入力を受け取るユーザインターフェースと、1つまたは複数のルールを示すルール辞書であって、それぞれのルールが、音素と特徴との間における関係を示すルール辞書と、前記ユーザインターフェースを通じて受け取った特徴を表す値、およびその特徴に対応するルールを使用して音素を選択する音素セレクタと、選択された音素どうしを組み合わせて名前を形成する音素コンパイラであって、前記名前が、前記名前の長さに基づく文字数を含む音素コンパイラと、前記ユーザ入力を表すデータおよび前記ルール辞書を含む、データを保存するストレージと、前記ユーザインターフェース、前記第1の音素セレクタ、前記第2の音素セレクタ、および前記音素コンパイラを提供する命令を実行するためのプロセッサとを含む。
【０００４】
別の実装形態においては、名前を作成する方法は、1つまたは複数の特徴の選択を受け取るステップと、音象徴ルールの辞書を使用して、それぞれの選択された特徴を表す音素を選択するステップと、それらの選択した音素どうしを組み合わせて名前を形成するステップとを含む。
【発明を実施するための最良の形態】
【０００５】
本発明は、名前の作成を実施するための方法および装置を提供する。一実装形態においては、コンピュータシステムは、名付けられるアイテムの特徴および名前の長さを示すユーザ入力に基づいて名前を作成する。コンピュータシステムは、そのユーザ入力に音素ルールのセットを適用して、指示された特徴に適した音素を選択する。そしてコンピュータシステムは、目標の名前の長さに達するように、選択した音素をさらなる音素と組み合わせる。組み合わせた結果が、名前の候補として出力される。
【０００６】
一実装形態を説明する説明例が、以降に提示されている。この例は、すべてを網羅するものではなく、さらなる実装形態、例、および変形形態についても、以降で説明する。
【０００７】
一例においては、コンピュータシステムは、名前を作成するアプリケーションプログラム(「名前ジェネレータ」)を格納して、実行する。名前ジェネレータは、ユーザによって提供される特徴の値に基づいて名前を作成するように設計されている。アイテム(たとえば、コンピュータゲーム内の生き物)に名前を付けるために、ユーザは、そのアイテムの特徴を反映する特徴の値を名前ジェネレータに提供する。名前ジェネレータは、それらの特徴の値を使用して、それらの特徴を適切なレベルで連想させる適切な音素を含む名前を構築する。
【０００８】
名前ジェネレータは、特徴と音素とを相互に関連付ける音象徴ルールの辞書を含むか、あるいはそうした辞書にアクセスすることができる。特定の特徴に関するルールは、音素の規則的な配列を示す。その配列の一方の端は、その特徴を連想させる度合いの高い音素を示す。他方の端は、その特徴を連想させない音素、あるいは正反対の特徴を連想させる音素を示す。ある特徴を特定の度合いまで表す音素を選択するために、名前ジェネレータは、その特徴を表す羅列から、その羅列内の適切な位置にある1つの音素を選択する。そして名前ジェネレータは、適切な音素どうしの組合せを使用して、所望の特徴を連想させる名前を構築することができる。
【０００９】
はじめに、ユーザが名前ジェネレータを起動すると、名前ジェネレータは、1つまたは複数の特徴のうちのそれぞれに関して1つの値を要求する(これによって、ユーザは、特徴を選択したり省略したりすることができる)。それらの特徴は、名付けられるアイテムの特質を表すものである。それぞれの特徴は、「鋭く尖った」から「丸い」までなど、一方の極端から他方の極端までの範囲にわたる。値は、そのアイテムがその特徴のどこに相当するかを表す1から10までの数字である(その他の目盛りを使用することもできる)。たとえば、1が非常に女性的な状態を表し、10が非常に男性的な状態を表している場合には、この特徴における8の値を有するアイテムは、きわめて男性的なキャラクタを有するということになる。
【００１０】
名前ジェネレータはまた、名前の長さを要求する。名前の長さは、結果としてでき上がる名前が有するべき文字数を示す。
【００１１】
要求した入力を受け取ると、名前ジェネレータは、格付けされているそれぞれの特徴ごとに連想させる音素を選択する。名前ジェネレータは、提供された値を使用して、音象徴辞書内の音素リストから音素を選択する。名前ジェネレータは、入力された名前の長さによって示されている文字数を満たすように、さらなるつなぎ音素(filler phoneme)を(たとえば、ランダムな選択によって)選択する。
【００１２】
音素を選択した後、名前ジェネレータは、名前の長さと一致するように、それらの音素に対する文字を選択する。名前ジェネレータは、名前の長さと一致させる上で役立つように、代わりのスペリングを使用することもできる。名前ジェネレータは、選択した文字どうしを組み合わせて、名前を形成する。名前ジェネレータは、ランダムな組合せで、あるいは(「iはeの前に置く。ただしcの後になる場合は除く」などの)文字配置ルールに従って、文字どうしを組み合わせることができる。ユーザは、作成された名前が気に入らない場合には、名前ジェネレータが新たな名前を作成することを要求することができる。そして名前ジェネレータは、同じ連想させる音素と、新たなつなぎ音素とを使用して、新たな名前を作成する。
【００１３】
この例においては、ユーザは、アイテムの特徴を記述することによって、そのアイテムのための名前を名前ジェネレータに容易に作成させることができる。音象徴を使用することによって、よりよい「感じ」のバラエティーに富んだ名前が作成される。(たとえば、ゲームやストーリー内で多くのオブジェクトおよびキャラクタに名前を付けるために)多くの名前が必要とされる状況においては、名前ジェネレータは、関心を引く名前を迅速に選択するための便利で効果的なツールを提供することができる。
【００１４】
次いで図を参照すると、図1Aは、コンピュータシステム1000およびユーザ1100の表示を示している。ユーザ1100は、コンピュータシステム1000を使用して、名前を作成することができる。
【００１５】
図1Bは、名前ジェネレータを含む図1Aのコンピュータシステム1000の一実装形態のブロック図を示している。コンピュータシステム1000は、コントローラ1010、メモリ1020、ストレージ1030、メディアデバイス1040、ユーザインターフェース1050、I/O(input/output)インターフェース1060、およびネットワークインターフェース1070を含む。これらのコンポーネントは、共通のバス1080によって相互接続されている。あるいは、コントローラを中央に配置したスター型など、別の接続構成を使用することもできる。
【００１６】
コントローラ1010は、プログラム可能なプロセッサであり、コンピュータシステム1000およびそのコンポーネントのオペレーションをコントロールする。コントローラ1010は、メモリ1020や内蔵のコントローラメモリ(図示せず)から命令をロードし、それらの命令を実行して、システムをコントロールする。その実行の際に、コントローラ1010は、ソフトウェアシステムとして名前ジェネレータ1015を提供する。あるいは、このサービスは、コントローラ1010やコンピュータシステム1000内の別個のコンポーネントとして実装することもできる。名前ジェネレータ1015は、ユーザインターフェース1050を通じて受け取ったユーザ入力と、ストレージ1030内のルール辞書1035から検索した音素ルールとを使用して名前を作成する。
【００１７】
メモリ1020は、コンピュータシステム1000のその他のコンポーネントによって使用するためにデータを一時的に保存する。一実装形態においては、メモリ1020は、RAMとして実装される。一実装形態においては、メモリ1020はまた、フラッシュメモリおよび/またはROMなど、長期のメモリや永続的なメモリを含む。
【００１８】
ストレージ1030は、選択された音素および作成された名前を保存するためになど、コンピュータシステム1000のその他のコンポーネントによって使用するために、データを一時的に、あるいは長期にわたって保存する。一実装形態においては、ストレージ1030は、ハードディスクドライブである。ストレージ1030は、1つまたは複数の音素ルール辞書1035を格納している。ルール辞書1035は、特徴を音素に関連付ける1つまたは複数のルールのセットを含む(これについては、以降でさらに説明する)。ストレージ1030は、名前ジェネレータ1015によって使用するために、(たとえば、音素の可用性および配置に関する、文字、キャラクタ、あるいはシンボルに関する)言語辞書や、制限辞書(restriction dictionary)(たとえば、文化的なタブーに基づいてフィルタリングを行うための文化的な制限、国家的な制限、および言語の制限、あるいは商標を表す名前を除外するための法的な制限)など、さらなる情報を保存することもできる。こうしたその他の情報のうちのいくつかまたはすべては、1つまたは複数のルール辞書内へ統合することができる。
【００１９】
メディアデバイス1040は、取り外し可能なメディアを受け入れ、その挿入されたメディアとの間でデータの読み取りおよび/または書き込みを行う。一実装形態においては、メディアデバイス1040は、光ディスクドライブである。一実装形態においては、コンピュータシステム1000は、メディアデバイス1040内のメディア製品上に格納されているルール辞書(あるいは辞書のセット)から読み取りを行って、それらのルールを名前ジェネレータ1015内で使用する。
【００２０】
ユーザインターフェース1050は、コンピュータシステム1000のユーザからユーザ入力を受け取ること、およびそのユーザに情報を提示することのためのコンポーネントを含む。一実装形態においては、ユーザインターフェース1050は、キーボード、マウス、オーディオスピーカ、およびディスプレイを含む。コントローラ1010は、ユーザからの入力を使用して、コンピュータシステム1000のオペレーションを調整する。
【００２１】
I/Oインターフェース1060は、外部のストレージや補助的なデバイス(たとえば、プリンタやPDA)など、対応するI/Oデバイスへ接続するための1つまたは複数のI/Oポートを含む。一実装形態においては、I/Oインターフェース1060のポートは、USBポート、PCMCIAポート、シリアルポート、および/またはパラレルポートなどのポートを含む。別の実装形態においては、I/Oインターフェース1060は、外部のデバイスと無線で通信するための無線インターフェースを含む。
【００２２】
ネットワークインターフェース1070は、イーサネット（登録商標）接続をサポートするRJ-45や「Wi-Fi」インターフェース(802.11)など、有線および/または無線のネットワーク接続を含む。
【００２３】
コンピュータシステム1000は、コンピュータシステムにとって典型的なさらなるハードウェアおよびソフトウェア(たとえば、電力システム、冷却システム、オペレーティングシステム)を含む。ただし、これらのコンポーネントは、説明を簡単にするために図1Bには特に示されていない。その他の実装形態においては、コンピュータシステムの別の構成(たとえば、別のバス構成やストレージ構成、あるいはマルチプロセッサ構成)を使用することができる。
【００２４】
図2は、名前ジェネレータ2000およびルール辞書2100の一実装形態の表示を機能ブロックとして示している。名前ジェネレータ2000は、コンピュータシステムのプロセッサ(たとえば、図1Bのコントローラ1010)によってロードされて実行される1つまたは複数のソフトウェアコンポーネントとして実装することができる。名前ジェネレータ2000は、名前インターフェース2010、音素セレクタ2020、音素コンパイラ2030、文字セレクタ2040、および名前フィルタ2050を含む。名前ジェネレータ2000のこれらのコンポーネントは、別々の要素として実装することもでき、あるいは1つまたは複数のコンポーネントの機能的な部分として統合することもできる。ルール辞書2100は、データベース内の1つまたは複数のテーブルなど、編成された関連付けとしてストレージシステムやストレージメディア内に格納されるデータとして実装することができる。別の実装形態においては、ルール辞書は、名前ジェネレータと統合される。
【００２５】
上述のように、ある音は、ある特徴の感じを想起させる。この知識を使用して、特徴と音素とを相互に関連付ける関係のセットをルールとして規定することができる。これらのルールを名前ジェネレータによって使用して、所望の特徴を想起させるように設計された名前を構築することができる。たとえば、あるルールは、「柔らかい」という特徴を、最も柔らかくない感覚を想起させる音素から最も柔らかい感覚を伴う音素までを並べた音素の規則的なセットに関連付ける。ルールの別の例は、「柔らかい-硬い」を、「最も柔らかい」から「最も硬い」までを並べた音素の規則的なセットに関連付けることなど、2つの正反対の特徴を音素のセットに関連付ける。関連付けのいくつかの例は、下記のものを含む。
【００２６】
2008538036.tif 000003
【００２７】
特徴と音素とのこれらの関連付けに関するさらなる多くの例は、音象徴および音感覚素の領域における研究において文書化されている。名前ジェネレータのためのルール辞書によって、これらの関連付けは、検索可能な集合へと編成される。図2においては、ルール辞書2100は、ルールに関する項目を有するデータベーステーブルであり、それぞれの項目は、特徴のためのフィールドと、1つまたは複数の音素のセットのためのフィールドとを有する。一実装形態においては、それぞれの特徴(たとえば男性的な)や特徴のペア(たとえば、男性的な-女性的な)は、音素の規則的な羅列を有する。その他の実装形態は、その他の構成(たとえば、特徴ごとに1つの音素、あるいは不規則なセット)を使用することもできる。
【００２８】
名前ジェネレータ2000は、所望の名前に関する特徴を示す名前インターフェース2010を通じたユーザ入力データと、その名前をどのように構成するかを示す構成データとを受け取る。
【００２９】
名前の特徴とは、名付けられるオブジェクトやコンセプトが含む特質、したがって、その名前によって想起されることになる特質である。名前の特徴の例としては、男性的な、女性的な、柔らかい、硬い、明るい、暗い、丸い、角張った、鋭い、滑らかな、明瞭な、不明瞭な、小さい、大きい、動的な、静的な、固定された、動物のタイプ、温度、文化、アクセント、ジャンル(たとえば、SF対ファンタジー)などが含まれるが、これらには限定されない。一実装形態においては、名前インターフェース2010内で利用可能な名前の特徴は、ルール辞書2100内の特徴と同じ特徴であり、したがって、それぞれの名前の特徴は、1つのルールに対応する。別の実装形態においては、名前の特徴は、ルール辞書2100内の特徴とは異なる(たとえば、1つの名前の特徴が、複数のルールに対応する)。名前インターフェース2010は、(たとえば、チェックボックスやリストを使用した)1つまたは複数の名前の特徴の選択を受け取る。名前インターフェースはまた、1から10の範囲の値(1が、その特徴に似かよっていないことを示し、10が、その特徴に非常に似かよっていることを示す)など、それぞれの選択された名前の特徴に関する値または重み付けを受け取る。あるいは、選択するか、または選択しないかという単純な選択を使用することもできる。いくつかの特徴は、特徴のペア(たとえば、男性的な-女性的な)とすることもでき、その値は、1および10が男性的な-女性的な等の特徴のペアの両端を表す1から10までの範囲など、2つの端の間の範囲内における位置を表す。
【００３０】
名前のための構成データは、目標の長さ(たとえば、文字や音素の数、あるいは「長い」や「短い」などの相対的な値)、1つまたは複数の目標の言語(たとえば、アメリカ英語、中国語など)、1つまたは複数の目標の文化や国、および(たとえば、配置および切り捨てに際して、どの特徴がより高い優先順位を有するかを示す)音素の重み付けなど、選択された音素を使用して名前をどのように構築するかに関するさらなる情報を提供する。複数の目標の言語が選択されている場合には、名前ジェネレータ2000は、(たとえば、同じ音素および適切な文字を使用して、あるいはまた、言語ごとに音素の選択を変更して)それぞれの選択された言語ごとに別のバージョンの名前を作成する。同様に、複数の国が選択されている場合には、名前ジェネレータ2000は、必要に応じて(たとえば、別の音素を選択すべきであるということが文化的なルールによって示されている場合には)、選択された国ごとに別のバージョンの名前を作成する。
【００３１】
一実装形態においては、名前インターフェース2010は、名前情報を入力するための一連のグラフィカルコントロールを含むグラフィカルユーザインターフェース内のウィンドウとして実装される。たとえば、そのようなウィンドウの1つのバージョンは、それぞれの特徴ごとに度合いやレベルを選択するための名前の特徴のセットのうちのそれぞれに関するスライダ(チェックボックスなど、選択を行わないための設定を含む)と、名前の長さのためのテキスト入力フィールドと、目標の言語および国を選択するためのドロップダウンメニューとを含む。別の実装形態においては、名前インターフェースは、特徴の記述やオブジェクトの記述をユーザから受け取り、その記述から特徴および値を自動的に選択する。
【００３２】
音素セレクタ2020は、それぞれの選択された名前の特徴を表す音素を選択する。音素セレクタ2020は、選択された名前の特徴に対応するルールをルール辞書から選択する。上述のように、ルールは、1つまたは複数の音素を示す。音素セレクタ2020は、その名前の特徴に関して受け取った値または重み付けを使用して、示された音素のうちの1つを選択する。たとえば、ルールが規則的な羅列内の10個の音素を示していて、受け取った値が6である場合には、音素セレクタ2020は、6番目の音素を選択する。複数の選択された特徴が、同じ音素を示している場合には、その音素が1回使用される。あるいは、目標の長さの情報に応じて、その音素を繰り返すこともできる。一実装形態においては、音素セレクタ2020は、それぞれの選択された音素をチェックして(たとえば、その言語に関する音素リストを参照することによって)、その音素が目標の言語内に存在することを確認し、その音素が利用可能でない場合には、新たな音素を選択する。
【００３３】
音素コンパイラ2030は、受け取った構成情報を使用して、選択された音素から名前を構築する。構成情報が示している目標の長さが、選択された音素によって満たされない場合には、音素コンパイラは、その長さを満たすために、さらなるつなぎ音素を選択する。一実装形態においては、目標の長さは、音素の数を示し、音素コンパイラ2030は、その目標の長さに達するために、さらなる音素を選択する。音素コンパイラ2030は、指示された名前の特徴に関して選択された音素の特徴と矛盾することになるつなぎ音素を選択することを避けるためにフィルタを適用して(あるいは、そのフィルタリングを名前フィルタ2050に任せて)、疑似ランダムな選択プロセスを用いて、さらなる音素を選択する。別の実装形態においては、音素コンパイラは、マルコフ連鎖を使用して、それまでに選択された音素と、結果として得られる後続の音素に関するマルコフ確率とに基づいて、つなぎ音素を選択したり、その選択を調整したりする。目標の長さが、選択された音素の数よりも少ない場合には、音素コンパイラ2030は、(たとえば、名前の特徴の相対的な重み付けや優先順位を示す構成情報を使用して、あるいは、そのような情報を求めてユーザに問合せを行うことによって、)選択された音素を削除する。あるいは音素コンパイラは、複数の音素を単一の音素に置き換えることもできる。別の実装形態においては、目標の長さは、相対的な値(たとえば「長い」)を示し、音素コンパイラは、所定の値または範囲を使用して、目標の長さ(または範囲)を確立する。別の実装形態においては、目標の長さは、目標の言語の文字数を示し、音素コンパイラは、つなぎ音素を選択せず、代わりに文字セレクタに従って、つなぎ文字を選択する。
【００３４】
音素を選択した後、音素セレクタ2030は、選択した音素を順番に並べる。一実装形態においては、音素コンパイラ2030は、構成情報から音素の重み付け情報を使用して、名前の中での音素の配置を決定する(たとえば、より重要な音素は、名前の先頭に配置する)。音素コンパイラ2030はまた、音素を並べる際に、目標の言語に関するスペリングルール(たとえば、いくつのおよびどの子音や母音が、すぐ後に存在することができるか)を使用する。音素コンパイラは、音素を配置するための音象徴情報(たとえば、特定の音素を特定の位置に配置すると、選択された特徴が強まる)を使用することもできる。音素コンパイラは、マルコフ連鎖を使用して、マルコフ確率に基づいて音素の配置を調整することもできる。残りの音素は、疑似ランダムな順序を使用して配置される。あるいは音素コンパイラ2030は、疑似ランダムな順序を使用して、すべての選択された音素を配置したり、それらを外部の辞書から選択したりする。
【００３５】
文字セレクタ2040は、受け取った構成情報を使用して、選択された音素を表す文字を選択する。文字セレクタ2040は、指示された(あるいはデフォルトの)目標の言語からの文字を、音素の選択された配列に関するその言語のスペリングルールを用いて選択し、並べる。それらの文字は、その言語にとって適切なものである(たとえば、ローマ字、キリル文字、漢字など)。一実装形態においては、文字セレクタは、マルコフ連鎖を使用して、それまでに選択された文字と、結果として得られる後続の文字に関するマルコフ確率とに基づいて、文字を選択したり、その選択を調整したりする。一実装形態においては、文字セレクタはまた、音象徴を用いて文字を選択する。たとえば、2つの文字や文字の組合せが読み方の発音は同じ(たとえば、「f」および「ph」)だが意味や含みが異なる言語においては、文字セレクタは、選択された名前の特徴に関して、より適切な意味を有する文字を選択する。一実装形態においては、選択された音素が目標の言語内に存在しない場合には、文字セレクタは、その利用できない音素に近い新たな音素を音素セレクタに要求し、次いで、その代わりの音素を表す文字を選択する。目標の長さが文字数を示す実装形態においては、文字セレクタ2040は、その目標の長さを使用して、選択された音素を表す文字を選択し、必要に応じて、つなぎ文字を選択する。それらの文字を並べた配列が、名前の候補である。
【００３６】
名前フィルタ2050は、望ましくない名前を避けるために、名前の候補を制限と比較する。名前フィルタ2050は、目標の言語および国に関する制限ルールを使用して、意図せぬ含みを有することになる単語や文字の組合せを避ける。制限の例としては、不適切なスラング、卑語、身体の部分、不適切な文化的な単語、固有名詞、および商標が含まれるが、これらには限定されない。名前の候補が許容可能である場合には、名前フィルタ2050は、その名前を承認する。許容可能でない場合には、名前フィルタ2050は、その名前を拒否し、新たな名前を作成するよう名前ジェネレータ2000に要求する。一実装形態においては、名前フィルタ2050は、拒否した名前を、問題のある組合せが生じた名前ジェネレータ2000のコンポーネントへ(たとえば、文字選択の問題に関しては、文字セレクタ2040へ)返す。
【００３７】
名前フィルタ2050が名前を承認すると、名前ジェネレータ2000は、文字どうしを組み合わせたものを、名前インターフェース2010を通じてユーザに提示して、承認を求める。名前ジェネレータ2000は、音素および文字のさまざまな組合せを通じて(たとえば、つなぎ音素を変えて、音素の配列を変えて、文字の選択を変えてなど)、一連の名前の候補を作成することもできる。
【００３８】
図3は、名前を作成して選択することの一実装形態のフローチャート3000を示している。はじめに、コンピュータシステムは、実行用として名前ジェネレータソフトウェアアプリケーションプログラムを格納され、ロードされる。コンピュータシステムは、ルール辞書も格納する。
【００３９】
ユーザは、ブロック3100において、作成される名前に関する目標の特徴および情報を入力する。ユーザは、コンピュータシステムのユーザインターフェースと、名前ジェネレータとを使用して、(たとえば、名前ジェネレータによって提示された名前の特徴から)1つまたは複数の名前の特徴を選択し、その選択された特徴を表す値を選択する。ユーザはまた、目標の長さ、目標の言語、目標の国、名前の候補の数などの構成情報を入力する。
【００４０】
名前ジェネレータは、ブロック3200において、指示された数の名前の候補を作成する。名前ジェネレータは、受け取った特徴および構成情報を使用して、ルール辞書内のルールに基づいて音素および文字を選択する。名前ジェネレータは、このプロセスを繰り返して、指示された数の名前を作成する。複数の目標の言語が選択されている場合には、名前ジェネレータは、それぞれの選択されている言語ごとに、それぞれの作成される名前の別々のバージョンを作成する(たとえば、ユーザが3つの言語に関して5つの名前を要求している場合には、5つの名前のそれぞれに関して3つのバージョン、すなわち合計で15個のバージョンが作成される)。
【００４１】
名前ジェネレータは、ブロック3300において、名前の候補をフィルタにかける。名前ジェネレータは、制限のセットを使用して、目標の言語および目標の国にとって不適切な、あるいは望ましくない名前の候補を避ける。名前ジェネレータは、不適切なものとしてフィルタで除外される名前を拒否する。名前ジェネレータは、拒否された名前に代わるさらなる名前を作成する。別の実装形態においては、名前ジェネレータは、それぞれの名前が作成される際に、その名前をフィルタにかける(ブロック3200と3300を組み合わせた形)。
【００４２】
ブロック3400においては、名前ジェネレータは、承認された名前の候補をユーザに提示し、ユーザは、それらの名前のうちの1つを選択する。ユーザは、コンピュータシステムのユーザインターフェースと、名前ジェネレータとを通じて、それらの名前のうちの1つを選択する。
【００４３】
そしてユーザは、ブロック3500において、選択された名前を編集することができる。ユーザは、コンピュータシステムを通じて名前を編集する。
【００４４】
一実装形態においては、名前ジェネレータは、インタラクティブな編集インターフェースを提供する。名前ジェネレータは、特徴を表す範囲内にある値や表示を示すことなど、名前の特徴プロファイルを表示する。ユーザが名前を編集する際、名前ジェネレータは、プロファイルを更新して、名前の音素に対する変更を反映し、名前ジェネレータのフィルタによって提起された潜在的な問題を示す。ユーザは、プロファイルを調整して、新たな名前を作成することもできる。別の実装形態においては、ユーザは、この編集インターフェースから、名前を対話式に設計することを開始することができる。別の実装形態においては、名前ジェネレータは、名前インターフェースへ入力された名前と類似した名前を作成する機能(たとえば、「これと類似した名前をもっと作成する」)を含む。ユーザがこのオペレーションを選択すると、名前ジェネレータは、提供された名前のプロファイルを使用して、さらなる名前を作成する。別の実装形態においては、ユーザは、名前を入力してプロファイルを作成し、そしてそのプロファイルを修正して新たな名前を作成することができる。
【００４５】
別の実装形態においては、名前ジェネレータには、ネットワークサーバを通じてアクセスすることができる。一実装形態においては、サーバは、ウェブサービスを通じて、あるいは中央集権化されたサーバやブローカーとしてなど、リモートクライアントのための名前ジェネレータサービスを格納し、実行する。
【００４６】
図4は、名前を作成することの一実装形態のフローチャート4000を示している。はじめに、コンピュータシステムでは、実行用として名前ジェネレータソフトウェアアプリケーションプログラムが格納され、ロードされる。コンピュータシステムは、ルール辞書も格納する。コンピュータシステムは、(たとえば、図3のブロック3100と同様に)1つまたは複数の特徴および対応する（特徴の）値の選択と、名前に関する構成情報とを受け取っているか、あるいは作成している。
【００４７】
名前ジェネレータは、ブロック4100において、それぞれの選択された特徴を表す特徴音素を選択する。名前ジェネレータは、特徴に関する1つのルールをルール辞書から選択する。名前ジェネレータは、選択されたルールによって示される音素のうちの1つを、対応する特徴に関する受け取った値に基づいて選択する。名前ジェネレータは、繰り返されている音素を切り捨てる。
【００４８】
名前ジェネレータは、ブロック4200において、構成情報による指示に従って、さらなるつなぎ音素を選択する。構成情報は、目標の長さを含み、この目標の長さは、名前が含むことになる音素の数を示す。選択された特徴に関して選択される特徴音素の数が、目標の長さに満たない場合には、名前ジェネレータは、(たとえば、疑似ランダムな選択や、切り捨てた繰り返しの音素を追加することによって)さらなるつなぎ音素を選択して、目標の長さと一致させる。特徴音素の数が、目標の長さを超える場合には、名前ジェネレータは、(たとえば、疑似ランダムな選択や、構成情報から重み付けや優先順位の情報を使用することによって)音素を削除する。
【００４９】
名前ジェネレータは、ブロック4300において、選択された特徴音素と、つなぎ音素とを組み合わせる。名前ジェネレータは、選択された音素を並べて、名前を形成する。名前ジェネレータは、疑似ランダムな選択を使用して、音素を並べる。あるいは名前ジェネレータは、構成情報内で指示されている目標の言語に関連付けられている発音やスペリングのルールを使用する。
【００５０】
名前ジェネレータは、ブロック4400において、選択された音素を表す文字を選択する。名前ジェネレータは、目標の言語に関連付けられているスペリングルールを使用して、それぞれの音素を表す1つまたは複数の文字を選択する。名前ジェネレータは、選択された特徴を用いて、1つの文字やキャラクタを別の文字やキャラクタに勝るものとして選択して、同じ音素だが別々の意味を有する複数のシンボルの間で選択を行う。別の実装形態においては、名前ジェネレータはまた、目標の長さを使用して、文字を選択する(たとえば、1つの音素に関して、1つの文字と2つの文字との間で選択を行う)。
【００５１】
名前ジェネレータは、文字どうしの選択された組合せを、名前の候補として(たとえば、図3のブロック3200の出力として)使用する。
【００５２】
図5は、選択された特徴から「MYUNIAE」という名前を作成することの一例の表示5000である。ブロック5100〜5700は、情報およびデータを表している。破線の矢印は、決定に影響を与える情報の項目どうしの間における関係を示している。
【００５３】
ブロック5100は、名前の特徴に関するユーザ入力を表しており、これは、「男性的な-女性的な」という特徴に関する(1から10までの目盛り上の)10の(「きわめて女性的な」という)値と、「鋭い-柔らかい」に関する5の(鋭いと柔らかいの中間の)値とを示している。
【００５４】
ブロック5200は、構成情報に関するユーザ入力を表しており、これは、5つの音素という目標の名前の長さと、英語という目標の言語と、「男性的な-女性的な」を好む(配置に際して、「男性的な-女性的な」という特徴に関して選択された音素を好むということを示す)音素の重み付けとを示している。
【００５５】
ブロック5300は、データベース内におけるルール辞書内のルールを表している。選択されている特徴は、「男性的な-女性的な」および「鋭い-柔らかい」であるため、参照されるルールは、それらの特徴に関するものである。それらのルールは、特徴と、音素のセットとの間における相関関係を示している。
【００５６】
ブロック5400は、参照されるルールおよび値を使用して、選択されている特徴に関して選択された特徴音素を表している。「男性的な-女性的な」という選択されている特徴に関する値が10であるため、「男性的な-女性的な」に関するルールによって示されている音素のうちで最も「女性的なもの」、すなわち音素/u/が選択される。同様に、「鋭い-柔らかい」という特徴に関して、「鋭い-柔らかい」のルールによって示されている音素のうちの中間の音素(1から10までの目盛り上の5の値に対応するもの)として、音素/n/が選択される。
【００５７】
ブロック5500は、ランダムに選択されるさらなるつなぎ音素を表している。目標の名前の長さが5つの音素であり、(ブロック5400において)2つの特徴音素が選択されているため、/m/、/i/、および/a/という3つのつなぎ音素が選択される。
【００５８】
ブロック5600は、選択された特徴と、つなぎ音素とを組み合わせることを表している。音素の重み付けに関する構成情報が、「男性的な-女性的な」という特徴に関して選択された音素に対してより多くの重要度を与えるように指示しているため、音素/u/が、組み合わせたものの先頭付近に配置される。その他の音素は、ランダムに並べられる。
【００５９】
ブロック5700は、音素の選択された配置に関して文字を選択することを表している。目標の言語が英語であるため、文字は、英語のスペリングルールに基づいて選択される(たとえば、音素/u/に対応する文字「y」および「u」を選択する)。
【００６０】
名前ジェネレータの変形形態を使用して、名前およびテキストを分析することもできる。
【００６１】
一実装形態においては、名前ジェネレータはまた、名前エバリュエータ(name evaluator)を提供する。ユーザは、名前を名前エバリュエータに提供し、名前エバリュエータは、その名前のプロファイルを構築する。その名前の特徴プロファイルは、その名前の音素が名前ジェネレータのルール辞書からの特徴をどのように反映しているかを示す。一実装形態においては、それぞれの特徴ごとに目盛りが表示され、その名前がその目盛り上のどこに相当するかをインジケータが示す。名前エバリュエータは、その名前内の音素を割り出す。適切な場合には、ユーザは、言語情報を名前エバリュエータに提供する。そして名前エバリュエータは、名前ジェネレータによって使用されたルール辞書を参照して、その名前内のそれぞれの音素にどんな特徴がどのように関連付けられているか(たとえば、その音素が、ある特徴を表す規則的な羅列内のどこにあるか)を割り出す。名前エバリュエータは、すべての音素に関する結果どうしを組み合わせて、プロファイル(たとえば、それぞれの特徴に関する結果の平均)を構築する。別の実装形態においては、プロファイルはまた、その名前がさまざまな言語、国、あるいは文化において否定的に受け取られないかどうかの見積もりを(たとえば、テーブルやリストとして、あるいはインタラクティブな選択を通じて)提供する。一実装形態においては、名前エバリュエータは、名前ジェネレータの編集インターフェースの一部として提供される。別の実装形態においては、名前エバリュエータは、スタンドアロンのアプリケーションプログラムとして提供され、名前ジェネレータから独立して機能する。
【００６２】
別の実装形態においては、テキストエバリュエータ(text evaluator)が、テキストファイル(あるいはその他のテキストソース)を受け取り、その受け取ったテキストに関するプロファイルを構築する。このプロファイルは、上述の名前エバリュエータと同様に、テキストの特徴を示す。テキストエバリュエータは、テキスト内で使用されている単語を評価して、テキストプロファイルを構築する。テキストエバリュエータは、「活動的な」対「活動的でない」など、ユーザによって選択された特徴を使用して、プロファイルを構築する。テキストエバリュエータはまた、テキストのどの部分がより活動的または感情的に見えるか、あるいはどの部分がトピックやエリアに対応しているかを(たとえば、テキストの直線グラフ上に色付きの目盛りを使用して)示すことなど、経時的なテキストの一部分のプロファイルを提供する。プロファイル情報に基づいて、テキストエバリュエータは、どこで特定のドラマチックな出来事(たとえば、キャラクタの紹介やクライマックス)が起こるか、および結末の雰囲気(「楽しい」または「悲しい」)の評価を示すことができる。テキストエバリュエータは、新しい単語の紹介、単語の出現回数を数えること、文の長さなど、その他のテキスト分析技術を実行したり使用したりすることもできる。ある実装形態は、オンデマンドまたはリアルタイムの分析およびフィードバックのためにワードプロセッサや編集ツール内に組み込むことができる。
【００６３】
本発明のさまざまな実装形態は、電子的なハードウェア、コンピュータソフトウェア、あるいはそれらのテクノロジーの組合せにおいて実現される。いくつかの実装形態は、プログラム可能なプロセッサやコンピュータによって実行される1つまたは複数のコンピュータプログラムを含む。たとえば図1Aを参照すると、一実装形態においては、コンピュータシステム1000は、1つまたは複数のプログラム可能なプロセッサを含む。一般に、それぞれのコンピュータは、1つまたは複数のプロセッサ、1つまたは複数のデータストレージコンポーネント(たとえば、揮発性または不揮発性のメモリモジュール、ならびにハードディスクドライブおよびフロッピー（登録商標）ディスクドライブ、CD-ROMドライブ、磁気テープドライブなど、永続的な光ストレージデバイスおよび磁気ストレージデバイス)と、1つまたは複数の入力デバイス(たとえば、マウスおよびキーボード)と、1つまたは複数の出力デバイス(たとえば、ディスプレイコンソールおよびプリンタ)とを含む。
【００６４】
コンピュータプログラムは、実行コードを含み、この実行コードは、通常は永続的なストレージメディア内に格納されており、ランタイムにメモリ内へコピーされる。プロセッサは、プログラム命令をメモリから所定の順序で取り出すことによって、コードを実行する。プログラムコードを実行する際、コンピュータは、入力デバイスおよび/またはストレージデバイスからデータを受け取り、そのデータ上でオペレーションを実行し、そして結果として生じるデータを出力デバイスおよび/またはストレージデバイスへ送る。
【００６５】
本発明のさまざまな例示的な実装形態について説明した。しかし、さらなる実装形態も可能であり、本発明の範囲内であるということを当業者なら理解するであろう。たとえば上述の説明は、テキストの名前を使用した実装形態に焦点を合わせているが、音の分析を使用して、入力を(たとえば、ユーザの話し声から)音声として受け取ることや、同様に名前を音声として出力することができる。さらに、音素の分析ではなく、目標の言語における文字の視覚的なインパクトなど、その他の分析を使用することもできる。したがって本発明は、上述の実装形態だけに限定されるものではない。
【図面の簡単な説明】
【００６６】
【図１】図1Aは、コンピュータシステムおよびユーザの表示を示す図である。
【００６７】
図1Bは、名前ジェネレータ(name generator)を含む図1Aのコンピュータシステムの一実装形態を示すブロック図である。
【図２】名前ジェネレータおよびルール辞書の一実装形態の表示を機能ブロックとして示す図である。
【図３】名前を作成して選択することの一実装形態を示すフローチャートである。
【図４】名前を作成することの一実装形態を示すフローチャートである。
【図５】選択された特徴から「MYUNIAE」という名前を作成することの一例の表示を示す図である。
【図１】
2008538036.tif 000004
【図２】
2008538036.tif 000005
【図３】
2008538036.tif 000006
【図４】
2008538036.tif 000007
【図５】
2008538036.tif 000008
【国際調査報告】
2008538036.tif 000009
2008538036.tif 000010