JP2014028284A - Interactive toy - Google Patents

Interactive toy Download PDF

Info

Publication number
JP2014028284A
JP2014028284A JP2013192224A JP2013192224A JP2014028284A JP 2014028284 A JP2014028284 A JP 2014028284A JP 2013192224 A JP2013192224 A JP 2013192224A JP 2013192224 A JP2013192224 A JP 2013192224A JP 2014028284 A JP2014028284 A JP 2014028284A
Authority
JP
Japan
Prior art keywords
toy
doll
theme
conversation
authoring tool
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013192224A
Other languages
Japanese (ja)
Inventor
Steven Lipman
スティーヴン リップマン
Frederick Kilbride-Newman Robert
ロバート フレデリック キルブライド−ニューマン
Shmuel Aharon
アーロン シュムエル
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HYDRAE Ltd
Original Assignee
HYDRAE Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from PCT/GB2008/002457 external-priority patent/WO2009010760A2/en
Application filed by HYDRAE Ltd filed Critical HYDRAE Ltd
Publication of JP2014028284A publication Critical patent/JP2014028284A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H3/00Dolls
    • A63H3/28Arrangements of sound-producing means in dolls; Means in dolls for producing sounds
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H2200/00Computerized interactive toys, e.g. dolls
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H30/00Remote-control arrangements specially adapted for toys, e.g. for toy vehicles
    • A63H30/02Electrical arrangements
    • A63H30/04Electrical arrangements using wireless transmission

Abstract

PROBLEM TO BE SOLVED: To provide a mutually interactive toy.SOLUTION: A toy for dialoguing with at least one other similar toy, comprises: a processor; and a memory coupled to the processor. The processor includes: means for generating an output signal to express an action to be made; and means for a reception in at least another toy to generate a trigger signal to cause at least another toy to do an action before the toy ends its own action. Moreover, the trigger signal is generated at a predetermined time interval after the toy began its own action. Alternatively, the trigger signal is generated at a predetermined time interval before the toy ends its own action.

Description

本発明は玩具に関する。特に、限定的な意味ではないが、本発明は互いに対話する人形などの玩具に関する。   The present invention relates to a toy. In particular, but not in a limiting sense, the present invention relates to toys such as dolls that interact with each other.

組込み型コンピュータ及びマイクロプロセッサは、子供用玩具を進歩させてきた。これらは教育用玩具において最も広く使用されてきたが、対話型玩具においても使用されてきた。ActiMates(登録商標)Barney(登録商標)は、子供からの適切な発声による対話に応答するとともにビデオに合わせて歌うことができる対話型玩具の一例である。   Embedded computers and microprocessors have advanced children's toys. These have been most widely used in educational toys, but have also been used in interactive toys. ActiMates (R) Barney (R) is an example of an interactive toy that can respond to a dialogue with a suitable utterance from a child and sing along to a video.

本明細書にはPCT特許出願WO2006/114625号が引用により組み入れられる。   PCT patent application WO 2006/114625 is hereby incorporated by reference.

PCT特許出願WO2006/114625号PCT patent application WO2006 / 114625

同期
本発明の第1の態様によれば、少なくとも1つの他の同じような玩具と対話するようになっている玩具が提供され、この玩具は、プロセッサと、このプロセッサに結合されたメモリとを備え、前記プロセッサは、行うべき行動を表す出力信号を生成する手段と、少なくとも1つの他のこのような玩具における受信のための、前記玩具が自身の行動を終える前に前記少なくとも1つの他のこのような玩具が行動を起こすようにするためのトリガ信号を生成する手段とを含む。前記玩具が自身の行動を終える前に別のこのような玩具が行動を起こすようにするためのトリガ信号を生成する手段を提供することにより、より多才な、具体的にはより本物そっくりな対話を実現することができる。
In accordance with a first aspect of the present invention, a toy is provided that is adapted to interact with at least one other similar toy, the toy comprising a processor and a memory coupled to the processor. The processor includes means for generating an output signal representative of an action to be performed, and at least one other such toy for receiving at the at least one other such toy before the toy finishes its action. Means for generating a trigger signal for causing such a toy to take action. By providing a means to generate a trigger signal to cause another such toy to take action before the toy has finished its action, a more versatile, specifically more real-life interaction Can be realized.

より本物そっくりな対話のためには、前記玩具が自身の行動を開始した後に所定の時間間隔で前記トリガ信号が生成されることが好ましい。前記トリガ信号は、前記玩具が自身の行動を終える前に所定の時間間隔で生成されることが好ましい。   For a more authentic dialogue, it is preferable that the trigger signal is generated at a predetermined time interval after the toy starts its own action. The trigger signal is preferably generated at predetermined time intervals before the toy finishes its own action.

使い勝手を良くするために、玩具は、ユーザが前記所定の時間間隔の目安を入力できるようにする入力部を備えることが好ましい。   In order to improve usability, the toy preferably includes an input unit that allows the user to input a guide for the predetermined time interval.

同期化を容易にするために、所定の時間間隔は、1秒未満、又は1/2秒未満、又は1/4秒未満であることが好ましく、実質的に0秒であることがより好ましい。0秒の時間間隔を有することにより、玩具の行動が効果的に同期する。   In order to facilitate synchronization, the predetermined time interval is preferably less than 1 second, or less than 1/2 second, or less than 1/4 second, and more preferably substantially 0 second. Having a time interval of 0 seconds effectively synchronizes toy behavior.

行動は、音を発すること、光を発すること、及び動きのうちの少なくとも1つであることが好ましい。   The action is preferably at least one of emitting a sound, emitting light, and movement.

通信を効率良くするために、玩具は、前記少なくとも1つの他のこのような玩具と無線で通信するようにされた無線通信モジュールをさらに備えることが好ましい。この無線通信モジュールは、トリガ信号、対話に関する情報、及び玩具に関する情報のうちの少なくとも1つを送信することがより好ましい。   For efficient communication, the toy preferably further comprises a wireless communication module adapted to communicate wirelessly with the at least one other such toy. More preferably, the wireless communication module transmits at least one of a trigger signal, information about interaction, and information about toys.

前記対話に関する情報は、玩具が出力する行動、行動の持続時間、及び少なくとも1つの他の玩具がとるべき行動のうちの少なくとも1つを含むことが好ましい。   Preferably, the information related to the dialogue includes at least one of an action output by the toy, a duration of the action, and an action to be taken by at least one other toy.

メモリは、所定の対話を記憶するようになっていることが好ましい。   The memory is preferably adapted to store predetermined interactions.

プロセッサは、前記対話を疑似ランダムに決定するようになっていることが好ましい。   The processor is preferably adapted to determine the interaction pseudo-randomly.

より本物そっくりな対話のためには、前記玩具が生きているかのように対話するようになっていることが好ましい。前記対話は、会話、音声対話、対人対話、教育的対話、演奏、及びゲームプレイのうちの少なくとも1つであることが好ましい。前記玩具は、このような玩具のグループ内のメンバーとして対話するようになっていることが好ましい。前記グループは、音楽バンド、車のグループ、又は軍事資産のグループのうちの1つを表すことがより好ましい。前記トリガ信号を使用してグループの行動を同期させることがさらに好ましい。   For a more authentic dialogue, it is preferred that the toy interact as if it were alive. The dialogue is preferably at least one of conversation, voice dialogue, interpersonal dialogue, educational dialogue, performance, and game play. The toy is preferably adapted to interact as a member within such a group of toys. More preferably, the group represents one of a music band, a car group, or a group of military assets. More preferably, the trigger signal is used to synchronize group actions.

玩具は、別のこのような玩具からトリガ信号を受け取る手段をさらに備え、前記トリガ信号を使用して行動を開始する時点を決定することが好ましい。   Preferably, the toy further comprises means for receiving a trigger signal from another such toy and using the trigger signal to determine when to start the action.

前記玩具は、人形、ゲーム盤、乗り物、及び軍事資産のうちの1つであることが好ましい。   The toy is preferably one of a doll, a game board, a vehicle, and a military asset.

本発明のさらなる態様によれば、少なくとも1つの他の同じような玩具と対話するようになっている玩具で使用するためのコンピュータ可読メモリが提供され、該メモリは、行うべき行動を表す出力信号を生成するためのコードと、少なくとも1つの他のこのような玩具において受信して、前記玩具が自身の行動を終える前に前記少なくとも1つの他のこのような玩具が行動を起こすようにするためのトリガ信号を生成するためのコードとを含む命令セットを含む。本明細書で使用するコンピュータ可読メモリという用語は、コンピュータプログラム製品という用語を含む。   According to a further aspect of the invention, there is provided a computer readable memory for use with a toy that is adapted to interact with at least one other similar toy, the memory comprising an output signal representative of an action to be performed. And at least one other such toy received so that the at least one other such toy takes action before the toy finishes its action. And an instruction set including code for generating a trigger signal of The term computer readable memory as used herein includes the term computer program product.

コンピュータ可読メモリは、前記玩具が自身の行動を開始した後に所定の時間間隔で前記トリガ信号を生成するためのコードをさらに含むことが好ましい。   Preferably, the computer readable memory further includes code for generating the trigger signal at predetermined time intervals after the toy starts its action.

コンピュータ可読メモリは、前記玩具が自身の行動を終える前に所定の時間間隔で前記トリガ信号を生成するためのコードをさらに含むことが好ましい。   Preferably, the computer readable memory further includes code for generating the trigger signal at predetermined time intervals before the toy finishes its action.

コンピュータ可読メモリは、ユーザが前記所定の時間間隔の目安を入力できるようにするためのコードをさらに含むことが好ましい。   The computer readable memory preferably further includes code for allowing a user to input a measure of the predetermined time interval.

前記所定の時間間隔は、1秒未満、又は1/2秒未満、又は1/4秒未満であることが好ましく、実質的に0秒であることが好ましい。   The predetermined time interval is preferably less than 1 second, less than 1/2 second, or less than 1/4 second, and is preferably substantially 0 second.

前記行動は、音を発すること、光を発すること、及び動きのうちの少なくとも1つであることが好ましい。   It is preferable that the action is at least one of emitting sound, emitting light, and movement.

オーサリングツール
本発明のさらなる態様によれば、玩具のテーマ別データを作成するためのオーサリングツールが提供され、該オーサリングツールは、特定のテーマに関連するコンテンツを受信する手段と、前記コンテンツを処理して前記特定のテーマ内で前記玩具を動作させるための命令セットを生成する手段と、前記命令セットを出力する手段とを含む。玩具を動作させるための命令セットを生成する手段を提供することにより、テーマ別の命令を生成するプロセスを実質的により効率化することができる。
Authoring Tool According to a further aspect of the present invention, there is provided an authoring tool for creating thematic data for toys, the authoring tool processing means for receiving the content related to a particular theme; Means for generating an instruction set for operating the toy within the specific theme, and means for outputting the instruction set. By providing a means for generating a set of instructions for operating the toy, the process of generating thematic instructions can be substantially more efficient.

コンテンツを受信する効率性のために、前記受信手段は、特定のテーマに関連するスクリプトデータ及び前記玩具の性格を定義する表現データの両方を別個に含むコンテンツを受信するようになっていることが好ましい。前記受信手段は、コンテンツを別の部分の形で受信するようになっていることが好ましい。   For the efficiency of receiving content, the receiving means may receive content separately including both script data related to a specific theme and expression data defining the character of the toy. preferable. Preferably, the receiving means receives the content in the form of another part.

処理の効率性のために、オーサリングツールは、個々の表現データ部分に一意のID番号を割り当てる手段をさらに含むことが好ましい。前記処理手段は、前記命令セットにおいて前記表現データ部分への参照として前記一意のID番号を利用するようになっていることが好ましい。   For processing efficiency, the authoring tool preferably further includes means for assigning a unique ID number to each representation data portion. The processing means preferably uses the unique ID number as a reference to the expression data portion in the instruction set.

前記表現データは、テーマ名、玩具の名前、及び玩具が対話するために使用する文のうちの少なくとも1つを含むことが好ましい。   The expression data preferably includes at least one of a theme name, a toy name, and a sentence used by the toy to interact.

前記スクリプトデータは、テーマ内で対話できる玩具の数、対話方法、テーマ関連パラメータ、及び玩具関連パラメータのうちの少なくとも1つを含むことが好ましい。   The script data preferably includes at least one of the number of toys that can interact within the theme, the interaction method, theme related parameters, and toy related parameters.

処理の効率性のために、オーサリングツールは、特定のテーマに関連する前記スクリプトデータ及び表現データを共に配列の形で記憶する手段をさらに含むことが好ましい。前記処理手段は、前記配列から前記命令セットを生成するようになっていることがさらに好ましい。   For processing efficiency, the authoring tool preferably further includes means for storing both the script data and the expression data related to a particular theme in the form of an array. More preferably, the processing means generates the instruction set from the array.

処理の効率性のために、前記処理手段は、表現データの少なくとも一部を含む少なくとも1つのリストをコンパイルする手段を含むことが好ましい。前記リストコンパイル手段は、前記特定のテーマ内で玩具ごとにそれぞれのリストをコンパイルするようになっていることがさらに好ましい。   For processing efficiency, the processing means preferably includes means for compiling at least one list including at least a portion of the representation data. More preferably, the list compiling means compiles each list for each toy within the specific theme.

表現データはシンボルデータであることが好ましい。本明細書で使用するシンボルデータは、書かれた形の単語、音楽又は行動を意味する。   The expression data is preferably symbol data. As used herein, symbol data means words, music or actions in written form.

オーサリングツールは、シンボルデータの上演(enacted)データバージョンを記録する記録手段をさらに含むことが好ましい。本明細書で使用する上演データとは、上演される形の単語、音楽又は行動を意味するものである。   The authoring tool preferably further comprises recording means for recording an enacted data version of the symbol data. As used herein, performance data refers to words, music, or actions that are performed.

オーサリングツールは、関係者に上演データの必要な部分を生成するように促す手段を含むことが好ましい。   The authoring tool preferably includes means for prompting interested parties to generate the necessary portion of the performance data.

前記プロセッサは、シンボルデータと上演データとの間のルックアップテーブルを生成するようになっていることが好ましい。   Preferably, the processor is adapted to generate a look-up table between symbol data and performance data.

前記処理手段は、表現データを出力するようになっていることが好ましい。前記処理手段はさらに、表現データ及び命令セットを別個に出力するようになっていることがさらに好ましい。   The processing means preferably outputs expression data. More preferably, the processing means is further adapted to output the expression data and the instruction set separately.

前記処理手段は、玩具の基本機能を制御するための基本命令セットと、基本命令セットがテーマ内で玩具を制御するためのテーマ別命令セットとを含む命令セットを生成するようになっていることが好ましい。前記プロセッサは、前記基本命令セット及び前記テーマ別命令セットを共に組み合わせるようになっていることがさらに好ましい。   The processing means generates an instruction set including a basic instruction set for controlling basic functions of the toy and a thematic instruction set for controlling the toy within the theme. Is preferred. More preferably, the processor is adapted to combine both the basic instruction set and the thematic instruction set.

オーサリングツールは、コンパイラをさらに含むことが好ましい。前記プロセッサは、前記基本命令セット及び前記テーマ別命令セットをコンパイルするようになっていることがさらに好ましい。   The authoring tool preferably further includes a compiler. More preferably, the processor is adapted to compile the basic instruction set and the thematic instruction set.

前記プロセッサは、前記命令セットをコンピュータ可読コードに変換するようになっている符号化エンジンを含むことが好ましい。   The processor preferably includes an encoding engine adapted to convert the instruction set into computer readable code.

オーサリングツールの出力は、本明細書で説明するような会話エンジンで使用されるようになっていることが好ましい。   The output of the authoring tool is preferably adapted for use with a conversation engine as described herein.

玩具は、本明細書で説明するような玩具であることが好ましい。   The toy is preferably a toy as described herein.

本発明の第2の態様によれば、玩具のテーマ別データを作成するオーサリングツールのためのユーザインターフェイスが提供され、該ユーザインターフェイスは、各々がテーマに関連する特定のコンテンツのサブセットの入力に対応する入力ウィンドウのセットをユーザに提供する手段と、テーマ別データの出力を開始する手段とを含む。   According to a second aspect of the present invention, a user interface for an authoring tool for creating toy thematic data is provided, each user interface corresponding to input of a specific subset of content associated with the theme. Means for providing the user with a set of input windows to initiate, and means for initiating the output of thematic data.

前記コンテンツのサブセットは、テーマ関連データ、玩具関連データ及びコンテキスト関連データのうちの少なくとも1つを含むことが好ましい。   Preferably, the subset of content includes at least one of theme related data, toy related data and context related data.

コンテキスト関連データは、玩具が対話するために使用する文、対話方法、テーマ関連パラメータ及び玩具関連パラメータのうちの少なくとも1つを含むことが好ましい。   The context related data preferably includes at least one of a sentence used by the toy to interact, a dialogue method, a theme related parameter, and a toy related parameter.

受信手段は、テーマ全体又はテーマの本質的部分を含むコンテンツを1つの動作で受信するようになっていることが好ましい。コンテンツはフォーマット済みファイルの形であることがより好ましい。フォーマット済みファイルはテキストファイルであることがさらに好ましい。   Preferably, the receiving means is configured to receive content including the entire theme or an essential part of the theme in one operation. More preferably, the content is in the form of a formatted file. More preferably, the formatted file is a text file.

処理手段は、前記フォーマット済みファイルのコンテンツのみを使用して命令セットを生成することが好ましい。   Preferably, the processing means generates the instruction set using only the contents of the formatted file.

前記玩具関連パラメータは、次の対話する玩具を選択するための予め定めたルールに関する情報を含むことが好ましい。   The toy-related parameter preferably includes information on a predetermined rule for selecting a next toy to interact with.

前記対話方法は、タイミング関連パラメータを含むことが好ましい。前記タイミング関連パラメータは、次の玩具がいつ対話を行うかを決定することがより好ましい。前記タイミング関連パラメータは、現在の玩具の対話の開始から次の玩具の対話の開始までの時間遅延、及び次の玩具の対話の開始から現在の玩具の対話の終了前までの時間遅延の一方を含むことがさらに好ましい。   Preferably, the interaction method includes timing related parameters. More preferably, the timing related parameters determine when the next toy interacts. The timing-related parameter includes one of a time delay from the start of the current toy dialog to the start of the next toy dialog, and a time delay from the start of the next toy dialog to the end of the current toy dialog. It is further preferable to include it.

オーサリングツールは、ゲームに関するコンテンツを受信する手段をさらに含むことが好ましい。前記ゲームに関するコンテンツは、ゲームを実行できるようにするロジックを含むことがより好ましい。   The authoring tool preferably further includes means for receiving content related to the game. More preferably, the content related to the game includes logic that enables the game to be executed.

オーサリングツールは、本明細書で説明するような対話方法のいずれかを実施するようになっていることが好ましい。   The authoring tool is preferably adapted to perform any of the interaction methods as described herein.

本発明の第3の態様によれば、玩具のテーマ別データを生成するためのシステムが提供され、該システムは、テーマ別データにアクセスし、これを作成及び編集するオーサリングツールと、前記テーマ別データを記憶するためのデータベースを含むサーバとを備え、オーサリングツールは、インターネットを介してテーマ別データにアクセスするようになっている。   According to a third aspect of the present invention, there is provided a system for generating toy thematic data, the system accessing the thematic data, authoring tools for creating and editing it, and the thematic And a server including a database for storing data, and the authoring tool is adapted to access thematic data via the Internet.

オーサリングツールは、テーマ別データを処理して配列するようになっており、前記データベースは、前記テーマ別データを前記配列の形で記憶するようになっていることが好ましい。   It is preferable that the authoring tool processes and arranges the thematic data, and the database stores the thematic data in the form of the arrangement.

オーサリングツールは、本明細書で説明するようなオーサリングツールであることが好ましい。   The authoring tool is preferably an authoring tool as described herein.

オーサリングツールは、ユーザインターフェイスをさらに含むことが好ましい。ユーザインターフェイスは、本明細書で説明するようなインターフェイスであることがさらに好ましい。   The authoring tool preferably further includes a user interface. More preferably, the user interface is an interface as described herein.

USB通信ドングル
本発明のさらなる態様によれば、本明細書で説明するような少なくとも1つの玩具とコンピュータの間に無線通信を提供する装置が提供され、該装置は、装置をコンピュータに接続するための通信ポートと、コンピュータと前記又は各玩具との間にネットワークを確立する手段とを含み、コンピュータが別のこのような玩具であるかのように前記又は各玩具と通信できるようにする装置を提供する。
USB Communication Dongle According to a further aspect of the invention, there is provided an apparatus for providing wireless communication between at least one toy and a computer as described herein, the apparatus for connecting the apparatus to a computer. A communication port and means for establishing a network between the computer and the or each toy, so that the computer can communicate with the or each toy as if it were another such toy. provide.

前記装置は、コンピュータを仮想玩具として機能できるようにすることが好ましい。   The device preferably enables the computer to function as a virtual toy.

前記通信ポートはUSB通信ポートであることが好ましい。   The communication port is preferably a USB communication port.

前記ネットワークは無線であることが好ましい。   The network is preferably wireless.

本発明のさらに別の態様によれば、本明細書で説明するような少なくとも1つの玩具と、各々が本明細書で説明するような無線通信を行う装置を有する少なくとも1つのコンピュータとを備えたシステムが提供され、前記コンピュータと装置とを組み合わせることにより本明細書で説明するような玩具であるかのように機能する。   According to yet another aspect of the invention, there is provided at least one toy as described herein and at least one computer each having a device for wireless communication as described herein. A system is provided that functions as if it were a toy as described herein by combining the computer and apparatus.

前記コンピュータは、仮想玩具を提供するようになっている視覚及び音声出力を含むことが好ましい。仮想玩具は、アバターであることがさらに好ましい。   The computer preferably includes visual and audio output adapted to provide a virtual toy. More preferably, the virtual toy is an avatar.

コントローラ人形
本発明のさらに別の態様によれば、プロセッサと、該プロセッサに結合されたメモリと、前記プロセッサに結合された出力部と、少なくとも1つのさらなるこのような玩具とのネットワーク接続を確立する手段とを含む玩具が提供され、プロセッサは、ネットワーク接続が確立された各玩具の出力を制御する手段を含む。
Controller doll According to yet another aspect of the present invention, a network connection is established between a processor, a memory coupled to the processor, an output coupled to the processor, and at least one further such toy. And a processor includes means for controlling the output of each toy with which a network connection has been established.

前記制御手段は、ネットワーク接続が確立された各玩具の複数の出力(好ましくは全ての出力)を制御する命令をネットワーク接続を介して送信するようになっていることが好ましい。   It is preferable that the control means is configured to transmit a command for controlling a plurality of outputs (preferably all outputs) of each toy for which a network connection has been established via the network connection.

前記ネットワーク接続が、パーソナルエリアネットワークの一部を形成することが好ましい。   The network connection preferably forms part of a personal area network.

前記メモリは、データの少なくとも1つのグループを記憶するようになっており、個々の前記少なくとも1つのグループは特定のテーマを表すことが好ましい。   The memory is adapted to store at least one group of data, and each said at least one group preferably represents a particular theme.

玩具は、前記メモリに記憶された少なくとも1つのテーマを決定する手段をさらに含むことが好ましい。   The toy preferably further comprises means for determining at least one theme stored in the memory.

前記玩具は、別の玩具との接続を、前記メモリに記憶された少なくとも1つのテーマが両玩具において同じである場合にのみ確立するようになっていることが好ましい。   Preferably, the toy establishes a connection with another toy only if at least one theme stored in the memory is the same in both toys.

前記制御手段は、制御メッセージを送信/受信して個々の前記玩具の出力を制御するようになっていることが好ましく、制御メッセージは、対象の玩具のID及びコマンドセグメントを含むことが好ましく、発信元玩具のID及び/又はメッセージIDをさらに含むことがより好ましい。   Preferably, the control means is adapted to send / receive control messages to control the output of each individual toy, the control message preferably including the ID and command segment of the subject toy, More preferably, it further includes the ID and / or message ID of the original toy.

前記制御メッセージは、参照データベースにアクセスしてタスクを実行する命令を含むことが好ましい。   The control message preferably includes an instruction to access a reference database and execute a task.

プロセッサは、前記送信/受信された制御メッセージの確認応答を送信/受信する手段を含むことが好ましく、前記送信/受信手段は、確認応答を受信しない場合に制御メッセージを再送するよう要求するようになっていることが好ましい。   The processor preferably includes means for transmitting / receiving an acknowledgment of the transmitted / received control message, wherein the transmitting / receiving means requests to resend the control message if no acknowledgment is received. It is preferable that

前記送信/受信手段は、このような玩具が制御メッセージに基づいて出力を生成するのに掛かるであろう時間に関連するパラメータを送信するようになっていることが好ましく、発信元玩具は、さらなる制御メッセージを送信するまで前記パラメータに関連する時間の間待機することが好ましい(このような玩具がこのような出力を生成するのに掛かる時間は、例えば玩具のテーマ又はサブテーマにより様々であってもよい)。   Said transmitting / receiving means is preferably adapted to transmit a parameter relating to the time that such toy will take to generate an output based on a control message, It is preferable to wait for the time associated with the parameter before sending a control message (the time it takes for such a toy to generate such output varies, for example depending on the theme or sub-theme of the toy Also good).

プロセッサが、再送信制御メッセージの数をカウントする手段を含み、これにより前記制御メッセージの確認応答を行わない前記玩具との通信が、1,000〜2,000回、2,000〜5,000回、5,000〜10,000回又はそれ以上の試行後に停止されることが好ましい。   The processor includes means for counting the number of retransmission control messages, so that communication with the toy that does not acknowledge the control message is performed 1,000 to 2,000 times, 2,000 to 5,000. Preferably, it is stopped after 5,000, 10,000, or more trials.

前記プロセッサは、前記玩具間の会話を構築するようになっている会話エンジンをさらに含むことが好ましい。   Preferably, the processor further includes a conversation engine adapted to construct a conversation between the toys.

さらなるこのような玩具は、最初のこのような玩具と同一又は実質的に同一であることが好ましい。従って、「スポークハブ」構成は不要である。   The further such toy is preferably identical or substantially identical to the first such toy. Thus, a “spoke hub” configuration is not required.

前記ネットワークを確立する手段はネットワークコントローラであることが好ましく、Zigbeeプロトコルを利用するネットワークコントローラであることが好ましい。   The means for establishing the network is preferably a network controller, and is preferably a network controller using the Zigbee protocol.

パラメータ記憶
玩具は、別のこのような玩具と対話するようになっており、前記プロセッサは、前記対話に関連する少なくとも1つの変数を定義する手段と、前記変数をメモリに記憶する手段と、前記変数を使用して前記玩具の(対話型)出力を制御する手段とを含むことが好ましい。
The parameter storage toy is adapted to interact with another such toy, the processor comprising means for defining at least one variable associated with the interaction, means for storing the variable in memory, And means for controlling the (interactive) output of the toy using variables.

本発明のさらに別の態様によれば、別のこのような玩具と対話するようになっている玩具が提供され、該玩具は、プロセッサと、該プロセッサに結合されたメモリと、前記プロセッサに結合された出力部とを備え、前記プロセッサは、前記対話に関連する少なくとも1つの変数を定義する手段と、前記変数をメモリに記憶する手段と、前記玩具の(対話型)出力に関連して変数を使用する手段とを含む(この結果より効率的に対話の経過を追い続けることが好ましい)。   According to yet another aspect of the invention, a toy is provided that is adapted to interact with another such toy, the toy being coupled to a processor, a memory coupled to the processor, and the processor. Output means, wherein the processor defines means for defining at least one variable associated with the interaction, means for storing the variable in memory, and a variable associated with the (interactive) output of the toy. (It is preferable to keep track of the dialogue more efficiently as a result of this).

前記変数を複数回(より好ましくは数えきれないほど)使用して出力を制御することが好ましい。   It is preferable to control the output by using the variable a plurality of times (more preferably, it cannot be counted).

前記変数を使用して、前記対話の回数、種類又は性質を決定することが好ましく、前記変数が前記対話であることが好ましい。   Preferably, the variable is used to determine the number, type or nature of the interaction, and the variable is preferably the interaction.

前記変数は、ランダムに又は疑似ランダム的に選択され、前記ランダム選択は重み付けにより影響されることが好ましい。   The variables are preferably selected randomly or pseudo-randomly, and the random selection is influenced by weighting.

玩具は、対話を生成する手段をさらに含むことが好ましい。対話を生成する手段は、記憶パラメータに基づいて対話を生成するようになっていることが好ましい。   The toy preferably further comprises means for generating a dialogue. Preferably, the means for generating a dialog is adapted to generate a dialog based on the stored parameters.

記憶手段は、各変数を玩具と関連づけることが好ましい。   The storage means preferably associates each variable with a toy.

記憶手段は、玩具内に位置するメモリであることが好ましい。   The storage means is preferably a memory located in the toy.

変数を使用する手段は、記憶手段から変数にアクセスするようになっていることが好ましい。   Preferably, the means for using the variable is adapted to access the variable from the storage means.

前記対話は、玩具間の通信であることが好ましい。   The dialogue is preferably communication between toys.

前記変数は、発話で利用される単語又は語句であることが好ましい。   The variable is preferably a word or phrase used in speech.

性格の表現及びテーマのスクリプト記述
前記プロセッサは、前記メモリにテーマ別データを記憶するようになっており、前記テーマはスクリプトデータ及び表現データを含み、前記表現データが前記玩具の性格を定義することが好ましい。
Personality expression and theme script description The processor stores theme data in the memory, the theme includes script data and expression data, and the expression data defines the character of the toy. Is preferred.

本発明のさらに別の態様によれば、プロセッサと、該プロセッサに結合されたメモリと、前記プロセッサに結合された出力部とを備えた玩具が提供され、前記プロセッサは、前記メモリにテーマ別データを記憶するようになっており、前記テーマはスクリプトデータ及び表現データを含み、前記表現データが玩具の性格を定義する(この結果、複数のテーマ別の玩具の性格がより効率的に提供されることが好ましい)。   According to yet another aspect of the present invention, there is provided a toy comprising a processor, a memory coupled to the processor, and an output coupled to the processor, the processor storing the thematic data in the memory. The theme includes script data and expression data, and the expression data defines the character of the toy (as a result, a plurality of theme toys are provided more efficiently. Preferably).

玩具は、少なくとも1つの他の同様の玩具と対話するようになっており、前記スクリプトデータが個々のこのような玩具により共有され、前記表現データが個々のこのような玩具間で異なることが好ましい。   The toy is adapted to interact with at least one other similar toy, preferably the script data is shared by each such toy and the representation data is different between each such toy. .

前記スクリプトデータは、前記表現データとは無関係であることが好ましい。   The script data is preferably unrelated to the expression data.

プロセッサは、別のこのような玩具に制御メッセージとしてスクリプトデータを出力するようになっており、制御メッセージに個々の表現データで応答するようになっていることが好ましい。   The processor is preferably adapted to output script data as control messages to another such toy and to respond to the control messages with individual expression data.

スクリプトデータは、各玩具ごとに同じものであり、各玩具の出力を制御することが好ましい。   The script data is the same for each toy, and it is preferable to control the output of each toy.

プロセッサは、スクリプトデータを利用して表現データを参照するようになっていることが好ましく、表現データは、異なるコンテンツを使用して同じ情報を通信することが好ましい。   The processor preferably uses script data to refer to the expression data, and the expression data preferably communicates the same information using different content.

玩具の性格は、通信のコンテンツにより定義されることが好ましい。   The personality of the toy is preferably defined by the content of communication.

人形の選択
プロセッサは、対話するための玩具を予め定めたルールに基づいて選択する手段を含むことが好ましい。
Doll Selection The processor preferably includes means for selecting toys for interaction based on predetermined rules.

本発明のさらに別の態様によれば、他のこのような玩具と対話するようになっている玩具が提供され、該玩具は、プロセッサと、該プロセッサに結合されたメモリと、前記プロセッサに結合された出力部とを備え、前記プロセッサは、対話する玩具を予め定めたルールに基づいて選択する手段を含み、前記選択される玩具は発信元玩具であってもよい。   In accordance with yet another aspect of the invention, a toy is provided that is adapted to interact with other such toys, the toy coupled to a processor, a memory coupled to the processor, and the processor. And the processor includes means for selecting a toy to interact based on a predetermined rule, and the selected toy may be a calling toy.

前記選択手段は、次の対話する玩具を選択するようになっていることが好ましい。   It is preferable that the selection means is adapted to select a toy for the next dialogue.

前記予め定めたルールは、直接選択、ランダム選択、及び現在の対話玩具を選択して再び対話することを含むことが好ましい。   The predetermined rule preferably includes direct selection, random selection, and selecting a current interactive toy and interacting again.

プロセッサは、選択された玩具のID及び好ましくは発信元玩具のIDを含む制御メッセージを出力するようになっていることが好ましい。   The processor is preferably adapted to output a control message including the ID of the selected toy and preferably the ID of the originating toy.

前記対話は通信を含むことが好ましく、該通信は発話及び指示を含むことが好ましい。   The dialogue preferably includes communication, and the communication preferably includes speech and instructions.

ゲームのプレイ
玩具は、他の同様の玩具とゲームをプレイすることに適した生きているものの形をとり、前記プロセッサはゲームエンジンを含み、該ゲームエンジンは、前記玩具が生きているかのようにゲームをプレイ可能にするようになっていることが好ましい。
Game Play Toys take the form of living things suitable for playing games with other similar toys, the processor including a game engine, which game engine is as if the toy is alive. It is preferable that the game can be played.

本発明のさらに別の態様によれば、他の同様の玩具とゲームをプレイすることに適した生命があるものの形をした玩具が提供され、該玩具は、プロセッサと、該プロセッサに結合されたメモリと、前記プロセッサに結合された出力部とを含み、前記プロセッサは、個々の前記玩具を関連する生きているものであるかのようにゲームできるようにするゲームエンジンを含む。   In accordance with yet another aspect of the invention, there is provided a toy in the form of a life suitable for playing games with other similar toys, the toy being coupled to the processor and the processor. Including a memory and an output coupled to the processor, the processor including a game engine that allows each of the toys to be played as if they were associated living things.

前記ゲームエンジンは、人間のゲームを可能にするようになっていることが好ましい。   The game engine is preferably adapted to allow human games.

前記人間のゲームは、ゲーム機器でプレイされることが好ましい。   The human game is preferably played on a game machine.

前記ゲームエンジンは、人間がゲーム機器を調整してゲームをプレイできるようにする命令を出力するようになっていることが好ましい。   Preferably, the game engine is configured to output a command that allows a human to adjust a game device to play a game.

前記玩具は、少なくとも1つのさらなるこのような玩具と通信する手段をさらに含むことが好ましい。   The toy preferably further comprises means for communicating with at least one further such toy.

前記ゲームエンジンはさらに、ルールに基づいたゲームをプレイするようになっていることが好ましい。   Preferably, the game engine is adapted to play a game based on rules.

前記ゲームエンジンは、前記メモリにゲームに関する情報を記憶するようになっていることが好ましい。   It is preferable that the game engine is configured to store information relating to the game in the memory.

前記情報はゲームのルールを含むことが好ましい。   The information preferably includes game rules.

前記情報は、少なくとも1つのプレイボードのレイアウトをさらに含むことが好ましい。   Preferably, the information further includes a layout of at least one playboard.

前記ゲームエンジンは、仮想サイコロになっている乱数発生器を含むことが好ましい。   The game engine preferably includes a random number generator that is a virtual dice.

ゲームエンジンは、ゲームに関する外部入力を受信する手段を含むことが好ましい。   The game engine preferably includes means for receiving external inputs relating to the game.

前記外部入力は、ゲームの駒に関連付けられることが好ましい。   The external input is preferably associated with a game piece.

前記外部入力は、プレイボード内の少なくとも1つのセンサであることが好ましい。   The external input is preferably at least one sensor in the playboard.

前記外部入力は、玩具のユーザが使用するようになっているスイッチであることが好ましい。   Preferably, the external input is a switch adapted for use by a toy user.

前記ルールに基づくゲームは、ヘビとはしご及びルードを含むことが好ましい。   The game based on the rules preferably includes a snake, a ladder, and a roodo.

前記出力は変換器であることが好ましい。前記変換器はスピーカであることが好ましい。前記変換器はアクチュエータであることが好ましい。   The output is preferably a converter. The converter is preferably a speaker. The transducer is preferably an actuator.

本発明のさらに別の態様によれば、複数のこのような玩具を含む組み合わせが提供される。   According to yet another aspect of the invention, a combination comprising a plurality of such toys is provided.

前記複数の玩具の各々の1つが他の前記玩具を制御する手段を含むことにより、1つの玩具のみが他の前記玩具を同時に制御することが好ましい。   Preferably, only one toy controls the other toys at the same time, with each one of the plurality of toys including means for controlling the other toys.

前記メモリは、ゲームの状態に関連する情報を記憶するようになっていることが好ましい。ゲーム状態は、プレイボードのレイアウト、プレイボード上の少なくとも1つのカウンタの位置、玩具及び/又はユーザの全てに関するプレイの順序の少なくとも1つであってもよい。   The memory preferably stores information related to a game state. The game state may be at least one of a playboard layout, a position of at least one counter on the playboard, a toy and / or an order of play for all of the users.

人形固有のダウンロード
本発明のさらに別の態様によれば、複数の玩具にテーマ別データを提供する装置が提供され、該装置は、各々が複数のサブテーマを含む前記テーマ別データを記憶する手段と、特定の玩具を識別する手段と、特定の玩具に基づいてサブテーマを選択する手段と、前記玩具に対して前記特定のサブテーマを出力する手段とを含む(この結果、テーマ別ダウンロードへのアクセスがより効率的に達成されることが好ましい)。
Doll-specific download According to yet another aspect of the present invention, there is provided an apparatus for providing theme data to a plurality of toys, the apparatus storing said theme data each including a plurality of sub-themes Means for identifying a specific toy, means for selecting a sub-theme based on the specific toy, and means for outputting the specific sub-theme for the toy (as a result, download to the theme) Is preferably achieved more efficiently).

玩具は、複数の異なるテーマを記憶する手段をさらに含むことが好ましい。   The toy preferably further comprises means for storing a plurality of different themes.

玩具は、ユーザが複数のテーマのうちの1つを選択できるようにする手段をさらに含むことが好ましい。   The toy preferably further includes means for allowing the user to select one of a plurality of themes.

前記特定の玩具を特定する手段は、前記玩具の一意の識別番号を使用することが好ましい。   The means for specifying the specific toy preferably uses a unique identification number of the toy.

玩具は、前記玩具に関連するパラメータに基づいて個々の前記サブテーマを暗号化する手段をさらに含むことが好ましい。前記パラメータは玩具の一意の識別番号であることが好ましい。   The toy preferably further comprises means for encrypting the individual sub-themes based on parameters associated with the toy. The parameter is preferably a unique identification number of the toy.

装置は、プロセッサと、テーマ別データを記憶するとともに特定の玩具を識別する関連メモリとを含むことが好ましい。   The apparatus preferably includes a processor and associated memory for storing thematic data and identifying a particular toy.

装置は、玩具にサブテーマを出力するための接続部をさらに含むことが好ましい。接続部は、インターネット及びUSBケーブルを含むことが好ましい。   The device preferably further includes a connection for outputting the sub-theme to the toy. The connection unit preferably includes the Internet and a USB cable.

会話エンジン
本発明のさらに別の態様によれば、玩具などの装置のための会話エンジンが提供され、該会話エンジンは、会話のテーマを選択し、複数の起点から起点をランダムに選択し、変数に基づいて語句をランダムに選択し、変数に基づいて次の発話者をランダムに選択する手段を含む。
Conversation Engine According to yet another aspect of the present invention, there is provided a conversation engine for a device such as a toy, wherein the conversation engine selects a conversation theme, randomly selects a starting point from a plurality of starting points, a variable And a means for randomly selecting a phrase based on, and randomly selecting the next speaker based on a variable.

前記語句選択はさらに、重み付けに基づくことが好ましい。   The word selection is further preferably based on weighting.

玩具は、会話エンジンを組み込むことが好ましい。   The toy preferably incorporates a conversation engine.

玩具又は会話エンジンは、ユーザから入力データを受信するようになっていることが好ましい。   The toy or conversation engine is preferably adapted to receive input data from the user.

玩具又は会話エンジンは、ユーザにデータを出力するようになっていることが好ましい。   The toy or conversation engine is preferably adapted to output data to the user.

会話エンジンはさらに、ユーザからの入力データをランダム選択処理の形で利用するようになっていることが好ましい。   The conversation engine preferably further uses input data from the user in the form of a random selection process.

会話エンジンは、選択動作を実行するようになっているプロセッサを含むことが好ましい。   The conversation engine preferably includes a processor adapted to perform the selection operation.

玩具又は会話エンジンは、会話をリアルタイムに構築するようになっていることが好ましい。   The toy or conversation engine is preferably adapted to construct a conversation in real time.

玩具又は会話エンジンは、会話を前処理するようになっていることが好ましい。玩具又は会話エンジンはさらに、前処理済みの会話を出力するようになっていることが好ましい。   The toy or conversation engine is preferably adapted to preprocess the conversation. Preferably, the toy or conversation engine is further adapted to output a preprocessed conversation.

玩具又は会話エンジンは、会話を構築する際に、確立されたネットワーク内に存在する他の玩具のパラメータを変数として利用するようになっていることが好ましい。   The toy or conversation engine preferably uses the parameters of other toys that exist in the established network as variables when constructing the conversation.

玩具又は会話エンジンは、重み付けに基づいてデータを出力するようになっていることが好ましい。   The toy or conversation engine is preferably adapted to output data based on weighting.

玩具は、複数組のテーマ別データを記憶するようになっていることが好ましい。玩具はさらに、1つの会話中に複数組のテーマ別データのうちの少なくとも2つを利用するようになっていることが好ましい。   The toy preferably stores a plurality of sets of thematic data. Preferably, the toy is further adapted to utilize at least two of a plurality of sets of thematic data during one conversation.

玩具は、好ましくは2、3、4又はそれ以上の複数の他のこのような玩具とネットワークを確立できるようになっていることが好ましい。   The toy is preferably adapted to establish a network with a plurality of other such toys, preferably 2, 3, 4 or more.

玩具は、生きているようになっていることが好ましい。   The toy is preferably alive.

玩具は、他のこのような玩具と通信するようになっており、前記通信は、発話、行動及びジェスチャを含むことが好ましい。   The toy is adapted to communicate with other such toys, and the communication preferably includes speech, action and gestures.

玩具又は会話エンジンは、以下の特徴の1つ、いくつか、又は全てをいずれかの組合せで有することが好ましい。
・子供が玩具と対話式に遊ぶことができる
・オンザフライで構築される会話
・会話を開始する前に会話が前処理される
・会話がネットワーク内に存在する人形に基づく
・会話がネットワーク内に存在する人形の種類に基づく
・会話の長さ及び方向性の制御に使用される重み付け
・会話の半ばでテーマを切り替える能力
・2、3又はそれ以上の玩具
・玩具は生きているもの/人間/人形である
・対話は通信を含み、通信は広い意味で定められる
The toy or conversation engine preferably has one, some or all of the following features in any combination.
・ Children can play interactively with toys ・ Conversations built on-the-fly ・ Conversations are pre-processed before the conversation starts ・ Conversations are based on dolls that exist in the network ・ Conversations exist in the network Based on the type of doll to be used-Weighting used to control the length and direction of conversation-Ability to switch themes in the middle of conversation-2, 3 or more toys-Toys are alive / human / doll Dialogue includes communication, and communication is defined in a broad sense

要約すると、本発明は特に以下の発明に言及するものである。
・オーサリングツール〜玩具が読み込み可能なプログラムコードにコンパイルされる会話データを入力する機能を提供する。
・USB通信ドングル〜玩具とPCとの間の通信を可能にする装置を提供する。
・コントローラ人形〜3以上の人形であり、単一のコントローラとして最初に電源が入った人形を使用して制御が行われる。
・性格の表現〜人形の性格要素に基づいて、同じテーマが異なる表現を有する。
・テーマのスクリプト作成〜テーマは、ダウンロード可能な表現の組合せであり、スクリプト/スクリプト及び表現は、異なるテーマごとに不可欠な/異なるスクリプトである。
・パラメータ記憶〜現在の会話に関する情報を記憶する能力、例えば、「私の犬はFluffyと言います」という語句では、人形がその会話内の情報(ペット=「犬」及びペットの名前=「fluffy」)を後で使用するために記憶する。
・人形固有のダウンロード〜ウェブサイトダウンロードのみが、特定の性格に関する特定の言語を表現として有し、性格に従って表現がダウンロードされる。
・会話の構造〜人形は、関連する発話で応答するか、別の人形を選択して話しかけるか、或いは自分自身について何かを発表するかのいずれかを選択する。
・人形の選択〜コントローラは、次にどの人形が発話するかをランダムに決定し、ランダムに選択するものの、人形は2回続けて発話することができず、或いは特定の人形を名前で選択することもできない。
・ゲームのプレイ〜人形は人間のようにゲームをプレイする。
In summary, the present invention specifically refers to the following inventions.
Authoring tool-Provides a function to input conversation data that is compiled into a program code that can be read by a toy.
USB communication dongle-provides a device that enables communication between a toy and a PC.
Controller doll-3 or more dolls, and control is performed using a doll that is first turned on as a single controller.
-Character expression-The same theme has different expressions based on the personality elements of the doll.
Theme script creation-theme is a combination of downloadable expressions, and the scripts / scripts and expressions are indispensable / different scripts for different themes.
Parameter storage—the ability to store information about the current conversation, for example, the phrase “My dog says Fluffy”, where the doll has information in the conversation (pet = “dog” and pet name = “fluffy” ') For later use.
Only doll-specific downloads to website downloads have a specific language related to a specific character as an expression, and the expression is downloaded according to the character.
Conversational structure-The doll chooses to either respond with a related utterance, select another doll to speak, or announce something about themselves.
-Doll selection-The controller randomly determines which doll will speak next, and randomly selects it, but the doll cannot speak twice in succession or selects a specific doll by name I can't do that either.
-Game play-Dolls play games like humans.

本発明は、データ処理装置で実行された場合、構成要素の段階のいずれか又は全てを含む本明細書で説明する方法のいずれかを実行するようになっているコンピュータプログラム及びソフトウェアコードを含むコンピュータプログラム製品も提供する。   The present invention is a computer comprising a computer program and software code adapted to perform any of the methods described herein including any or all of the component steps when executed on a data processing apparatus. Program products are also provided.

本発明は、データ処理装置で実行された場合、本明細書で説明する装置の特徴のいずれかを含むコンピュータプログラム及びソフトウェアコードを含むコンピュータプログラム製品も提供する。   The present invention also provides a computer program product comprising a computer program and software code comprising any of the device features described herein when executed on a data processing device.

本発明は、本明細書で説明する方法のいずれかを実行し及び/又は本明細書で説明する装置の特徴のいずれかを具体化するコンピュータプログラム及びコンピュータプログラムをサポートするオペレーティングシステムを有するコンピュータプログラム製品も提供する。   The present invention is a computer program having a computer program for performing any of the methods described herein and / or embodying any of the features of the apparatus described herein and an operating system supporting the computer program. Products are also provided.

本発明は、上述したようなコンピュータプログラムを記憶したコンピュータ可読媒体も提供する。   The present invention also provides a computer readable medium storing a computer program as described above.

本発明は、上述したようなコンピュータプログラムを保持する信号及びこのような信号を送信する方法も提供する。   The present invention also provides a signal holding a computer program as described above and a method for transmitting such a signal.

本発明は、実質的に添付図面を参照しながら本明細書で説明するような方法及び/又は装置にまで及ぶ。   The present invention extends to methods and / or apparatus substantially as herein described with reference to the accompanying drawings.

装置及び方法の特徴は適宜入れ替えることができ、また互いに独立して提供することができる。本発明の1つの態様におけるあらゆる特徴を、本発明の他の態様にあらゆる適当な組合せで適用することができ、同様に1つの本発明におけるあらゆる特徴を、本発明の他の態様にあらゆる適当な組合せで適用することができる。例えば、方法の態様を装置の態様に適用することができ、この逆もまた可能である。この場合も、例えば「コントローラ人形」のあらゆる特徴を「パラメータ記憶」のあらゆる特徴に適用することができる。   The features of the apparatus and method can be interchanged as appropriate and can be provided independently of each other. Any feature in one aspect of the invention may be applied in any suitable combination to other aspects of the invention, and similarly any feature in one invention may be applied to any other aspect of the invention. Can be applied in combination. For example, method aspects can be applied to apparatus aspects and vice versa. Again, for example, any feature of the “controller doll” can be applied to any feature of the “parameter store”.

さらに、ハードウェアで実行される特徴をソフトウェアで実行することができ、この逆もまた可能である。本明細書におけるソフトウェア及びハードウェアの特徴へのあらゆる言及については、以上に従って解釈すべきである。   Furthermore, features implemented in hardware can be implemented in software and vice versa. Any reference to software and hardware features herein should be construed accordingly.

本明細書では、「〜する手段」に機能をプラスした用語の使用は、この機能を実行するようになっている適当なハードウェアコンポーネント(例えば、プロセッサ及び/又はメモリ)と置き換えることができる。   As used herein, the use of a term plus “function to” can be replaced by a suitable hardware component (eg, processor and / or memory) adapted to perform this function.

以下、ほんの一例として、本発明の様々な実施形態について添付図面を参照しながら説明する。   In the following, various embodiments of the present invention will be described by way of example only with reference to the accompanying drawings.

3種類の人形を示す図である。It is a figure which shows three types of dolls. 人形の概略図である。It is the schematic of a doll. スレーブ玩具を含むコントローラ玩具の概略図である。It is the schematic of the controller toy containing a slave toy. 人形にテーマ/サブテーマをダウンロードできる、ウェブサイトに接続された人形の概略図である。FIG. 2 is a schematic diagram of a doll connected to a website where a theme / sub-theme can be downloaded to the doll; ゲームをプレイするようになっている人形の概略図である。It is the schematic of the doll which comes to play a game. ゲームをプレイする処理のフロー図である。It is a flowchart of the process which plays a game. 代替実施形態の概略図である。FIG. 6 is a schematic diagram of an alternative embodiment. プロセッサ及び関連する電子機器の回路図の実施形態である。1 is an embodiment of a circuit diagram of a processor and associated electronic equipment. プロセッサ及び関連する電子機器の回路図の実施形態である。1 is an embodiment of a circuit diagram of a processor and associated electronic equipment. プロセッサ及び関連する電子機器の回路図の実施形態である。1 is an embodiment of a circuit diagram of a processor and associated electronic equipment. プロセッサ及び関連する電子機器の回路図の代替実施形態である。2 is an alternative embodiment of a circuit diagram of a processor and associated electronics. プロセッサ及び関連する電子機器の回路図の代替実施形態である。2 is an alternative embodiment of a circuit diagram of a processor and associated electronics. プロセッサ及び関連する電子機器の回路図の代替実施形態である。2 is an alternative embodiment of a circuit diagram of a processor and associated electronics. オーサリングツールサーバと通信しているユーザPCを示す図である。It is a figure which shows the user PC which is communicating with an authoring tool server. オーサリングツール及び関連システムの概要を示す図である。It is a figure which shows the outline | summary of an authoring tool and a related system. 会話デザイナーウィンドウを示す図である。It is a figure which shows a conversation designer window. テーマ生成ウィンドウを示す図である。It is a figure which shows a theme production | generation window. データ入力したテーマ生成ウィンドウを示す図である。It is a figure which shows the theme production | generation window which input data. テーマ生成ウィンドウの代替の実施形態を示す図である。FIG. 6 illustrates an alternative embodiment of a theme generation window. テキストファイルインポート機能のフロー図である。It is a flowchart of a text file import function. 人形追加ウィンドウを示す図である。It is a figure which shows a doll addition window. 人形作成ウィンドウを示す図である。It is a figure which shows a doll creation window. 人形コンテキストウィンドウを示す図である。It is a figure which shows a doll context window. 会話入力ウィンドウを示す図である。It is a figure which shows a conversation input window. 会話入力ウィンドウの代替の実施形態示す図である。FIG. 6 illustrates an alternative embodiment of a conversation input window. 複数の人形と通信しているUSBドングルを示す図である。It is a figure which shows the USB dongle which is communicating with several dolls. 2体の人形及び行動のタイムラインの概略図である。It is the schematic of two dolls and the timeline of action. 別の人形をトリガするための様々なタイミング例を示す図である。It is a figure which shows the various timing examples for triggering another doll. 別の人形をトリガするための様々なタイミング例を示す図である。It is a figure which shows the various timing examples for triggering another doll. 別の人形をトリガするための様々なタイミング例を示す図である。It is a figure which shows the various timing examples for triggering another doll.

図1は3種類の人形を示す図であり、10はテニスをしている人形、20はバレリーナ人形、30は犬の散歩中を示す一般的な人形、及び40は戦車の形をした玩具である。一般に、玩具は生きているように見えるようになっており、特に戦車などの場合は、人間のように又は人間が制御しているように見えるようになっている。図示の4つの玩具は、テーマ別玩具の種類の例である。玩具は、テーマ内の他のこのような玩具と無線で通信するようになっている。   FIG. 1 is a diagram showing three kinds of dolls, 10 is a tennis doll, 20 is a ballerina doll, 30 is a general doll during a dog walk, and 40 is a tank-shaped toy. is there. In general, a toy appears to be alive, particularly in the case of a tank or the like, as if it were a human being or controlled by a human being. The four toys shown in the figure are examples of types of toys by theme. The toy is adapted to communicate wirelessly with other such toys in the theme.

以下の説明は、他のこのような玩具と通信できるようにされた人形などの玩具に関するものであり、人形は、人形間で発話を調整するようになっている。別の実施形態では、玩具は戦車又は別のこのような車両であり、この場合も、人形間の発話の代わりに戦車が他のこのような戦車と無線で通信して戦車の挙動を調整するようになっている。   The following description relates to toys such as dolls that are adapted to communicate with other such toys, which are adapted to coordinate utterances between dolls. In another embodiment, the toy is a tank or another such vehicle, and again the tank communicates with other such tanks wirelessly to adjust the tank's behavior instead of utterances between dolls. It is like that.

図2は人形の概略図を示しており、人形が通信を行って他のこのようなタスクを実行できるようにするために必要なハードウェアコンポーネントを含む。図2に示すように、人形100は、無線モジュール104を含むプロセッサ102を含む。プロセッサは、メモリ106、ROM108及びRAM110と通信している。IR/RF送信機/受信機がプロセッサ/無線モジュールに接続され、他のこのような人形との間で信号を送信/受信できるようにされる。人形はスピーカ114にも接続される。USBコントローラ116を使用してメモリ106を更新し、充電器回路118を介して電池120の充電も行う。或いは、人形は、充電式電池ではなく交換式電池を使用するようにされる。   FIG. 2 shows a schematic diagram of the doll and includes the hardware components necessary to allow the doll to communicate and perform other such tasks. As shown in FIG. 2, the doll 100 includes a processor 102 that includes a wireless module 104. The processor is in communication with the memory 106, ROM 108 and RAM 110. An IR / RF transmitter / receiver is connected to the processor / wireless module so that signals can be transmitted / received to / from other such dolls. The doll is also connected to the speaker 114. The memory 106 is updated using the USB controller 116 and the battery 120 is also charged via the charger circuit 118. Alternatively, the doll is made to use a replaceable battery rather than a rechargeable battery.

メモリ106は、人形が行うことができる会話に関する情報を記憶し、プロセッサが発話をコンパイルしているときにプロセッサによりアクセスされる。ROM108を使用して、人形の名前及びID番号などの人形に関する恒久的情報を記憶する。この情報は、人形のネットワークを設定するときの初期化手順において使用される。RAM110は、現在の会話に関する情報を記憶し、例えばすでに使用された語句に関する情報を記憶することにより現実的な会話を作成するために使用される。   Memory 106 stores information about the conversations that a doll can have and is accessed by the processor when the processor is compiling the utterance. ROM 108 is used to store permanent information about the doll such as the name and ID number of the doll. This information is used in the initialization procedure when setting up the doll network. The RAM 110 stores information related to the current conversation, and is used, for example, to create a realistic conversation by storing information related to words that have already been used.

個々の人形100は、メモリ106内に、人形の名前を含むデータセット及び会話中に定義されるその他の変数、会話を作成する命令セット、及び音声データセットを含む。会話中に定義される変数は、コントローラ人形にのみ記憶される。   Each doll 100 includes in memory 106 a data set that includes the name of the doll and other variables defined during the conversation, an instruction set for creating the conversation, and an audio data set. Variables defined during the conversation are stored only in the controller doll.

1つの実施形態では、プロセッサが、関連する(SDカードなどの)メモリインターフェイスを伴ってMP3復号で使用されるような形をとる。この実施形態は、かなりの量の処理能力(及びハードウェアベースの圧縮技術)を提供し、従って人形間の長く詳細な会話を可能にする。   In one embodiment, the processor takes the form as used in MP3 decoding with an associated memory interface (such as an SD card). This embodiment provides a significant amount of processing power (and hardware-based compression techniques), thus allowing long and detailed conversations between dolls.

コントローラ人形
図3でわかるように、コントローラユニット200がいくつかのスレーブユニット(202)と通信している。コントローラは、会話エンジン204と、発話コンパイラ206と、発話データベース208と、スピーカ(変換器)210と、スレーブユニットからデータを送信及び受信できる送信機/受信機212とを含む。会話エンジンは、ランダム発話セレクタ214と、パラメータ記憶メモリ216と、発話者セレクタ218とを含む。スレーブユニットは、コントローラユニットの全ての構成要素を有しており、図3ではスレーブユニットの構成要素の全てを示しているわけではない。
Controller Figure As can be seen in FIG. 3, the controller unit 200 is in communication with several slave units (202). The controller includes a conversation engine 204, a speech compiler 206, a speech database 208, a speaker (converter) 210, and a transmitter / receiver 212 that can transmit and receive data from a slave unit. The conversation engine includes a random utterance selector 214, a parameter storage memory 216, and a speaker selector 218. The slave unit has all the components of the controller unit, and FIG. 3 does not show all the components of the slave unit.

最初に電源が入るユニットがコントローラユニットとなるように初期化される。ユニットに電源が入ると、このユニットが既存のネットワークを検索し、ネットワークが存在しなければ、ネットワークを作成して他のユニットがネットワークに参加するのを待つ。さらなるユニットがオンになると、これらがネットワークに参加し、スレーブユニットとして初期化される。コントローラユニットは、両方の新しいユニットからの、ネットワークの詳細及び会話開始メッセージを求めることを示す通信を待つ。スレーブユニットは、ネットワークに参加すると、コントローラユニットからの命令を待つ。ユニット(玩具/人形)は、全てがコントローラユニットにも又はスレーブユニットにもなることができる限り全て同じものであることを理解されたい。   Initialization is performed so that the unit to be powered on first becomes the controller unit. When a unit is powered on, this unit searches for an existing network, and if it does not exist, it creates a network and waits for other units to join the network. When further units are turned on, they join the network and are initialized as slave units. The controller unit waits for communication from both new units indicating network details and a call for conversation start message. When the slave unit joins the network, it waits for an instruction from the controller unit. It should be understood that the units (toys / dolls) are all the same as long as they can all be controller units or slave units.

ユニットは、「動物園」、「スポーツ」、「ギャングスタ」又は「ファッション」などのテーマ内で通信するようになっている。テーマにより、ユニットは、考えられる会話の話題全てに関する情報についての極めて大規模なデータベースを必要せずに詳細な会話を行えるようになる。ユーザは、テーマ/サブテーマをウェブサイトからユニットにダウンロードすることができる。   Units are adapted to communicate within themes such as “zoo”, “sports”, “gangsta” or “fashion”. Themes allow units to conduct detailed conversations without the need for a very large database of information about all possible conversation topics. The user can download the theme / sub-theme from the website to the unit.

以下のプロセスを使用して玩具のネットワークを開始する。
・人形がオンになったときに、参加する既存のネットワークが存在するかどうかを判定するためのチェックを行う〜これは送/受信機212を使用して遂行される。
・利用可能なネットワークが存在しない場合、この人形がコントローラになって自動的にネットワークを設定する〜必要な場合、無線モジュール104がネットワークを作成するようになっている。
・オンになった個々の後続の人形が、メモリに記憶した人形ID番号及びテーマ/複数のテーマID番号を送信する〜情報は送信機212により送信される。
・コントローラがテーマ/複数のテーマをチェックして、コントローラと同じ参加するテーマ/複数のテーマを有する人形のみを許可する〜コントローラユニットが、送信データとメモリに記憶されたデータとの比較を行う。
・2又はそれ以上の人形がネットワークに参加すると、会話を開始することが可能となる。
・ユーザがボタンを押すことなどにより会話を開始し、コントローラが、他の人形に何を発言すべきかを指示する会話を開始する。
・ユーザは、いつでも再びボタンを押して会話を停止することができる。
Start a toy network using the following process:
When the doll is turned on, a check is made to determine if there is an existing network to join—this is accomplished using the transmitter / receiver 212.
If there is no network available, this doll will become the controller and automatically set the network-if necessary, the wireless module 104 will create the network.
Each subsequent doll that is turned on transmits the doll ID number and theme / multiple theme ID numbers stored in memory—information is transmitted by the transmitter 212.
The controller checks the theme / multiple themes and only allows dolls that have the same participating theme / multiple themes as the controller—the controller unit compares the transmitted data with the data stored in memory.
A conversation can be started when two or more dolls join the network.
The user starts a conversation, such as by pressing a button, and the controller starts a conversation that tells the other doll what to say.
The user can stop the conversation at any time by pressing the button again.

コントローラユニットは会話を生成するプログラムを実行し、その後どのオーディオファイルにアクセスすべきかを知らせる情報をスレーブユニットへ送信する(このオーディオファイルは個々の性格型によって異なってもよいが、オーディオファイルの各々への参照はユニットごとに同じものである)。コントローラユニットは、スレーブユニットのメモリからアクセスするための単語/語句の識別子を送信する。スレーブユニットは、使用する語句及びこの語句を発言するのに要する予想される時間長を確認するメッセージを送信することにより、メッセージの受信についての確認応答を行う。次に、スレーブユニットは、会話コンパイラを使用して単語/語句をコンパイルし、その後スピーカを使用して語句を発言する。スレーブユニットは、語句を発言し終わると、文が終了し会話を続けることができる旨の信号をコントローラユニットへ送信する。   The controller unit executes the program that generates the conversation and then sends information to the slave unit indicating which audio file to access (this audio file may vary depending on the individual personality type, but to each audio file) Is the same for each unit). The controller unit transmits a word / phrase identifier for access from the memory of the slave unit. The slave unit acknowledges receipt of the message by sending a message confirming the phrase to use and the expected length of time it takes to speak the phrase. The slave unit then compiles the word / phrase using the conversation compiler and then speaks the phrase using the speaker. When the slave unit finishes speaking the phrase, the slave unit transmits a signal to the controller unit indicating that the sentence ends and the conversation can be continued.

その後、コントローラユニットが同じ方法で次の発話者に指示を行い、会話が終わるまでこれを継続する。会話構造に関するさらなる詳細を以下に示す。   The controller unit then instructs the next speaker in the same way and continues until the conversation ends. Further details regarding the conversation structure are given below.

通信プロトコル
玩具は通信プロトコルを使用して通信し、メッセージのフォーマットは以下の通りである。
[MessageID,SendingToy_ID,ReceivingToy_ID,MessageType,Parameters]
Communication protocol Toys communicate using a communication protocol, and the message format is as follows.
[MessageID, SendingToy_ID, ReceivingToy_ID, MessageType, Parameters]

MessageIDとは、メッセージを識別する一意の番号のことである。制御玩具から送信される個々のメッセージは一意の識別番号を有する。   MessageID is a unique number that identifies a message. Each message sent from the control toy has a unique identification number.

SendingToy_IDは、メッセージを送信する玩具を示す。   SendingToy_ID indicates a toy that sends a message.

ReceivingToy_IDは、メッセージを受信する玩具を示す。   ReceivingToy_ID indicates the toy that receives the message.

MessageTypeは、START、STOP、SAYなどのメッセージの種類を示す。   MessageType indicates the type of message such as START, STOP, or SAY.

パラメータとは、メッセージタイプに関する他のあらゆる必要な情報のことである。SAYメッセージのみが、話される(単複の)語句を識別するパラメータを有する。   A parameter is any other necessary information about the message type. Only the SAY message has a parameter that identifies the phrase (s) spoken.

従って、メッセージの範囲は以下を含む。
[MessageID,SendingToy_ID,ReceivingToy_ID,START]
[MessageID,SendingToy_ID,ReceivingToy_ID,STOP]
[MessageID,SendingToy_ID,ReceivingToy_ID,SAY,PhraseID]
Thus, the scope of the message includes:
[MessageID, SendingToy_ID, ReceivingToy_ID, START]
[MessageID, SendingToy_ID, ReceivingToy_ID, STOP]
[MessageID, SendingToy_ID, ReceivingToy_ID, SAY, PhaseID]

これらのメッセージの各々は、以下の形の確認応答を生成する。
[MessageID,SendingToy_ID,ReceivingToy_ID,Ack,Parameter]
Each of these messages generates an acknowledgment of the form
[MessageID, SendingToy_ID, ReceivingToy_ID, Ack, Parameter]

パラメータは、SAYメッセージへの確認応答のみに使用され、語句の持続時間を指定する。コントローラユニットは、語句パラメータの持続時間を使用して、次のメッセージを送信するまで適当な時間長の間待機する。   The parameter is used only for acknowledgment to the SAY message and specifies the duration of the phrase. The controller unit uses the duration of the phrase parameter to wait for an appropriate length of time before sending the next message.

従って、玩具1が玩具2と通信していると仮定した場合、各メッセージの通常のイベントのシーケンスは以下の通りになる。
[MessageID,1,2,START][MessageID,2,1,ACK][MessageID,1,2,SAY,PhraseID][MessageID,2,1,ACK,DURATION]
[MessageID,1,2,STOP][MessageID,2,1,ACK]
Therefore, assuming that toy 1 is communicating with toy 2, the sequence of normal events for each message is as follows:
[MessageID, 1, 2, START] [MessageID, 2, 1, ACK] [MessageID, 1, 2, SAY, PhaseID] [MessageID, 2, 1, ACK, DURATION]
[MessageID, 1, 2, STOP] [MessageID, 2, 1, ACK]

STARTコマンドは、受信側玩具にさらなる到来メッセージの受信を予想するように指示する。次に、コントローラ人形が、スレーブ玩具が使用する必要がある語句のphraseIDを含む少なくとも1つのメッセージを送信する。個々のphraseIDがスレーブ玩具へ別個に送信され、従ってこの種の複数のメッセージを送信して文章全体を構築することができる。STOPコマンドを使用して、このシーケンスにこれ以上のメッセージが存在しない旨をスレーブ玩具に指示する。   The START command instructs the receiving toy to expect to receive further incoming messages. The controller doll then sends at least one message containing the phrase ID of the phrase that the slave toy needs to use. Individual phraseIDs are sent separately to the slave toy, so multiple messages of this kind can be sent to build the entire sentence. A STOP command is used to instruct the slave toy that there are no more messages in this sequence.

スレーブ玩具は、メッセージを受信すると、メッセージの受信を確認応答するメッセージをコントローラへ送信する。コントローラは、START及びSTOPの確認応答に対しては直ちに会話プログラムを続行するが、SAYコマンドについては、コントローラ人形は、SAYの確認応答に対応するDURATIONと等しい遅延後に続行する。確認応答が受信されない場合、確認応答が受信されるまでメッセージが再送される。この再送は何回も行われ、その時点で人形がリセットされて会話が停止し、例えば、メッセージは1000〜2000回、2000〜5000回、5000〜10,000回又はそれ以上再送される。   When the slave toy receives the message, it transmits a message confirming receipt of the message to the controller. The controller continues the conversation program immediately for the START and STOP acknowledgments, but for the SAY command, the controller doll continues after a delay equal to the DURATION corresponding to the SAY acknowledgment. If no acknowledgment is received, the message is retransmitted until an acknowledgment is received. This retransmission is performed many times, at which point the doll is reset and the conversation stops. For example, the message is retransmitted 1000 to 2000 times, 2000 to 5000 times, 5000 to 10,000 times or more.

個々の語句の最後には「語句終了フラグ」も添付されて、いつ語句が終わったかをスレーブユニットに通知する。この時点で、スレーブユニットは、発話が終了したことを示すメッセージをコントローラへ送信する。コントローラは、メッセージを受信すると次のユニットに発話するように指示するが、次の発話者はコントローラであっても、又は別のスレーブユニットであってもよい。   At the end of each word, a “word end flag” is also attached to notify the slave unit when the word is over. At this point, the slave unit sends a message to the controller indicating that the utterance has ended. The controller instructs the next unit to speak when it receives the message, but the next speaker may be the controller or another slave unit.

コントローラ玩具が戦車である場合、発話を指示する代わりに、スレーブユニットに通信される命令は、スレーブユニット戦車が動くべきであるという指図の形をとる。従って、PhraseIDは、movementIDに置き換えられる。このようにして、コントローラ戦車が戦闘などのシミュレーションを行うことになる。玩具の戦車には、これらが協調して動くことができるように、ネットワーク内に他の玩具の戦車を位置決めする手段が設けられる。この手段は、玩具が通信している位置センサを有するプレイボード、又はカメラ、トランスポンダなどの他の位置決め手段の形をとることができる。   If the controller toy is a tank, instead of instructing speech, the command communicated to the slave unit takes the form of an instruction that the slave unit tank should move. Accordingly, the phrase ID is replaced with the movement ID. In this way, the controller tank performs a simulation such as a battle. Toy tanks are provided with means for positioning other toy tanks in the network so that they can move in concert. This means can take the form of a playboard with a position sensor with which the toy communicates, or other positioning means such as a camera, transponder or the like.

代替の実施形態では、個々の人形が自身の行動を制御し、すなわち個々の人形が会話を生成するためのプログラムを実行する。従って、ネットワーク内の個々の人形が効果的にコントローラ人形となる。この例では、個々の人形がその他の人形に、その他の人形が到達したプログラム内の地点に関する情報を送信する。これにより次に発話する予定の人形が、プログラムを現在の地点から実行できるようになる。また、現在のコントローラ人形が設定した変数に関する情報が他の関連する人形全てに送信され、例えばこの変数がグローバル変数である場合、これが他の人形全てに送信される。ネットワーク内の個々の人形がコントローラ人形になれるようにすることにより、ネットワークのロバスト性を高めることができる。これは、現在のコントローラ人形さえも含むあらゆる人形をネットワークから除外することができ、残りの人形がいなくなった人形の分まで対処することができるという事実によるものである。   In an alternative embodiment, the individual dolls control their actions, i.e. the individual dolls execute a program for generating a conversation. Thus, each doll in the network effectively becomes a controller doll. In this example, individual dolls send information to other dolls about the points in the program that other dolls have reached. This allows the doll to be uttered next time to execute the program from the current location. Also, information regarding the variables set by the current controller doll is transmitted to all other related dolls. For example, when this variable is a global variable, this is transmitted to all other dolls. By allowing each doll in the network to be a controller doll, the robustness of the network can be increased. This is due to the fact that any doll, including even the current controller doll, can be excluded from the network, and even the remaining dolls can be dealt with.

同期
別の実施形態では、玩具が他の同じような玩具とより本物そっくりに対話するようにされる。この人形、乗り物などの形をした玩具は、これらがまるで生きているかのように対話できるようにする対話エンジンを備える。この対話エンジンは、玩具が同時に、すなわち個々の玩具が行動を終えてから別の玩具が別の行動を開始できるようにする必要なく行動を出力できるようにする。この対話エンジンは本明細書で説明する会話エンジンに類似するが、対話エンジンは、会話エンジンに加え或いはこれとは別に発話以外の動きなどの行動の出力を取り扱うことができる。
Synchronization In another embodiment, the toy is made to interact more closely with other similar toys. These toys in the form of dolls, vehicles, etc. are equipped with a dialog engine that allows them to interact as if they were alive. This dialog engine allows toys to output actions at the same time, i.e. without having to allow each toy to finish another action before another toy can start another action. The dialog engine is similar to the conversation engine described herein, but the dialog engine can handle the output of actions such as movements other than speech in addition to or separately from the conversation engine.

図17aは、2体の人形A及びB1750の概略図であり、人形の行動を同期させるために利用できる様々なタイミングを示すタイムラインを図17b、図17c及び図17dに示す。人形A及びBは基本的に両方とも同じものであり、プロセッサ1700と、プロセッサに結合されたメモリ1702と、プロセッサに結合された変換器1704と、無線通信モジュール1706とを含む。メモリ1702は、会話又は軍事演習などの予想される人形間の対話に関する情報を記憶する。対話エンジン1708は、プロセッサに結合されて対話を構築できるようにする。プロセッサ1700は、記憶された情報を利用して2又はそれ以上の人形間の対話を構築するようにされる。プロセッサ1700の出力部は、プロセッサが選択した行動を表す信号を出力し、これが変換器1704へ転送されて出力を適当な行動に変換する。   FIG. 17a is a schematic diagram of two dolls A and B 1750, and timelines are shown in FIGS. 17b, 17c, and 17d showing various timings that can be used to synchronize the doll's behavior. Dolls A and B are both essentially the same and include a processor 1700, a memory 1702 coupled to the processor, a converter 1704 coupled to the processor, and a wireless communication module 1706. Memory 1702 stores information regarding anticipated puppet interactions such as conversations or military exercises. The interaction engine 1708 is coupled to the processor to allow interaction to be constructed. The processor 1700 is adapted to construct a dialogue between two or more dolls using the stored information. The output unit of the processor 1700 outputs a signal representing the action selected by the processor, which is transferred to the converter 1704 to convert the output into an appropriate action.

プロセッサ1700はまた、ネットワーク内の他の人形へ無線通信モジュール1706を介して無線で通信されるトリガ信号を生成するようにもなっている。このトリガ信号は、現在の人形が自身の行動を終える前のあらゆる時点において送信することができる。これにより、ネットワーク内の人形を自身の出力に対して同期できるようにすることができる。   The processor 1700 is also adapted to generate a trigger signal that is communicated wirelessly via the wireless communication module 1706 to other dolls in the network. This trigger signal can be sent at any time before the current doll has finished his actions. Thereby, the doll in the network can be synchronized with its own output.

図17b、図17c及び図17dで分かるように、使用できる同期には以下の3種類がある。
・行動の開始から時間を計った同期
・玩具が現在の行動を開始してから或る時間間隔後に次の玩具をトリガする。この例では、人形Aが語句1を発言し始めてからx秒後に人形Bが語句2を発言するようにトリガする。
・例えば、この同期の形を使用して、人形Bが人形Aの発言に「飽きて」きたという理由で人形Aの言葉を遮るようにすることができる。
・行動間の時間間隔がゼロの同期
・玩具が現在の行動を開始した直後に玩具をトリガする。この例では、人形Aが語句3を発言し始めた0秒後に人形Bが語句4を発言するようにトリガする。
・例えば、この同期の形を使用して、複数の人形が音楽バンドにいるかのように対話できるようにし、バンドの全てのメンバーが同時に演奏を開始するようにすることができる。
・行動の終了から時間を計った同期
・玩具が現在の行動を終了する前の或る時間間隔に次の玩具をトリガする。この例では、人形Aが語句5を終えるy秒前に人形Bが語句6を発言するようにトリガする。
・例えば、この同期の形を使用して、人形Aが発言を終える前に人形Bが人形Aのジョークに対して「笑い」始めるようにすることができる。
As can be seen in FIGS. 17b, 17c and 17d, there are three types of synchronization that can be used:
• Timed synchronization from the start of the action. • Trigger the next toy after a certain time interval after the toy starts the current action. In this example, the doll B is triggered to speak the phrase 2 x seconds after the doll A starts speaking the phrase 1.
For example, this synchronous form can be used to block doll A's words because doll B has “gets tired” of doll A ’s remarks.
• Synchronization with zero time interval between actions • Trigger the toy immediately after the toy starts the current action. In this example, the doll B is triggered to speak the phrase 4 0 seconds after the doll A starts speaking the phrase 3.
• For example, this form of synchronization can be used to allow multiple dolls to interact as if they were in a music band, so that all members of the band start playing at the same time.
• Timed synchronization from the end of the action • Trigger the next toy at some time interval before the toy ends the current action. In this example, the doll B is triggered to speak the phrase 6 y seconds before the doll A finishes the phrase 5.
For example, this synchronized form can be used to cause doll B to “laugh” against doll A's jokes before doll A finishes speaking.

次の玩具へ送られるトリガ信号は、現在の対話に関する情報、及びこの玩具自体に関する情報を含むことができる。例えば、単一のコントローラ人形が対話全体を制御している場合、トリガ信号によってスレーブ人形が何らかの行動を出力することを要求する。一方で、個々の人形が自身の出力を制御している場合、トリガ信号によって次に出力すべきことを対話内にどこで処理し始めるべきかを次の人形に知らせる。また、トリガ信号は、設定されているパラメータを含むこともでき、例えば人形が自身のペットの名前をランダムに選択した場合、この名前を全ての人形に回して、これらが会話の構築においてこの情報を使用できるようにする。最後に、トリガ信号はタイミングに関する情報を含むこともでき、例えば、次の人形が行動しなければならない場合にはトリガ信号は送られず、現在の人形の行動の開始時に、次の人形がいつ開始すべきかを示す情報を与える。   The trigger signal sent to the next toy can include information regarding the current interaction as well as information regarding the toy itself. For example, if a single controller doll controls the entire interaction, the trigger signal requests the slave doll to output some action. On the other hand, if an individual doll is controlling its output, the trigger signal informs the next doll where to start processing in the dialog what should be output next. The trigger signal can also include set parameters, for example if the doll randomly selects the name of its pet, this name is passed to all the dolls, and this information is used in the construction of the conversation. Can be used. Finally, the trigger signal can also contain information about the timing, for example, if the next doll has to act, no trigger signal is sent, and when the next doll starts to act, Gives information about what to start.

会話、演奏、ゲームプレイなどの対話は、予め決めておいてもよいし、或いは次に何の行動を出力するかについての疑似ランダム選択に応じて変化してもよい。いずれにせよ、玩具は生きているかのように対話するようになっている。あらゆる玩具があらゆる時点で行動をとる能力により、全ての行動が順番に行われるよりも本物そっくりの対話が実現される。玩具は、玩具に対話をダウンロードできるようにするポートなどの入力部も備える。対話は、本明細書で説明するようにテーマの形をとる。   Dialogues such as conversation, performance, and game play may be determined in advance, or may vary according to a pseudo-random selection as to what action is to be output next. In any case, the toy interacts as if it were alive. The ability of every toy to take action at any point in time enables a more lifelike dialogue than all actions take place in sequence. The toy also includes an input such as a port that allows the dialogue to be downloaded to the toy. The dialogue takes the form of a theme as described herein.

同期により、人形がグループのメンバーであるかのように振る舞えるようにすることができる。例えば、数多くの人形がバンドに入っているかのように振る舞うことができる。この例では、最初の人形が曲の一部を開始して、他の人形の各々がその曲の一部の異なるパートを演奏し、すなわちある者はリードシンガー、ある者はドラマー、ある者はギター、そしてある者はベースギターの役を演じる。人形は個々の他の人形に、曲の自分たちの部分の演奏を直ちに開始するように信号を送信し、これにより完全な曲の一部を創造する。同期の維持問題を避けるために、曲をフレーズに分割し、個々のフレーズの最後で制御及びタイミングを交渉することができる。   Synchronization allows the dolls to behave as if they are members of a group. For example, many dolls can behave as if they are in a band. In this example, the first doll starts a part of the song and each of the other dolls plays a different part of the song: some are lead singer, some are drummers, some are The guitar, and some play the role of a bass guitar. The doll sends signals to each other doll to immediately start playing their part of the song, thereby creating a complete piece of the song. To avoid sync maintenance problems, the song can be divided into phrases and control and timing can be negotiated at the end of each phrase.

同じようにして、戦車、兵士などを有する2又はそれ以上の軍隊(すなわち軍事資産)に玩具をグループ分けすることができる。個々の軍隊はユニットとして機能し、玩具の1つがユニットとして動くように他の玩具をトリガすることができる。この動きは、上述の方法を使用して同期される。   In the same way, toys can be grouped into two or more troops (ie, military assets) having tanks, soldiers, and the like. Individual troops act as units and can trigger other toys so that one of the toys moves as a unit. This movement is synchronized using the method described above.

グループ化した行動の別の例に車を競わせることがあり、この場合玩具の1つが一群の車の行動を決定して自動車レースをシミュレートする。或いは、ユーザが車の1台またはそれ以上を遠隔で制御し、予め定めた他の周囲の車の行動セットを開始することができる。ここでも、同期方法を使用して車の行動を制御し、これらが順番にではなく同時に動くようにする。   Another example of grouped behavior may be racing a car, where one of the toys determines the behavior of a group of cars and simulates a car race. Alternatively, the user can remotely control one or more of the cars and initiate a predetermined set of other surrounding car actions. Again, synchronization methods are used to control car behavior so that they move simultaneously rather than in sequence.

別の例では、グループ内の人形の1つが、チェスボード、ルードボード、ヘビとはしごボードなどになるようにされる。ボードは、ゲームの駒の位置を分かるようにするセンサを備え、このようにしてボードは、ゲームをプレイするステージ及びゲームの駒が正しい位置にあるかどうかに関する情報を出力することにより、他の人形及び子供と対話することができる。   In another example, one of the dolls in the group may be a chess board, a rood board, a snake and ladder board, and so on. The board is provided with sensors that allow the position of the game piece to be known, and in this way the board outputs other dolls by outputting information about the stage on which the game is played and whether the game piece is in the correct position. And can interact with children.

さらなる例では、人形が、有名な劇又はキリスト降誕などの有名な宗教シーンを演じるようにされる。このようにして、子供たちに楽しませながら教育的経験を与えることができる。   In a further example, the doll is made to play a famous religious scene such as a famous play or nativity. In this way, children can have educational experiences while having fun.

グループ化した行動のその他の例は教育環境で使用される。例えば、一群の人形にいずれかの教科を教え込み、これにより1つの人形が先生になって質問を尋ね、これにその他の人形が全て同時に答えることで子供の学習を促す。   Other examples of grouped behavior are used in an educational environment. For example, a subject is taught to a group of dolls, so that one doll becomes a teacher and asks questions, and all the other dolls answer all at the same time to encourage children to learn.

会話の構築
会話エンジンは、会話をオンザフライで構築する。或いは、会話を開始する前に会話全体を構築してその後メモリに記憶し、その後事実上終了まで会話が実行される。しかしながら、いずれにしても、構築される会話は特定のランダム選択に基づくことになる。
Conversation construction The conversation engine builds conversations on the fly. Alternatively, the entire conversation is built before starting the conversation and then stored in memory, and then the conversation is executed until it is effectively terminated. In any case, however, the conversation that is constructed will be based on a particular random selection.

会話はネットワーク内に存在するユニットに基づき、従って存在するユニット数及び存在するユニットの種類が制御変数として使用される。玩具が人形である場合には「わーい動物園に来たよ、さあどうしよう」のように、個々の会話の最初の部分が固定される。しかしながら、複数の開始語句が存在する。その時点以降、会話はその後ランダムに選択されることになる。コントローラユニットは、発話する最初のユニットを選択し、その後開始語句のいずれかにランダムに分岐させる。   The conversation is based on the units present in the network, so the number of units present and the type of units present are used as control variables. If the toy is a doll, the first part of each conversation will be fixed, like "Come to the zoo! However, there are multiple starting words. From that point on, the conversation will then be randomly selected. The controller unit selects the first unit to speak and then randomly branches to one of the starting words.

システムは、以下のようないくつかの異なる種類のコマンドを含む命令セットを使用できるようにされる。
・変数の定義及び変数設定
・コンテキスト参照及びスイッチング
・条件付きフロー制御
・無条件フロー制御
・発話語句
The system is enabled to use an instruction set that includes several different types of commands such as:
Variable definition and variable setting Context reference and switching Conditional flow control Unconditional flow control Spoken phrases

会話の流れを制御するために多くの命令文が定義され、これらは以下の通りである。
SELECT NEXT〜次の発話するユニットを選択する。この命令文には数多くの変形が存在し、これについて以下でさらに詳細に説明する。
SWITCH〜次のユニットに切り替える。
switch speaker〜発話者ポインタを別の発話者に移動させる。
switch finish〜この命令文を使用して会話を終える。
SAY〜ユニットに何かを発言するように指示する。
SET〜この命令文を使用して、「SET pet([1,dog])などの変数を設定する。SET文を使用して現在の発話者の変数を設定し、或いはこれを使用してグローバル変数を設定することができる。
TEST〜この命令文を使用して、例えば変数が設定されたかどうか、又は分岐が使用されたかどうかをテストする。TESTが真の場合、フラグが設定される。TEST命令文には2つの形がある。
TEST EQ〜この命令文は、2つの表現が等しいかどうかをテストして等しければ肯定的なフラグを作成し、例えば「TEST EQ&ME.PET&UNDEF」は、現在の発話者のペットの変数が未定義かどうかをテストして未定義であれば肯定的なフラグを作成する。
TEST NE〜この命令文は、2つの表現が等しいかどうかをテストして等しくなければ肯定的なフラグを作成する。
BRANCH〜この命令文を使用して別の会話のセクションに分岐する。例えば、「BRANCH gorillas:」は、「Gorillas」のラベルを付けられたテーマのセクションである、「Zoo(動物園)」というテーマのゴリラセクションに分岐する。この命令文は無条件文であり、プログラムが分岐文に至ったときには常に使用される。
BRANCH_F〜TESTからのフラグに基づいて条件付きで分岐する。従って、TEST文から作成されたフラグが肯定的であるときにのみ、分岐文が使用される。
CHOOSE〜この命令文により、コントローラが進む先のラベルをランダムに選択できるようになる。この命令文は、重み付けを使用してラベルへ進む確率を制御できるという点でSET文と類似している。
CHOOSE_F〜TESTからのフラグに基づいて条件付きで選択を行う。
A number of statements are defined to control the flow of conversation and are as follows.
SELECT NEXT to select the next utterance unit. There are many variations on this statement, which are described in more detail below.
Switch from SWITCH to the next unit.
switch speaker-move the speaker pointer to another speaker.
switch finish—use this statement to end the conversation.
SAY-Tells the unit to say something.
SET-Use this statement to set variables such as "SET pet ([1, dog]). Set variables for the current speaker using the SET statement, or use this to set global variables. Variables can be set.
TEST ~ This statement is used to test, for example, whether a variable has been set or whether a branch has been used. If TEST is true, a flag is set. There are two forms of TEST statement.
TEST EQ-This statement creates a positive flag if the two expressions are equal if they are equal, eg, "TEST EQ & ME. PET &UNDEF" indicates that the current speaker's pet variable is undefined Test to see if it is undefined and create a positive flag.
TEST NE-This statement tests whether two expressions are equal and creates a positive flag if they are not equal.
BRANCH-Use this statement to branch to another conversation section. For example, “BRANCH gorillas:” branches to a gorilla section of the theme “Zoo”, which is a section of the theme labeled “Gorillas”. This statement is an unconditional statement and is used whenever the program reaches a branch statement.
Branches conditionally based on the flags from BRANCH_F to TEST. Therefore, the branch statement is used only when the flag created from the TEST statement is positive.
CHOOSE-This statement allows the label to which the controller proceeds to be selected randomly. This statement is similar to the SET statement in that the weight can be used to control the probability of going to the label.
A selection is made conditionally based on the flags from CHOOSE_F to TEST.

ストレージ要件を削減するために、オーディオファイルはトリミングした形で記憶され、すなわち個々の音声セグメントの前後には沈黙が存在しない。より実際的な発話を作成するために、トリミングしたオーディオファイルの後に置くことができる、長さの異なるいくつかの沈黙オーディオファイルが個々の語句又は単語の間に提供される。これらのオーディオファイルは、SAY文により他のオーディオファイルのいずれかと同様に参照される。   To reduce storage requirements, audio files are stored in a trimmed form, i.e. there is no silence before and after individual audio segments. In order to create a more practical utterance, several silence audio files of different lengths are provided between individual phrases or words that can be placed after the trimmed audio file. These audio files are referenced in the same way as any other audio file by the SAY statement.

SET文により変数を定義して人形の各々に関連するパラメータを記憶することができ、これについて以下でさらに詳細に説明する。定義できる変数には2つの形がある。
・ローカル変数〜これらは、個々の玩具/人形に関連する変数である。ローカル変数は、個々の人形のデータセット内で作成される。人形変数は、DEFINE VARIABLE_NAME文により作成される。
・グローバル変数〜これらは、「テーマ」に関連する変数であり、個々の人形とは関連性がない。グローバル変数は、DEFINE G_VARIABLE_NAME文により作成される。
Variables can be defined by SET statements to store parameters associated with each of the dolls, as will be described in more detail below. There are two forms of variables that can be defined.
Local variables-these are variables associated with individual toys / dolls. Local variables are created in individual doll data sets. A doll variable is created by a DEFINE VARIABLE_NAME statement.
Global variables-These are variables related to "themes" and are not related to individual dolls. A global variable is created by a DEFINE G_VARIABLE_NAME statement.

テーマ内で定義される変数は、会話中に値が割り当てられるまで、割り当てられた値を有していない。   Variables defined within the theme do not have an assigned value until a value is assigned during the conversation.

変数への値の設定
会話中、定義された変数に値を設定することが必要となる。これはSET文で遂行される。以下のように、SET文は、値のセットからランダムに取り出した値で変数を設定できるようにするランダム特徴で構成される。
SET VARIABLE_NAME([w1,value1],[w2,value2],..........,[wn,valuen])
While setting a conversation values to variables, it is necessary to set a value to a variable defined. This is accomplished with a SET statement. As follows, a SET statement is composed of random features that allow variables to be set with values randomly extracted from a set of values.
SET VARIABLE_NAME ([w1, value1], [w2, value2], ..., [wn, value])

この命令文の動作は、VARIABLE_NAMEの値を乱数の結果に基づいてvalue1,value2,..........,valuenのうちの1つに設定することである。どの値が選択されるかの確率は、重み付けw1、w2、...、wnに基づく。   The operation of this command statement is to change the value of VARIABLE_NAME based on the result of the random number, value1, value2,. . . . . . . . . . , Value. The probability of which value is selected is given by the weights w1, w2,. . . , Based on wn.

例えば、
SET COLOUR([1,red],[1,blue],[1,green])
という命令文の場合、変数COLOURを等しい確率で赤色、青色又は緑色に設定することになる。人形の変数は、現在の人形との関連において設定される。
For example,
SET COLOR ([1, red], [1, blue], [1, green])
In this case, the variable COLOR is set to red, blue, or green with equal probability. The doll variables are set in relation to the current doll.

また、TEST文がcondition_flagの状態を作成した場合に限り、SET_F文を使用して変数を設定する。この場合、condition_flagがアクティブな場合かつこの場合に限り変数が設定される。   Further, only when the TEST statement creates a condition_flag state, the variable is set using the SET_F statement. In this case, the variable is set only when condition_flag is active.

コンテキスト参照及び切り替え
ポインタを使用して発話者に関する情報を記憶するとともに、コントローラ人形が他の人形を参照できるようにする。会話を構築する場合、これらを使用して理にかなった会話を作成し、以下が使用するポインタである。
前の発話者(PREV)=前の発話者のID番号
現在の発話者(ME)=現在の玩具のID番号
次の発話者(NEXT)=選択された次の発話者のID番号
Context references and switching pointers are used to store information about the speaker and allow the controller doll to reference other dolls. When building a conversation, use these to create a reasonable conversation and the following are the pointers to use:
Previous speaker (PREV) = ID number of previous speaker Current speaker (ME) = ID number of current toy Next speaker (NEXT) = ID number of selected next speaker

人形の会話エンジンの重要な特徴は、どの人形が現在の発話者であるかというコンテキストである。このコンテキストは、現在の人形がアクセスした変数を参照する。前の人形、次の人形、現在の人形の変数のみがアクセスに利用可能である。上記で定義したように、コンテキストの概念は3つの参照ポインタにより処理される。   An important feature of the doll conversation engine is the context of which doll is the current speaker. This context refers to variables accessed by the current doll. Only variables for the previous doll, next doll, and current doll are available for access. As defined above, the concept of context is handled by three reference pointers.

コンテキストの制御は、SELECTコマンド及びSWITCHコマンドの使用により遂行される。SELECTコマンドのいくつかの変形が存在する。これらは以下の通りである。
・SELECT NOTME〜これは、ランダムに選択された人形のグループの現在の人形以外のいずれかとなるように次の発話者を選択する。
・SELECT NEXT〜これは、ランダムに選択された人形のグループのいずれかとなるように次の発話者を選択する。
・SELECT PREV〜これは、前の発話者と同じになるように次の発話者を選択する。
・SELECT NAME〜これは、名前NAMEを有する人形を次の発話者となるように選択する。このSELECTコマンドの変形は、台本通りの会話のためのものである。
Context control is accomplished through the use of SELECT and SWITCH commands. There are several variants of the SELECT command. These are as follows.
SELECT NOTME-This selects the next speaker to be one other than the current doll in a randomly selected group of dolls.
SELECT NEXT-This selects the next speaker to be one of a group of randomly selected dolls.
SELECT PREV-This selects the next speaker to be the same as the previous speaker.
SELECT NAME-This selects the doll with the name NAME to be the next speaker. This variation of the SELECT command is for a scripted conversation.

その後、コンテキストはSWITCHコマンドの使用により変更される。SWITCHコマンドには2つの変形が存在する。
・SWITCH SPEAKER label〜これは、発話者のコンテキスト及び分岐をラベルが指定する命令に切り替える。コンテキストを切り替えると、前の発話者(PREV)は現在の発話者(ME)に等しくなり、現在の発話者(ME)は次の発話者(NEXT)に等しくなり、次の発話者(NEXT)は未定義となる。
・SWITCH FINISH〜これは、会話を終了するために使用するコマンドである。
The context is then changed by using the SWITCH command. There are two variants of the SWITCH command.
SWITCH SPEAKER label-This switches the speaker's context and branch to the instruction that the label specifies. When switching context, the previous speaker (PREV) is equal to the current speaker (ME), the current speaker (ME) is equal to the next speaker (NEXT), and the next speaker (NEXT). Is undefined.
SWITCH FINISH-This is the command used to end the conversation.

条件付きフロー制御
時として、会話中、フローが様々な変数の値に左右される。これは、以下のコマンドで遂行される。
・TEST EQ value1 value2〜これは、value1がvalue2に等しい場合にcondition_flagを設定する。
・TEST NE value1 value2−これは、value1がvalue2に等しくない場合にconditionflagを設定する。
・&CONTEXT.VARIABLE_NAME参照を使用することにより、value1及び/又はvalue2によって変数を参照することができる。例えば、TEST EQ&ME.NAME&PREV.NAMEという命令は、現在の発話者(ME)の名前が前の発話者(PREV)の名前と同じ場合にcondition_flagを設定する。
・BRANCH_F label〜これは、condition_flagが設定されている場合にはラベルが指定する命令に分岐し、そうでない場合には次の命令を使用する。
・CHOOSE_F([w1,label1],[w2,label2],.........,[wn,labeln])〜これは、condition_flagが設定されている場合には重み付けw1,w2,...,wnを使用してランダム選択に基づいてlabel1,label2,...labelnが指定する命令に分岐し、そうでない場合には次の命令を使用する。
During conditional flow control , the flow depends on the values of various variables during the conversation. This is accomplished with the following command:
TEST EQ value1 value2 This sets the condition_flag when value1 is equal to value2.
TEST NE value1 value2- This sets the condition flag when value1 is not equal to value2.
・ & CONTEXT. By using a VARIABLE_NAME reference, a variable can be referenced by value1 and / or value2. For example, TEST EQ & ME. NAME & PREV. The command NAME sets condition_flag if the name of the current speaker (ME) is the same as the name of the previous speaker (PREV).
BRANCH_F label-this branches to the instruction specified by the label if condition_flag is set, otherwise uses the next instruction.
CHOOSE_F ([w1, label1], [w2, label2],..., [Wn, labeln])-This is the weighting w1, w2, ... when the condition_flag is set. . . , Wn to label1, label2,. . . Branch to the instruction specified by label, otherwise use the next instruction.

人形が別の人形に関する変数の知識を必要とする度に、TEST文を使用して、変数が未定義であるか、又は特定の値であるかの問い合わせを行う。その後、これをフロー制御に使用することができ、例えば、PETという変数が未定義の場合、人形はどのような種類のペットを飼っているかを他の人形に尋ね、変数が設定されている場合にはペットが何色かなどを他の人形に尋ねる。   Each time a doll needs knowledge of a variable about another doll, a TEST statement is used to query whether the variable is undefined or a specific value. This can then be used for flow control. For example, if the variable PET is undefined, the doll asks what kind of pet it owns and if the variable is set Ask other dolls what color the pet is.

無条件フロー制御
時として、命令のフローを無条件で変更できることが必要となる。この場合、TEST文は使用されずにBRANCH又はCHOOSE文が常に実行される。これは、以下の命令文を使用して遂行される。
・BRANCH label〜これは、ラベルが指定する命令に無条件で分岐する。
・CHOOSE([w1,label1][w2,label2][wn,labeln])〜これは、重み付けw1,w2,...,wnを使用してランダム選択に基づいてlabel1、label2、...、labelnが指定する命令に分岐する。
In unconditional flow control , it is necessary that the instruction flow can be changed unconditionally. In this case, the BRANCH or CHOOSE statement is always executed without using the TEST statement. This is accomplished using the following statement:
BRANCH label-this unconditionally branches to the instruction specified by the label.
CHOOSE ([w1, label1] [w2, label2] [wn, labeln])-This is the weighting w1, w2,. . . , Wn to label1, label2,. . . , Branch to the instruction specified by labeln.

発話語句
会話エンジンの重要な部分は語句の発話である。これは、以下の命令文で遂行される。
SAY(phrase1,phrase2,...,phrasen)コマンド。
このコマンドは、現在の発話者(ME)である人形に語句phrase1,phrase2,...,phrasenを発声させる。
An important part of the spoken phrase conversation engine is the phrase utterance. This is accomplished with the following statement:
SAY (phrase1, phrase2, ..., phrasen) command.
This command adds the phrases phrase1, phrase2,... To the doll that is the current speaker (ME). . . , Phrasen.

スクリプト例
以下は短いスクリプトの例である。
DEFINE COLOUR
DEFINE GARMENT
Loop:
SET COLOUR([1,red],[1,blue],[1,green])
SET GARMENT([1,dress],[1,blouse],[1,hat])
SAY(hello my name is, &ME.NAME, and I have a, &ME.COLOUR, &ME.GARMENT)
SELECT NOTME
SWITCH SPEAKER Loop
Script example The following is an example of a short script.
DEFINE COLOR
DEFINE GARMENT
Loop:
SET COLOR ([1, red], [1, blue], [1, green])
SET GARMENT ([1, dress], [1, browse], [1, hat])
SAY (hello my name is, & ME.NAME, and I have a, & ME.COULUR, & ME.GARMENT)
SELECT NOTME
SWITCH SPEAKER Loop

この例では、3色のうちの1色を選んで3着の衣類のうちの1着に合わせることにより、存在する各人形ごとに9つの異なる事柄を発言することができる。   In this example, by selecting one of the three colors and matching it to one of the three clothes, nine different things can be said for each existing doll.

会話は、多重分岐を使用して構築される。個々の分岐は、テーマに関する異なる会話の領域である。例えば、「Zoo(動物園)」というテーマでは、利用可能な分岐は「Gorillas(ゴリラ)」、「Reptiles(爬虫類)」及び「Ice cream(アイスクリーム)」である。個々の分岐はこれらに関連する語句/単語を有し、その後選択肢からランダムに選択される。人形の応答は、分岐、人形の性格型、及び考えられる応答の重み付けに依存する。   A conversation is constructed using multiple branches. Individual branches are different areas of conversation about the theme. For example, in the theme of “Zoo”, the available branches are “Gorillas”, “Reptiles” and “Ice cream”. Individual branches have phrases / words associated with them and are then randomly selected from the choices. The doll's response depends on the bifurcation, the doll's personality type, and the weighting of possible responses.

例えば、選ぶべき次の分岐を決定することが選択に必要な場合、2体(又はそれ以上)の人形が同じ行く場所を続けて選択するまで会話が続く。これにより、選ぶべき分岐を選択する前に合意が必要となるので、より現実的な会話が行われる。   For example, if the selection requires determining the next branch to choose, the conversation continues until two (or more) dolls continue to select the same place to go. This requires a consensus before selecting a branch to choose, so a more realistic conversation takes place.

コントローラ人形が別の選ぶべき分岐を選択できるセクションに達するまで分岐内で会話が続く。この時点で、選ぶべき分岐に関して別の決定が行われる。会話の長さを制限するために、使用されていなかった分岐のみを選択に利用することができる。   The conversation continues in the branch until it reaches a section where the controller doll can select another branch to choose. At this point, another decision is made regarding the branch to choose. To limit the length of the conversation, only branches that have not been used can be used for selection.

分岐、語句、単語又は次の発話者などの、ランダムに選択できる個々の変数に重み付けが加えられる。語句/単語又は分岐などがランダムに選択される場合、これらの語句/単語の分岐などが選択される確率が重み付けにより変化する。例えば、全ての語句の重み付けが1の場合、これらは全て同じ選択される確率を有する。よりリアルな会話を作成するように重み付けを調整することができる。「今日、私は自転車から落ちた」などの語句は、「今朝、私は朝食を食べた」という語句よりも生じる可能性がはるかに低い。この結果、後者の語句は、前者よりもはるかに大きな重み付けを有するようになる。従って、会話エンジンの結果、ユニットはほんの時たましか「今日、私は自転車から落ちた」と言わないようになる。   Weights are applied to individual variables that can be selected randomly, such as branches, phrases, words or next speakers. When a phrase / word or branch or the like is selected at random, the probability that these phrases / word branches or the like are selected is changed by weighting. For example, if the weights of all words are 1, they all have the same probability of being selected. The weighting can be adjusted to create a more realistic conversation. Phrases such as “I fell off my bike today” are much less likely to occur than the phrase “I ate breakfast this morning”. As a result, the latter phrase has a much greater weight than the former. Thus, as a result of the conversation engine, the unit only occasionally says "I fell off my bike today."

さらなる例では、使用する重み付けを前の人形に優先させることができ、従って2つの人形間のミニ会話を誘導することになる。   In a further example, the weight used can be prioritized over the previous doll, thus leading to a mini-conversation between the two dolls.

会話の長さを制限するために、テーマの任意の1つの分岐の時間が制御される。これを別の重み付けパラメータとして使用して、例えば1つの分岐で費やされる時間を短縮し、別の分岐で費やされる時間を増やすことができる。これは、無限に続く可能性なく会話の最後に到達させるのに役立つ。   In order to limit the length of the conversation, the time of any one branch of the theme is controlled. This can be used as another weighting parameter, for example to reduce the time spent in one branch and increase the time spent in another branch. This helps to reach the end of the conversation without the possibility of continuing indefinitely.

会話の長さはランダムであってもよいが、場合によっては全ての変数が設定されるまで会話が続く。例えば、PETというテーマでは、全ての人形のペットが完全に説明されるまで会話が続く。これは、全ての変数が定義されているかどうかを判定するチェックを行うことにより遂行され、すべて定義済みである場合に限り会話を最後まで許可するものである。   The length of the conversation may be random, but in some cases the conversation continues until all variables are set. For example, in the theme of PET, the conversation continues until all doll pets are fully explained. This is accomplished by checking to see if all variables are defined, and allows the conversation to end only if all are defined.

現在の発話者のみが前の発話者及び次の発話者というコンテキストを有するので、いつ全ての人形の変数が設定されたかを判定することがいつでも可能なわけではない。従って、別の例では、現在のコンテキストにおける3つの人形全て、すなわち、現在の人形、前の人形及び次の人形に関して全ての変数が設定されるまで会話が続く。或いは、続けて2又はそれ以上の組の人形に関して全ての変数が判明するまで会話が続く。   Since only the current speaker has the context of the previous speaker and the next speaker, it is not always possible to determine when all doll variables have been set. Thus, in another example, the conversation continues until all variables are set for all three dolls in the current context: the current doll, the previous doll, and the next doll. Alternatively, the conversation continues until all variables are known for two or more sets of dolls.

会話エンジンは、複数の人形、及び2体のジェーンという人形などの同じ種類の潜在的に複数の人形に対処することができる。ネットワークが初期化された場合、ネットワークに参加する個々の人形にネットワークノードが関連付けられる。この結果、システムは、人形の名前ではなく関連するネットワークノードを使用して人形を参照する。これにより、同じ名前の複数の人形をエラーなく参照できるようになる。   The conversation engine can handle multiple dolls and potentially multiple dolls of the same type, such as two Jane dolls. When the network is initialized, a network node is associated with each doll participating in the network. As a result, the system references the doll using the associated network node rather than the doll's name. As a result, a plurality of dolls having the same name can be referred to without error.

予め会話の全体を決定し、その後人形に直接ダウンロードすることもできる。例えば、シンプソン一家(登録商標)のエピソードをシンプソン一家(登録商標)の人形のグループにダウンロードすることができる。人間が会話を生成し、或いは会話エンジンが会話を生成して後から人間が編集できるので、会話を予め決定することにより、人形が特にリアルな会話を行えるようになる。予め決定される会話を作成する際には同じ命令が使用されるが、起動されるたびに会話が同じになるようにランダム要素は除去される。   The entire conversation can be determined in advance and then downloaded directly to the doll. For example, a Simpson Family® episode can be downloaded to a group of Simpson Family® dolls. Since a person can create a conversation or a conversation engine can create a conversation and can be edited later, the doll can have a particularly realistic conversation by determining the conversation in advance. The same commands are used in creating a predetermined conversation, but the random elements are removed so that the conversation is the same each time it is activated.

上記の会話エンジンを独立して使用して会話を生成することができる。例えば、漫画などのテレビ番組を書く自動スクリプトに上記の会話エンジンを使用することができる。   The above conversation engine can be used independently to generate a conversation. For example, the above conversation engine can be used for automatic scripts for writing television programs such as comics.

1つの特定の実施形態では、テーマを生成するためにテーマをスクリプトで記述し、その後コンパイラを使用してスクリプトをコンパイルする。実行時エラーチェックを行って、テーマが終わりの無い会話又はその他のエラーを生成しないことを確実にし、その後サニティチェックを行って会話が全く無意味なものでないことを確実にする。その後、オーディオファイルが録音されると、テーマを玩具にダウンロードすることができる。以下でより詳細に説明する代替の実施形態では、テーマスクリプトの生成を容易にするオーサリングツールが提供される。しかしながら、依然としてテーマ内の会話の基本原理が適用される。例えば、両実施形態には、何を発言するかを選択する同じ方法が存在する。   In one particular embodiment, the theme is scripted to generate the theme, and then the script is compiled using a compiler. Run-time error checking is performed to ensure that the theme does not generate endless conversations or other errors, and then a sanity check is performed to ensure that the conversation is not useless at all. Later, when the audio file is recorded, the theme can be downloaded to the toy. In an alternative embodiment described in more detail below, an authoring tool is provided that facilitates theme script generation. However, the basic principles of conversation within the theme still apply. For example, both embodiments have the same way of selecting what to say.

人形の選択
図3に示すように、会話エンジンは発話者セレクタ218を有する。発話者セレクタは、次の発話する玩具を選択する。次の発話する玩具を選択するには、ネットワーク内の玩具のいずれかをランダムに選択する、玩具を名前(ID番号)で選択する、及び現在の発話者を選択してもう一度発話させるという3つの可能性がある。従って、次の発話者を選択する第1のプロセスは、上記の3つの可能性のいずれを使用すべきかをランダムに選択することである。次の発話者を名前で選択する場合、その玩具がネットワーク内に存在するかどうかを判定するためのチェックを行う必要がある。
Doll Selection As shown in FIG. 3, the conversation engine has a speaker selector 218. The speaker selector selects a toy to speak next. There are three ways to select the next toy to speak: randomly selecting one of the toys in the network, selecting the toy by name (ID number), and selecting the current speaker to speak again there is a possibility. Thus, the first process of selecting the next speaker is to randomly select which of the above three possibilities should be used. When selecting the next speaker by name, a check must be made to determine if the toy is in the network.

上述したように、select文が次に誰が発話するかを選択する。次の発話者を決定する場合、選択肢としては、関連する発話で応答すること、別の人形を選択して話しかけること、或いは現在の発話者に関して何かを知らせることがある。   As described above, the select statement selects who will speak next. When determining the next speaker, options include responding with a related utterance, selecting another doll to speak, or informing something about the current speaker.

発話者セレクタ218内でSELECT文を使用して、次の発話者のランダム選択を開始する。或いは、SELECT文が論理を使用して次の発話者への参照を決定することができる。例えば、発話するように選択された次の人形がジェーンである場合、現在の発話者が「ジェーン、あなたの好きなペットは何?」と尋ねることができる。ジェーンが次の発話者として設定されているので、ジェーンから回答が来ることになる。以下の例でわかるように、特定のパラメータが解らなくても&文を使用して次の発話者、又は他のいずれかの一般的パラメータを参照することができる。例えば、&NEXT.NAMEは次の発話者の変数NAMEを参照するものであるが、これを使用して次の発話者の名前を発言することができる。   A SELECT statement is used in the speaker selector 218 to initiate a random selection of the next speaker. Alternatively, the SELECT statement can use logic to determine a reference to the next speaker. For example, if the next doll selected to speak is Jane, the current speaker can ask "Jane, what is your favorite pet?" Since Jane is set as the next speaker, Jane will answer. As can be seen in the examples below, the & sentence can be used to reference the next speaker, or any other general parameter, without knowing the specific parameters. For example, & NEXT. NAME refers to the next speaker's variable NAME, which can be used to speak the name of the next speaker.

人形が続けて2回発話することはできないなどのさらなる選択肢が利用可能であり、従って、例えばジェーンが犬を飼っていると発表した場合、その直後にジェーンが発話するように選択されることはない。   Additional options are available, such as the doll cannot speak twice in a row, so if Jane announces that she has a dog, for example, Jane will be chosen to speak immediately afterwards. Absent.

次の発話する人形を選択するために同様の方法がオーサリングツールにより利用され、これについて以下でさらに詳細に説明する。   A similar method is used by the authoring tool to select the next doll to speak, which will be described in more detail below.

パラメータ記憶
パラメータ記憶メモリ216は、現在の会話に関する情報を記憶する。記憶された情報は、すでに使用された語句、使用された変数、フロー制御変数、及びネットワーク内に存在する人形などのその他のこのような情報を含む。情報は、コントローラ人形内にのみ記憶される。スレーブユニットは、次の発言事項に関する情報のみを受信する。
Parameter storage The parameter storage memory 216 stores information relating to the current conversation. Stored information includes words and phrases already used, variables used, flow control variables, and other such information such as dolls present in the network. Information is stored only in the controller doll. The slave unit receives only information related to the next message.

会話において使用された変数は、後程会話内で参照できるように記憶される。変数は、人形を記述する情報であり、これを使用して性格を差別化する。
「私のFluffyという」という語句から記憶される情報は、及びFluffyという情報である。この変数を使用して、人形が飼っているペットの種類を設定することができる。人形が特定の変数のサブセットのみを有することができるように変数を設定することができる。例えば、女の子の人形がヘビをペットとして有することはあり得ない。
Variables used in the conversation are stored for later reference within the conversation. A variable is information that describes a doll and is used to differentiate personality.
Information stored from the phrase “my dog is called Fluffy ” is information about dogs and Fluffy . You can use this variable to set the type of pet your doll keeps. Variables can be set so that the doll can only have a specific subset of variables. For example, a girl's doll cannot have a snake as a pet.

フロー制御変数を使用して、すでに使用された分岐に関する情報を記憶する。例えば、動物園にいる場合にはゴリラを見に行くように分岐を進めることができる。この情報を記憶して、会話が動物園に戻らないようにする。   Flow control variables are used to store information about branches that have already been used. For example, if you are in a zoo, you can branch to go to see a gorilla. Remember this information so that the conversation does not return to the zoo.

或いは、すでに使用された語句を記憶して、会話が永遠に続かないようにする。1回の会話内で特定の単語/語句を使用できる回数に限界値を設定することができ、この限界値は1回、2回、3回又はそれ以上であってもよい。これにより、会話が過度に反復的にならないことを確実にする。   Alternatively, remember words that have already been used so that the conversation does not last forever. A limit can be set on the number of times a particular word / phrase can be used within a conversation, and this limit may be once, twice, three times or more. This ensures that the conversation is not overly repetitive.

パラメータ記憶メモリ内に設定及び記憶できるグローバル変数も存在する。グローバル変数の例には、ネットワーク内の人形の全てに影響を与えるあらゆるものがあり、例えば「外は雨が降っている」であり、又は会話内で人形がずっと居た場所である。グローバル変数には、人形のコンテキストとは無関係にアクセスできるので、テーマ内のどの時点においてもこれを使用することができる。   There are also global variables that can be set and stored in the parameter storage memory. Examples of global variables are anything that affects all of the dolls in the network, such as “It's raining outside” or where the doll has been in the conversation all the time. Global variables can be accessed regardless of the doll's context, so they can be used at any point in the theme.

テーマ/人形に関する属性を記憶するために、パラメータもオーサリングツールを使用して定義され、これについて以下でさらに詳細に説明する。手短に言えば、テーマ属性/グローバル変数はテーマ全体に関連するパラメータを記憶し、あらゆる人形がいつでもこれにアクセスすることができ、人形属性/ローカル変数は個々の人形に関連するパラメータを記憶し、前の人形/現在の人形/次の人形のみがこれにアクセスすることができる。   In order to store attributes related to the theme / doll, parameters are also defined using the authoring tool, which will be described in more detail below. In short, theme attributes / global variables store parameters related to the entire theme and any doll can access them at any time, doll attributes / local variables store parameters related to individual dolls, Only the previous doll / current doll / next doll can access it.

人形固有のダウンロード
図4は、人形がメモリに記憶されたテーマを変更又は更新できるプロセスの概略図である。人形300は、人形の識別に使用されるID番号302を含む。人形は、USB接続を介してPC304に接続され、PCは、標準的な接続方式を介してインターネット306に接続されている。インターネットは、ダウンロード可能なテーマ310を含むウェブサイト308にPCを接続することができる。テーマは、接続された人形によって変わるという理由で、ユーザが選択できないサブテーマ312を含む。例えば、人形のID番号を使用して識別されたジャックという人形にはジルのサブテーマは提示されない。テーマは、全ての性格型に対して一般的なものである。サブテーマは、テーマの表現が異なるとともに人形の性格型に依存する点を除き、メインテーマと同一である。従って、オーディオファイルは、異なる声、(同じ意味の)異なる言い回しなど、サブテーマごとに異なる。
Doll Specific Download FIG. 4 is a schematic diagram of a process by which a doll can change or update a theme stored in memory. The doll 300 includes an ID number 302 that is used to identify the doll. The doll is connected to the PC 304 via a USB connection, and the PC is connected to the Internet 306 via a standard connection method. The Internet can connect a PC to a website 308 that includes a downloadable theme 310. The theme includes a sub-theme 312 that the user cannot select because it changes depending on the connected doll. For example, a Jill sub-theme is not presented to a doll named Jack identified using a doll ID number. Themes are common to all personality types. The sub theme is the same as the main theme, except that the theme expression is different and it depends on the personality of the doll. Therefore, the audio file is different for each sub-theme, such as different voices, different phrases (with the same meaning).

或いは、人形にダウンロードされる最初の性格を使用して、後からダウンロードされた性格を最初の種類と同じになるように制限することができる。例えば、人形がジャックと設定された場合、ウェブサイトは、この人形が接続されたときにジャックのサブテーマを認識し、ユーザにジャックのサブテーマのみを提示する。ウェブサイトは、人形の名前変数、すなわちジャックにアクセスしてこれをサブテーマの名前リストと比較することによりサブテーマを認識する。   Alternatively, the first character downloaded to the doll can be used to limit the later downloaded character to be the same as the first type. For example, if the doll is set to Jack, the website will recognize Jack's sub-theme when the doll is connected and present only the Jack's sub-theme to the user. The website recognizes the sub-theme by accessing the doll's name variable, Jack, and comparing it to the sub-theme's name list.

ダウンロードしたサブテーマは、「動物園」などの選択されたテーマのスクリプト、関連する性格型、人形が会話を発声できるようにする対応するオーディオファイル、及びネットワーク内の人形が全て同じテーマを有することを確実にするために使用されるテーマIDを含む。   The downloaded sub-theme is a script of the selected theme such as “zoo”, the associated personality type, the corresponding audio file that allows the doll to speak the conversation, and the dolls in the network all have the same theme. Contains the theme ID that is used to ensure.

PC304は、テーマを効率的な態様でダウンロードできるように、人形300とウェブサイト310との間をインターフェイス接続するようになっている。さらに、テーマは人形にのみ記憶され、従ってテーマを必要とする個々の人形はウェブサイトに接続される必要がある。従って、1人のユーザが2つの人形を有し、個々の人形に同じテーマを求める場合、ユーザは個々の人形をウェブサイトに接続して適当なサブテーマをダウンロードする必要がある。   The PC 304 is configured to interface between the doll 300 and the website 310 so that the theme can be downloaded in an efficient manner. Furthermore, the theme is stored only in the doll, so individual dolls that need the theme need to be connected to the website. Thus, if a user has two dolls and wants the same theme for each doll, the user needs to connect each doll to a website and download the appropriate sub-theme.

これとは別に、人形は常に複数のテーマを記憶することができる。人形は、同時に1つのテーマを使用して通信するが、このテーマはコントローラによりいつでも変更することができる。従って、人形は「スポーツ」というテーマを使用して、その後「動物園」というテーマの使用に進むことができる。これにより、会話をより長く継続させることができ、人形の使い勝手を拡張するさらなる組み合わせが与えられる。   Apart from this, the doll can always store multiple themes. The doll communicates using one theme at the same time, but this theme can be changed at any time by the controller. Thus, the doll can use the theme “sports” and then proceed to use the theme “zoo”. This allows the conversation to last longer and provides additional combinations that extend the usability of the doll.

人形は全て、他の人形と同じテーマを有していないときに手短に通信できるようにデフォルトテーマを有する。デフォルトテーマは2、3の基本的な語句を含み、ユーザをウェブサイトに接続してテーマをダウンロードするように導くことができる。   All dolls have a default theme so that they can communicate easily when they do not have the same theme as other dolls. The default theme contains a few basic phrases that can guide the user to connect to the website and download the theme.

テーマが安全であることを確実にするために、人形にダウンロードが行われる前に人形の一意のID番号を使用してデータを暗号化することができる。その後、個々の人形の一意のID番号を使用してテーマ内のデータを復号化することができる。これを使用して、全ての人形がウェブサイトに接続してテーマをダウンロードすることを確実にすることができる。例えば、個々のジェーンという人形が同じサブテーマを使用したいと思っても、データは特定の人形ごとに別様に符号化されており、従ってこの特定の人形以外にとっては事実上役に立たないものである。   To ensure that the theme is secure, the data can be encrypted using the doll's unique ID number before the doll is downloaded. The unique ID number of each doll can then be used to decrypt the data within the theme. This can be used to ensure that all dolls connect to the website and download the theme. For example, even if an individual Jane doll wants to use the same sub-theme, the data is encoded differently for a particular doll and is therefore virtually useless for this particular doll. .

性格の表現及びテーマのスクリプト記述
前述したように、個々の異なるテーマは、異なる性格を表現できるようにする様々なサブテーマを有する。テーマごとのスクリプトは異なるものであり、これを使用してこのテーマに従う様々な会話を生成する。しかしながら、全てのテーマ内の個々のサブテーマは、会話を生成するための同じスクリプトを有するが、サブテーマ内で使用される言語は異なる。これにより、同じテーマに関して複数の性格を利用できるようにすることができる。
Personality Expression and Theme Scripting As noted above, each different theme has various sub-themes that allow it to express different personalities. The scripts for each theme are different and are used to generate various conversations that follow this theme. However, the individual sub-themes within all themes have the same script for generating conversations, but the languages used within the sub-themes are different. Thereby, a plurality of personalities can be used for the same theme.

会話の可変性を増加させるために、同じ質問を尋ねるための複数のランダム選択法が存在する。従って、例えば、単純な質問をする複数の方法が存在し、これは、例えば「次は何をしましょうか」、「次は何をするんだい」、「次は何ですか」のようにテーマ/サブテーマに依存するものであってもよい。個々のサブテーマは、同じ物事を意味するために使用する異なる表現を有することができる。例えば、1つのサブテーマでは「こんにちは、お元気ですか?」と言うことができ、別のテーマでは「やあ、調子はどうだい?」と言う。事実上語句の意味は同じものであるが、表現、従って性格が異なる。このようにして、変化に富んだ面白い会話を作成するために、各テーマがあらゆる数のサブテーマを有することができる。このようにして、ユーザ体験が高められるとともに大量のメモリを必要としないより多様なゲームプレイが可能となる。   There are multiple random selection methods for asking the same question to increase conversation variability. So, for example, there are multiple ways to ask a simple question, such as "What to do next", "What to do next", "What is next" It may depend on the theme / sub-theme. Individual sub-themes can have different expressions used to mean the same thing. For example, "Hello, how are you?" Is one of the sub-themes can say that, in another theme referred to as "Hi, How's it going?". Virtually the meanings of the phrases are the same, but the expressions and therefore the personalities are different. In this way, each theme can have any number of sub-themes to create interesting and varied conversations. In this way, the user experience is enhanced and more diverse game play is possible without requiring a large amount of memory.

性格の特徴は、同一のテーマに起因することができる。従って、同じテーマのジャックバージョンとジルバージョンとを有することが可能である。ジャックバージョンはサブテーマであり、ジルバージョンもサブテーマである。   Personality features can be attributed to the same theme. Thus, it is possible to have a jack version and a jill version of the same theme. The Jack version is a sub theme, and the Jill version is also a sub theme.

人形の名前、すなわちジェーンが性格型と関連しているので、ジェーンという人形により表される性格は全てのテーマについて同じであり、テーマのコンテンツのみが変化する。これにより、人形は一定のままであることができ、異なる状況でも人形が同じ様に反応できるようになる。   Since the name of the doll, ie Jane, is associated with the personality type, the personality represented by the Jane doll is the same for all themes and only the content of the theme changes. This allows the doll to remain constant and allows the doll to react the same way in different situations.

或いは、人形がウェブサイトにより最初に初期化されるときの人形の名前及び人形の性格を人形のユーザが選択することもできる。これにより、ユーザが人形との関わりをより深めることができる。このとき人形の名前及び性格型が人形内のメモリに記憶され、個々の属性がIDと関連付けられ、これが例えばさらなるサブテーマをダウンロードする際に使用される。   Alternatively, the doll user can select the doll name and doll character when the doll is first initialized by the website. Thereby, a user can deepen the relationship with a doll more. At this time, the doll's name and personality type are stored in a memory in the doll and each attribute is associated with an ID, which is used, for example, when downloading further sub-themes.

ダウンロード可能なテーマは、表現とスクリプトとの組合せであり、会話の種類を決定付けるものである。   The downloadable theme is a combination of expression and script, which determines the type of conversation.

人形の美的価値観(aesthetics)及び語彙を、ターゲットオーディエンスに応じた年齢となるようにカスタマイズすることもできる。様々なテーマは、年齢に応じた等級を有することができる。これにより、例えば10代の市場向けにはヒップホップをテーマにした人形が可能となる。   The doll's aesthetics and vocabulary can also be customized to be of age according to the target audience. Various themes can have grades according to age. This enables hip hop-themed dolls for teenage markets, for example.

さらに、別の人形セット(これは単一の人形であってもよい)のみが使用できる語句を提供することができる。この語句が選択された場合、現在の人形が使用できることを確実にするためのチェックが行われる。この人形がこの語句を使用できない場合には別の語句が選択される。   In addition, phrases that can only be used by another doll set (which may be a single doll) may be provided. When this word is selected, a check is made to ensure that the current doll can be used. If this doll cannot use this word, another word is selected.

同様に、命令の部分を別の人形セットのみに制限して、会話にさらなるランダム性を導入することができる。   Similarly, the command portion can be limited to only another doll set to introduce more randomness into the conversation.

或いは、玩具が戦車又は他のこのような玩具の形をとる。この場合の玩具の性格の表現は、会話とは対照的に動きの形をとる。例えば、1つの玩具の戦車が「防御的」性格を有し、別の玩具の戦車が「攻撃的」性格を有することもできる。   Alternatively, the toy takes the form of a tank or other such toy. In this case, the expression of the character of the toy takes the form of movement as opposed to conversation. For example, one toy tank may have a “defensive” character and another toy tank may have an “aggressive” character.

オーサリングツール
オーサリングツールとは、複数の人形に対して様々な会話テーマを作成するために使用できるアプリケーションのことである。上述したような会話は、会話が従うことができる可能性のある分岐が多数であるため、作成にかなりの量の時間が必要とされる。従って、プロセスをより効率化するために、オーサリングツールを提供してこのプロセスを支援する。クライアントアプリケーションは、図10に示すようなPC1000又はラップトップ1002などのパーソナルコンピュータなどで実行されるが、複数のユーザが同じテーマに取り組めるように、或いは単一のユーザが異なる場所から同じテーマに取り組めるように、データはサーバ1004上に記憶される。サーバ上では、データベースをクライアントアプリケーションとインターフェイス接続するためのウェブサービスが行われる。クライアントアプリケーションは、インターネット306を介してサーバ1004と通信する。クライアントアプリケーションはウェブサービス、ひいてはデータベースへの要求をXMLを使用してフォーマット化し、SOAPプロトコルを使用してデータを送信する。
Authoring Tool An authoring tool is an application that can be used to create various conversation themes for multiple dolls. Conversations such as those described above require a significant amount of time to create because of the many branches that the conversation can follow. Therefore, in order to make the process more efficient, authoring tools are provided to support this process. The client application is executed on a personal computer such as a PC 1000 or a laptop 1002 as shown in FIG. 10, but a plurality of users can work on the same theme, or a single user can work on the same theme from different places. As such, the data is stored on the server 1004. On the server, a web service is provided to interface the database with the client application. The client application communicates with the server 1004 via the Internet 306. The client application formats the request for the web service, and thus the database, using XML and sends the data using the SOAP protocol.

オーサリングツールの概要
図11は、オーサリングツールの概要を示す図である。テーマ開発者が玩具のために単純かつ効率的にテーマを出力できるようにするためにユーザインターフェイス1100が設けられる。設けられたユーザインターフェイスを使用して、開発者は以下のステップに従う。
1. テーマ生成エンジン1102を使用してテーマを作成
2. 玩具生成エンジン1104を使用してこのテーマに合わせた玩具を作成
3. コンテキスト入力ウィンドウ1106を使用して個々の玩具ごとに複数のコンテキストを作成
4. コード生成エンジン1108を使用して命令(「C」コード)を出力
5. 辞書生成エンジン1110を使用して個々の人形ごとに記録すべき語句の「辞書」を出力
6. 必要であれば、PCでテーマをテストする際に使用するシミュレーションエンジン1111を使用してシミュレーションとしてテーマを出力
Outline of Authoring Tool FIG. 11 is a diagram showing an outline of the authoring tool. A user interface 1100 is provided to allow theme developers to simply and efficiently output themes for toys. Using the provided user interface, the developer follows the following steps:
1. Create theme using theme generation engine 1102 2. Create toy for this theme using toy generation engine 1104 3. Use context input window 1106 to create multiple contexts for each toy Create 4. Output instruction (“C” code) using code generation engine 1108 5. Output “dictionary” of words to be recorded for each doll using dictionary generation engine 1110 If necessary, output the theme as a simulation using the simulation engine 1111 used when testing the theme on a PC

本明細書で使用する場合、用語コンテキストは、例えばテーマ別会話内の個々の位置ごとに、人形が何を発言するか、またどの人形が次に発話するかを決定する少なくとも1つのコンテキストが存在するように、テーマデータ内のコンテンツのサブセットを意味する。コンテキストは、テーマ/人形の属性を設定することもできる。   As used herein, a term context is at least one context that determines what a doll speaks and which doll speaks next, for example, for each individual position within a thematic conversation. As such, it means a subset of the content in the theme data. The context can also set theme / doll attributes.

コード生成エンジン及び辞書生成エンジン1110を使用して命令及び「辞書」がそれぞれ出力されると、記録手段を使用して語句が記録され、レコーダ1112を使用してオーディオファイルが作成され保存される。レコーダは、特定の作成中のテーマに必要な表現データの各々を生成するように関係者に促す。その後レコーダは、適当な表現データに対応するID番号を個々のオーディオファイルに割り当てる。使用時には、玩具のプロセッサが操作するコードにより、適当なID番号を使用してオーディオファイルが参照され、玩具のスピーカを使用して出力される。   When an instruction and a “dictionary” are output using the code generation engine and the dictionary generation engine 1110, a phrase is recorded using a recording unit, and an audio file is created and stored using the recorder 1112. The recorder prompts interested parties to generate each piece of expression data needed for a particular theme being created. The recorder then assigns an ID number corresponding to the appropriate expression data to each audio file. In use, the audio file is referenced using the appropriate ID number by the code operated by the toy processor and output using the toy speaker.

基本命令セット1114(玩具のプロセッサ用ファームウェア)が(コード生成エンジン1108により生成される)テーマ別命令セットと組み合わされ、テーマに従って玩具を動作させるために、コンパイラ1116を使用して玩具のプロセッサが使用するバイナリファイルにコンパイルされる。上述した先の実施形態では、基本の命令/ファームウェアのセットが玩具のプロセッサメモリに位置し、テーマが変更又は更新されるたびにテーマ別命令セット及びオーディオファイルのみが人形にダウンロードされた。   The basic instruction set 1114 (toy processor firmware) is combined with the thematic instruction set (generated by the code generation engine 1108) and used by the toy processor using the compiler 1116 to operate the toy according to the theme. Compiled into a binary file. In the previous embodiment described above, the basic instruction / firmware set was located in the processor memory of the toy and only the thematic instruction set and audio files were downloaded to the doll each time the theme was changed or updated.

命令がコンパイルされると、コンバイナエンジン1120を使用してこれらをオーディオファイルと共にバンドルし、個々の人形にダウンロードできるようにする(個々の人形は同じテーマ別命令を含む個別のダウンロードを有するが、これには個別のオーディオファイルが含まれる)。   Once the instructions are compiled, they are bundled together with audio files using the combiner engine 1120 so that they can be downloaded to individual dolls (each doll has a separate download containing the same thematic instructions, but this Includes individual audio files).

オーサリングツールは、テーマを記憶したサーバ1004及びデータベース1122へのアクセス権を有する。テーマは、テーマ開発者により確定されたかどうかに応じて異なるフォーマットで記憶される。未確定のテーマは、オーサリングツールが情報に容易にアクセスできるように記憶され、これは、テーマ名、玩具名、コンテキストなどの参照事項を含むデータベースの形をとる。テーマ開発者がテーマを確定させると、テーマは、未確定フォーマットに加え上述したような命令セットとしても記憶される。これにより、確定したテーマを修正するとともに、先に確定したテーマに基づいて新しいテーマを作成できるようになる。玩具のユーザが自分の玩具/人形1126にテーマ別データをダウンロードできるようにするウェブサイト1124が提供される。   The authoring tool has access rights to the server 1004 and database 1122 that store themes. Themes are stored in different formats depending on whether they have been finalized by the theme developer. Ambiguous themes are stored so that the authoring tool can easily access the information, which takes the form of a database that includes references such as theme names, toy names, contexts, and the like. When the theme developer determines the theme, the theme is stored as an instruction set as described above in addition to the undefined format. As a result, the determined theme can be corrected and a new theme can be created based on the previously determined theme. A website 1124 is provided that allows toy users to download thematic data to their toy / doll 1126.

オーサリングツールは、上述したようなものを含むいくつかの機能を有する。
1)これを使用して、フォーマット済みのテキストファイルから会話をインポートすることができる。
2)これを使用して、テーマ生成エンジン1102を使用して複数の人形のためのテーマ別会話を作成及び編集することができる。
3)これを使用して、シミュレーションエンジン1111を使用して会話プロセスをシミュレートし、結果として得られるテーマ別会話のテキスト出力を作成することができる。
4)これを使用して、辞書生成エンジン1110を使用して個々の人形に関する記録すべき全ての語句のリストをまとめることができる。
5)これを使用して、コード生成エンジン1108を用いて「C」コード出力(命令セット)を作成することができ、その後これをコンパイルして修正済みプロセッサファームウェアとリンクさせ、ダウンロードの準備が整っている個々の人形のためにバイナリデータファイルを作成することができる。
The authoring tool has several functions including those described above.
1) This can be used to import conversations from a formatted text file.
2) This can be used to create and edit thematic conversations for multiple dolls using the theme generation engine 1102.
3) This can be used to simulate the conversation process using the simulation engine 1111 and create a text output of the resulting thematic conversation.
4) This can be used to compile a list of all words to be recorded for each doll using the dictionary generation engine 1110.
5) This can be used to create a “C” code output (instruction set) using the code generation engine 1108, which is then compiled and linked with the modified processor firmware and ready for download. Binary data files can be created for individual dolls.

会話データの入力
オーサリングツールのアプリケーションユーザインターフェイスを図12a〜図15に示す。個々のインターフェイスのウィンドウは、入力ウィンドウとインターフェイス接続するか、或いは次のインターフェイスウィンドウへ進むかのいずれかを行うための数多くのナビゲーションボタンを有する。ユーザインターフェイスは、プロセッサ1150及び関連メモリ1152を利用してテーマ開発者にユーザインターフェイスの様々な態様を表示し、受信機1153を利用してユーザが入力したコンテンツを受信する。プロセッサ1150及びメモリ1152は、PC1000又はラップトップ1002内に位置する。本明細書で使用する場合、用語コンテンツは、スクリプトデータ、表現データ、テーマデータ、人形データ及びユーザがオーサリングツールに入力できる他のあらゆるデータ型を意味する。
Conversation Data Input The application user interface of the authoring tool is shown in FIGS. Each interface window has a number of navigation buttons to either interface with the input window or advance to the next interface window. The user interface uses the processor 1150 and associated memory 1152 to display various aspects of the user interface to the theme developer and receives content entered by the user using the receiver 1153. The processor 1150 and the memory 1152 are located in the PC 1000 or the laptop 1002. As used herein, the term content refers to script data, expression data, theme data, doll data, and any other data type that a user can enter into the authoring tool.

図12aは、第1のインターフェイスウィンドウであり、以下の選択肢を有する。
テーマの追加(1100):これは新しいテーマを作成するために使用され、通常は使用される最初の選択肢である。図12b及び12cに示すように、以下の入力を必要とするテーマフォームを立ち上げる。
名前:テーマの名前。これは、spoken_text_stringのためのプレースホルダである。
人形の数:このテーマ内でサポートされる人形の総数
説明:テーマの説明
テーマ属性:位置などの、テーマのグローバル属性
人形属性:気分などの、人形のローカル属性
FIG. 12a is a first interface window with the following options:
Add theme (1100): This is used to create a new theme and is usually the first choice used. As shown in FIGS. 12b and 12c, a theme form is launched that requires the following inputs.
Name: Name of the theme. This is a placeholder for spoken_text_string.
Number of dolls: Total number of dolls supported in this theme Description: Theme description Theme attributes: Theme global attributes, such as location Doll attributes: Local attributes of the doll, such as mood

これらの入力は、上述したような会話の構築で必要とされる入力と同等のものである。
オーサリングツールの実施形態を参照しながら説明したように、テーマ及び人形属性は、上述のようにそれぞれグローバル変数及びローカル変数と同等のものである。しかしながら、オーサリングツールは、構造化された様々な入力ウィンドウをテーマ開発者に提供して情報を効率よく入力できるようにする。
These inputs are equivalent to those required for constructing a conversation as described above.
As described with reference to the authoring tool embodiment, the theme and doll attributes are equivalent to global and local variables, respectively, as described above. However, the authoring tool provides a variety of structured input windows to the theme developer so that information can be input efficiently.

さらに詳細には、テーマ属性は、名前及び任意に値から成る。値は、spoken_text_stringのためのプレースホルダであってもよい。以下で説明するように、spoker_text_stringは、テーマが確定した後に作成される。spoken_text_stringとは、会話中にアクセスできるサウンドファイルのことである。例えば、テーマが動物園内に位置するとした場合、考えられるテーマ属性は、位置=「動物園」であり、人形がこれを使用して、例えば「やあ、動物園は本当に楽しいな」と言うことができ、この場合「動物園」という単語は、「位置」というテーマ属性を使用してアクセスされたものである。   More specifically, the theme attribute consists of a name and optionally a value. The value may be a placeholder for spoken_text_string. As will be described below, the spoke_text_string is created after the theme is determined. Spoken_text_string is a sound file that can be accessed during a conversation. For example, if the theme is located in a zoo, the possible theme attribute is position = “zoo” and the doll can use this to say, for example, “Hey, the zoo is really fun” In this case, the word “zoo” is accessed using the theme attribute “position”.

人形属性は、特定のテーマにおける個々の人形が属性に値を必要とするときにインターフェイスウィンドウ内に作成される。例えば、属性の設定が「気分」である場合、個々の人形のこの属性に「楽しい」「悲しい」、「怒っている」などの値が与えられる。会話中、会話エンジンは、人形属性(ローカル変数)のいずれかにアクセスしてその属性を会話で使用することができる。
編集(1202):これは既存のテーマを編集するために使用される。例えば、テーマAlon#1(1206)を選択して編集を押すことにより、ユーザがAlon#1のテーマの詳細を編集できるようになる。
除去(1204):これは選択したテーマを削除するために使用される。
Doll attributes are created in the interface window when individual dolls in a particular theme require values for the attributes. For example, when the attribute setting is “mood”, values such as “fun”, “sad”, and “angry” are given to this attribute of each doll. During a conversation, the conversation engine can access any of the doll attributes (local variables) and use the attributes in the conversation.
Edit (1202): This is used to edit an existing theme. For example, by selecting the theme Alon # 1 (1206) and pressing Edit, the user can edit the details of the theme of Alon # 1.
Remove (1204): This is used to delete the selected theme.

図12aは、3つのテーマ1208、1208及び1210が作成された後のウィンドウを示している。個々のテーマがテーマの詳細の概要を示しており、これにはテーマの短い説明、テーマに関連する人形の数及びそのID番号が含まれていることがわかる。テーマのフォームに入力された情報は、その後出力命令を生成する際に検索するためにサーバ1004内のデータベース1122に記憶される。   FIG. 12a shows the window after the three themes 1208, 1208 and 1210 have been created. It can be seen that each theme gives an overview of the theme details, including a short description of the theme, the number of dolls associated with the theme, and their ID numbers. Information entered into the theme form is then stored in the database 1122 in the server 1004 for retrieval when generating output commands.

テーマが作成されると、ユーザは次のウィンドウへ進んでテーマ内の人形を作成する。図13aは人形生成ウィンドウを示しており、ユーザが「人形追加」ボタン1300を押すと、図13bに示すウィンドウが表示される。このウィンドウを使用することにより、人形を作成し、名前をつけ、短い説明を付けることができるようになる。   Once the theme is created, the user proceeds to the next window and creates a doll within the theme. FIG. 13 a shows a doll generation window. When the user presses the “add doll” button 1300, the window shown in FIG. 13 b is displayed. Using this window, you can create a doll, give it a name, and give a short description.

図13a及び図13bに示すウィンドウを使用して、必要なだけの人形を作成することができる。しかしながら、作成できる人形の数は、その特定のテーマに関して前もって決定した人形の最大数により制限される。これらの同じウィンドウを使用して既存の人形を編集することも可能である。このようにして個々の人形を作成することによりサブテーマが生成される。上述したように、サブテーマは個々の特定の人形のテーマである。例えば、会話を記録するために使用する音声は玩具ごとに異なり、コンテキストデータも異なる。この場合も、人形のフォームに入力された情報が、その後出力命令を生成する際に検索するためにサーバ1004内のデータベース1122に記憶される。   The windows shown in FIGS. 13a and 13b can be used to create as many dolls as needed. However, the number of dolls that can be created is limited by the maximum number of dolls determined in advance for that particular theme. It is also possible to edit existing dolls using these same windows. Sub-themes are generated by creating individual dolls in this way. As described above, the sub-theme is the theme of each specific doll. For example, the voice used to record the conversation is different for each toy, and the context data is also different. Again, the information entered in the doll's form is stored in the database 1122 in the server 1004 for later retrieval when generating an output command.

図14は、テーマ内の個々の人形に対して異なるコンテキストを入力するコンテキスト定義ウィンドウを示している。図14に示すように、位置100に2つのコンテキスト1400及び1402が定義されており、1つはDoll#1のためのものであり、1つはDoll#2のためのものである。従って、会話内で位置100がアクセスを受けた場合、上述したような方法により人形が選択され、対応するコンテキストがアクセスを受ける。個々のコンテキストは、人形が何を発言すべきか、及び次にどの人形が発話すべきかに関する情報を保持する。この結果、会話を作成するための構造をテーマ開発者に提供することにより、上述したような会話構築のプロセスが容易化される。テーマ開発者は、もはやテーマ自体をコード化する必要はなく、むしろオーサリングツールが、テーマ開発者の入力に応じて必要なコードを生成する。   FIG. 14 shows a context definition window for entering different contexts for individual dolls in the theme. As shown in FIG. 14, two contexts 1400 and 1402 are defined at location 100, one for Doll # 1 and one for Doll # 2. Thus, when location 100 is accessed in a conversation, a doll is selected by the method described above and the corresponding context is accessed. Each context holds information about what the doll should speak and which doll should speak next. As a result, the process for constructing the conversation as described above is facilitated by providing the theme developer with a structure for creating the conversation. The theme developer no longer needs to code the theme itself, rather the authoring tool generates the necessary code in response to the theme developer's input.

図15は、テーマ内の個々の位置のためのコンテキスト生成ウィンドウを示す。図15に示す例では、これは位置100及びDoll#1のためのコンテキストである。個々のコンテキストは以下の情報を必要とする。
・Position(1500)〜図14に示すコンテキスト定義ウィンドウ内で新しいコンテキストが作成される際にオーサリングツールにより自動的に作成されるこの位置を表記するテキスト文字列。これは個々のコンテキスト行にとって便利なラベルである。これはいずれのテキストであってもよいが、デフォルトはコンテキスト行に100から始めて順に番号を付ける。テキストラベルの使用目的は、会話を作成及び編集している間に明暸さを助長することである。「C」コードの出力が必要な場合、全ての位置ラベルが、コンテキスト位置に対応するyoume_conversation_struct_t構造(この及び本明細書で説明するその他の構造に利用されるCコード命名規則)の配列の形のインデックスに変換される。
・Statement(1502)〜人形が発言できる文のリストであり、ランダム選択プロセスで使用する重み付けを伴う。文は、spoken_text_stringsである語句のリストを含む。これは、会話内のこのコンテキストポイントにおいて特定の人形が発言できる文のリストである。個々の文は角括弧で囲まれ、個々の文をコンマで分離し(例えば[statement1],[statement2],[statement3])、又は図15に示すようにコンテキスト入力ウィンドウの別々の行に入力することができる。文は、ランダム選択用の重み付け及び語句のリストから成る。この場合の重み付けは、SET制御、BRANCH制御又はCHOOSE制御などの条件付きフロー制御を参照しながら上述したような重み付けと同様の態様で機能する。個々の語句は、明示的なspoken_text_string、又はテーマ属性又は人形属性への参照のいずれかであり、例えば、文はテーマの位置又は人形の気分を参照することができる。明示的spoken_text_stringsは、(「こんにちは、お元気ですか」などの)2重引用符内のテキストとして定義される。参照は以下の形を取る
○ theme.attribute テーマ/グローバル属性に関する
○ me.attribute 現在の発話者人形属性に関する
○ prev.attribute 前の発話者人形属性に関する
○ next.attribute 次の発話者人形属性に関する
○ name.attribute 名前の付いた人形/ローカル属性に関する
以下は、Statementsフィールドへの有効な入力例である。
○ ブランク〜これは、この時点でこの人形による発言が存在しないことを意味する。
○ [1,“hello how are you”]〜この時点で「今日は、お元気ですか」と特定された1つの文のみがこの人形により話される。
○ [1,“hello”,prev.name、how are you]〜この時点で「今日は」の次に前の発話者名、その後「お元気ですか」がこの人形により話される。
○ [1,“hello”][1,“hi”]〜等しい重み付けの2つの文。default_say_procedureが使用された場合、この時点で50%の時間は「今日は」がこの人形により発言され、残りの50%の時間は「やあ」が発言される。
○ [3,“hello”][1,“howdy”]−等しくない重み付けの2つの文。default_say_procedureが使用された場合、この時点で75%の時間は「今日は」がこの人形により発言され、残りの25%の時間は「よう」が発言される。
・Say(1504)〜発言するために使用される手順。ブランクにした場合、default_say_procedureが使用される。default_say_procedureは、重み付けを使用して利用可能な文の1つをランダムに選択する。或いは、ドロップダウンリストを使用して、異なる言動を提供するあらゆる利用可能な用意されたsay手順を選択することができる。ドロップダウンリスト内に上述したようなsay手順を提供することができる。最終的に、特別な動作が必要な場合、必要なsay手順の「C」コードをここに入力することができる。
・Transition(1506)〜次の人形を選択するために使用される手順。NOTME、ANY、ME、PREV、FINISHを含む上述の手順のいずれであってもよく、或いは人形の名前の1つ又は何らかの「C」コードをここに入力することができる。ブランクにした場合、NOTME transitionであるdefault_transition_procedureが使用される。これとは別に、利用可能なtransition手順のプルダウンリストが存在する。このリストは、以下の用意されたtransitionで構成され、(各々について詳細に上述したような)ドロップダウンメニューを介してオーサリングツール内でアクセスされる。
○ NOTME 現在の発話者を除くいずれかの人形をランダムに選択する。
○ ANY いずれかの人形をランダムに選択する。
○ ME 現在の発話者を選択する。
○ PREV 前の発話者を選択する。
○ Doll’s name この人形を選択する。
また、特別なtransition動作が必要な場合、必要なtransition手順の「C」コードをここに入力することができる。
・Next(1508)〜ランダム選択プロセスにおいて使用される次にどこへ行くかについての分岐選択のリストであり、重み付けを伴う。これは、次のコンテキスト位置のための分岐選択のリストである。個々の分岐選択は角括弧で囲まれ、コンマで区切られる。
分岐選択自体は位置ラベルのリストから成り、ランダム選択のための重み付けを伴う。上述したようなBRANCHコマンドとフォーマットが類似する。以下は、(各々について詳細に上述したような)このフィールドへの有効な入力例である。
○ [(1,label1),(1,label2)]〜等しい重み付けの2つのラベルの選択を含む1つの分岐選択。
○ [(1,label1),(1,label2)]![(2,label3),(3,label4)]〜2つの分岐選択、最初の方は等しい重み付けの2つのラベルの選択を含み、後の方は重み付け2及び3の2つのラベルの選択を含む。
・Branch(1510)〜分岐に影響を与えるために使用される手順、フォーマットは、会話構造を参照しながら上述したものと同じである。そうでなければ、何らかの「C」コードをここに入力することができる。このフィールドは、分岐手順を指定して分岐選択を処理するために使用される。ブランクにした場合、default_branch_procedureが使用される。default_branch_procedureは、Nextリスト内の最初の分岐選択を使用し、与えられた重み付けを使用してラベルの1つをランダムに選択する。その後、コンテキストは、その位置ラベルとして選択されたラベルを有するコンテキスト行に変更される。これとは別に、利用可能な用意された分岐手順のプルダウンリストが存在する。このドロップダウンリスト内に上述したような分岐手順を提供することができる。
・Attributes(1512)〜属性、seMlag、及びランダム選択のための値及び重み付けのリスト。このフィールドは、このコンテキストポイントにおいて値で設定を行うためのいずれかの属性を指定するために使用され、すなわちテーマ開発者は、「気分」という人形属性をハッピーに設定することができる。ブランクにした場合、属性は設定されない。設定される個々の属性は、角括弧で囲まれ、コンマで区切られる。角括弧内では、属性が指定された後に、属性を一旦設定すべきか、又はリセットすることができるかを指定するset_flagが続き、その後ランダム選択のための値及び重み付けのリストが続く。属性フィールドは、上述したようなSETコマンドの同等物である。以下は、属性フィールドへの有効な入力である。
○ ブランク 属性は設定されない。
○ [me.attribute1,set,(1,“hello”)] 1つの属性が設定され、未だ設定されていない場合、spoken_text_string“hello”の値に「ハロー」が設定される。
○ [me.attribute1,reset,(1,“hello”)(1,“hi”)],[me.attribute2,set,(1,“peter”)(1,“paul”)]
2つの属性が設定される。最初の属性は、すでに設定されていたとしても「ハロー」又は「ハイ」に設定される。次の属性は、未だ設定されていていない場合に「ピーター」又は「ポール」に設定される。
・Set(1514)〜属性値の設定に影響を与えるために使用される手順。ブランクにした場合、default_set_procedureが使用される。default_set_procedureは、set_flagを考慮して個々の指定された属性を適当な値の選択に設定する。「set」のset_flagは、まだ設定されていない場合に限り属性を設定できることを意味する。「reset」のset_flagは、属性を何度でもリセットできることを意味する。これとは別に、利用可能な用意されたset手順のプルダウンリストが存在する。最終的に、何らかの特別なカスタム設定した動作が必要な場合、必要なset手順の「C」コードをここに入力することができる。
FIG. 15 shows the context generation window for individual positions within the theme. In the example shown in FIG. 15, this is the context for location 100 and Doll # 1. Each context requires the following information:
Position (1500) to a text string representing this position automatically created by the authoring tool when a new context is created in the context definition window shown in FIG. This is a convenient label for individual context lines. This can be any text, but the default is to number the context lines sequentially starting at 100. The purpose of text labels is to promote clarity while creating and editing conversations. If output of “C” code is required, all location labels are in the form of an array of the volume_conversion_struct_t structure (this is the C code naming convention used for this and other structures described herein) corresponding to the context location. Converted to an index.
Statement (1502)-A list of sentences that a doll can speak, with weights used in the random selection process. The sentence includes a list of phrases that are spoken_text_strings. This is a list of sentences that a particular doll can speak at this context point in the conversation. Individual sentences are enclosed in square brackets and separated by commas (eg, [statement1], [statement2], [statement3]) or entered on separate lines in the context input window as shown in FIG. be able to. A sentence consists of a list of random selection weights and phrases. The weighting in this case functions in the same manner as the weighting described above with reference to conditional flow control such as SET control, BRANCH control, or CHOOSE control. Each phrase is either an explicit spoken_text_string, or a reference to a theme attribute or doll attribute, for example, a sentence can refer to a theme location or doll mood. Explicitly spoken_text_strings is defined as the text of the ( "Hello, how are you" such as) in double quotation marks. The reference takes the following form: ○ theme. attribute on theme / global attribute ○ me. attribute related to the current speaker doll attribute ○ prev. attribute related to the previous speaker doll attribute ○ next. attribute related to the next speaker doll attribute ○ name. The following for an attribute named doll / local attribute is an example of a valid input to the Statements field.
○ Blank ~ This means that there is no remark by this doll at this point.
[1, “hello how are you”]-At this point, only one sentence identified as "How are you today?" Is spoken by this doll.
[1, “hello”, prev. name, how are you]-At this point in time, the utterance name next to "Today is" and then "How are you" are spoken by this doll.
O [1, “hello”] [1, “hi”] to two sentences with equal weighting. If default_say_procedure is used, 50% of the time will be spoken by this doll for 50% of the time and the rest of 50% will be spoken of “Hi”.
O [3, “hello”] [1, “howdy”] — Two sentences with unequal weights. If default_say_procedure is used, 75% of the time will be spoken by this doll for 75% of the time, and the other 25% of the time will be spoken of “Yo”.
Say (1504)-Procedure used to speak. If left blank, default_say_procedure is used. default_say_procedure randomly selects one of the available sentences using weighting. Alternatively, the drop-down list can be used to select any available prepared say procedure that provides different behavior. A say procedure as described above can be provided in the drop-down list. Finally, if a special action is required, the “C” code of the required say procedure can be entered here.
Transition (1506) —The procedure used to select the next doll. It can be any of the procedures described above including NOTME, ANY, ME, PREV, FINISH, or one of the names of the dolls or some “C” code can be entered here. When blank, default_transition_procedure which is NOTME transition is used. Apart from this, there is a pull-down list of available transition procedures. This list consists of the following prepared transitions, accessed in the authoring tool via a drop-down menu (as described in detail above for each).
○ NOTME Randomly select any doll except the current speaker.
○ ANY Select any doll at random.
○ ME Selects the current speaker.
○ PREV Select the previous speaker.
○ Doll's name Select this doll.
Also, if a special transition operation is required, the “C” code for the required transition procedure can be entered here.
Next (1508)-a list of branch choices for where to go next used in the random selection process, with weights. This is a list of branch choices for the next context location. Individual branch selections are enclosed in square brackets and separated by commas.
The branch selection itself consists of a list of position labels, with weights for random selection. The format is similar to the BRANCH command as described above. The following are examples of valid entries for this field (as described in detail above for each):
O [(1, label1), (1, label2)] to one branch selection including selection of two labels with equal weighting.
○ [(1, label1), (1, label2)]! [(2, label3), (3, label4)] to two branch selections, the first includes the selection of two labels with equal weighting, the latter includes the selection of two labels with weights 2 and 3 .
Branch (1510) —The procedure and format used to influence the branch is the same as described above with reference to the conversation structure. Otherwise, some “C” code can be entered here. This field is used to specify a branch procedure and handle branch selection. If left blank, default_branch_procedure is used. default_branch_procedure uses the first branch selection in the Next list and randomly selects one of the labels using the given weights. The context is then changed to a context line with the label selected as its location label. Apart from this, there is a pull-down list of prepared branch procedures available. A branching procedure as described above can be provided in this drop-down list.
Attributes (1512) —List of values and weights for attributes, seMlag, and random selection. This field is used to specify any attribute to set by value at this context point, i.e. the theme developer can set the doll attribute "mood" happy. If left blank, no attribute is set. Individual attributes to be set are enclosed in square brackets and separated by commas. Within the square brackets, after an attribute is specified, it is followed by a set_flag that specifies whether the attribute should be set once or can be reset, followed by a list of values and weights for random selection. The attribute field is the equivalent of the SET command as described above. The following are valid inputs to the attribute field:
○ Blank Attribute is not set.
○ [me. attribute1, set, (1, “hello”)] When one attribute is set and is not set yet, the value of spoken_text_string “hello” is set to “hello”.
○ [me. attribute1, reset, (1, “hello”) (1, “hi”)], [me. attribute2, set, (1, "peter") (1, "paul")]
Two attributes are set. The first attribute is set to “Hello” or “High” even if it is already set. The next attribute is set to “Peter” or “Paul” if it is not already set.
Set (1514) —The procedure used to influence the setting of the attribute value. If blank, default_set_procedure is used. default_set_procedure sets each specified attribute to the selection of an appropriate value taking into account set_flag. A set_flag of “set” means that an attribute can be set only when it has not been set yet. A set_flag of “reset” means that the attribute can be reset any number of times. Apart from this, there is a pull-down list of prepared set procedures available. Finally, if any special custom action is required, the “C” code for the required set procedure can be entered here.

上述したように、Statements、Say、Transition、Next、Branch、Attributes、及びSetのフィールドが個々の人形ごとに反復される。Say、Transition、Next及びBranchのフィールドは全て、玩具/人形間の対話方法に寄与するパラメータであり、これらの全ては会話構造を参照しながら上述したようなコマンドと同等である。   As described above, the Statements, Say, Transition, Next, Branch, Attributes, and Set fields are repeated for each doll. The Say, Transition, Next, and Branch fields are all parameters that contribute to the toy / doll interaction method, all of which are equivalent to commands as described above with reference to the conversation structure.

図15bは、コンテキスト生成ウィンドウの代替の実施形態を示している。領域1550に示すように、次の人形がいつ発言するかをユーザが決定できるようにするよう設定できる追加パラメータが存在する。これらのオプションは、後続、開始からの時間を計る、終了からの時間を計る、の3つである。後続パラメータは、発話している人形に続けて、すなわち重ならず交互に会話を継続できるようにする。開始からの時間を計るパラメータは、ユーザに、人形が発話を開始してから次の人形が発話を開始するまでの時間間隔を入力できるようにする。これによって2体の人形が同時に発話できるようになり、例えば複数の人形がジョークに反応して同時に笑うことができる。終了からの時間を計るパラメータは、開始からの時間を計るパラメータと類似しているが、ユーザが、次の人形が現在の人形の発話の終了前に発話を開始するための時間間隔を入力する点が異なる。この機能により、より本物そっくりの会話を構築できるようになる。   FIG. 15b shows an alternative embodiment of the context generation window. As shown in region 1550, there are additional parameters that can be set to allow the user to determine when the next doll will speak. There are three options: follow, time from start, time from end. The subsequent parameters allow the conversation to continue following the doll that is speaking, i.e. alternately without overlapping. The parameter for measuring time from the start allows the user to enter the time interval from when the doll starts speaking until the next doll starts speaking. This allows two dolls to speak at the same time, for example, multiple dolls can react to jokes and laugh at the same time. The parameter to time from end is similar to the parameter to time from start, but the user enters a time interval for the next doll to start speaking before the end of the current doll's utterance. The point is different. This feature allows you to build a more authentic conversation.

会話が完了するまで、Contextオプションを繰り返し使用して、会話にコンテキスト行を追加する。   Use the Context option repeatedly to add a context line to the conversation until the conversation is complete.

個々の人形及び個々のコンテキストの定義を含め、テーマが完了すると、オーサリングツールはセーブ機能を提供する。このオプションは会話を保存するために使用され、一例として以下のディレクトリを作成する。
c:\youme\themes\theme_name
c:\youme\themes\theme_name\doll_name〜個々の人形ごと
c:\youme\themes\theme_name\doll_name\audio〜個々の人形ごと
When the theme is complete, including the definition of individual dolls and individual contexts, the authoring tool provides a save function. This option is used to save conversations and creates the following directories as an example:
c: \ youme \ themes \ theme_name
c: \ youme \ themes \ theme_name \ doll_name ~ for each doll c: \ youme \ themes \ theme_name \ doll_name \ audio ~ for each doll

従って、1つのテーマに必要なファイルは、全てマスターディレクトリフォルダ「theme_name」内に保存される。個々の人形ごとにサブフォルダを作成して、個々の人形のダウンロードを効率的に管理できるようにする。最終的に、個々の人形のサブフォルダは、この人形に必要なオーディオファイルを記憶するためのフォルダを有する。   Therefore, all the files necessary for one theme are stored in the master directory folder “theme_name”. Create subfolders for each individual doll so that the download of individual dolls can be managed efficiently. Finally, each doll's subfolder has a folder for storing the audio files needed for this doll.

このオプションは以下のファイルも作成する。
c:\youme\themes\theme_name\theme.txt〜テキストファイルとしてテーマデータを含む。
c:\youme\themes\theme_name\doll_name\doll.txt〜テキストファイルとして人形データを含む。
c:\youme\themes\theme_name\doll_name\audio\A00001.wav
c:\youme\themes\theme_name\doll_name\audio\A00002.wav
...
...
...
c:\youme\themes\theme_name\doll_name\audio\A00010.wav
...
...
c:\youme\themes\theme_name\doll_name\audio\Annnnn.wav
This option also creates the following files:
c: \ youme \ themes \ theme_name \ theme. txt—includes theme data as a text file.
c: \ youme \ themes \ theme_name \ doll_name \ doll. txt ~ Contains doll data as a text file.
c: \ youme \ themes \ theme_name \ doll_name \ audio \ A00001. wav
c: \ youme \ themes \ theme_name \ doll_name \ audio \ A00002. wav
. . .
. . .
. . .
c: \ youme \ themes \ theme_name \ doll_name \ audio \ A00010. wav
. . .
. . .
c: \ youme \ themes \ theme_name \ doll_name \ audio \ Annnnn. wav

作成されるwavファイルは、個々の人形ごとにテーマ内で定義されるspoken_text_stringsの各々のプレースホルダである。spoken_text_stringsには、A00001.wavから開始する順番でA0000n.wavというファイル名が割り当てられる。ファイル名の中で使用されるnは、「C」コードの出力が必要な場合の語句のインデックスとしても使用される。1つの例では、レコーダ(1112)が、必要なspoken_text_stringを上演させるように関係者を促し、その後、次のspoken_text_stringで関係者を促す前に正しいファイル名でファイルを自動的に保存する。   The created wav file is a placeholder for each of the spoke_text_strings defined in the theme for each doll. spoken_text_strings includes A00001. In the order starting from wav, A0000n. The file name wav is assigned. N used in the file name is also used as an index of a word when the output of “C” code is required. In one example, the recorder (1112) prompts participants to play the required spoken_text_string, and then automatically saves the file with the correct file name before prompting the participant with the next spoken_text_string.

また、オーサリングツールは、会話に対応する「C」コードを生成するようになっている。「C」コードの大部分は予め定義され(基本命令セット)、玩具/人形のプロセッサのためのオペレーティングシステムとして機能する。会話に対応する「C」コード(テーマ別命令セット)が出力されると、予め定義された「C」コードと組み合わされ(図11を参照)、その後これがコンパイルされて人形又はPC内のプロセッサを操作するのに適したバイナリファイルが作成される。新しいテーマが作成されるたびに人形にオペレーティングシステム/ファームウェアを組み込むことにより、必要なときにいつでも人形の機能を単純かつ効率的に変更できるようになる。   The authoring tool generates a “C” code corresponding to the conversation. Most of the "C" code is predefined (basic instruction set) and serves as an operating system for the toy / doll processor. When the “C” code (thematic instruction set) corresponding to the conversation is output, it is combined with a predefined “C” code (see FIG. 11), which is then compiled to run the doll or processor in the PC. A binary file suitable for operation is created. By incorporating an operating system / firmware into the doll whenever a new theme is created, the doll's functionality can be changed simply and efficiently whenever needed.

2種類の「C」コードを出力することができる。
1.ウィンドウ用「C」コード〜この「C」コードは以下の形で保存することができる。
c:\youme\themes\theme_name\theme_simulation.c、及び
c:\youme\themes\theme_name\theme_simulation.h
後でこのコードをコンパイルしてウィンドウベースの会話シミュレーションエンジンとリンクさせることができる。結果的に得られるアプリケーションを、c:\youme\themes\theme_name\simulation.exeの形で保存することができる。シミュレータにより、ユーザがどの人形を現在の及びアクティブな人形と考えるべきかを指定できるようになる。その後、シミュレータは、実際の人形で行われそうな形で会話例をシミュレートする。シミュレータは、アクティブな人形の1つを現在の発話者となるようにランダムに選択し、この人形の最初のコンテキスト行を処理する。その後、個々の新しい行を順に実行して、どの人形が発話しているか、及びこれらが何を発言しているかを出力する。シミュレータは、会話が終わるまで継続する。
2.プロセッサ用「C」コード〜後でこのコードをコンパイルし、修正済みのプレイヤとリンクさせて個々の人形ごとのバイナリデータファイルを生成することができる。これらの「C」コードファイルは、個々の人形ごとに以下の形で保存することができる。
c:\youme\themes\theme_name\dollname\youme_chat.c、及び、
c:\youme\themes\theme_name\dollname\youme_chat.h
結果的に得られるバイナリデータファイルを以下の形で保存することができる。
:c:\youme\themes\theme_name\doll_name\player.sb.
Two types of “C” codes can be output.
1. "C" code for window-This "C" code can be stored in the following form.
c: \ youme \ themes \ theme_name \ theme_simulation. c, and c: \ youme \ themes \ theme_name \ theme_simulation. h
This code can later be compiled and linked with a window-based conversation simulation engine. The resulting application is c: \ youme \ themes \ theme_name \ simulation. It can be saved in exe form. The simulator allows the user to specify which dolls should be considered current and active dolls. The simulator then simulates an example conversation in a way that would be performed with an actual doll. The simulator randomly selects one of the active dolls to be the current speaker and processes the first context line for this doll. Each new line is then executed in turn to output which dolls are speaking and what they are speaking. The simulator continues until the conversation ends.
2. Processor “C” code—this code can later be compiled and linked with a modified player to generate a binary data file for each individual doll. These “C” code files can be stored for each individual doll in the following form:
c: \ youme \ themes \ theme_name \ dollname \ youme_cat. c and
c: \ youme \ themes \ theme_name \ dollname \ youme_cat. h
The resulting binary data file can be saved in the following form:
: C: \ youme \ themes \ theme_name \ doll_name \ player. sb.

バイナリデータファイルは、個々の人形において会話を実行するために必要な情報セット全体を含む。このバイナリデータファイルはプロセッサ用ファームウェアを含むので、ファームウェアを更新する追加のプロセスを必要とせずに、人形の機能に追加の特徴を組み入れることができる。   The binary data file contains the entire set of information necessary to carry out a conversation in an individual doll. Since this binary data file contains the firmware for the processor, additional features can be incorporated into the doll's functionality without requiring an additional process to update the firmware.

人形用のwavファイルとして正しい語句を記録するために、図11に示すように、個々の人形ごとに全ての異なる語句(spoken_text_strings)のリストを作成し、辞書生成エンジン1110を使用して出力し、これが個々の人形にとって必要な語句の辞書となる。辞書生成エンジン1110は、サーバ1004内のデータベース1122と通信し、データベース内に記憶されたテーマに関する情報に基づいてリストをコンパイルする。この辞書は、事実上、表現/文と、この表現/文に割り当てられたID番号との間のルックアップテーブルである。   In order to record correct words as a puppet wav file, a list of all different words (spoken_text_strings) is created for each individual doll as shown in FIG. 11 and output using the dictionary generation engine 1110, This is a dictionary of words that are necessary for each doll. The dictionary generation engine 1110 communicates with the database 1122 in the server 1004 and compiles the list based on information about themes stored in the database. This dictionary is effectively a lookup table between an expression / sentence and the ID number assigned to this expression / sentence.

個々の人形が使用する語句は、個々のコンテキスト行のStatementsフィールド及びAttributesフィールド内で定義される。これらは明示的に定義されたspoken_text_stringsであってもよく、或いはカスタム属性への参照であってもよい。明示的なspoken_text_stringが定義されるときには常に、A00001.wavから開始する順番のA00xxx.wavなどのファイル名がこれに割り当てられる。番号xxxもまた語句のインデックスである。spoken_text_stringsのリストは以下のファイル内に保存することができる。
c:\youme\themes\theme_name\phrases.txt〜これは、このテーマで使用される全ての語句のリストを含む。
c:\youme\themes\theme_name\doll_name\phrases.txt〜これらは、個々の人形が使用する全ての語句のリストを含む。
The phrases used by individual dolls are defined in the Statements and Attributes fields of the individual context lines. These may be explicitly defined spoken_text_strings or may be references to custom attributes. Whenever an explicit spoke_text_string is defined, A00001. A00xxx. of the order starting from wav. A file name such as wav is assigned to this. The number xxx is also a phrase index. The list of spoken_text_strings can be saved in the following file:
c: \ youme \ themes \ theme_name \ phrases. txt ~ This contains a list of all the phrases used in this theme.
c: \ youme \ themes \ theme_name \ doll_name \ phrases. txt ~ These contain a list of all the phrases used by an individual doll.

これらのファイルは、以下のフォーマットのテキストを含む。
A00xxx テキストとしての関連語句
These files contain text in the following format:
A00xxx Related phrases as text

このようにして、語句のリストを順番に記録し、適当なファイル名で保存し、人形内で使用するための、或いはPCが仮想人形として機能する場合にはPC内で使用するためのダウンロードに向けて準備することができるので、数多くのwavファイルを作成するプロセスが単純化される。   In this way, a list of words is recorded in order, saved with an appropriate file name, and used for use in a doll, or for use in a PC if the PC functions as a virtual doll. The process of creating a large number of wav files is simplified.

図12aに示すように、ファイルを生成するプロセスは、ボタン1212「ファイルの生成」により起動される。ユーザは、完了している適当なテーマを選択してボタン1212を押す。これにより、上述したようなファイルが生成される。その後、ファイルのバンドル全体が人形にアップロードされ、このバンドルは、テーマ及び付随するオペレーティングシステムのバイナリファイル、発話のためのサウンド(wav)ファイル及びプロセッサ動作コード(ファームウェア)を含む。   As shown in FIG. 12a, the process of creating a file is activated by a button 1212 “Create File”. The user selects an appropriate theme that has been completed and presses button 1212. Thereby, the file as described above is generated. The entire bundle of files is then uploaded to the doll, which includes the theme and accompanying operating system binary files, sound (wav) files for speech and processor operating code (firmware).

上述したように、youme_conversation_struct_tという会話構造の配列が会話の主な制御データである。概略的には、コントローラ人形において会話が操作される場合、最初の人形に関するこの配列のインデックス1により指定されたコンテキストにおいて会話エンジンが起動する。その後、以下の行動を行う。
1.現在のコンテキストのtransition手順を呼び出して、どの人形が次になるかを決定する。
2.現在のコンテキストのset手順を呼び出して、コンテキスト内で指定されたあらゆる属性の値を設定する。
3.現在のコンテキストのsay手順を呼び出して、コンテキスト内に指定されたデータに従ってどの文を発言すべきかを選択する。この結果、現在の人形がコントローラ人形でない場合、遠隔の人形との無線通信が行われる。いずれにせよ、エンジンは手順の前にオーディオ出力が完了するまで待機する。
4.コンテキストのbranch手順を呼び出して、次のインデックスを選択し、使用する会話配列に入れる。
5.前の人形ポインタ(prev)を現在の人形ポインタ(me)と同等に設定する。
6. 現在の人形ポインタ(me)を次の人形ポインタ(next)と同等に設定する。
次の人形ポインタは、ステップ1において設定済みである。
7.その後、新しいインデックス及び新しい人形で再びステップ1から開始し、ステップ4の1つにおいてFINISH分岐にぶつかるまでこのプロセスを継続する。
As described above, an array of conversation structure called volume_conversion_struct_t is the main control data of conversation. In general, when a conversation is operated on a controller doll, the conversation engine is started in the context specified by index 1 of this array for the first doll. Then, the following actions are taken.
1. Call the current context's transition procedure to determine which doll will be the next.
2. Call the current context's set procedure to set the value of any attribute specified in the context.
3. Call the current context's say procedure to select which sentence to speak according to the data specified in the context. As a result, if the current doll is not a controller doll, wireless communication with a remote doll is performed. In any case, the engine waits for audio output to complete before the procedure.
4. Call the context's branch procedure to select the next index and place it in the conversation array to use.
5. Set the previous doll pointer (prev) equal to the current doll pointer (me).
6. Set the current doll pointer (me) equal to the next doll pointer (next).
The next doll pointer has been set in step 1.
7. Then start again at step 1 with the new index and new doll, and continue this process until the FINISH branch is hit in one of steps 4.

図12dに示す代替の実施形態では、会話を入力する追加の方法を提供する。「インポートテーマ」ボタン1250は、ユーザがテーマ別会話を作成するためにテキストファイルをインポートできるようにする。テキストファイルをインポートには、ファイルを適切にフォーマットしなければならない。このインポートテーマ機能は、テキストファイルを人形にアップロードするのに適したフォーマットにユーザからのさらなる入力を伴わずに直接変換できるようにする。   In the alternative embodiment shown in FIG. 12d, an additional method of entering a conversation is provided. The “Import Theme” button 1250 allows the user to import a text file to create a thematic conversation. To import a text file, the file must be properly formatted. This import theme feature allows a text file to be converted directly into a format suitable for uploading to a doll without further input from the user.

テキストファイルのコンテンツは、テーマを構築するために必要なコンテンツの一部又は全てとすることができる。例えば、テキストファイルは、あらゆる話題に関する(好ましくは内蔵された)会話全体を含むことができる。次に、この会話全体をオーサリングツールにインポートして、人形を制御するのに適したフォーマットに変換する。テキストファイルは、見た目が(プレイなどのための)スクリプトと同様であり、人形名の後にこの人形が発言すべき単語が続く。オーサリングツールは、テキストファイル内を進み、人形名を抽出し、図13a及び図13bを参照しながら上述したようにこの名前の人形を作成し、その後対応するテキストをコンテキスト(コンテキストについては上記でより詳細に説明している)として記憶する。抽出手順中、オーサリングツールは、同じ人形名が以前にテキストファイルから抽出されたことがない場合にのみ新たな人形を作成する。この場合、対応するテキストがこの人形の別のコンテキストとして記憶される。この手順は、テキストファイル全体がオーサリングツール内に解析され終わるまで継続する。   The content of the text file can be part or all of the content necessary to build the theme. For example, a text file can contain an entire conversation (preferably built-in) on any topic. The entire conversation is then imported into the authoring tool and converted into a format suitable for controlling the doll. The text file looks similar to a script (for play, etc.), and the doll name is followed by the word that the doll should speak. The authoring tool proceeds through the text file, extracts the doll name, creates a doll with this name as described above with reference to FIGS. 13a and 13b, and then enters the corresponding text into the context (context above for context). As described in detail). During the extraction procedure, the authoring tool creates a new doll only if the same doll name has not been previously extracted from the text file. In this case, the corresponding text is stored as another context for this doll. This procedure continues until the entire text file has been parsed into the authoring tool.

図12eはテキストファイルをオーサリングツール内にインポートする処理のフロー図である。インポート手段が、人形名に関連するテキストの行を識別し、この名前の人形が存在しない場合、人形を作成する。次に、テキストがオーサリングツールデータベースにインポートされ、対応する人形のコンテキストに関連付けられる。この処理は、テキストの行が全てオーサリングツール内にインポートされるまで継続する。テキストファイルが解析されるようにするためには、これを正しくフォーマットしなければならず、この場合、人形名の後にコロンを続けなければならず、後続する人形のための個々の入力は新たな行に行わなければならない。付録Iには、以下のフォーマット要件を使用してフォーマットしたテキストファイルの例を示す。
・$Theme:
・この記述に続くテキストはテーマ名としてインポートされる。
・$Dolln:
・この記述に続くテキストはDollnと呼ばれる人形のための記述としてインポートされる。
FIG. 12e is a flowchart of a process for importing a text file into the authoring tool. The importing means identifies the line of text associated with the doll name and creates a doll if no doll with this name exists. The text is then imported into the authoring tool database and associated with the corresponding doll context. This process continues until all lines of text are imported into the authoring tool. In order for the text file to be parsed, it must be formatted correctly, in which case the doll name must be followed by a colon, and the individual input for subsequent dolls will be new. Must be done on line. Appendix I shows an example of a text file formatted using the following formatting requirements:
・ $ Theme:
• The text following this description is imported as the theme name.
・ $ Dolln:
The text following this description is imported as a description for a doll called Dolln.

上述したように、オーサリングツールは、テキストファイルを解析してしまうと出力命令を生成する。この実施形態では、テキストファイル会話エンジンが、確定的会話のみを作成できるようにする。しかしながら、後述するように、テキストファイルがオーサリングツール内にインポートされると、ユーザは、さらなる確率的結果を含めるように会話を修正することができる。   As described above, the authoring tool generates an output command when the text file is analyzed. In this embodiment, the text file conversation engine allows only deterministic conversations to be created. However, as described below, once the text file is imported into the authoring tool, the user can modify the conversation to include additional probabilistic results.

USB通信ドングル
さらなる実施形態では、PCが本明細書で説明するような玩具と無線で対話できるようにするUSB通信ドングルが提供される。図16は、PC304に取り付けられ、人形100と無線通信しているUSB通信ドングル1600の概略図である。ドングルは、無線モジュール104と、IR/RF送/受信機212と、インターフェイス1602とを含む。これらの構成要素は、インターフェイス1602を除き、上述したような人形100内に含まれるものと同じものである。しかしながら、PC304は、人形100が有するような独立したプロセッサを有するドングルの代わりにプロセッサ1604として利用され、従って事実上、PCが物理的人形100と通信できる仮想人形になる。仮想人形には、現実の人形と同様の外観を有することができる、PCのモニタに表示されるアニメ化したアバターが提供され、これによりアバターのアニメーションが人形の発話と同期化される。会話を実行するために、PCは、玩具のプロセッサをエミュレートするためのエミュレータをメモリ1606内に記憶している。或いは、上述したように、オーサリングツールがPCベースの仮想人形の特定のコードを出力する。いずれにせよ、テーマ別会話データを使用し、玩具/人形のファームウェアをエミュレートするPC上で実行されるアプリケーションを使用して会話が実行される。玩具/人形の発話は、PCのスピーカを介して出力される。
USB Communication Dongle In a further embodiment, a USB communication dongle is provided that allows a PC to interact wirelessly with a toy as described herein. FIG. 16 is a schematic diagram of a USB communication dongle 1600 attached to the PC 304 and wirelessly communicating with the doll 100. The dongle includes a wireless module 104, an IR / RF transmitter / receiver 212, and an interface 1602. These components are the same as those included in the doll 100 as described above, except for the interface 1602. However, the PC 304 is used as a processor 1604 instead of a dongle having an independent processor as the doll 100 has, thus effectively becoming a virtual doll that allows the PC to communicate with the physical doll 100. The virtual doll is provided with an animated avatar that can have an appearance similar to that of a real doll and displayed on a PC monitor, thereby synchronizing the avatar animation with the doll's utterance. To execute the conversation, the PC stores an emulator in memory 1606 for emulating a toy processor. Alternatively, as described above, the authoring tool outputs a specific code for the PC-based virtual doll. In any case, the conversation is performed using an application running on a PC that emulates toy / doll firmware using thematic conversation data. The toy / doll utterance is output via a PC speaker.

インターフェイス1602はUSB接続であり、無線通信ドングル1600をPC304に接続するための効率的な方法を提供する。ドングルが使用する無線通信プロトコルは、本明細書で説明するような人形間で使用されるものと同じものであり、すなわちIEEE802.15.4.である。   Interface 1602 is a USB connection and provides an efficient way to connect wireless communication dongle 1600 to PC 304. The wireless communication protocol used by the dongle is the same as that used between dolls as described herein, ie IEEE 802.15.4. It is.

ユーザは、ウェブサイトに接続すると、USB通信ドングルを使用して物理的人形とウェブサイト内でアニメ化された仮想人形との間の会話を容易化することができる。このようにして、1人のユーザが、複数の物理的人形を必要とせずに人形の会話エンジンの機能を使用することができる。また、仮想人形は、複数の物理的人形との会話に参加することができる。2人のユーザが各々USB通信ドングルを取り付けたラップトップコンピュータを有する場合、仮想人形が他の仮想人形と対話することもできる。   When connected to a website, a user can use a USB communication dongle to facilitate a conversation between a physical doll and a virtual doll animated within the website. In this way, a single user can use the functions of a doll conversation engine without the need for multiple physical dolls. The virtual doll can also participate in conversations with a plurality of physical dolls. If two users each have a laptop computer with a USB communication dongle attached, the virtual doll can also interact with other virtual dolls.

ゲームのプレイ
さらなる実施形態では、玩具が子供とゲームをプレイするようにもなっている。例えば、ヘビとはしご、ネズミ取り、ルード又はサイコロを使用してプレイすることができる他のあらゆる偶然に基づくゲームなどのボードゲームを玩具がプレイすることができる。
Game Play In a further embodiment, the toy also plays a game with the child. For example, a toy can play a board game, such as a snake and ladder, a mousetrap, any other accident-based game that can be played using a lude or dice.

玩具には、サイコロをシミュレートするために使用される乱数発生器が設けられる。さらに、玩具は、駒がボードに沿って進むことができるスペースの数を計数するようになっている。玩具は、駒を必要なスペースの数だけ移動させるように音で子供に合図する。子供が駒を移動させると、子供はボタンなどを押すことにより、次の玩具/子供の番であることを玩具に示す。或いは、ボードは対話型でもあり、プレイボードからカウンタの位置に関する情報を受信するセンサなどを含む。プレイは、勝者が出るまでこのように進行する。   The toy is provided with a random number generator that is used to simulate the dice. In addition, the toy counts the number of spaces that the piece can travel along the board. The toy signals the child with a sound to move the piece by the required number of spaces. When the child moves the piece, the child indicates to the toy that it is the next toy / children's turn by pressing a button or the like. Alternatively, the board is also interactive and includes a sensor that receives information about the position of the counter from the playboard. Play proceeds in this way until a winner is reached.

図5は、ゲームエンジン400をさらに含むコントローラ玩具200の概略図である。残りの構成要素は、図2及び図3で説明したものと同じである。ゲームエンジン400は、ボードメモリ402と、乱数発生器404と、位置RAM406と、確認応答受信機408とを含む。   FIG. 5 is a schematic diagram of a controller toy 200 further including a game engine 400. The remaining components are the same as those described in FIGS. The game engine 400 includes a board memory 402, a random number generator 404, a position RAM 406, and an acknowledgment receiver 408.

ボードメモリ402は、ヘビとはしご又はルードなどのボードゲームのレイアウトに関する情報を記憶する。乱数発生器は、サイコロをシミュレートするために使用され、数字1、2、3、4、5及び6(又は、ゲームに適した他のいずれかの数字セット)を生成するようになっている。位置RAMは、この場合はコントローラ及び3つのスレーブであるが、プレイヤの各々のボード上の位置に関する情報を記憶するために使用される。ボードメモリ及び仮想サイコロの転がりとともにこの情報を使用して、駒が移動するのに適した位置の数を計数し、駒が移動するスクウェアにはしごの底部又はヘビの頭部などの何らかの特別な関連性があるかどうかを識別する。   The board memory 402 stores information relating to the layout of a board game such as a snake, a ladder, or a roodo. A random number generator is used to simulate the dice and generate numbers 1, 2, 3, 4, 5 and 6 (or any other set of numbers suitable for the game) . The position RAM, in this case a controller and three slaves, is used to store information about the position of each player on the board. Use this information along with the rolling of the board memory and virtual dice to count the number of positions suitable for the piece to move, and any special associations such as the bottom of the ladder or the head of the snake to the square where the piece moves Identify if there is sex.

会話エンジン204は、ゲームエンジンから得られる情報を利用してスペースの数を計数し、例えば最初の位置がスクウェア13であり、仮想サイコロを転がして4が出た場合、人形が「4が出て、14、15、16、17と移動したよ」)とスピーカ210を介して発声する。この例では、スクウェア17がヘビの頭部とした場合、人形は「あらら、スクウェア6までヘビを滑り落ちてしまった」と発声するであろう。計数メカニズムは、テキストを適当な回数循環し、そこで位置RAM406内の最終位置を思い出す。従って、例えば仮想サイコロを転がして4が出た場合、数字のリストに4回アクセスして最終結果を出す。   The conversation engine 204 counts the number of spaces using information obtained from the game engine. For example, when the first position is the square 13 and the virtual dice rolls and 4 comes out, the doll is “4 out. , 14, 15, 16, and 17 "). In this example, if the square 17 is the snake's head, the doll will say, "Oh, I've slipped down the snake to the square 6." The counting mechanism circulates the text an appropriate number of times where it remembers the final position in the position RAM 406. Thus, for example, if the virtual dice is rolled and 4 is output, the final result is obtained by accessing the list of numbers four times.

また、人形は、子供が起動する外部乱数発生器から情報を受信することもできる。このようにして、子供が人形と一緒に遊ぶことができ、人形は、子供を含むプレイヤの駒の全ての経過を追っていつ勝者が出たかを判定することができる。   The doll can also receive information from an external random number generator activated by the child. In this way, the child can play with the doll, and the doll can determine when the winner has come out following all the progress of the player's pieces including the child.

図6は、ゲームをプレイするプロセスのフロー図である。ゲームはユーザにより開始され(ステップ500)、コントローラ人形がプレイヤの数を判定するためのチェックを行う(ステップ502)。次に、コントローラ人形が乱数発生器などを使用して最初のプレイヤを決める(ステップ504)。次に、コントローラ人形が最初のプレイヤのために仮想サイコロを転がし(ステップ506)、或いは子供が最初のプレイヤの場合には、コントローラ人形が子供にサイコロを転がすように求める。次に、コントローラ人形は、プレイヤにカウンタ/駒をボード上の対応するスクウェアの数だけ移動させるように指示し(ステップ508)、その後子供がカウンタを移動させたという確認応答を待つ(ステップ510)。ステップ512において、コントローラ人形は、子供にカウンタが移動したという確認応答を促すまで、2秒、3秒、5秒又は8秒などの所定の秒数待つ。コントローラ人形が確認応答を受信すると、プレイヤがゲームに勝ったかどうかを判定するためのチェックが行われる(ステップ514)。プレイヤがゲームに勝っていなかった場合、プレイは次のプレイヤへ進み(ステップ516)、プレイヤが勝つまで(ステップ518)ステップ506からプロセスが続く。   FIG. 6 is a flow diagram of a process for playing a game. The game is started by the user (step 500) and the controller doll performs a check to determine the number of players (step 502). Next, the controller doll determines the first player using a random number generator or the like (step 504). Next, the controller doll rolls the virtual dice for the first player (step 506), or if the child is the first player, the controller doll asks the child to roll the dice. The controller doll then instructs the player to move the counter / piece by the number of corresponding squares on the board (step 508) and then waits for an acknowledgment that the child has moved the counter (step 510). . In step 512, the controller doll waits for a predetermined number of seconds, such as 2, 3, 5, or 8 seconds until it prompts the child to acknowledge that the counter has moved. When the controller doll receives a confirmation response, a check is made to determine if the player has won the game (step 514). If the player has not won the game, play proceeds to the next player (step 516) and the process continues from step 506 until the player wins (step 518).

ゲームエンジンは、上述した方法であらゆるルールに基づくゲームをプレイするようになっている。   The game engine is adapted to play a game based on any rule by the method described above.

或いは、システムがC言語などの従来のプログラム言語を実行し、より複雑なアルゴリズムを実行してチェスなどのより複雑なゲームをプレイすることができる。上述したものと同じ言語を使用して会話を生成し、またこの言語がC言語プログラムから参照されるであろう。   Alternatively, the system can execute a conventional programming language such as C language and execute a more complicated algorithm to play a more complicated game such as chess. The conversation will be generated using the same language as described above, and this language will be referenced from the C language program.

このような玩具及び人形は子供に異なる対話の機会を与え、子供たちのプレイを向上させる。   Such toys and dolls give children different opportunities to interact and improve their play.

テーマの例
会話を構築する異なる方法の様々な例が存在する。例えば、動物園というテーマとペットというテーマなどのランダムに生成された会話、台本通りの(確定的)会話、ヘビとはしごなどをプレイできるようにするゲームをプレイするというテーマを有することができる。
Theme examples There are various examples of different ways to build a conversation. For example, it may have the theme of playing a game that allows you to play randomly generated conversations, such as a zoo theme and a pet theme, a scripted (deterministic) conversation, a snake, a ladder, and the like.

ユニットのプロセッサ102を、会話コンパイラ206、会話データベース208及びパラメータ記憶装置216などのその他のモジュールとともに使用してテーマ内のスクリプトを解釈する。例えば、変数が定義された場合、パラメータ記憶装置内でメモリが割り当てられる。会話が開始されるたびに、パラメータ記憶装置内で変数が割り当てられる。これによりテーマを変更すること、すなわち動物園からペットへの変更ができるようになり、また前の会話からの変数と衝突することなく適当なメモリリソースに新しい変数を割り当てできるようになる。さらに、PREV、NEXT及びMEなどのパラメータにもパラメータ記憶装置内のメモリが割り当てられる。これにより、SELECT文がスクリプト内のパラメータを参照できるようになる。   The unit's processor 102 is used in conjunction with other modules such as the conversation compiler 206, conversation database 208 and parameter store 216 to interpret scripts in the theme. For example, if a variable is defined, memory is allocated in the parameter store. Each time a conversation is started, a variable is assigned in the parameter store. This makes it possible to change the theme, ie change from zoo to pet, and assign new variables to appropriate memory resources without conflicting with variables from previous conversations. Further, the memory in the parameter storage device is allocated to parameters such as PREV, NEXT, and ME. As a result, the SELECT statement can refer to the parameters in the script.

SAY文を使用する場合、コントローラ人形は、無線モジュール及び送信機を使用して関連する人形へコマンドを送信するために上述の通信プロトコルを使用するか、或いはコントローラ人形が現在の発話者である場合にはコントローラ人形の関連するモジュールを利用するかのいずれかを行う。発話するために必要な人形内の発話コンパイラ206を利用して、発話データベース208内の適当なオーディオファイルにアクセスする。例えば、動物園というテーマ内のSAY文を含む最初の行は、「SAY(i think we’ve seen everything now,p03,lets go home)」である。この文は、会話データベース内のオーディオファイルへの3つの参照で構成される。これらの参照は、「i think we’ve seen everything now」、「p03」、及び「lets go home」である。これらはすべてオーディオファイルを参照するが、「p03」という参照は特定の長さの休止を意味する。この休止は、オーディオファイルに適当に間隔をあけるために使用される空白のオーディオファイルである。その後、会話コンパイラ206がスピーカ210を使用してオーディオファイルを再生する。   When using a SAY sentence, the controller doll uses the communication protocol described above to send commands to the associated doll using a wireless module and transmitter, or if the controller doll is the current speaker Either use the relevant module of the controller doll. An appropriate audio file in the utterance database 208 is accessed using the utterance compiler 206 in the doll required to speak. For example, the first line including a SAY sentence in the theme of zoo is “SAY (i think we've been having now, p03, let's go home)”. This sentence consists of three references to the audio file in the conversation database. These references are “i think we've been experiencing now”, “p03”, and “let's go home”. These all refer to audio files, but the reference “p03” means a certain length of pause. This pause is a blank audio file that is used to properly space the audio file. Thereafter, the conversation compiler 206 uses the speaker 210 to reproduce the audio file.

いずれの場合にも、プロセッサがコードを解釈し、適当なモジュールを利用して文を実行する。   In either case, the processor interprets the code and executes the statement using the appropriate module.

代替の実施形態では、本明細書で説明するように、プロセッサが内蔵インタプリタを使用せず、代わりに個々のテーマが、プロセッサが正しく機能できるようにする全てのプロセッサ制御命令を含むバイナリデータファイルで構成される。これにより、事実上必要なときにはいつでもプロセッサのファームウェアを新機能に更新できるようになる。以下で提供するテーマの例は、全てオーサリングツールを使用して生成することができる。しかしながら、玩具/人形を制御するための命令は、コンパイルされた「C」コードのバイナリファイルとなるであろう。   In an alternative embodiment, as described herein, the processor does not use a built-in interpreter, but instead individual themes are binary data files that contain all processor control instructions that allow the processor to function correctly. Composed. This allows the processor firmware to be updated with new functions whenever practically needed. The example themes provided below can all be generated using an authoring tool. However, the instructions for controlling the toy / doll will be a compiled “C” code binary file.

プロセッサ及び関連電子部品
図8は、図2及び図3に示す概略図の潜在的生産バージョンのための回路図及びパーツリストの概略を示しており、付録IIが図8内の構成要素について詳述する。図9は代替の回路図の概略を示しており、付録IIIが図9内の構成要素について詳述する。生産回路に含めることができる選択肢が存在し、これらについては後で説明する。
Processor and Associated Electronic Components FIG. 8 shows a schematic of the circuit diagram and parts list for the potential production version of the schematic shown in FIGS. 2 and 3, and Appendix II details the components in FIG. To do. FIG. 9 shows a schematic of an alternative circuit diagram, and Appendix III details the components in FIG. There are options that can be included in the production circuit, which will be described later.

回路は以下を含む。
・Jennic無線コントローラ
生産回路はJennicICを使用し、RF回路を含み、ファームウェアとデータとを組み合わせて単一の大型フラッシュメモリICにする。Jennic無線コントローラは、例えばZigbee無線通信プロトコルを使用して人形間で通信を行うことができる。
・充電器
生産回路は、USBポートから充電するように特別に設計された部品を使用し、充電中に回路に給電も行う。
・音声増幅器
生産回路上の音声増幅器はD級オーディオアンプである。このアンプは非常に効率がよい(〜80%)。
The circuit includes:
The Jennic wireless controller production circuit uses a Jenic IC, includes an RF circuit, and combines firmware and data into a single large flash memory IC. The Jennic wireless controller can communicate between dolls using, for example, the Zigbee wireless communication protocol.
• The charger production circuit uses components specially designed to charge from the USB port and also powers the circuit during charging.
The audio amplifier on the audio amplifier production circuit is a class D audio amplifier. This amplifier is very efficient (~ 80%).

技術的選択肢
このセクションでは、図8の生産回路に含まれていない考えられる選択肢について説明する。
・USBインターフェイス
FTDI FT245RQ
この構成要素は、主にUSBドライバソフトウェアを備えたすぐに使用できるICとして選ばれたものであり、開発労力を低減させる。主な欠点は、Jennic上のほとんどのDIOx線を使用するという点である。これは現行の設計には問題ないが、会話圧縮ICなどの他の選択肢にDIOx線が必要とされる場合、この部品は不適当なものとなる。
Technical Options This section describes possible options that are not included in the production circuit of FIG.
USB interface
FTDI FT245RQ
This component was chosen primarily as a ready-to-use IC with USB driver software, reducing development effort. The main drawback is that most DIOx lines on Jennic are used. This is fine for current designs, but if other options such as conversation compression ICs require DIOx lines, this part becomes unsuitable.

代替の実施形態
以下の両選択肢は、USB内蔵8ビットマイクロコントローラIC及びSPIスレーブインターフェイスである。これらはいずれもこれらを機能的にするために開発されたファームウェア及びソフトウェアドライバを有する必要があるが、両メーカは、このプロセスに役立てるためのリファレンス設計、利用上の注意などを提供している。これらの部品の利点は、JennicSPIインターフェイスとインターフェイス接続することができ、また1本のDIOx線しか必要とせずに他のDIOx線を他の用途のために解放する点である。
Alternative Embodiments Both of the following options are an USB built-in 8-bit microcontroller IC and an SPI slave interface. Both of these need to have firmware and software drivers developed to make them functional, but both manufacturers provide reference designs, usage notes, etc. to help with this process. The advantage of these components is that they can interface with the Jennic SPI interface and only require one DIOx line, freeing other DIOx lines for other applications.

玩具は、複雑なUSB要件を有しておらず、唯一の要件は、プログラムされるデータをフラッシュメモリにダウンロードすることである。装置は、メモリスティックなどのいかなる一般的な装置の機能にも対応する必要はない。これにより必要な開発労力が低減される。   Toys do not have complex USB requirements, the only requirement is to download the programmed data to flash memory. The device need not correspond to the function of any common device such as a memory stick. This reduces the required development effort.

以下で特定する部品は、単純な低出力埋込み型アプリケーションを対象とするとともにSPIスレーブインターフェイスを有するものとして選んだものである。しかしながら、メーカのグループ又は他社メーカから得られる装置も同様に適している可能性が十分にある。
Cypress CY7C63833−LFXC
Atmel AT90USB82−16MU
The components identified below were chosen for simple low-power embedded applications and having an SPI slave interface. However, it is quite possible that devices from a group of manufacturers or from other manufacturers are suitable as well.
Cypress CY7C63833-LFXC
Atmel AT90USB82-16MU

電池
リチウムイオン
図8及び図9に示す回路はリチウムイオン(Li+)電池を使用する。
3つの理由からLi+電池を選択した。
i)形状〜実証機のプロジェクトに便利であった平坦プリズム状パッケージの形で利用可能である。
ii)開発しやすさ〜Li+の充電要件は、特に充電器が追加の回路に同時に給電する必要がある場合に代替品よりも単純である。
iii)電力容量〜実証機起動時の控えめな電力要件の評価値が、利用可能な空間が狭くてもLi技術が十分な電力を与えることが示唆していた。
(後述を参照)。
代替の充電技術は、NiMH及びNiCadである。NiMHは、NiCad(Li+より複雑な)と同様の充電要件を有するが、Li+と同様の(より高い)出力密度(特定の物理体積に関しては保持電力が大きい)及び価格を有する。
battery
Lithium Ion The circuits shown in FIGS. 8 and 9 use lithium ion (Li +) batteries.
The Li + battery was selected for three reasons.
i) Shape-It can be used in the form of a flat prismatic package that was convenient for the demonstration project.
ii) Ease of development—Li + charging requirements are simpler than alternatives, especially when the charger needs to power additional circuits simultaneously.
iii) The evaluation value of the power capacity to the conservative power requirement at the start-up of the demonstration machine suggested that the Li technology provides sufficient power even if the available space is narrow.
(See below).
Alternative charging technologies are NiMH and NiCad. NiMH has similar charging requirements as NiCad (more complex than Li +), but has the same (higher) power density (larger holding power for a specific physical volume) and price than Li +.

NiCad/NiMH
このセクションでは、Li+と比較したNiCad/NiMH電池の特性について考察する。説明を簡潔にするために、以下のセクションではNiMHをNiCadと表記する。
NiCad / NiMH
In this section, the characteristics of NiCad / NiMH cells compared to Li + are considered. For simplicity, NiMH is denoted as NiCad in the following sections.

i)形状
通常、NiCad電池には単三及び単四などの標準サイズがあるが、他の形状も利用可能である。小型の構成要素を使用でき、2ピース及び/又はフレキシブル回路/コネクタなどのより複雑なPCBの製造コストが抑制事項にならないと考えられる生産環境では、標準サイズの電池の使用を可能にすることができる。
i) Shape NiCad batteries typically have standard sizes such as AA and AAA, but other shapes are also available. In production environments where small components can be used and the production costs of more complex PCBs such as two-piece and / or flexible circuits / connectors are not likely to be a constraining factor, allow the use of standard size batteries it can.

ii)開発しやすさ
新しいデータをダウンロードできるように、(USBポートから)電池を充電すると同時に(USBポートから)回路に電源を入れる必要がある(電池の充電と回路への給電とを同時に行うことはできない)。充電中に回路を電池から絶縁すること、或いは回路を接続したままにすることのいずれもが可能である。電池を絶縁するにはより複雑な回路を伴う。回路を接続したままにすることは、回路が制御している電池への通常の電流と、玩具の回路が受ける余分な電流との両方を充電器が見ることを意味する。
ii) Ease of development It is necessary to charge the battery (from the USB port) and simultaneously turn on the circuit (from the USB port) so that new data can be downloaded (charging the battery and powering the circuit simultaneously) It is not possible). It is possible to either insulate the circuit from the battery during charging or leave the circuit connected. Insulating batteries involves more complex circuitry. Leaving the circuit connected means that the charger sees both the normal current to the battery the circuit is controlling and the extra current that the toy circuit receives.

Li+充電器の場合、回路を接続したままにすることはそれほど重大な問題ではない。主な欠点は、Li+電池が完全に充電されると充電器の電源を切ることが一般的であるという点である。この機能は禁止する必要があり、そうでなければ玩具の回路も同様に電源が切れてしまう。この結果、電池の寿命が短縮される。   In the case of the Li + charger, leaving the circuit connected is not a significant problem. The main drawback is that it is common to turn off the charger when the Li + battery is fully charged. This function should be prohibited, otherwise the toy circuit will be turned off as well. As a result, the battery life is shortened.

NiCad充電器の場合、回路を接続したままにすることは極めて重大な問題である。NiCad電池のほうが、特に充電の終了頃に充電プロファイルが複雑になる。このプロファイルが正しく検出されない場合、電池が二度と完全充電されないか、或いは電池が過充電された結果、電池への損傷及び過大な温度上昇が発生する。充電器は、このプロファイルを検出する2つの方法のうちの1つを使用する。第1の方法は、電池により引き込まれる電流の変化によるものである。残念ながら、現在の回路により引き込まれる電流では、充電器を混乱させた結果、危険な状況を生じる可能性がある。第2の方法は、電池の温度の変化を検出することによるものである。しかしながら、電池の充電部品も通常の使用中に高温になる。この用途では、信頼できる結果が得られるほど十分に電池を熱的に絶縁することは困難であると考えられる。   In the case of NiCad chargers, leaving the circuit connected is a critical issue. The NiCad battery has a more complicated charging profile especially at the end of charging. If this profile is not detected correctly, the battery will never be fully charged or the battery will be overcharged, resulting in damage to the battery and excessive temperature rise. The charger uses one of two ways to detect this profile. The first method is by changing the current drawn by the battery. Unfortunately, the current drawn by the current circuit can create a dangerous situation as a result of disrupting the charger. The second method is by detecting changes in battery temperature. However, battery charging components also become hot during normal use. In this application, it may be difficult to thermally insulate the battery sufficiently to obtain reliable results.

電池を絶縁することは、図8の回路が採用する解決策である。充電器のICは、高性能の電力管理回路を組み込んで絶縁を行う。この統合電力管理は、既製品におけるNiCad技術には利用不可能である。従って、これは別個の構成要素又は特注のICにおいて実現されることになる。   Insulating the battery is the solution adopted by the circuit of FIG. The charger IC incorporates a high performance power management circuit to provide isolation. This integrated power management is not available for NiCad technology in off-the-shelf products. This will therefore be realized in a separate component or a custom IC.

iii)電力容量
このセクションでは、人形の電子部品に関する電源要件について説明する。このセクションで使用される電池寿命は、以下の電池容量に基づくものである。
・単四アルカリ=1150mAh @1.5V
・単四NiCad=300mAh @1.2V
・単四NiMH=750mAh @1.2V
・Li+プリズム状=620mAh@3.7V
注:Li+電池は、同じ定格の場合他の電池の2倍の電力を保持するが、その理由は電圧が2倍の大きさだからである。2つの単四電池を直列で使用する必要があり、或いは1つの単四を昇圧型コンバータと共に使用してその能力を半分とする。
iii) Power capacity This section describes the power requirements for the doll's electronic components. The battery life used in this section is based on the following battery capacities:
-AAA alkali = 1150mAh @ 1.5V
-AAA NiCad = 300mAh @ 1.2V
・ Single NiMH = 750mAh @ 1.2V
・ Li + prism shape = 620 mAh@3.7V
Note: Li + batteries retain twice the power of other batteries at the same rating because the voltage is twice as large. Either two AAA batteries need to be used in series, or one AAA can be used with a boost converter to halve its capacity.

図9に示す回路の電力評価
推定電力消費量=発話時136mA、その他の場合48mA。これは、以下で構成される。
・Jennicモジュール=48mA
・音声ドライバ
250mW最大8オームスピーカ出力=175mA、ただし、各々の人形が時間の半分ずつ発話する2つの人形間の会話において=>88mA
注:スピーカが時間全体にわたって最大電力で駆動されることはありそうにないが、オーディオアンプは100%効率ではないので、88mAが合理的な妥協点である。
・残りの回路=無視できる
The power evaluation estimated power consumption of the circuit shown in FIG. 9 = 136 mA during speech, and 48 mA in other cases. This consists of:
・ Jenic module = 48mA
Voice driver 250 mW max 8 ohm speaker output = 175 mA, but in a conversation between two dolls where each doll speaks half of the time => 88 mA
Note: Although it is unlikely that the speaker will be driven at maximum power over time, the audio amplifier is not 100% efficient, so 88 mA is a reasonable compromise.
・ Remaining circuit = negligible

実証機の評価に基づく電池寿命。

Figure 2014028284
実証機にとっては、単一のプリズム状Li+による解決策が当然の選択であった。 Battery life based on evaluation of demonstration machines.
Figure 2014028284
For the demonstrator, the solution with a single prismatic Li + was a natural choice.

図8に示す回路の電力要件。
全体的な電力消費量の中で音声電力が最も重要な因子であるため、より正確な値を得ることが重要である。最良の方法は直接測定であるが、これは音声パフォーマンスが一旦終了したときに限り可能である。
Power requirements for the circuit shown in FIG.
Since voice power is the most important factor in the overall power consumption, it is important to obtain a more accurate value. The best method is direct measurement, but this is only possible once the voice performance has ended.

しかしながら、音声電力が推定値ほど大きくないであろうことを示唆するいくつかの要素が存在する。
・発話の特性により、波形の平均電力はピーク振幅をかなり下回るものとなる。例えば、発話は多くの休止を含む。従って、回路が最大平均出力レベルを下回るレベルで駆動する可能性がある。
・生産回路で使用されるD級アンプは、図9に示す回路のものよりもはるかに良好な効率を有し、この結果大幅な節電となる。
However, there are several factors that suggest that voice power will not be as great as the estimate.
• Depending on the utterance characteristics, the average power of the waveform is well below the peak amplitude. For example, an utterance includes many pauses. Therefore, there is a possibility that the circuit is driven at a level below the maximum average output level.
Class D amplifiers used in production circuits have much better efficiency than that of the circuit shown in FIG. 9, resulting in significant power savings.

実証用の会話のさらに詳細な計算及び分析により、平均音声電力は会話中10mAにすぎず、従って2つの人形間の会話に関しては5mAという平均値になることが示唆されている。これにより、発話時に合計53mAで非発話時に48mAをもたらすJennic電力が優勢となる。
注:この音声電力レベルは、音楽ではなく発話音声に関するものである。
音声電力の改良評価に基づく電池寿命

Figure 2014028284
A more detailed calculation and analysis of the demonstration conversation suggests that the average voice power is only 10 mA during the conversation, and thus an average value of 5 mA for the conversation between the two dolls. This predominates Jennic power, which provides a total of 53 mA when speaking and 48 mA when not speaking.
Note: This voice power level is for speech, not music.
Battery life based on improved evaluation of voice power
Figure 2014028284

Jennicの電力消費量を削減する方法が存在する。現在、Jennicは常にオンであり、絶えずメッセージを探っている。ファームウェア及び人形が互いに通信する方法の変更により、絶えず探っている必要があるのは(最初に電源が入れられる)1つの人形のみとなる。他の人形は、発話する必要がある場合には定期的に第1の人形に確認することができ、この短時間の間のみ給電される必要がある。残りの時間は、Jennicは低電力スリープモードに入ることができる。10%の負荷サイクルが達成可能な場合、これにより非発話時に10倍の電力消費量が削減される。発話時にはJennicに給電する必要があるが、メッセージを探る必要がないので、RF部は非給電状態にすることができる。これによりJennicの電力消費量が4倍削減される。従って、全体的な電流消費量を発話時には14mAに、非発話時には4mAに低減させることが可能となる。   There are ways to reduce Jenic's power consumption. Currently, Jennic is always on and constantly searching for messages. Due to changes in the way firmware and dolls communicate with each other, only one doll (which is initially turned on) needs to be constantly searching. Other dolls can periodically check with the first doll when it needs to speak, and need only be powered for this short period. For the remaining time, Jennic can enter a low power sleep mode. If a 10% duty cycle is achievable, this reduces power consumption by a factor of 10 when not speaking. Although it is necessary to supply power to Jenic when speaking, there is no need to search for a message, so the RF unit can be in a non-powered state. This reduces Jennic's power consumption by a factor of four. Therefore, the overall current consumption can be reduced to 14 mA when speaking and to 4 mA when not speaking.

ほとんどの人形がこの低減された電力要件を有するようになるが、(最初に電源を入れられる)1つの人形にはこの節電が行われないことになる。人形の起動方法の変更により、これも同様に低減させることが可能になると思われる。どのようなことが実現可能であるかを判定するためにはさらなる調査が必要である。   Most dolls will have this reduced power requirement, but one doll (which is powered on first) will not have this power saving. It seems that this can be reduced as well by changing the puppet activation method. Further investigation is needed to determine what is feasible.

低減されたJennicの電力要件に基づく電池寿命

Figure 2014028284
これらの電力要件を実現できる場合、2本の単四標準、NiCad又はNiMH電池が使用可能になる。 Battery life based on reduced Jennic power requirements
Figure 2014028284
If these power requirements can be achieved, two AAA standards, NiCad or NiMH batteries can be used.

自動電源オフ機能
人形の電子部品の現在の仕様では、オン/オフスイッチが回路の作動を制御する。他の玩具とは異なり、人形は、アクティブな人形のいずれか1体のボタンが押されるのを待って受動的に座っているので、いつ人形のスイッチがオンになるかは明らかでない。これは、人形の電源をオフにするのを忘れる可能性が高いことを意味する。このため、(翌日などの)次回人形で遊ぶときには電池が切れてしまっている結果となる。
In the current specification of electronic parts for automatic power off function dolls, an on / off switch controls the operation of the circuit. Unlike other toys, the doll sits passively waiting for any one button on the active doll to be pressed, so it is not clear when the doll is switched on. This means that you are more likely to forget to turn off the doll. This results in the battery running out the next time you play with the doll (such as the next day).

回路がひとりでに『スタンバイ』モードに切り替わり、電流をほとんど引き出さないようにすることは可能であるが、これは現在の機能仕様には含まれていない。電子部品がいつこのスタンバイモードに入るか及びどのようにして再起動するかは、人形の全体的な挙動及びパフォーマンスに密接な関係がある。   Although it is possible for a circuit to switch to "standby" mode by itself and draw little current, this is not part of the current functional specification. When an electronic component enters this standby mode and how it restarts is closely related to the overall behavior and performance of the doll.

発話の圧縮
発話の圧縮により、同じメモリ量により多くの音声データを記憶できるようになる。現在の設計には発話圧縮技術は含まれていない。現在の設計では、結果として64kbps(ビット/秒)のデータ転送速度をもたらす8ビット8kHzの音声データが使用され、約1000秒(17分)の音声データを記憶できるようにする64Mbit直列フラッシュメモリが使用されている。会話の圧縮を使用して、このデータ転送速度を2kbpsと8kbpsとの間に下げることができるが、圧縮率を高くするほど音声品質は低くなる。
つまり、8kbpsの場合、4Mbitフラッシュメモリは約500秒(8 1/2分)の音声データを保持することができる。
Speech compression Speech compression allows more audio data to be stored in the same amount of memory. The current design does not include speech compression technology. The current design uses 8 bit 8 kHz audio data resulting in a data rate of 64 kbps (bits / second), and a 64 Mbit serial flash memory that allows about 1000 seconds (17 minutes) of audio data to be stored. It is used. Conversation compression can be used to reduce this data rate between 2 kbps and 8 kbps, but the higher the compression ratio, the lower the voice quality.
That is, in the case of 8 kbps, the 4 Mbit flash memory can hold the audio data for about 500 seconds (8 1/2 minutes).

圧縮音声データは、再生時に解凍を必要とする。これは、ソフトウェア又は専用ハードウェア内で行うことができる。2、3の選択肢を以下に示す。   The compressed audio data needs to be decompressed during reproduction. This can be done in software or dedicated hardware. A few options are shown below.

Jennicコントローラ上でのソフトウェア解凍
この選択肢は幅広く調査されていない。まず、適当な圧縮/解凍アルゴリズムのソースコードを発見し、このアルゴリズムをJennicコントローラに移植できるようにする必要がある。次に、このアルゴリズムが必要とし、Jennicコントローラ上で利用可能な処理電力の分析を行う必要がある。
Software decompression on Jennic controllers This option has not been extensively investigated. First, it is necessary to find the source code of an appropriate compression / decompression algorithm so that this algorithm can be ported to the Jennic controller. Next, the processing power required by this algorithm and available on the Jennic controller needs to be analyzed.

Sensory社の音声合成IC
Sensory社は、マイクロコントローラのファミリを2つ有する。SC−6xファミリは、事前プログラムされたSC−691スレーブシンセサイザを有する。これは、Jennicとインターフェイス接続するのに9本のDIOx線を必要とする4ビットMCUインターフェイスを有し、32オームのスピーカを直接駆動させることができる。新しい方のRSC46xファミリは、事前プログラムされたスレーブシンセサイザを有していないので、カスタムファームウェアを開発することが必要となる。Jennicとは4ビット、又は8ビットMCUインターフェイス(9本又は15本のDOIx線)でインターフェイス接続するようになるであろう。しかしながら、こちらのほうがプロセッサは強力であり(音声認識アルゴリズムを処理することができる)、8オームのスピーカを直接駆動させることができる。Jennicは両方に対応する十分なDIOx線を有していないので、これらの部品のどちらもUSB FT245チップと共に使用することができない。スレーブSPI USBチップが必要となる(USBのセクションを参照)。
Sensory synthesis IC from Sensory
Sensory has two families of microcontrollers. The SC-6x family has a preprogrammed SC-691 slave synthesizer. It has a 4-bit MCU interface that requires nine DIOx lines to interface with Jennic and can directly drive a 32 ohm speaker. The newer RSC46x family does not have a preprogrammed slave synthesizer, so it is necessary to develop custom firmware. Jenic will interface with a 4-bit or 8-bit MCU interface (9 or 15 DOIx lines). However, here the processor is more powerful (can handle speech recognition algorithms) and can directly drive an 8 ohm speaker. Neither of these components can be used with the USB FT245 chip because Jenic does not have enough DIOx lines to accommodate both. A slave SPI USB chip is required (see USB section).

かなりの処理電力を有するRSC−4xなどの音声合成マイクロコントローラを使用することは、代替のシステム構築の可能性を示唆する。メイン人形アルゴリズムを実行させるとともにスレーブマイクロプロセッサとして合成マイクロコントローラを使用して音声を単純に解凍するJennic無線マイクロコントローラの代わりに、合成マイクロコントローラがメイン人形アルゴリズムを実行するとともに無線通信のためにスレーブコプロセッサとして無線マイクロコントローラを使用することができる。さらなる詳細については無線マイクロコントローラのセクションを参照されたい。   Using a speech synthesis microcontroller such as RSC-4x with significant processing power suggests the possibility of building an alternative system. Instead of a Jennic wireless microcontroller that runs the main doll algorithm and simply decompresses the speech using a synthesis microcontroller as a slave microprocessor, the synthesis microcontroller executes the main doll algorithm and performs slave communication for wireless communication. A wireless microcontroller can be used as the processor. See the wireless microcontroller section for more details.

無線マイクロコントローラ
現在の設計は、2.4GHzIEEE802.15.4パーソナルエリアネットワーク通信規格に基づくものである。全ての低レベルRF通信に対応するために必要なRFハードウェア及びファームウェアを含む無線マイクロコントローラ製品が存在する。通信内のデータのみは、人形アプリケーションにより定義する必要がある。現在の設計は、Jennic無線マイクロコントローラを選択している。
Wireless microcontroller The current design is based on the 2.4 GHz IEEE 802.15.4 personal area network communication standard. There are wireless microcontroller products that contain the RF hardware and firmware necessary to support all low-level RF communications. Only the data in the communication needs to be defined by the doll application. The current design has selected a Jennic wireless microcontroller.

IEEE802.15.4製品は低レベルRF通信に対応するが、人形アプリケーションには良好に適合しない一面がある。IEEE 802.15.4はノードの階層構造に基づくものであり、多くの機能低減装置が全機能搭載装置と通信する。人形アプリケーションはピアツーピア構造を有し、全ての装置が同じものである。   Although the IEEE 802.15.4 product supports low-level RF communication, there are aspects that are not well suited for doll applications. IEEE 802.15.4 is based on the hierarchical structure of nodes, and many function reduction devices communicate with all function-equipped devices. The doll application has a peer-to-peer structure and all devices are the same.

同じ2.4GHz又は異なるISM周波数帯で機能する他のRFトランシーバ製品が利用可能である。これらは必要なRFハードウェアを全て含むが、特定の低レベルプロトコルを強いるものではない。これらのトランシーバICは、汎用マイクロコントローラ又はRSC4倍速音声シンセサイザーなどの専用マイクロコントローラのスレーブとして機能する。これらの部品を使用して、専用のピアツーピア通信プロトコルを開発することができる。   Other RF transceiver products are available that function in the same 2.4 GHz or different ISM frequency bands. These include all the necessary RF hardware, but do not impose a specific low level protocol. These transceiver ICs function as slaves to a dedicated microcontroller such as a general-purpose microcontroller or an RSC quad-speed audio synthesizer. These components can be used to develop dedicated peer-to-peer communication protocols.

RFトランシーバの例には、Tl CC2500及びAtmel ATA542Xファミリがある。これらの部品は、JennicICよりも低い電力消費量及び単位原価を実現する可能性がある。 Examples of RF transceivers include the Tl CC2500 and Atmel ATA542X families . These parts may realize lower power consumption and unit cost than Jennic IC.

言うまでもなく、本発明は、単なる例示として説明した上記実施形態の詳細に限定されることを意図されたものではなく、本発明の範囲内において詳細の修正を行うことができることを理解されたい。   Of course, it is to be understood that the present invention is not intended to be limited to the details of the above-described embodiments described by way of example only, and that modifications of detail can be made within the scope of the invention.

説明及び(必要に応じて)特許請求の範囲並びに図面において開示した個々の特徴は、単独で又はあらゆる適当な組み合せで提供することができる。   The individual features disclosed in the description and (where appropriate) the claims and drawings may be provided alone or in any appropriate combination.

付録I〜オーサリングツール内にインポートするためのフォーマットしたテキストファイルの例

Figure 2014028284
Appendix I-Example of a formatted text file for importing into the authoring tool
Figure 2014028284

付録II〜図8に関する部品の詳細

Figure 2014028284

Figure 2014028284

Figure 2014028284
Details of parts related to Appendix II to Figure 8
Figure 2014028284

Figure 2014028284

Figure 2014028284

付録III〜図9に関する部品の詳細

Figure 2014028284

Figure 2014028284

Figure 2014028284
Details of parts related to Appendix III to Figure 9
Figure 2014028284

Figure 2014028284

Figure 2014028284

1700:プロセッサ
1702:メモリ
1704:変換器
1706:無線通信モジュール
1708:対話エンジン
1700: Processor 1702: Memory 1704: Converter 1706: Wireless communication module 1708: Dialogue engine

本発明は玩具に関する。特に、限定的な意味ではないが、本発明は互いに対話する人形などの玩具に関する。   The present invention relates to a toy. In particular, but not in a limiting sense, the present invention relates to toys such as dolls that interact with each other.

組込み型コンピュータ及びマイクロプロセッサは、子供用玩具を進歩させてきた。これらは教育用玩具において最も広く使用されてきたが、対話型玩具においても使用されてきた。ActiMates(登録商標)Barney(登録商標)は、子供からの適切な発声による対話に応答するとともにビデオに合わせて歌うことができる対話型玩具の一例である。   Embedded computers and microprocessors have advanced children's toys. These have been most widely used in educational toys, but have also been used in interactive toys. ActiMates (R) Barney (R) is an example of an interactive toy that can respond to a dialogue with a suitable utterance from a child and sing along to a video.

本明細書にはPCT特許出願WO2006/114625号が引用により組み入れられる。   PCT patent application WO 2006/114625 is hereby incorporated by reference.

PCT特許出願WO2006/114625号PCT patent application WO2006 / 114625

同期
本発明の第1の態様によれば、少なくとも1つの他の同じような玩具と対話するようになっている玩具が提供され、この玩具は、プロセッサと、このプロセッサに結合されたメモリとを備え、前記プロセッサは、行うべき行動を表す出力信号を生成する手段と、少なくとも1つの他のこのような玩具における受信のための、前記玩具が自身の行動を終える前に前記少なくとも1つの他のこのような玩具が行動を起こすようにするためのトリガ信号を生成する手段とを含む。前記玩具が自身の行動を終える前に別のこのような玩具が行動を起こすようにするためのトリガ信号を生成する手段を提供することにより、より多才な、具体的にはより本物そっくりな対話を実現することができる。
In accordance with a first aspect of the present invention, a toy is provided that is adapted to interact with at least one other similar toy, the toy comprising a processor and a memory coupled to the processor. The processor includes means for generating an output signal representative of an action to be performed, and at least one other such toy for receiving at the at least one other such toy before the toy finishes its action. Means for generating a trigger signal for causing such a toy to take action. By providing a means to generate a trigger signal to cause another such toy to take action before the toy has finished its action, a more versatile, specifically more real-life interaction Can be realized.

より本物そっくりな対話のためには、前記玩具が自身の行動を開始した後に所定の時間間隔で前記トリガ信号が生成されることが好ましい。前記トリガ信号は、前記玩具が自身の行動を終える前に所定の時間間隔で生成されることが好ましい。   For a more authentic dialogue, it is preferable that the trigger signal is generated at a predetermined time interval after the toy starts its own action. The trigger signal is preferably generated at predetermined time intervals before the toy finishes its own action.

使い勝手を良くするために、玩具は、ユーザが前記所定の時間間隔の目安を入力できるようにする入力部を備えることが好ましい。   In order to improve usability, the toy preferably includes an input unit that allows the user to input a guide for the predetermined time interval.

同期化を容易にするために、所定の時間間隔は、1秒未満、又は1/2秒未満、又は1/4秒未満であることが好ましく、実質的に0秒であることがより好ましい。0秒の時間間隔を有することにより、玩具の行動が効果的に同期する。   In order to facilitate synchronization, the predetermined time interval is preferably less than 1 second, or less than 1/2 second, or less than 1/4 second, and more preferably substantially 0 second. Having a time interval of 0 seconds effectively synchronizes toy behavior.

行動は、音を発すること、光を発すること、及び動きのうちの少なくとも1つであることが好ましい。   The action is preferably at least one of emitting a sound, emitting light, and movement.

通信を効率良くするために、玩具は、前記少なくとも1つの他のこのような玩具と無線で通信するようにされた無線通信モジュールをさらに備えることが好ましい。この無線通信モジュールは、トリガ信号、対話に関する情報、及び玩具に関する情報のうちの少なくとも1つを送信することがより好ましい。   For efficient communication, the toy preferably further comprises a wireless communication module adapted to communicate wirelessly with the at least one other such toy. More preferably, the wireless communication module transmits at least one of a trigger signal, information about interaction, and information about toys.

前記対話に関する情報は、玩具が出力する行動、行動の持続時間、及び少なくとも1つの他の玩具がとるべき行動のうちの少なくとも1つを含むことが好ましい。   Preferably, the information related to the dialogue includes at least one of an action output by the toy, a duration of the action, and an action to be taken by at least one other toy.

メモリは、所定の対話を記憶するようになっていることが好ましい。   The memory is preferably adapted to store predetermined interactions.

プロセッサは、前記対話を疑似ランダムに決定するようになっていることが好ましい。   The processor is preferably adapted to determine the interaction pseudo-randomly.

より本物そっくりな対話のためには、前記玩具が生きているかのように対話するようになっていることが好ましい。前記対話は、会話、音声対話、対人対話、教育的対話、演奏、及びゲームプレイのうちの少なくとも1つであることが好ましい。前記玩具は、このような玩具のグループ内のメンバーとして対話するようになっていることが好ましい。前記グループは、音楽バンド、車のグループ、又は軍事資産のグループのうちの1つを表すことがより好ましい。前記トリガ信号を使用してグループの行動を同期させることがさらに好ましい。   For a more authentic dialogue, it is preferred that the toy interact as if it were alive. The dialogue is preferably at least one of conversation, voice dialogue, interpersonal dialogue, educational dialogue, performance, and game play. The toy is preferably adapted to interact as a member within such a group of toys. More preferably, the group represents one of a music band, a car group, or a group of military assets. More preferably, the trigger signal is used to synchronize group actions.

玩具は、別のこのような玩具からトリガ信号を受け取る手段をさらに備え、前記トリガ信号を使用して行動を開始する時点を決定することが好ましい。   Preferably, the toy further comprises means for receiving a trigger signal from another such toy and using the trigger signal to determine when to start the action.

前記玩具は、人形、ゲーム盤、乗り物、及び軍事資産のうちの1つであることが好ましい。   The toy is preferably one of a doll, a game board, a vehicle, and a military asset.

本発明のさらなる態様によれば、少なくとも1つの他の同じような玩具と対話するようになっている玩具で使用するためのコンピュータ可読メモリが提供され、該メモリは、行うべき行動を表す出力信号を生成するためのコードと、少なくとも1つの他のこのような玩具において受信して、前記玩具が自身の行動を終える前に前記少なくとも1つの他のこのような玩具が行動を起こすようにするためのトリガ信号を生成するためのコードとを含む命令セットを含む。本明細書で使用するコンピュータ可読メモリという用語は、コンピュータプログラム製品という用語を含む。   According to a further aspect of the invention, there is provided a computer readable memory for use with a toy that is adapted to interact with at least one other similar toy, the memory comprising an output signal representative of an action to be performed. And at least one other such toy received so that the at least one other such toy takes action before the toy finishes its action. And an instruction set including code for generating a trigger signal of The term computer readable memory as used herein includes the term computer program product.

コンピュータ可読メモリは、前記玩具が自身の行動を開始した後に所定の時間間隔で前記トリガ信号を生成するためのコードをさらに含むことが好ましい。   Preferably, the computer readable memory further includes code for generating the trigger signal at predetermined time intervals after the toy starts its action.

コンピュータ可読メモリは、前記玩具が自身の行動を終える前に所定の時間間隔で前記トリガ信号を生成するためのコードをさらに含むことが好ましい。   Preferably, the computer readable memory further includes code for generating the trigger signal at predetermined time intervals before the toy finishes its action.

コンピュータ可読メモリは、ユーザが前記所定の時間間隔の目安を入力できるようにするためのコードをさらに含むことが好ましい。   The computer readable memory preferably further includes code for allowing a user to input a measure of the predetermined time interval.

前記所定の時間間隔は、1秒未満、又は1/2秒未満、又は1/4秒未満であることが好ましく、実質的に0秒であることが好ましい。   The predetermined time interval is preferably less than 1 second, less than 1/2 second, or less than 1/4 second, and is preferably substantially 0 second.

前記行動は、音を発すること、光を発すること、及び動きのうちの少なくとも1つであることが好ましい。   It is preferable that the action is at least one of emitting sound, emitting light, and movement.

オーサリングツール
本発明のさらなる態様によれば、玩具のテーマ別データを作成するためのオーサリングツールが提供され、該オーサリングツールは、特定のテーマに関連するコンテンツを受信する手段と、前記コンテンツを処理して前記特定のテーマ内で前記玩具を動作させるための命令セットを生成する手段と、前記命令セットを出力する手段とを含む。玩具を動作させるための命令セットを生成する手段を提供することにより、テーマ別の命令を生成するプロセスを実質的により効率化することができる。
Authoring Tool According to a further aspect of the present invention, there is provided an authoring tool for creating thematic data for toys, the authoring tool processing means for receiving the content related to a particular theme; Means for generating an instruction set for operating the toy within the specific theme, and means for outputting the instruction set. By providing a means for generating a set of instructions for operating the toy, the process of generating thematic instructions can be substantially more efficient.

コンテンツを受信する効率性のために、前記受信手段は、特定のテーマに関連するスクリプトデータ及び前記玩具の性格を定義する表現データの両方を別個に含むコンテンツを受信するようになっていることが好ましい。前記受信手段は、コンテンツを別の部分の形で受信するようになっていることが好ましい。   For the efficiency of receiving content, the receiving means may receive content separately including both script data related to a specific theme and expression data defining the character of the toy. preferable. Preferably, the receiving means receives the content in the form of another part.

処理の効率性のために、オーサリングツールは、個々の表現データ部分に一意のID番号を割り当てる手段をさらに含むことが好ましい。前記処理手段は、前記命令セットにおいて前記表現データ部分への参照として前記一意のID番号を利用するようになっていることが好ましい。   For processing efficiency, the authoring tool preferably further includes means for assigning a unique ID number to each representation data portion. The processing means preferably uses the unique ID number as a reference to the expression data portion in the instruction set.

前記表現データは、テーマ名、玩具の名前、及び玩具が対話するために使用する文のうちの少なくとも1つを含むことが好ましい。   The expression data preferably includes at least one of a theme name, a toy name, and a sentence used by the toy to interact.

前記スクリプトデータは、テーマ内で対話できる玩具の数、対話方法、テーマ関連パラメータ、及び玩具関連パラメータのうちの少なくとも1つを含むことが好ましい。   The script data preferably includes at least one of the number of toys that can interact within the theme, the interaction method, theme related parameters, and toy related parameters.

処理の効率性のために、オーサリングツールは、特定のテーマに関連する前記スクリプトデータ及び表現データを共に配列の形で記憶する手段をさらに含むことが好ましい。前記処理手段は、前記配列から前記命令セットを生成するようになっていることがさらに好ましい。   For processing efficiency, the authoring tool preferably further includes means for storing both the script data and the expression data related to a particular theme in the form of an array. More preferably, the processing means generates the instruction set from the array.

処理の効率性のために、前記処理手段は、表現データの少なくとも一部を含む少なくとも1つのリストをコンパイルする手段を含むことが好ましい。前記リストコンパイル手段は、前記特定のテーマ内で玩具ごとにそれぞれのリストをコンパイルするようになっていることがさらに好ましい。   For processing efficiency, the processing means preferably includes means for compiling at least one list including at least a portion of the representation data. More preferably, the list compiling means compiles each list for each toy within the specific theme.

表現データはシンボルデータであることが好ましい。本明細書で使用するシンボルデータは、書かれた形の単語、音楽又は行動を意味する。   The expression data is preferably symbol data. As used herein, symbol data means words, music or actions in written form.

オーサリングツールは、シンボルデータの上演(enacted)データバージョンを記録する記録手段をさらに含むことが好ましい。本明細書で使用する上演データとは、上演される形の単語、音楽又は行動を意味するものである。   The authoring tool preferably further comprises recording means for recording an enacted data version of the symbol data. As used herein, performance data refers to words, music, or actions that are performed.

オーサリングツールは、関係者に上演データの必要な部分を生成するように促す手段を含むことが好ましい。   The authoring tool preferably includes means for prompting interested parties to generate the necessary portion of the performance data.

前記プロセッサは、シンボルデータと上演データとの間のルックアップテーブルを生成するようになっていることが好ましい。   Preferably, the processor is adapted to generate a look-up table between symbol data and performance data.

前記処理手段は、表現データを出力するようになっていることが好ましい。前記処理手段はさらに、表現データ及び命令セットを別個に出力するようになっていることがさらに好ましい。   The processing means preferably outputs expression data. More preferably, the processing means is further adapted to output the expression data and the instruction set separately.

前記処理手段は、玩具の基本機能を制御するための基本命令セットと、基本命令セットがテーマ内で玩具を制御するためのテーマ別命令セットとを含む命令セットを生成するようになっていることが好ましい。前記プロセッサは、前記基本命令セット及び前記テーマ別命令セットを共に組み合わせるようになっていることがさらに好ましい。   The processing means generates an instruction set including a basic instruction set for controlling basic functions of the toy and a thematic instruction set for controlling the toy within the theme. Is preferred. More preferably, the processor is adapted to combine both the basic instruction set and the thematic instruction set.

オーサリングツールは、コンパイラをさらに含むことが好ましい。前記プロセッサは、前記基本命令セット及び前記テーマ別命令セットをコンパイルするようになっていることがさらに好ましい。   The authoring tool preferably further includes a compiler. More preferably, the processor is adapted to compile the basic instruction set and the thematic instruction set.

前記プロセッサは、前記命令セットをコンピュータ可読コードに変換するようになっている符号化エンジンを含むことが好ましい。   The processor preferably includes an encoding engine adapted to convert the instruction set into computer readable code.

オーサリングツールの出力は、本明細書で説明するような会話エンジンで使用されるようになっていることが好ましい。   The output of the authoring tool is preferably adapted for use with a conversation engine as described herein.

玩具は、本明細書で説明するような玩具であることが好ましい。   The toy is preferably a toy as described herein.

本発明の第2の態様によれば、玩具のテーマ別データを作成するオーサリングツールのためのユーザインターフェイスが提供され、該ユーザインターフェイスは、各々がテーマに関連する特定のコンテンツのサブセットの入力に対応する入力ウィンドウのセットをユーザに提供する手段と、テーマ別データの出力を開始する手段とを含む。   According to a second aspect of the present invention, a user interface for an authoring tool for creating toy thematic data is provided, each user interface corresponding to input of a specific subset of content associated with the theme. Means for providing the user with a set of input windows to initiate, and means for initiating the output of thematic data.

前記コンテンツのサブセットは、テーマ関連データ、玩具関連データ及びコンテキスト関連データのうちの少なくとも1つを含むことが好ましい。   Preferably, the subset of content includes at least one of theme related data, toy related data and context related data.

コンテキスト関連データは、玩具が対話するために使用する文、対話方法、テーマ関連パラメータ及び玩具関連パラメータのうちの少なくとも1つを含むことが好ましい。   The context related data preferably includes at least one of a sentence used by the toy to interact, a dialogue method, a theme related parameter, and a toy related parameter.

受信手段は、テーマ全体又はテーマの本質的部分を含むコンテンツを1つの動作で受信するようになっていることが好ましい。コンテンツはフォーマット済みファイルの形であることがより好ましい。フォーマット済みファイルはテキストファイルであることがさらに好ましい。   Preferably, the receiving means is configured to receive content including the entire theme or an essential part of the theme in one operation. More preferably, the content is in the form of a formatted file. More preferably, the formatted file is a text file.

処理手段は、前記フォーマット済みファイルのコンテンツのみを使用して命令セットを生成することが好ましい。   Preferably, the processing means generates the instruction set using only the contents of the formatted file.

前記玩具関連パラメータは、次の対話する玩具を選択するための予め定めたルールに関する情報を含むことが好ましい。   The toy-related parameter preferably includes information on a predetermined rule for selecting a next toy to interact with.

前記対話方法は、タイミング関連パラメータを含むことが好ましい。前記タイミング関連パラメータは、次の玩具がいつ対話を行うかを決定することがより好ましい。前記タイミング関連パラメータは、現在の玩具の対話の開始から次の玩具の対話の開始までの時間遅延、及び次の玩具の対話の開始から現在の玩具の対話の終了前までの時間遅延の一方を含むことがさらに好ましい。   Preferably, the interaction method includes timing related parameters. More preferably, the timing related parameters determine when the next toy interacts. The timing-related parameter includes one of a time delay from the start of the current toy dialog to the start of the next toy dialog, and a time delay from the start of the next toy dialog to the end of the current toy dialog. It is further preferable to include it.

オーサリングツールは、ゲームに関するコンテンツを受信する手段をさらに含むことが好ましい。前記ゲームに関するコンテンツは、ゲームを実行できるようにするロジックを含むことがより好ましい。   The authoring tool preferably further includes means for receiving content related to the game. More preferably, the content related to the game includes logic that enables the game to be executed.

オーサリングツールは、本明細書で説明するような対話方法のいずれかを実施するようになっていることが好ましい。   The authoring tool is preferably adapted to perform any of the interaction methods as described herein.

本発明の第3の態様によれば、玩具のテーマ別データを生成するためのシステムが提供され、該システムは、テーマ別データにアクセスし、これを作成及び編集するオーサリングツールと、前記テーマ別データを記憶するためのデータベースを含むサーバとを備え、オーサリングツールは、インターネットを介してテーマ別データにアクセスするようになっている。   According to a third aspect of the present invention, there is provided a system for generating toy thematic data, the system accessing the thematic data, authoring tools for creating and editing it, and the thematic And a server including a database for storing data, and the authoring tool is adapted to access thematic data via the Internet.

オーサリングツールは、テーマ別データを処理して配列するようになっており、前記データベースは、前記テーマ別データを前記配列の形で記憶するようになっていることが好ましい。   It is preferable that the authoring tool processes and arranges the thematic data, and the database stores the thematic data in the form of the arrangement.

オーサリングツールは、本明細書で説明するようなオーサリングツールであることが好ましい。   The authoring tool is preferably an authoring tool as described herein.

オーサリングツールは、ユーザインターフェイスをさらに含むことが好ましい。ユーザインターフェイスは、本明細書で説明するようなインターフェイスであることがさらに好ましい。   The authoring tool preferably further includes a user interface. More preferably, the user interface is an interface as described herein.

USB通信ドングル
本発明のさらなる態様によれば、本明細書で説明するような少なくとも1つの玩具とコンピュータの間に無線通信を提供する装置が提供され、該装置は、装置をコンピュータに接続するための通信ポートと、コンピュータと前記又は各玩具との間にネットワークを確立する手段とを含み、コンピュータが別のこのような玩具であるかのように前記又は各玩具と通信できるようにする装置を提供する。
USB Communication Dongle According to a further aspect of the invention, there is provided an apparatus for providing wireless communication between at least one toy and a computer as described herein, the apparatus for connecting the apparatus to a computer. A communication port and means for establishing a network between the computer and the or each toy, so that the computer can communicate with the or each toy as if it were another such toy. provide.

前記装置は、コンピュータを仮想玩具として機能できるようにすることが好ましい。   The device preferably enables the computer to function as a virtual toy.

前記通信ポートはUSB通信ポートであることが好ましい。   The communication port is preferably a USB communication port.

前記ネットワークは無線であることが好ましい。   The network is preferably wireless.

本発明のさらに別の態様によれば、本明細書で説明するような少なくとも1つの玩具と、各々が本明細書で説明するような無線通信を行う装置を有する少なくとも1つのコンピュータとを備えたシステムが提供され、前記コンピュータと装置とを組み合わせることにより本明細書で説明するような玩具であるかのように機能する。   According to yet another aspect of the invention, there is provided at least one toy as described herein and at least one computer each having a device for wireless communication as described herein. A system is provided that functions as if it were a toy as described herein by combining the computer and apparatus.

前記コンピュータは、仮想玩具を提供するようになっている視覚及び音声出力を含むことが好ましい。仮想玩具は、アバターであることがさらに好ましい。   The computer preferably includes visual and audio output adapted to provide a virtual toy. More preferably, the virtual toy is an avatar.

コントローラ人形
本発明のさらに別の態様によれば、プロセッサと、該プロセッサに結合されたメモリと、前記プロセッサに結合された出力部と、少なくとも1つのさらなるこのような玩具とのネットワーク接続を確立する手段とを含む玩具が提供され、プロセッサは、ネットワーク接続が確立された各玩具の出力を制御する手段を含む。
Controller doll According to yet another aspect of the present invention, a network connection is established between a processor, a memory coupled to the processor, an output coupled to the processor, and at least one further such toy. And a processor includes means for controlling the output of each toy with which a network connection has been established.

前記制御手段は、ネットワーク接続が確立された各玩具の複数の出力(好ましくは全ての出力)を制御する命令をネットワーク接続を介して送信するようになっていることが好ましい。   It is preferable that the control means is configured to transmit a command for controlling a plurality of outputs (preferably all outputs) of each toy for which a network connection has been established via the network connection.

前記ネットワーク接続が、パーソナルエリアネットワークの一部を形成することが好ましい。   The network connection preferably forms part of a personal area network.

前記メモリは、データの少なくとも1つのグループを記憶するようになっており、個々の前記少なくとも1つのグループは特定のテーマを表すことが好ましい。   The memory is adapted to store at least one group of data, and each said at least one group preferably represents a particular theme.

玩具は、前記メモリに記憶された少なくとも1つのテーマを決定する手段をさらに含むことが好ましい。   The toy preferably further comprises means for determining at least one theme stored in the memory.

前記玩具は、別の玩具との接続を、前記メモリに記憶された少なくとも1つのテーマが両玩具において同じである場合にのみ確立するようになっていることが好ましい。   Preferably, the toy establishes a connection with another toy only if at least one theme stored in the memory is the same in both toys.

前記制御手段は、制御メッセージを送信/受信して個々の前記玩具の出力を制御するようになっていることが好ましく、制御メッセージは、対象の玩具のID及びコマンドセグメントを含むことが好ましく、発信元玩具のID及び/又はメッセージIDをさらに含むことがより好ましい。   Preferably, the control means is adapted to send / receive control messages to control the output of each individual toy, the control message preferably including the ID and command segment of the subject toy, More preferably, it further includes the ID and / or message ID of the original toy.

前記制御メッセージは、参照データベースにアクセスしてタスクを実行する命令を含むことが好ましい。   The control message preferably includes an instruction to access a reference database and execute a task.

プロセッサは、前記送信/受信された制御メッセージの確認応答を送信/受信する手段を含むことが好ましく、前記送信/受信手段は、確認応答を受信しない場合に制御メッセージを再送するよう要求するようになっていることが好ましい。   The processor preferably includes means for transmitting / receiving an acknowledgment of the transmitted / received control message, wherein the transmitting / receiving means requests to resend the control message if no acknowledgment is received. It is preferable that

前記送信/受信手段は、このような玩具が制御メッセージに基づいて出力を生成するのに掛かるであろう時間に関連するパラメータを送信するようになっていることが好ましく、発信元玩具は、さらなる制御メッセージを送信するまで前記パラメータに関連する時間の間待機することが好ましい(このような玩具がこのような出力を生成するのに掛かる時間は、例えば玩具のテーマ又はサブテーマにより様々であってもよい)。   Said transmitting / receiving means is preferably adapted to transmit a parameter relating to the time that such toy will take to generate an output based on a control message, It is preferable to wait for the time associated with the parameter before sending a control message (the time it takes for such a toy to generate such output varies, for example depending on the theme or sub-theme of the toy Also good).

プロセッサが、再送信制御メッセージの数をカウントする手段を含み、これにより前記制御メッセージの確認応答を行わない前記玩具との通信が、1,000〜2,000回、2,000〜5,000回、5,000〜10,000回又はそれ以上の試行後に停止されることが好ましい。   The processor includes means for counting the number of retransmission control messages, so that communication with the toy that does not acknowledge the control message is performed 1,000 to 2,000 times, 2,000 to 5,000. Preferably, it is stopped after 5,000, 10,000, or more trials.

前記プロセッサは、前記玩具間の会話を構築するようになっている会話エンジンをさらに含むことが好ましい。   Preferably, the processor further includes a conversation engine adapted to construct a conversation between the toys.

さらなるこのような玩具は、最初のこのような玩具と同一又は実質的に同一であることが好ましい。従って、「スポークハブ」構成は不要である。   The further such toy is preferably identical or substantially identical to the first such toy. Thus, a “spoke hub” configuration is not required.

前記ネットワークを確立する手段はネットワークコントローラであることが好ましく、Zigbee(登録商標)プロトコルを利用するネットワークコントローラであることが好ましい。 The means for establishing the network is preferably a network controller, preferably a network controller using the Zigbee (registered trademark) protocol.

パラメータ記憶
玩具は、別のこのような玩具と対話するようになっており、前記プロセッサは、前記対話に関連する少なくとも1つの変数を定義する手段と、前記変数をメモリに記憶する手段と、前記変数を使用して前記玩具の(対話型)出力を制御する手段とを含むことが好ましい。
The parameter storage toy is adapted to interact with another such toy, the processor comprising means for defining at least one variable associated with the interaction, means for storing the variable in memory, And means for controlling the (interactive) output of the toy using variables.

本発明のさらに別の態様によれば、別のこのような玩具と対話するようになっている玩具が提供され、該玩具は、プロセッサと、該プロセッサに結合されたメモリと、前記プロセッサに結合された出力部とを備え、前記プロセッサは、前記対話に関連する少なくとも1つの変数を定義する手段と、前記変数をメモリに記憶する手段と、前記玩具の(対話型)出力に関連して変数を使用する手段とを含む(この結果より効率的に対話の経過を追い続けることが好ましい)。   According to yet another aspect of the invention, a toy is provided that is adapted to interact with another such toy, the toy being coupled to a processor, a memory coupled to the processor, and the processor. Output means, wherein the processor defines means for defining at least one variable associated with the interaction, means for storing the variable in memory, and a variable associated with the (interactive) output of the toy. (It is preferable to keep track of the dialogue more efficiently as a result of this).

前記変数を複数回(より好ましくは数えきれないほど)使用して出力を制御することが好ましい。   It is preferable to control the output by using the variable a plurality of times (more preferably, it cannot be counted).

前記変数を使用して、前記対話の回数、種類又は性質を決定することが好ましく、前記変数が前記対話であることが好ましい。   Preferably, the variable is used to determine the number, type or nature of the interaction, and the variable is preferably the interaction.

前記変数は、ランダムに又は疑似ランダム的に選択され、前記ランダム選択は重み付けにより影響されることが好ましい。   The variables are preferably selected randomly or pseudo-randomly, and the random selection is influenced by weighting.

玩具は、対話を生成する手段をさらに含むことが好ましい。対話を生成する手段は、記憶パラメータに基づいて対話を生成するようになっていることが好ましい。   The toy preferably further comprises means for generating a dialogue. Preferably, the means for generating a dialog is adapted to generate a dialog based on the stored parameters.

記憶手段は、各変数を玩具と関連づけることが好ましい。   The storage means preferably associates each variable with a toy.

記憶手段は、玩具内に位置するメモリであることが好ましい。   The storage means is preferably a memory located in the toy.

変数を使用する手段は、記憶手段から変数にアクセスするようになっていることが好ましい。   Preferably, the means for using the variable is adapted to access the variable from the storage means.

前記対話は、玩具間の通信であることが好ましい。   The dialogue is preferably communication between toys.

前記変数は、発話で利用される単語又は語句であることが好ましい。   The variable is preferably a word or phrase used in speech.

性格の表現及びテーマのスクリプト記述
前記プロセッサは、前記メモリにテーマ別データを記憶するようになっており、前記テーマはスクリプトデータ及び表現データを含み、前記表現データが前記玩具の性格を定義することが好ましい。
Personality expression and theme script description The processor stores theme data in the memory, the theme includes script data and expression data, and the expression data defines the character of the toy. Is preferred.

本発明のさらに別の態様によれば、プロセッサと、該プロセッサに結合されたメモリと、前記プロセッサに結合された出力部とを備えた玩具が提供され、前記プロセッサは、前記メモリにテーマ別データを記憶するようになっており、前記テーマはスクリプトデータ及び表現データを含み、前記表現データが玩具の性格を定義する(この結果、複数のテーマ別の玩具の性格がより効率的に提供されることが好ましい)。   According to yet another aspect of the present invention, there is provided a toy comprising a processor, a memory coupled to the processor, and an output coupled to the processor, the processor storing the thematic data in the memory. The theme includes script data and expression data, and the expression data defines the character of the toy (as a result, a plurality of theme toys are provided more efficiently. Preferably).

玩具は、少なくとも1つの他の同様の玩具と対話するようになっており、前記スクリプトデータが個々のこのような玩具により共有され、前記表現データが個々のこのような玩具間で異なることが好ましい。   The toy is adapted to interact with at least one other similar toy, preferably the script data is shared by each such toy and the representation data is different between each such toy. .

前記スクリプトデータは、前記表現データとは無関係であることが好ましい。   The script data is preferably unrelated to the expression data.

プロセッサは、別のこのような玩具に制御メッセージとしてスクリプトデータを出力するようになっており、制御メッセージに個々の表現データで応答するようになっていることが好ましい。   The processor is preferably adapted to output script data as control messages to another such toy and to respond to the control messages with individual expression data.

スクリプトデータは、各玩具ごとに同じものであり、各玩具の出力を制御することが好ましい。   The script data is the same for each toy, and it is preferable to control the output of each toy.

プロセッサは、スクリプトデータを利用して表現データを参照するようになっていることが好ましく、表現データは、異なるコンテンツを使用して同じ情報を通信することが好ましい。   The processor preferably uses script data to refer to the expression data, and the expression data preferably communicates the same information using different content.

玩具の性格は、通信のコンテンツにより定義されることが好ましい。   The personality of the toy is preferably defined by the content of communication.

人形の選択
プロセッサは、対話するための玩具を予め定めたルールに基づいて選択する手段を含むことが好ましい。
Doll Selection The processor preferably includes means for selecting toys for interaction based on predetermined rules.

本発明のさらに別の態様によれば、他のこのような玩具と対話するようになっている玩具が提供され、該玩具は、プロセッサと、該プロセッサに結合されたメモリと、前記プロセッサに結合された出力部とを備え、前記プロセッサは、対話する玩具を予め定めたルールに基づいて選択する手段を含み、前記選択される玩具は発信元玩具であってもよい。   In accordance with yet another aspect of the invention, a toy is provided that is adapted to interact with other such toys, the toy coupled to a processor, a memory coupled to the processor, and the processor. And the processor includes means for selecting a toy to interact based on a predetermined rule, and the selected toy may be a calling toy.

前記選択手段は、次の対話する玩具を選択するようになっていることが好ましい。   It is preferable that the selection means is adapted to select a toy for the next dialogue.

前記予め定めたルールは、直接選択、ランダム選択、及び現在の対話玩具を選択して再び対話することを含むことが好ましい。   The predetermined rule preferably includes direct selection, random selection, and selecting a current interactive toy and interacting again.

プロセッサは、選択された玩具のID及び好ましくは発信元玩具のIDを含む制御メッセージを出力するようになっていることが好ましい。   The processor is preferably adapted to output a control message including the ID of the selected toy and preferably the ID of the originating toy.

前記対話は通信を含むことが好ましく、該通信は発話及び指示を含むことが好ましい。   The dialogue preferably includes communication, and the communication preferably includes speech and instructions.

ゲームのプレイ
玩具は、他の同様の玩具とゲームをプレイすることに適した生きているものの形をとり、前記プロセッサはゲームエンジンを含み、該ゲームエンジンは、前記玩具が生きているかのようにゲームをプレイ可能にするようになっていることが好ましい。
Game Play Toys take the form of living things suitable for playing games with other similar toys, the processor including a game engine, which game engine is as if the toy is alive. It is preferable that the game can be played.

本発明のさらに別の態様によれば、他の同様の玩具とゲームをプレイすることに適した生命があるものの形をした玩具が提供され、該玩具は、プロセッサと、該プロセッサに結合されたメモリと、前記プロセッサに結合された出力部とを含み、前記プロセッサは、個々の前記玩具を関連する生きているものであるかのようにゲームできるようにするゲームエンジンを含む。   In accordance with yet another aspect of the invention, there is provided a toy in the form of a life suitable for playing games with other similar toys, the toy being coupled to the processor and the processor. Including a memory and an output coupled to the processor, the processor including a game engine that allows each of the toys to be played as if they were associated living things.

前記ゲームエンジンは、人間のゲームを可能にするようになっていることが好ましい。   The game engine is preferably adapted to allow human games.

前記人間のゲームは、ゲーム機器でプレイされることが好ましい。   The human game is preferably played on a game machine.

前記ゲームエンジンは、人間がゲーム機器を調整してゲームをプレイできるようにする命令を出力するようになっていることが好ましい。   Preferably, the game engine is configured to output a command that allows a human to adjust a game device to play a game.

前記玩具は、少なくとも1つのさらなるこのような玩具と通信する手段をさらに含むことが好ましい。   The toy preferably further comprises means for communicating with at least one further such toy.

前記ゲームエンジンはさらに、ルールに基づいたゲームをプレイするようになっていることが好ましい。   Preferably, the game engine is adapted to play a game based on rules.

前記ゲームエンジンは、前記メモリにゲームに関する情報を記憶するようになっていることが好ましい。   It is preferable that the game engine is configured to store information relating to the game in the memory.

前記情報はゲームのルールを含むことが好ましい。   The information preferably includes game rules.

前記情報は、少なくとも1つのプレイボードのレイアウトをさらに含むことが好ましい。   Preferably, the information further includes a layout of at least one playboard.

前記ゲームエンジンは、仮想サイコロになっている乱数発生器を含むことが好ましい。   The game engine preferably includes a random number generator that is a virtual dice.

ゲームエンジンは、ゲームに関する外部入力を受信する手段を含むことが好ましい。   The game engine preferably includes means for receiving external inputs relating to the game.

前記外部入力は、ゲームの駒に関連付けられることが好ましい。   The external input is preferably associated with a game piece.

前記外部入力は、プレイボード内の少なくとも1つのセンサであることが好ましい。   The external input is preferably at least one sensor in the playboard.

前記外部入力は、玩具のユーザが使用するようになっているスイッチであることが好ましい。   Preferably, the external input is a switch adapted for use by a toy user.

前記ルールに基づくゲームは、ヘビとはしご及びルードを含むことが好ましい。   The game based on the rules preferably includes a snake, a ladder, and a roodo.

前記出力は変換器であることが好ましい。前記変換器はスピーカであることが好ましい。前記変換器はアクチュエータであることが好ましい。   The output is preferably a converter. The converter is preferably a speaker. The transducer is preferably an actuator.

本発明のさらに別の態様によれば、複数のこのような玩具を含む組み合わせが提供される。   According to yet another aspect of the invention, a combination comprising a plurality of such toys is provided.

前記複数の玩具の各々の1つが他の前記玩具を制御する手段を含むことにより、1つの玩具のみが他の前記玩具を同時に制御することが好ましい。   Preferably, only one toy controls the other toys at the same time, with each one of the plurality of toys including means for controlling the other toys.

前記メモリは、ゲームの状態に関連する情報を記憶するようになっていることが好ましい。ゲーム状態は、プレイボードのレイアウト、プレイボード上の少なくとも1つのカウンタの位置、玩具及び/又はユーザの全てに関するプレイの順序の少なくとも1つであってもよい。   The memory preferably stores information related to a game state. The game state may be at least one of a playboard layout, a position of at least one counter on the playboard, a toy and / or an order of play for all of the users.

人形固有のダウンロード
本発明のさらに別の態様によれば、複数の玩具にテーマ別データを提供する装置が提供され、該装置は、各々が複数のサブテーマを含む前記テーマ別データを記憶する手段と、特定の玩具を識別する手段と、特定の玩具に基づいてサブテーマを選択する手段と、前記玩具に対して前記特定のサブテーマを出力する手段とを含む(この結果、テーマ別ダウンロードへのアクセスがより効率的に達成されることが好ましい)。
Doll-specific download According to yet another aspect of the present invention, there is provided an apparatus for providing theme data to a plurality of toys, the apparatus storing said theme data each including a plurality of sub-themes Means for identifying a specific toy, means for selecting a sub-theme based on the specific toy, and means for outputting the specific sub-theme for the toy (as a result, download to the theme) Is preferably achieved more efficiently).

玩具は、複数の異なるテーマを記憶する手段をさらに含むことが好ましい。   The toy preferably further comprises means for storing a plurality of different themes.

玩具は、ユーザが複数のテーマのうちの1つを選択できるようにする手段をさらに含むことが好ましい。   The toy preferably further includes means for allowing the user to select one of a plurality of themes.

前記特定の玩具を特定する手段は、前記玩具の一意の識別番号を使用することが好ましい。   The means for specifying the specific toy preferably uses a unique identification number of the toy.

玩具は、前記玩具に関連するパラメータに基づいて個々の前記サブテーマを暗号化する手段をさらに含むことが好ましい。前記パラメータは玩具の一意の識別番号であることが好ましい。   The toy preferably further comprises means for encrypting the individual sub-themes based on parameters associated with the toy. The parameter is preferably a unique identification number of the toy.

装置は、プロセッサと、テーマ別データを記憶するとともに特定の玩具を識別する関連メモリとを含むことが好ましい。   The apparatus preferably includes a processor and associated memory for storing thematic data and identifying a particular toy.

装置は、玩具にサブテーマを出力するための接続部をさらに含むことが好ましい。接続部は、インターネット及びUSBケーブルを含むことが好ましい。   The device preferably further includes a connection for outputting the sub-theme to the toy. The connection unit preferably includes the Internet and a USB cable.

会話エンジン
本発明のさらに別の態様によれば、玩具などの装置のための会話エンジンが提供され、該会話エンジンは、会話のテーマを選択し、複数の起点から起点をランダムに選択し、変数に基づいて語句をランダムに選択し、変数に基づいて次の発話者をランダムに選択する手段を含む。
Conversation Engine According to yet another aspect of the present invention, there is provided a conversation engine for a device such as a toy, wherein the conversation engine selects a conversation theme, randomly selects a starting point from a plurality of starting points, a variable And a means for randomly selecting a phrase based on, and randomly selecting the next speaker based on a variable.

前記語句選択はさらに、重み付けに基づくことが好ましい。   The word selection is further preferably based on weighting.

玩具は、会話エンジンを組み込むことが好ましい。   The toy preferably incorporates a conversation engine.

玩具又は会話エンジンは、ユーザから入力データを受信するようになっていることが好ましい。   The toy or conversation engine is preferably adapted to receive input data from the user.

玩具又は会話エンジンは、ユーザにデータを出力するようになっていることが好ましい。   The toy or conversation engine is preferably adapted to output data to the user.

会話エンジンはさらに、ユーザからの入力データをランダム選択処理の形で利用するようになっていることが好ましい。   The conversation engine preferably further uses input data from the user in the form of a random selection process.

会話エンジンは、選択動作を実行するようになっているプロセッサを含むことが好ましい。   The conversation engine preferably includes a processor adapted to perform the selection operation.

玩具又は会話エンジンは、会話をリアルタイムに構築するようになっていることが好ましい。   The toy or conversation engine is preferably adapted to construct a conversation in real time.

玩具又は会話エンジンは、会話を前処理するようになっていることが好ましい。玩具又は会話エンジンはさらに、前処理済みの会話を出力するようになっていることが好ましい。   The toy or conversation engine is preferably adapted to preprocess the conversation. Preferably, the toy or conversation engine is further adapted to output a preprocessed conversation.

玩具又は会話エンジンは、会話を構築する際に、確立されたネットワーク内に存在する他の玩具のパラメータを変数として利用するようになっていることが好ましい。   The toy or conversation engine preferably uses the parameters of other toys that exist in the established network as variables when constructing the conversation.

玩具又は会話エンジンは、重み付けに基づいてデータを出力するようになっていることが好ましい。   The toy or conversation engine is preferably adapted to output data based on weighting.

玩具は、複数組のテーマ別データを記憶するようになっていることが好ましい。玩具はさらに、1つの会話中に複数組のテーマ別データのうちの少なくとも2つを利用するようになっていることが好ましい。   The toy preferably stores a plurality of sets of thematic data. Preferably, the toy is further adapted to utilize at least two of a plurality of sets of thematic data during one conversation.

玩具は、好ましくは2、3、4又はそれ以上の複数の他のこのような玩具とネットワークを確立できるようになっていることが好ましい。   The toy is preferably adapted to establish a network with a plurality of other such toys, preferably 2, 3, 4 or more.

玩具は、生きているようになっていることが好ましい。   The toy is preferably alive.

玩具は、他のこのような玩具と通信するようになっており、前記通信は、発話、行動及びジェスチャを含むことが好ましい。   The toy is adapted to communicate with other such toys, and the communication preferably includes speech, action and gestures.

玩具又は会話エンジンは、以下の特徴の1つ、いくつか、又は全てをいずれかの組合せで有することが好ましい。
・子供が玩具と対話式に遊ぶことができる
・オンザフライで構築される会話
・会話を開始する前に会話が前処理される
・会話がネットワーク内に存在する人形に基づく
・会話がネットワーク内に存在する人形の種類に基づく
・会話の長さ及び方向性の制御に使用される重み付け
・会話の半ばでテーマを切り替える能力
・2、3又はそれ以上の玩具
・玩具は生きているもの/人間/人形である
・対話は通信を含み、通信は広い意味で定められる
The toy or conversation engine preferably has one, some or all of the following features in any combination.
・ Children can play interactively with toys ・ Conversations built on-the-fly ・ Conversations are pre-processed before the conversation starts ・ Conversations are based on dolls that exist in the network ・ Conversations exist in the network Based on the type of doll to be used-Weighting used to control the length and direction of conversation-Ability to switch themes in the middle of conversation-2, 3 or more toys-Toys are alive / human / doll Dialogue includes communication, and communication is defined in a broad sense

要約すると、本発明は特に以下の発明に言及するものである。
・オーサリングツール〜玩具が読み込み可能なプログラムコードにコンパイルされる会話データを入力する機能を提供する。
・USB通信ドングル〜玩具とPCとの間の通信を可能にする装置を提供する。
・コントローラ人形〜3以上の人形であり、単一のコントローラとして最初に電源が入った人形を使用して制御が行われる。
・性格の表現〜人形の性格要素に基づいて、同じテーマが異なる表現を有する。
・テーマのスクリプト作成〜テーマは、ダウンロード可能な表現の組合せであり、スクリプト/スクリプト及び表現は、異なるテーマごとに不可欠な/異なるスクリプトである。
・パラメータ記憶〜現在の会話に関する情報を記憶する能力、例えば、「私の犬はFluffyと言います」という語句では、人形がその会話内の情報(ペット=「犬」及びペットの名前=「fluffy」)を後で使用するために記憶する。
・人形固有のダウンロード〜ウェブサイトダウンロードのみが、特定の性格に関する特定の言語を表現として有し、性格に従って表現がダウンロードされる。
・会話の構造〜人形は、関連する発話で応答するか、別の人形を選択して話しかけるか、或いは自分自身について何かを発表するかのいずれかを選択する。
・人形の選択〜コントローラは、次にどの人形が発話するかをランダムに決定し、ランダムに選択するものの、人形は2回続けて発話することができず、或いは特定の人形を名前で選択することもできない。
・ゲームのプレイ〜人形は人間のようにゲームをプレイする。
In summary, the present invention specifically refers to the following inventions.
Authoring tool-Provides a function to input conversation data that is compiled into a program code that can be read by a toy.
USB communication dongle-provides a device that enables communication between a toy and a PC.
Controller doll-3 or more dolls, and control is performed using a doll that is first turned on as a single controller.
-Character expression-The same theme has different expressions based on the personality elements of the doll.
Theme script creation-theme is a combination of downloadable expressions, and the scripts / scripts and expressions are indispensable / different scripts for different themes.
Parameter storage—the ability to store information about the current conversation, for example, the phrase “My dog says Fluffy”, where the doll has information in the conversation (pet = “dog” and pet name = “fluffy” ') For later use.
Only doll-specific downloads to website downloads have a specific language related to a specific character as an expression, and the expression is downloaded according to the character.
Conversational structure-The doll chooses to either respond with a related utterance, select another doll to speak, or announce something about themselves.
-Doll selection-The controller randomly determines which doll will speak next, and randomly selects it, but the doll cannot speak twice in succession or selects a specific doll by name I can't do that either.
-Game play-Dolls play games like humans.

本発明は、データ処理装置で実行された場合、構成要素の段階のいずれか又は全てを含む本明細書で説明する方法のいずれかを実行するようになっているコンピュータプログラム及びソフトウェアコードを含むコンピュータプログラム製品も提供する。   The present invention is a computer comprising a computer program and software code adapted to perform any of the methods described herein including any or all of the component steps when executed on a data processing apparatus. Program products are also provided.

本発明は、データ処理装置で実行された場合、本明細書で説明する装置の特徴のいずれかを含むコンピュータプログラム及びソフトウェアコードを含むコンピュータプログラム製品も提供する。   The present invention also provides a computer program product comprising a computer program and software code comprising any of the device features described herein when executed on a data processing device.

本発明は、本明細書で説明する方法のいずれかを実行し及び/又は本明細書で説明する装置の特徴のいずれかを具体化するコンピュータプログラム及びコンピュータプログラムをサポートするオペレーティングシステムを有するコンピュータプログラム製品も提供する。   The present invention is a computer program having a computer program for performing any of the methods described herein and / or embodying any of the features of the apparatus described herein and an operating system supporting the computer program. Products are also provided.

本発明は、上述したようなコンピュータプログラムを記憶したコンピュータ可読媒体も提供する。   The present invention also provides a computer readable medium storing a computer program as described above.

本発明は、上述したようなコンピュータプログラムを保持する信号及びこのような信号を送信する方法も提供する。   The present invention also provides a signal holding a computer program as described above and a method for transmitting such a signal.

本発明は、実質的に添付図面を参照しながら本明細書で説明するような方法及び/又は装置にまで及ぶ。   The present invention extends to methods and / or apparatus substantially as herein described with reference to the accompanying drawings.

装置及び方法の特徴は適宜入れ替えることができ、また互いに独立して提供することができる。本発明の1つの態様におけるあらゆる特徴を、本発明の他の態様にあらゆる適当な組合せで適用することができ、同様に1つの本発明におけるあらゆる特徴を、本発明の他の態様にあらゆる適当な組合せで適用することができる。例えば、方法の態様を装置の態様に適用することができ、この逆もまた可能である。この場合も、例えば「コントローラ人形」のあらゆる特徴を「パラメータ記憶」のあらゆる特徴に適用することができる。   The features of the apparatus and method can be interchanged as appropriate and can be provided independently of each other. Any feature in one aspect of the invention may be applied in any suitable combination to other aspects of the invention, and similarly any feature in one invention may be applied to any other aspect of the invention. Can be applied in combination. For example, method aspects can be applied to apparatus aspects and vice versa. Again, for example, any feature of the “controller doll” can be applied to any feature of the “parameter store”.

さらに、ハードウェアで実行される特徴をソフトウェアで実行することができ、この逆もまた可能である。本明細書におけるソフトウェア及びハードウェアの特徴へのあらゆる言及については、以上に従って解釈すべきである。   Furthermore, features implemented in hardware can be implemented in software and vice versa. Any reference to software and hardware features herein should be construed accordingly.

本明細書では、「〜する手段」に機能をプラスした用語の使用は、この機能を実行するようになっている適当なハードウェアコンポーネント(例えば、プロセッサ及び/又はメモリ)と置き換えることができる。   As used herein, the use of a term plus “function to” can be replaced by a suitable hardware component (eg, processor and / or memory) adapted to perform this function.

以下、ほんの一例として、本発明の様々な実施形態について添付図面を参照しながら説明する。   In the following, various embodiments of the present invention will be described by way of example only with reference to the accompanying drawings.

3種類の人形を示す図である。It is a figure which shows three types of dolls. 人形の概略図である。It is the schematic of a doll. スレーブ玩具を含むコントローラ玩具の概略図である。It is the schematic of the controller toy containing a slave toy. 人形にテーマ/サブテーマをダウンロードできる、ウェブサイトに接続された人形の概略図である。FIG. 2 is a schematic diagram of a doll connected to a website where a theme / sub-theme can be downloaded to the doll; ゲームをプレイするようになっている人形の概略図である。It is the schematic of the doll which comes to play a game. ゲームをプレイする処理のフロー図である。It is a flowchart of the process which plays a game. 代替実施形態の概略図である。FIG. 6 is a schematic diagram of an alternative embodiment. プロセッサ及び関連する電子機器の回路図の実施形態である。1 is an embodiment of a circuit diagram of a processor and associated electronic equipment. プロセッサ及び関連する電子機器の回路図の代替実施形態である。2 is an alternative embodiment of a circuit diagram of a processor and associated electronics. オーサリングツールサーバと通信しているユーザPCを示す図である。It is a figure which shows the user PC which is communicating with an authoring tool server. オーサリングツール及び関連システムの概要を示す図である。It is a figure which shows the outline | summary of an authoring tool and a related system. 会話デザイナーウィンドウを示す図である。It is a figure which shows a conversation designer window. テーマ生成ウィンドウを示す図である。It is a figure which shows a theme production | generation window. データ入力したテーマ生成ウィンドウを示す図である。It is a figure which shows the theme production | generation window which input data. テーマ生成ウィンドウの代替の実施形態を示す図である。FIG. 6 illustrates an alternative embodiment of a theme generation window. テキストファイルインポート機能のフロー図である。It is a flowchart of a text file import function. 人形追加ウィンドウを示す図である。It is a figure which shows a doll addition window. 人形作成ウィンドウを示す図である。It is a figure which shows a doll creation window. 人形コンテキストウィンドウを示す図である。It is a figure which shows a doll context window. 会話入力ウィンドウを示す図である。It is a figure which shows a conversation input window. 会話入力ウィンドウの代替の実施形態示す図である。FIG. 6 illustrates an alternative embodiment of a conversation input window. 複数の人形と通信しているUSBドングルを示す図である。It is a figure which shows the USB dongle which is communicating with several dolls. 2体の人形及び行動のタイムラインの概略図である。It is the schematic of two dolls and the timeline of action. 別の人形をトリガするための様々なタイミング例を示す図である。It is a figure which shows the various timing examples for triggering another doll. 別の人形をトリガするための様々なタイミング例を示す図である。It is a figure which shows the various timing examples for triggering another doll. 別の人形をトリガするための様々なタイミング例を示す図である。It is a figure which shows the various timing examples for triggering another doll.

図1は3種類の人形を示す図であり、10はテニスをしている人形、20はバレリーナ人形、30は犬の散歩中を示す一般的な人形、及び40は戦車の形をした玩具である。一般に、玩具は生きているように見えるようになっており、特に戦車などの場合は、人間のように又は人間が制御しているように見えるようになっている。図示の4つの玩具は、テーマ別玩具の種類の例である。玩具は、テーマ内の他のこのような玩具と無線で通信するようになっている。   FIG. 1 is a diagram showing three kinds of dolls, 10 is a tennis doll, 20 is a ballerina doll, 30 is a general doll during a dog walk, and 40 is a tank-shaped toy. is there. In general, a toy appears to be alive, particularly in the case of a tank or the like, as if it were a human being or controlled by a human being. The four toys shown in the figure are examples of types of toys by theme. The toy is adapted to communicate wirelessly with other such toys in the theme.

以下の説明は、他のこのような玩具と通信できるようにされた人形などの玩具に関するものであり、人形は、人形間で発話を調整するようになっている。別の実施形態では、玩具は戦車又は別のこのような車両であり、この場合も、人形間の発話の代わりに戦車が他のこのような戦車と無線で通信して戦車の挙動を調整するようになっている。   The following description relates to toys such as dolls that are adapted to communicate with other such toys, which are adapted to coordinate utterances between dolls. In another embodiment, the toy is a tank or another such vehicle, and again the tank communicates with other such tanks wirelessly to adjust the tank's behavior instead of utterances between dolls. It is like that.

図2は人形の概略図を示しており、人形が通信を行って他のこのようなタスクを実行できるようにするために必要なハードウェアコンポーネントを含む。図2に示すように、人形100は、無線モジュール104を含むプロセッサ102を含む。プロセッサは、メモリ106、ROM108及びRAM110と通信している。IR/RF送信機/受信機がプロセッサ/無線モジュールに接続され、他のこのような人形との間で信号を送信/受信できるようにされる。人形はスピーカ114にも接続される。USBコントローラ116を使用してメモリ106を更新し、充電器回路118を介して電池120の充電も行う。或いは、人形は、充電式電池ではなく交換式電池を使用するようにされる。   FIG. 2 shows a schematic diagram of the doll and includes the hardware components necessary to allow the doll to communicate and perform other such tasks. As shown in FIG. 2, the doll 100 includes a processor 102 that includes a wireless module 104. The processor is in communication with the memory 106, ROM 108 and RAM 110. An IR / RF transmitter / receiver is connected to the processor / wireless module so that signals can be transmitted / received to / from other such dolls. The doll is also connected to the speaker 114. The memory 106 is updated using the USB controller 116 and the battery 120 is also charged via the charger circuit 118. Alternatively, the doll is made to use a replaceable battery rather than a rechargeable battery.

メモリ106は、人形が行うことができる会話に関する情報を記憶し、プロセッサが発話をコンパイルしているときにプロセッサによりアクセスされる。ROM108を使用して、人形の名前及びID番号などの人形に関する恒久的情報を記憶する。この情報は、人形のネットワークを設定するときの初期化手順において使用される。RAM110は、現在の会話に関する情報を記憶し、例えばすでに使用された語句に関する情報を記憶することにより現実的な会話を作成するために使用される。   Memory 106 stores information about the conversations that a doll can have and is accessed by the processor when the processor is compiling the utterance. ROM 108 is used to store permanent information about the doll such as the name and ID number of the doll. This information is used in the initialization procedure when setting up the doll network. The RAM 110 stores information related to the current conversation, and is used, for example, to create a realistic conversation by storing information related to words that have already been used.

個々の人形100は、メモリ106内に、人形の名前を含むデータセット及び会話中に定義されるその他の変数、会話を作成する命令セット、及び音声データセットを含む。会話中に定義される変数は、コントローラ人形にのみ記憶される。   Each doll 100 includes in memory 106 a data set that includes the name of the doll and other variables defined during the conversation, an instruction set for creating the conversation, and an audio data set. Variables defined during the conversation are stored only in the controller doll.

1つの実施形態では、プロセッサが、関連する(SDカードなどの)メモリインターフェイスを伴ってMP3復号で使用されるような形をとる。この実施形態は、かなりの量の処理能力(及びハードウェアベースの圧縮技術)を提供し、従って人形間の長く詳細な会話を可能にする。   In one embodiment, the processor takes the form as used in MP3 decoding with an associated memory interface (such as an SD card). This embodiment provides a significant amount of processing power (and hardware-based compression techniques), thus allowing long and detailed conversations between dolls.

コントローラ人形
図3でわかるように、コントローラユニット200がいくつかのスレーブユニット(202)と通信している。コントローラは、会話エンジン204と、発話コンパイラ206と、発話データベース208と、スピーカ(変換器)210と、スレーブユニットからデータを送信及び受信できる送信機/受信機212とを含む。会話エンジンは、ランダム発話セレクタ214と、パラメータ記憶メモリ216と、発話者セレクタ218とを含む。スレーブユニットは、コントローラユニットの全ての構成要素を有しており、図3ではスレーブユニットの構成要素の全てを示しているわけではない。
Controller Figure As can be seen in FIG. 3, the controller unit 200 is in communication with several slave units (202). The controller includes a conversation engine 204, a speech compiler 206, a speech database 208, a speaker (converter) 210, and a transmitter / receiver 212 that can transmit and receive data from a slave unit. The conversation engine includes a random utterance selector 214, a parameter storage memory 216, and a speaker selector 218. The slave unit has all the components of the controller unit, and FIG. 3 does not show all the components of the slave unit.

最初に電源が入るユニットがコントローラユニットとなるように初期化される。ユニットに電源が入ると、このユニットが既存のネットワークを検索し、ネットワークが存在しなければ、ネットワークを作成して他のユニットがネットワークに参加するのを待つ。さらなるユニットがオンになると、これらがネットワークに参加し、スレーブユニットとして初期化される。コントローラユニットは、両方の新しいユニットからの、ネットワークの詳細及び会話開始メッセージを求めることを示す通信を待つ。スレーブユニットは、ネットワークに参加すると、コントローラユニットからの命令を待つ。ユニット(玩具/人形)は、全てがコントローラユニットにも又はスレーブユニットにもなることができる限り全て同じものであることを理解されたい。   Initialization is performed so that the unit to be powered on first becomes the controller unit. When a unit is powered on, this unit searches for an existing network, and if it does not exist, it creates a network and waits for other units to join the network. When further units are turned on, they join the network and are initialized as slave units. The controller unit waits for communication from both new units indicating network details and a call for conversation start message. When the slave unit joins the network, it waits for an instruction from the controller unit. It should be understood that the units (toys / dolls) are all the same as long as they can all be controller units or slave units.

ユニットは、「動物園」、「スポーツ」、「ギャングスタ」又は「ファッション」などのテーマ内で通信するようになっている。テーマにより、ユニットは、考えられる会話の話題全てに関する情報についての極めて大規模なデータベースを必要せずに詳細な会話を行えるようになる。ユーザは、テーマ/サブテーマをウェブサイトからユニットにダウンロードすることができる。   Units are adapted to communicate within themes such as “zoo”, “sports”, “gangsta” or “fashion”. Themes allow units to conduct detailed conversations without the need for a very large database of information about all possible conversation topics. The user can download the theme / sub-theme from the website to the unit.

以下のプロセスを使用して玩具のネットワークを開始する。
・人形がオンになったときに、参加する既存のネットワークが存在するかどうかを判定するためのチェックを行う〜これは送/受信機212を使用して遂行される。
・利用可能なネットワークが存在しない場合、この人形がコントローラになって自動的にネットワークを設定する〜必要な場合、無線モジュール104がネットワークを作成するようになっている。
・オンになった個々の後続の人形が、メモリに記憶した人形ID番号及びテーマ/複数のテーマID番号を送信する〜情報は送信機212により送信される。
・コントローラがテーマ/複数のテーマをチェックして、コントローラと同じ参加するテーマ/複数のテーマを有する人形のみを許可する〜コントローラユニットが、送信データとメモリに記憶されたデータとの比較を行う。
・2又はそれ以上の人形がネットワークに参加すると、会話を開始することが可能となる。
・ユーザがボタンを押すことなどにより会話を開始し、コントローラが、他の人形に何を発言すべきかを指示する会話を開始する。
・ユーザは、いつでも再びボタンを押して会話を停止することができる。
Start a toy network using the following process:
When the doll is turned on, a check is made to determine if there is an existing network to join—this is accomplished using the transmitter / receiver 212.
If there is no network available, this doll will become the controller and automatically set the network-if necessary, the wireless module 104 will create the network.
Each subsequent doll that is turned on transmits the doll ID number and theme / multiple theme ID numbers stored in memory—information is transmitted by the transmitter 212.
The controller checks the theme / multiple themes and only allows dolls that have the same participating theme / multiple themes as the controller—the controller unit compares the transmitted data with the data stored in memory.
A conversation can be started when two or more dolls join the network.
The user starts a conversation, such as by pressing a button, and the controller starts a conversation that tells the other doll what to say.
The user can stop the conversation at any time by pressing the button again.

コントローラユニットは会話を生成するプログラムを実行し、その後どのオーディオファイルにアクセスすべきかを知らせる情報をスレーブユニットへ送信する(このオーディオファイルは個々の性格型によって異なってもよいが、オーディオファイルの各々への参照はユニットごとに同じものである)。コントローラユニットは、スレーブユニットのメモリからアクセスするための単語/語句の識別子を送信する。スレーブユニットは、使用する語句及びこの語句を発言するのに要する予想される時間長を確認するメッセージを送信することにより、メッセージの受信についての確認応答を行う。次に、スレーブユニットは、会話コンパイラを使用して単語/語句をコンパイルし、その後スピーカを使用して語句を発言する。スレーブユニットは、語句を発言し終わると、文が終了し会話を続けることができる旨の信号をコントローラユニットへ送信する。   The controller unit executes the program that generates the conversation and then sends information to the slave unit indicating which audio file to access (this audio file may vary depending on the individual personality type, but to each audio file) Is the same for each unit). The controller unit transmits a word / phrase identifier for access from the memory of the slave unit. The slave unit acknowledges receipt of the message by sending a message confirming the phrase to use and the expected length of time it takes to speak the phrase. The slave unit then compiles the word / phrase using the conversation compiler and then speaks the phrase using the speaker. When the slave unit finishes speaking the phrase, the slave unit transmits a signal to the controller unit indicating that the sentence ends and the conversation can be continued.

その後、コントローラユニットが同じ方法で次の発話者に指示を行い、会話が終わるまでこれを継続する。会話構造に関するさらなる詳細を以下に示す。   The controller unit then instructs the next speaker in the same way and continues until the conversation ends. Further details regarding the conversation structure are given below.

通信プロトコル
玩具は通信プロトコルを使用して通信し、メッセージのフォーマットは以下の通りである。
[MessageID,SendingToy_ID,ReceivingToy_ID,MessageType,Parameters]
Communication protocol Toys communicate using a communication protocol, and the message format is as follows.
[MessageID, SendingToy_ID, ReceivingToy_ID, MessageType, Parameters]

MessageIDとは、メッセージを識別する一意の番号のことである。制御玩具から送信される個々のメッセージは一意の識別番号を有する。   MessageID is a unique number that identifies a message. Each message sent from the control toy has a unique identification number.

SendingToy_IDは、メッセージを送信する玩具を示す。   SendingToy_ID indicates a toy that sends a message.

ReceivingToy_IDは、メッセージを受信する玩具を示す。   ReceivingToy_ID indicates the toy that receives the message.

MessageTypeは、START、STOP、SAYなどのメッセージの種類を示す。   MessageType indicates the type of message such as START, STOP, or SAY.

パラメータとは、メッセージタイプに関する他のあらゆる必要な情報のことである。SAYメッセージのみが、話される(単複の)語句を識別するパラメータを有する。   A parameter is any other necessary information about the message type. Only the SAY message has a parameter that identifies the phrase (s) spoken.

従って、メッセージの範囲は以下を含む。
[MessageID,SendingToy_ID,ReceivingToy_ID,START]
[MessageID,SendingToy_ID,ReceivingToy_ID,STOP]
[MessageID,SendingToy_ID,ReceivingToy_ID,SAY,PhraseID]
Thus, the scope of the message includes:
[MessageID, SendingToy_ID, ReceivingToy_ID, START]
[MessageID, SendingToy_ID, ReceivingToy_ID, STOP]
[MessageID, SendingToy_ID, ReceivingToy_ID, SAY, PhaseID]

これらのメッセージの各々は、以下の形の確認応答を生成する。
[MessageID,SendingToy_ID,ReceivingToy_ID,Ack,Parameter]
Each of these messages generates an acknowledgment of the form
[MessageID, SendingToy_ID, ReceivingToy_ID, Ack, Parameter]

パラメータは、SAYメッセージへの確認応答のみに使用され、語句の持続時間を指定する。コントローラユニットは、語句パラメータの持続時間を使用して、次のメッセージを送信するまで適当な時間長の間待機する。   The parameter is used only for acknowledgment to the SAY message and specifies the duration of the phrase. The controller unit uses the duration of the phrase parameter to wait for an appropriate length of time before sending the next message.

従って、玩具1が玩具2と通信していると仮定した場合、各メッセージの通常のイベントのシーケンスは以下の通りになる。
[MessageID,1,2,START][MessageID,2,1,ACK][MessageID,1,2,SAY,PhraseID][MessageID,2,1,ACK,DURATION]
[MessageID,1,2,STOP][MessageID,2,1,ACK]
Therefore, assuming that toy 1 is communicating with toy 2, the sequence of normal events for each message is as follows:
[MessageID, 1, 2, START] [MessageID, 2, 1, ACK] [MessageID, 1, 2, SAY, PhaseID] [MessageID, 2, 1, ACK, DURATION]
[MessageID, 1, 2, STOP] [MessageID, 2, 1, ACK]

STARTコマンドは、受信側玩具にさらなる到来メッセージの受信を予想するように指示する。次に、コントローラ人形が、スレーブ玩具が使用する必要がある語句のphraseIDを含む少なくとも1つのメッセージを送信する。個々のphraseIDがスレーブ玩具へ別個に送信され、従ってこの種の複数のメッセージを送信して文章全体を構築することができる。STOPコマンドを使用して、このシーケンスにこれ以上のメッセージが存在しない旨をスレーブ玩具に指示する。   The START command instructs the receiving toy to expect to receive further incoming messages. The controller doll then sends at least one message containing the phrase ID of the phrase that the slave toy needs to use. Individual phraseIDs are sent separately to the slave toy, so multiple messages of this kind can be sent to build the entire sentence. A STOP command is used to instruct the slave toy that there are no more messages in this sequence.

スレーブ玩具は、メッセージを受信すると、メッセージの受信を確認応答するメッセージをコントローラへ送信する。コントローラは、START及びSTOPの確認応答に対しては直ちに会話プログラムを続行するが、SAYコマンドについては、コントローラ人形は、SAYの確認応答に対応するDURATIONと等しい遅延後に続行する。確認応答が受信されない場合、確認応答が受信されるまでメッセージが再送される。この再送は何回も行われ、その時点で人形がリセットされて会話が停止し、例えば、メッセージは1000〜2000回、2000〜5000回、5000〜10,000回又はそれ以上再送される。   When the slave toy receives the message, it transmits a message confirming receipt of the message to the controller. The controller continues the conversation program immediately for the START and STOP acknowledgments, but for the SAY command, the controller doll continues after a delay equal to the DURATION corresponding to the SAY acknowledgment. If no acknowledgment is received, the message is retransmitted until an acknowledgment is received. This retransmission is performed many times, at which point the doll is reset and the conversation stops. For example, the message is retransmitted 1000 to 2000 times, 2000 to 5000 times, 5000 to 10,000 times or more.

個々の語句の最後には「語句終了フラグ」も添付されて、いつ語句が終わったかをスレーブユニットに通知する。この時点で、スレーブユニットは、発話が終了したことを示すメッセージをコントローラへ送信する。コントローラは、メッセージを受信すると次のユニットに発話するように指示するが、次の発話者はコントローラであっても、又は別のスレーブユニットであってもよい。   At the end of each word, a “word end flag” is also attached to notify the slave unit when the word is over. At this point, the slave unit sends a message to the controller indicating that the utterance has ended. The controller instructs the next unit to speak when it receives the message, but the next speaker may be the controller or another slave unit.

コントローラ玩具が戦車である場合、発話を指示する代わりに、スレーブユニットに通信される命令は、スレーブユニット戦車が動くべきであるという指図の形をとる。従って、PhraseIDは、movementIDに置き換えられる。このようにして、コントローラ戦車が戦闘などのシミュレーションを行うことになる。玩具の戦車には、これらが協調して動くことができるように、ネットワーク内に他の玩具の戦車を位置決めする手段が設けられる。この手段は、玩具が通信している位置センサを有するプレイボード、又はカメラ、トランスポンダなどの他の位置決め手段の形をとることができる。   If the controller toy is a tank, instead of instructing speech, the command communicated to the slave unit takes the form of an instruction that the slave unit tank should move. Accordingly, the phrase ID is replaced with the movement ID. In this way, the controller tank performs a simulation such as a battle. Toy tanks are provided with means for positioning other toy tanks in the network so that they can move in concert. This means can take the form of a playboard with a position sensor with which the toy communicates, or other positioning means such as a camera, transponder or the like.

代替の実施形態では、個々の人形が自身の行動を制御し、すなわち個々の人形が会話を生成するためのプログラムを実行する。従って、ネットワーク内の個々の人形が効果的にコントローラ人形となる。この例では、個々の人形がその他の人形に、その他の人形が到達したプログラム内の地点に関する情報を送信する。これにより次に発話する予定の人形が、プログラムを現在の地点から実行できるようになる。また、現在のコントローラ人形が設定した変数に関する情報が他の関連する人形全てに送信され、例えばこの変数がグローバル変数である場合、これが他の人形全てに送信される。ネットワーク内の個々の人形がコントローラ人形になれるようにすることにより、ネットワークのロバスト性を高めることができる。これは、現在のコントローラ人形さえも含むあらゆる人形をネットワークから除外することができ、残りの人形がいなくなった人形の分まで対処することができるという事実によるものである。   In an alternative embodiment, the individual dolls control their actions, i.e. the individual dolls execute a program for generating a conversation. Thus, each doll in the network effectively becomes a controller doll. In this example, individual dolls send information to other dolls about the points in the program that other dolls have reached. This allows the doll to be uttered next time to execute the program from the current location. Also, information regarding the variables set by the current controller doll is transmitted to all other related dolls. For example, when this variable is a global variable, this is transmitted to all other dolls. By allowing each doll in the network to be a controller doll, the robustness of the network can be increased. This is due to the fact that any doll, including even the current controller doll, can be excluded from the network, and even the remaining dolls can be dealt with.

同期
別の実施形態では、玩具が他の同じような玩具とより本物そっくりに対話するようにされる。この人形、乗り物などの形をした玩具は、これらがまるで生きているかのように対話できるようにする対話エンジンを備える。この対話エンジンは、玩具が同時に、すなわち個々の玩具が行動を終えてから別の玩具が別の行動を開始できるようにする必要なく行動を出力できるようにする。この対話エンジンは本明細書で説明する会話エンジンに類似するが、対話エンジンは、会話エンジンに加え或いはこれとは別に発話以外の動きなどの行動の出力を取り扱うことができる。
Synchronization In another embodiment, the toy is made to interact more closely with other similar toys. These toys in the form of dolls, vehicles, etc. are equipped with a dialog engine that allows them to interact as if they were alive. This dialog engine allows toys to output actions at the same time, i.e. without having to allow each toy to finish another action before another toy can start another action. The dialog engine is similar to the conversation engine described herein, but the dialog engine can handle the output of actions such as movements other than speech in addition to or separately from the conversation engine.

図17aは、2体の人形A及びB1750の概略図であり、人形の行動を同期させるために利用できる様々なタイミングを示すタイムラインを図17b、図17c及び図17dに示す。人形A及びBは基本的に両方とも同じものであり、プロセッサ1700と、プロセッサに結合されたメモリ1702と、プロセッサに結合された変換器1704と、無線通信モジュール1706とを含む。メモリ1702は、会話又は軍事演習などの予想される人形間の対話に関する情報を記憶する。対話エンジン1708は、プロセッサに結合されて対話を構築できるようにする。プロセッサ1700は、記憶された情報を利用して2又はそれ以上の人形間の対話を構築するようにされる。プロセッサ1700の出力部は、プロセッサが選択した行動を表す信号を出力し、これが変換器1704へ転送されて出力を適当な行動に変換する。   FIG. 17a is a schematic diagram of two dolls A and B 1750, and timelines are shown in FIGS. 17b, 17c, and 17d showing various timings that can be used to synchronize the doll's behavior. Dolls A and B are both essentially the same and include a processor 1700, a memory 1702 coupled to the processor, a converter 1704 coupled to the processor, and a wireless communication module 1706. Memory 1702 stores information regarding anticipated puppet interactions such as conversations or military exercises. The interaction engine 1708 is coupled to the processor to allow interaction to be constructed. The processor 1700 is adapted to construct a dialogue between two or more dolls using the stored information. The output unit of the processor 1700 outputs a signal representing the action selected by the processor, which is transferred to the converter 1704 to convert the output into an appropriate action.

プロセッサ1700はまた、ネットワーク内の他の人形へ無線通信モジュール1706を介して無線で通信されるトリガ信号を生成するようにもなっている。このトリガ信号は、現在の人形が自身の行動を終える前のあらゆる時点において送信することができる。これにより、ネットワーク内の人形を自身の出力に対して同期できるようにすることができる。   The processor 1700 is also adapted to generate a trigger signal that is communicated wirelessly via the wireless communication module 1706 to other dolls in the network. This trigger signal can be sent at any time before the current doll has finished his actions. Thereby, the doll in the network can be synchronized with its own output.

図17b、図17c及び図17dで分かるように、使用できる同期には以下の3種類がある。
・行動の開始から時間を計った同期
・玩具が現在の行動を開始してから或る時間間隔後に次の玩具をトリガする。この例では、人形Aが語句1を発言し始めてからx秒後に人形Bが語句2を発言するようにトリガする。
・例えば、この同期の形を使用して、人形Bが人形Aの発言に「飽きて」きたという理由で人形Aの言葉を遮るようにすることができる。
・行動間の時間間隔がゼロの同期
・玩具が現在の行動を開始した直後に玩具をトリガする。この例では、人形Aが語句3を発言し始めた0秒後に人形Bが語句4を発言するようにトリガする。
・例えば、この同期の形を使用して、複数の人形が音楽バンドにいるかのように対話できるようにし、バンドの全てのメンバーが同時に演奏を開始するようにすることができる。
・行動の終了から時間を計った同期
・玩具が現在の行動を終了する前の或る時間間隔に次の玩具をトリガする。この例では、人形Aが語句5を終えるy秒前に人形Bが語句6を発言するようにトリガする。
・例えば、この同期の形を使用して、人形Aが発言を終える前に人形Bが人形Aのジョークに対して「笑い」始めるようにすることができる。
As can be seen in FIGS. 17b, 17c and 17d, there are three types of synchronization that can be used:
• Timed synchronization from the start of the action. • Trigger the next toy after a certain time interval after the toy starts the current action. In this example, the doll B is triggered to speak the phrase 2 x seconds after the doll A starts speaking the phrase 1.
For example, this synchronous form can be used to block doll A's words because doll B has “gets tired” of doll A ’s remarks.
• Synchronization with zero time interval between actions • Trigger the toy immediately after the toy starts the current action. In this example, the doll B is triggered to speak the phrase 4 0 seconds after the doll A starts speaking the phrase 3.
• For example, this form of synchronization can be used to allow multiple dolls to interact as if they were in a music band, so that all members of the band start playing at the same time.
• Timed synchronization from the end of the action • Trigger the next toy at some time interval before the toy ends the current action. In this example, the doll B is triggered to speak the phrase 6 y seconds before the doll A finishes the phrase 5.
For example, this synchronized form can be used to cause doll B to “laugh” against doll A's jokes before doll A finishes speaking.

次の玩具へ送られるトリガ信号は、現在の対話に関する情報、及びこの玩具自体に関する情報を含むことができる。例えば、単一のコントローラ人形が対話全体を制御している場合、トリガ信号によってスレーブ人形が何らかの行動を出力することを要求する。一方で、個々の人形が自身の出力を制御している場合、トリガ信号によって次に出力すべきことを対話内にどこで処理し始めるべきかを次の人形に知らせる。また、トリガ信号は、設定されているパラメータを含むこともでき、例えば人形が自身のペットの名前をランダムに選択した場合、この名前を全ての人形に回して、これらが会話の構築においてこの情報を使用できるようにする。最後に、トリガ信号はタイミングに関する情報を含むこともでき、例えば、次の人形が行動しなければならない場合にはトリガ信号は送られず、現在の人形の行動の開始時に、次の人形がいつ開始すべきかを示す情報を与える。   The trigger signal sent to the next toy can include information regarding the current interaction as well as information regarding the toy itself. For example, if a single controller doll controls the entire interaction, the trigger signal requests the slave doll to output some action. On the other hand, if an individual doll is controlling its output, the trigger signal informs the next doll where to start processing in the dialog what should be output next. The trigger signal can also include set parameters, for example if the doll randomly selects the name of its pet, this name is passed to all the dolls, and this information is used in the construction of the conversation. Can be used. Finally, the trigger signal can also contain information about the timing, for example, if the next doll has to act, no trigger signal is sent, and when the next doll starts to act, Gives information about what to start.

会話、演奏、ゲームプレイなどの対話は、予め決めておいてもよいし、或いは次に何の行動を出力するかについての疑似ランダム選択に応じて変化してもよい。いずれにせよ、玩具は生きているかのように対話するようになっている。あらゆる玩具があらゆる時点で行動をとる能力により、全ての行動が順番に行われるよりも本物そっくりの対話が実現される。玩具は、玩具に対話をダウンロードできるようにするポートなどの入力部も備える。対話は、本明細書で説明するようにテーマの形をとる。   Dialogues such as conversation, performance, and game play may be determined in advance, or may vary according to a pseudo-random selection as to what action is to be output next. In any case, the toy interacts as if it were alive. The ability of every toy to take action at any point in time enables a more lifelike dialogue than all actions take place in sequence. The toy also includes an input such as a port that allows the dialogue to be downloaded to the toy. The dialogue takes the form of a theme as described herein.

同期により、人形がグループのメンバーであるかのように振る舞えるようにすることができる。例えば、数多くの人形がバンドに入っているかのように振る舞うことができる。この例では、最初の人形が曲の一部を開始して、他の人形の各々がその曲の一部の異なるパートを演奏し、すなわちある者はリードシンガー、ある者はドラマー、ある者はギター、そしてある者はベースギターの役を演じる。人形は個々の他の人形に、曲の自分たちの部分の演奏を直ちに開始するように信号を送信し、これにより完全な曲の一部を創造する。同期の維持問題を避けるために、曲をフレーズに分割し、個々のフレーズの最後で制御及びタイミングを交渉することができる。   Synchronization allows the dolls to behave as if they are members of a group. For example, many dolls can behave as if they are in a band. In this example, the first doll starts a part of the song and each of the other dolls plays a different part of the song: some are lead singer, some are drummers, some are The guitar, and some play the role of a bass guitar. The doll sends signals to each other doll to immediately start playing their part of the song, thereby creating a complete piece of the song. To avoid sync maintenance problems, the song can be divided into phrases and control and timing can be negotiated at the end of each phrase.

同じようにして、戦車、兵士などを有する2又はそれ以上の軍隊(すなわち軍事資産)に玩具をグループ分けすることができる。個々の軍隊はユニットとして機能し、玩具の1つがユニットとして動くように他の玩具をトリガすることができる。この動きは、上述の方法を使用して同期される。   In the same way, toys can be grouped into two or more troops (ie, military assets) having tanks, soldiers, and the like. Individual troops act as units and can trigger other toys so that one of the toys moves as a unit. This movement is synchronized using the method described above.

グループ化した行動の別の例に車を競わせることがあり、この場合玩具の1つが一群の車の行動を決定して自動車レースをシミュレートする。或いは、ユーザが車の1台またはそれ以上を遠隔で制御し、予め定めた他の周囲の車の行動セットを開始することができる。ここでも、同期方法を使用して車の行動を制御し、これらが順番にではなく同時に動くようにする。   Another example of grouped behavior may be racing a car, where one of the toys determines the behavior of a group of cars and simulates a car race. Alternatively, the user can remotely control one or more of the cars and initiate a predetermined set of other surrounding car actions. Again, synchronization methods are used to control car behavior so that they move simultaneously rather than in sequence.

別の例では、グループ内の人形の1つが、チェスボード、ルードボード、ヘビとはしごボードなどになるようにされる。ボードは、ゲームの駒の位置を分かるようにするセンサを備え、このようにしてボードは、ゲームをプレイするステージ及びゲームの駒が正しい位置にあるかどうかに関する情報を出力することにより、他の人形及び子供と対話することができる。   In another example, one of the dolls in the group may be a chess board, a rood board, a snake and ladder board, and so on. The board is provided with sensors that allow the position of the game piece to be known, and in this way the board outputs other dolls by outputting information about the stage on which the game is played and whether the game piece is in the correct position. And can interact with children.

さらなる例では、人形が、有名な劇又はキリスト降誕などの有名な宗教シーンを演じるようにされる。このようにして、子供たちに楽しませながら教育的経験を与えることができる。   In a further example, the doll is made to play a famous religious scene such as a famous play or nativity. In this way, children can have educational experiences while having fun.

グループ化した行動のその他の例は教育環境で使用される。例えば、一群の人形にいずれかの教科を教え込み、これにより1つの人形が先生になって質問を尋ね、これにその他の人形が全て同時に答えることで子供の学習を促す。   Other examples of grouped behavior are used in an educational environment. For example, a subject is taught to a group of dolls, so that one doll becomes a teacher and asks questions, and all the other dolls answer all at the same time to encourage children to learn.

会話の構築
会話エンジンは、会話をオンザフライで構築する。或いは、会話を開始する前に会話全体を構築してその後メモリに記憶し、その後事実上終了まで会話が実行される。しかしながら、いずれにしても、構築される会話は特定のランダム選択に基づくことになる。
Conversation construction The conversation engine builds conversations on the fly. Alternatively, the entire conversation is built before starting the conversation and then stored in memory, and then the conversation is executed until it is effectively terminated. In any case, however, the conversation that is constructed will be based on a particular random selection.

会話はネットワーク内に存在するユニットに基づき、従って存在するユニット数及び存在するユニットの種類が制御変数として使用される。玩具が人形である場合には「わーい動物園に来たよ、さあどうしよう」のように、個々の会話の最初の部分が固定される。しかしながら、複数の開始語句が存在する。その時点以降、会話はその後ランダムに選択されることになる。コントローラユニットは、発話する最初のユニットを選択し、その後開始語句のいずれかにランダムに分岐させる。   The conversation is based on the units present in the network, so the number of units present and the type of units present are used as control variables. If the toy is a doll, the first part of each conversation will be fixed, like "Come to the zoo! However, there are multiple starting words. From that point on, the conversation will then be randomly selected. The controller unit selects the first unit to speak and then randomly branches to one of the starting words.

システムは、以下のようないくつかの異なる種類のコマンドを含む命令セットを使用できるようにされる。
・変数の定義及び変数設定
・コンテキスト参照及びスイッチング
・条件付きフロー制御
・無条件フロー制御
・発話語句
The system is enabled to use an instruction set that includes several different types of commands such as:
Variable definition and variable setting Context reference and switching Conditional flow control Unconditional flow control Spoken phrases

会話の流れを制御するために多くの命令文が定義され、これらは以下の通りである。
SELECT NEXT〜次の発話するユニットを選択する。この命令文には数多くの変形が存在し、これについて以下でさらに詳細に説明する。
SWITCH〜次のユニットに切り替える。
switch speaker〜発話者ポインタを別の発話者に移動させる。
switch finish〜この命令文を使用して会話を終える。
SAY〜ユニットに何かを発言するように指示する。
SET〜この命令文を使用して、「SET pet([1,dog])などの変数を設定する。SET文を使用して現在の発話者の変数を設定し、或いはこれを使用してグローバル変数を設定することができる。
TEST〜この命令文を使用して、例えば変数が設定されたかどうか、又は分岐が使用されたかどうかをテストする。TESTが真の場合、フラグが設定される。TEST命令文には2つの形がある。
TEST EQ〜この命令文は、2つの表現が等しいかどうかをテストして等しければ肯定的なフラグを作成し、例えば「TEST EQ&ME.PET&UNDEF」は、現在の発話者のペットの変数が未定義かどうかをテストして未定義であれば肯定的なフラグを作成する。
TEST NE〜この命令文は、2つの表現が等しいかどうかをテストして等しくなければ肯定的なフラグを作成する。
BRANCH〜この命令文を使用して別の会話のセクションに分岐する。例えば、「BRANCH gorillas:」は、「Gorillas」のラベルを付けられたテーマのセクションである、「Zoo(動物園)」というテーマのゴリラセクションに分岐する。この命令文は無条件文であり、プログラムが分岐文に至ったときには常に使用される。
BRANCH_F〜TESTからのフラグに基づいて条件付きで分岐する。従って、TEST文から作成されたフラグが肯定的であるときにのみ、分岐文が使用される。
CHOOSE〜この命令文により、コントローラが進む先のラベルをランダムに選択できるようになる。この命令文は、重み付けを使用してラベルへ進む確率を制御できるという点でSET文と類似している。
CHOOSE_F〜TESTからのフラグに基づいて条件付きで選択を行う。
A number of statements are defined to control the flow of conversation and are as follows.
SELECT NEXT to select the next utterance unit. There are many variations on this statement, which are described in more detail below.
Switch from SWITCH to the next unit.
switch speaker-move the speaker pointer to another speaker.
switch finish—use this statement to end the conversation.
SAY-Tells the unit to say something.
SET-Use this statement to set variables such as "SET pet ([1, dog]). Set variables for the current speaker using the SET statement, or use this to set global variables. Variables can be set.
TEST ~ This statement is used to test, for example, whether a variable has been set or whether a branch has been used. If TEST is true, a flag is set. There are two forms of TEST statement.
TEST EQ-This statement creates a positive flag if the two expressions are equal if they are equal, eg, "TEST EQ & ME. PET &UNDEF" indicates that the current speaker's pet variable is undefined Test to see if it is undefined and create a positive flag.
TEST NE-This statement tests whether two expressions are equal and creates a positive flag if they are not equal.
BRANCH-Use this statement to branch to another conversation section. For example, “BRANCH gorillas:” branches to a gorilla section of the theme “Zoo”, which is a section of the theme labeled “Gorillas”. This statement is an unconditional statement and is used whenever the program reaches a branch statement.
Branches conditionally based on the flags from BRANCH_F to TEST. Therefore, the branch statement is used only when the flag created from the TEST statement is positive.
CHOOSE-This statement allows the label to which the controller proceeds to be selected randomly. This statement is similar to the SET statement in that the weight can be used to control the probability of going to the label.
A selection is made conditionally based on the flags from CHOOSE_F to TEST.

ストレージ要件を削減するために、オーディオファイルはトリミングした形で記憶され、すなわち個々の音声セグメントの前後には沈黙が存在しない。より実際的な発話を作成するために、トリミングしたオーディオファイルの後に置くことができる、長さの異なるいくつかの沈黙オーディオファイルが個々の語句又は単語の間に提供される。これらのオーディオファイルは、SAY文により他のオーディオファイルのいずれかと同様に参照される。   To reduce storage requirements, audio files are stored in a trimmed form, i.e. there is no silence before and after individual audio segments. In order to create a more practical utterance, several silence audio files of different lengths are provided between individual phrases or words that can be placed after the trimmed audio file. These audio files are referenced in the same way as any other audio file by the SAY statement.

SET文により変数を定義して人形の各々に関連するパラメータを記憶することができ、これについて以下でさらに詳細に説明する。定義できる変数には2つの形がある。
・ローカル変数〜これらは、個々の玩具/人形に関連する変数である。ローカル変数は、個々の人形のデータセット内で作成される。人形変数は、DEFINE VARIABLE_NAME文により作成される。
・グローバル変数〜これらは、「テーマ」に関連する変数であり、個々の人形とは関連性がない。グローバル変数は、DEFINE G_VARIABLE_NAME文により作成される。
Variables can be defined by SET statements to store parameters associated with each of the dolls, as will be described in more detail below. There are two forms of variables that can be defined.
Local variables-these are variables associated with individual toys / dolls. Local variables are created in individual doll data sets. A doll variable is created by a DEFINE VARIABLE_NAME statement.
Global variables-These are variables related to "themes" and are not related to individual dolls. A global variable is created by a DEFINE G_VARIABLE_NAME statement.

テーマ内で定義される変数は、会話中に値が割り当てられるまで、割り当てられた値を有していない。   Variables defined within the theme do not have an assigned value until a value is assigned during the conversation.

変数への値の設定
会話中、定義された変数に値を設定することが必要となる。これはSET文で遂行される。以下のように、SET文は、値のセットからランダムに取り出した値で変数を設定できるようにするランダム特徴で構成される。
SET VARIABLE_NAME([w1,value1],[w2,value2],..........,[wn,valuen])
While setting a conversation values to variables, it is necessary to set a value to a variable defined. This is accomplished with a SET statement. As follows, a SET statement is composed of random features that allow variables to be set with values randomly extracted from a set of values.
SET VARIABLE_NAME ([w1, value1], [w2, value2], ..., [wn, value])

この命令文の動作は、VARIABLE_NAMEの値を乱数の結果に基づいてvalue1,value2,..........,valuenのうちの1つに設定することである。どの値が選択されるかの確率は、重み付けw1、w2、...、wnに基づく。   The operation of this command statement is to change the value of VARIABLE_NAME based on the result of the random number, value1, value2,. . . . . . . . . . , Value. The probability of which value is selected is given by the weights w1, w2,. . . , Based on wn.

例えば、
SET COLOUR([1,red],[1,blue],[1,green])
という命令文の場合、変数COLOURを等しい確率で赤色、青色又は緑色に設定することになる。人形の変数は、現在の人形との関連において設定される。
For example,
SET COLOR ([1, red], [1, blue], [1, green])
In this case, the variable COLOR is set to red, blue, or green with equal probability. The doll variables are set in relation to the current doll.

また、TEST文がcondition_flagの状態を作成した場合に限り、SET_F文を使用して変数を設定する。この場合、condition_flagがアクティブな場合かつこの場合に限り変数が設定される。   Further, only when the TEST statement creates a condition_flag state, the variable is set using the SET_F statement. In this case, the variable is set only when condition_flag is active.

コンテキスト参照及び切り替え
ポインタを使用して発話者に関する情報を記憶するとともに、コントローラ人形が他の人形を参照できるようにする。会話を構築する場合、これらを使用して理にかなった会話を作成し、以下が使用するポインタである。
前の発話者(PREV)=前の発話者のID番号
現在の発話者(ME)=現在の玩具のID番号
次の発話者(NEXT)=選択された次の発話者のID番号
Context references and switching pointers are used to store information about the speaker and allow the controller doll to reference other dolls. When building a conversation, use these to create a reasonable conversation and the following are the pointers to use:
Previous speaker (PREV) = ID number of previous speaker Current speaker (ME) = ID number of current toy Next speaker (NEXT) = ID number of selected next speaker

人形の会話エンジンの重要な特徴は、どの人形が現在の発話者であるかというコンテキストである。このコンテキストは、現在の人形がアクセスした変数を参照する。前の人形、次の人形、現在の人形の変数のみがアクセスに利用可能である。上記で定義したように、コンテキストの概念は3つの参照ポインタにより処理される。   An important feature of the doll conversation engine is the context of which doll is the current speaker. This context refers to variables accessed by the current doll. Only variables for the previous doll, next doll, and current doll are available for access. As defined above, the concept of context is handled by three reference pointers.

コンテキストの制御は、SELECTコマンド及びSWITCHコマンドの使用により遂行される。SELECTコマンドのいくつかの変形が存在する。これらは以下の通りである。
・SELECT NOTME〜これは、ランダムに選択された人形のグループの現在の人形以外のいずれかとなるように次の発話者を選択する。
・SELECT NEXT〜これは、ランダムに選択された人形のグループのいずれかとなるように次の発話者を選択する。
・SELECT PREV〜これは、前の発話者と同じになるように次の発話者を選択する。
・SELECT NAME〜これは、名前NAMEを有する人形を次の発話者となるように選択する。このSELECTコマンドの変形は、台本通りの会話のためのものである。
Context control is accomplished through the use of SELECT and SWITCH commands. There are several variants of the SELECT command. These are as follows.
SELECT NOTME-This selects the next speaker to be one other than the current doll in a randomly selected group of dolls.
SELECT NEXT-This selects the next speaker to be one of a group of randomly selected dolls.
SELECT PREV-This selects the next speaker to be the same as the previous speaker.
SELECT NAME-This selects the doll with the name NAME to be the next speaker. This variation of the SELECT command is for a scripted conversation.

その後、コンテキストはSWITCHコマンドの使用により変更される。SWITCHコマンドには2つの変形が存在する。
・SWITCH SPEAKER label〜これは、発話者のコンテキスト及び分岐をラベルが指定する命令に切り替える。コンテキストを切り替えると、前の発話者(PREV)は現在の発話者(ME)に等しくなり、現在の発話者(ME)は次の発話者(NEXT)に等しくなり、次の発話者(NEXT)は未定義となる。
・SWITCH FINISH〜これは、会話を終了するために使用するコマンドである。
The context is then changed by using the SWITCH command. There are two variants of the SWITCH command.
SWITCH SPEAKER label-This switches the speaker's context and branch to the instruction that the label specifies. When switching context, the previous speaker (PREV) is equal to the current speaker (ME), the current speaker (ME) is equal to the next speaker (NEXT), and the next speaker (NEXT). Is undefined.
SWITCH FINISH-This is the command used to end the conversation.

条件付きフロー制御
時として、会話中、フローが様々な変数の値に左右される。これは、以下のコマンドで遂行される。
・TEST EQ value1 value2〜これは、value1がvalue2に等しい場合にcondition_flagを設定する。
・TEST NE value1 value2−これは、value1がvalue2に等しくない場合にconditionflagを設定する。
・&CONTEXT.VARIABLE_NAME参照を使用することにより、value1及び/又はvalue2によって変数を参照することができる。例えば、TEST EQ&ME.NAME&PREV.NAMEという命令は、現在の発話者(ME)の名前が前の発話者(PREV)の名前と同じ場合にcondition_flagを設定する。
・BRANCH_F label〜これは、condition_flagが設定されている場合にはラベルが指定する命令に分岐し、そうでない場合には次の命令を使用する。
・CHOOSE_F([w1,label1],[w2,label2],.........,[wn,labeln])〜これは、condition_flagが設定されている場合には重み付けw1,w2,...,wnを使用してランダム選択に基づいてlabel1,label2,...labelnが指定する命令に分岐し、そうでない場合には次の命令を使用する。
During conditional flow control , the flow depends on the values of various variables during the conversation. This is accomplished with the following command:
TEST EQ value1 value2 This sets the condition_flag when value1 is equal to value2.
TEST NE value1 value2- This sets the condition flag when value1 is not equal to value2.
・ & CONTEXT. By using a VARIABLE_NAME reference, a variable can be referenced by value1 and / or value2. For example, TEST EQ & ME. NAME & PREV. The command NAME sets condition_flag if the name of the current speaker (ME) is the same as the name of the previous speaker (PREV).
BRANCH_F label-this branches to the instruction specified by the label if condition_flag is set, otherwise uses the next instruction.
CHOOSE_F ([w1, label1], [w2, label2],..., [Wn, labeln])-This is the weighting w1, w2, ... when the condition_flag is set. . . , Wn to label1, label2,. . . Branch to the instruction specified by label, otherwise use the next instruction.

人形が別の人形に関する変数の知識を必要とする度に、TEST文を使用して、変数が未定義であるか、又は特定の値であるかの問い合わせを行う。その後、これをフロー制御に使用することができ、例えば、PETという変数が未定義の場合、人形はどのような種類のペットを飼っているかを他の人形に尋ね、変数が設定されている場合にはペットが何色かなどを他の人形に尋ねる。   Each time a doll needs knowledge of a variable about another doll, a TEST statement is used to query whether the variable is undefined or a specific value. This can then be used for flow control. For example, if the variable PET is undefined, the doll asks what kind of pet it owns and if the variable is set Ask other dolls what color the pet is.

無条件フロー制御
時として、命令のフローを無条件で変更できることが必要となる。この場合、TEST文は使用されずにBRANCH又はCHOOSE文が常に実行される。これは、以下の命令文を使用して遂行される。
・BRANCH label〜これは、ラベルが指定する命令に無条件で分岐する。
・CHOOSE([w1,label1][w2,label2][wn,labeln])〜これは、重み付けw1,w2,...,wnを使用してランダム選択に基づいてlabel1、label2、...、labelnが指定する命令に分岐する。
In unconditional flow control , it is necessary that the instruction flow can be changed unconditionally. In this case, the BRANCH or CHOOSE statement is always executed without using the TEST statement. This is accomplished using the following statement:
BRANCH label-this unconditionally branches to the instruction specified by the label.
CHOOSE ([w1, label1] [w2, label2] [wn, labeln])-This is the weighting w1, w2,. . . , Wn to label1, label2,. . . , Branch to the instruction specified by labeln.

発話語句
会話エンジンの重要な部分は語句の発話である。これは、以下の命令文で遂行される。
SAY(phrase1,phrase2,...,phrasen)コマンド。
このコマンドは、現在の発話者(ME)である人形に語句phrase1,phrase2,...,phrasenを発声させる。
An important part of the spoken phrase conversation engine is the phrase utterance. This is accomplished with the following statement:
SAY (phrase1, phrase2, ..., phrasen) command.
This command adds the phrases phrase1, phrase2,... To the doll that is the current speaker (ME). . . , Phrasen.

スクリプト例
以下は短いスクリプトの例である。
DEFINE COLOUR
DEFINE GARMENT
Loop:
SET COLOUR([1,red],[1,blue],[1,green])
SET GARMENT([1,dress],[1,blouse],[1,hat])
SAY(hello my name is, &ME.NAME, and I have a, &ME.COLOUR, &ME.GARMENT)
SELECT NOTME
SWITCH SPEAKER Loop
Script example The following is an example of a short script.
DEFINE COLOR
DEFINE GARMENT
Loop:
SET COLOR ([1, red], [1, blue], [1, green])
SET GARMENT ([1, dress], [1, browse], [1, hat])
SAY (hello my name is, & ME.NAME, and I have a, & ME.COULUR, & ME.GARMENT)
SELECT NOTME
SWITCH SPEAKER Loop

この例では、3色のうちの1色を選んで3着の衣類のうちの1着に合わせることにより、存在する各人形ごとに9つの異なる事柄を発言することができる。   In this example, by selecting one of the three colors and matching it to one of the three clothes, nine different things can be said for each existing doll.

会話は、多重分岐を使用して構築される。個々の分岐は、テーマに関する異なる会話の領域である。例えば、「Zoo(動物園)」というテーマでは、利用可能な分岐は「Gorillas(ゴリラ)」、「Reptiles(爬虫類)」及び「Ice cream(アイスクリーム)」である。個々の分岐はこれらに関連する語句/単語を有し、その後選択肢からランダムに選択される。人形の応答は、分岐、人形の性格型、及び考えられる応答の重み付けに依存する。   A conversation is constructed using multiple branches. Individual branches are different areas of conversation about the theme. For example, in the theme of “Zoo”, the available branches are “Gorillas”, “Reptiles” and “Ice cream”. Individual branches have phrases / words associated with them and are then randomly selected from the choices. The doll's response depends on the bifurcation, the doll's personality type, and the weighting of possible responses.

例えば、選ぶべき次の分岐を決定することが選択に必要な場合、2体(又はそれ以上)の人形が同じ行く場所を続けて選択するまで会話が続く。これにより、選ぶべき分岐を選択する前に合意が必要となるので、より現実的な会話が行われる。   For example, if the selection requires determining the next branch to choose, the conversation continues until two (or more) dolls continue to select the same place to go. This requires a consensus before selecting a branch to choose, so a more realistic conversation takes place.

コントローラ人形が別の選ぶべき分岐を選択できるセクションに達するまで分岐内で会話が続く。この時点で、選ぶべき分岐に関して別の決定が行われる。会話の長さを制限するために、使用されていなかった分岐のみを選択に利用することができる。   The conversation continues in the branch until it reaches a section where the controller doll can select another branch to choose. At this point, another decision is made regarding the branch to choose. To limit the length of the conversation, only branches that have not been used can be used for selection.

分岐、語句、単語又は次の発話者などの、ランダムに選択できる個々の変数に重み付けが加えられる。語句/単語又は分岐などがランダムに選択される場合、これらの語句/単語の分岐などが選択される確率が重み付けにより変化する。例えば、全ての語句の重み付けが1の場合、これらは全て同じ選択される確率を有する。よりリアルな会話を作成するように重み付けを調整することができる。「今日、私は自転車から落ちた」などの語句は、「今朝、私は朝食を食べた」という語句よりも生じる可能性がはるかに低い。この結果、後者の語句は、前者よりもはるかに大きな重み付けを有するようになる。従って、会話エンジンの結果、ユニットはほんの時たましか「今日、私は自転車から落ちた」と言わないようになる。   Weights are applied to individual variables that can be selected randomly, such as branches, phrases, words or next speakers. When a phrase / word or branch or the like is selected at random, the probability that these phrases / word branches or the like are selected is changed by weighting. For example, if the weights of all words are 1, they all have the same probability of being selected. The weighting can be adjusted to create a more realistic conversation. Phrases such as “I fell off my bike today” are much less likely to occur than the phrase “I ate breakfast this morning”. As a result, the latter phrase has a much greater weight than the former. Thus, as a result of the conversation engine, the unit only occasionally says "I fell off my bike today."

さらなる例では、使用する重み付けを前の人形に優先させることができ、従って2つの人形間のミニ会話を誘導することになる。   In a further example, the weight used can be prioritized over the previous doll, thus leading to a mini-conversation between the two dolls.

会話の長さを制限するために、テーマの任意の1つの分岐の時間が制御される。これを別の重み付けパラメータとして使用して、例えば1つの分岐で費やされる時間を短縮し、別の分岐で費やされる時間を増やすことができる。これは、無限に続く可能性なく会話の最後に到達させるのに役立つ。   In order to limit the length of the conversation, the time of any one branch of the theme is controlled. This can be used as another weighting parameter, for example to reduce the time spent in one branch and increase the time spent in another branch. This helps to reach the end of the conversation without the possibility of continuing indefinitely.

会話の長さはランダムであってもよいが、場合によっては全ての変数が設定されるまで会話が続く。例えば、PETというテーマでは、全ての人形のペットが完全に説明されるまで会話が続く。これは、全ての変数が定義されているかどうかを判定するチェックを行うことにより遂行され、すべて定義済みである場合に限り会話を最後まで許可するものである。   The length of the conversation may be random, but in some cases the conversation continues until all variables are set. For example, in the theme of PET, the conversation continues until all doll pets are fully explained. This is accomplished by checking to see if all variables are defined, and allows the conversation to end only if all are defined.

現在の発話者のみが前の発話者及び次の発話者というコンテキストを有するので、いつ全ての人形の変数が設定されたかを判定することがいつでも可能なわけではない。従って、別の例では、現在のコンテキストにおける3つの人形全て、すなわち、現在の人形、前の人形及び次の人形に関して全ての変数が設定されるまで会話が続く。或いは、続けて2又はそれ以上の組の人形に関して全ての変数が判明するまで会話が続く。   Since only the current speaker has the context of the previous speaker and the next speaker, it is not always possible to determine when all doll variables have been set. Thus, in another example, the conversation continues until all variables are set for all three dolls in the current context: the current doll, the previous doll, and the next doll. Alternatively, the conversation continues until all variables are known for two or more sets of dolls.

会話エンジンは、複数の人形、及び2体のジェーンという人形などの同じ種類の潜在的に複数の人形に対処することができる。ネットワークが初期化された場合、ネットワークに参加する個々の人形にネットワークノードが関連付けられる。この結果、システムは、人形の名前ではなく関連するネットワークノードを使用して人形を参照する。これにより、同じ名前の複数の人形をエラーなく参照できるようになる。   The conversation engine can handle multiple dolls and potentially multiple dolls of the same type, such as two Jane dolls. When the network is initialized, a network node is associated with each doll participating in the network. As a result, the system references the doll using the associated network node rather than the doll's name. As a result, a plurality of dolls having the same name can be referred to without error.

予め会話の全体を決定し、その後人形に直接ダウンロードすることもできる。例えば、シンプソン一家(登録商標)のエピソードをシンプソン一家(登録商標)の人形のグループにダウンロードすることができる。人間が会話を生成し、或いは会話エンジンが会話を生成して後から人間が編集できるので、会話を予め決定することにより、人形が特にリアルな会話を行えるようになる。予め決定される会話を作成する際には同じ命令が使用されるが、起動されるたびに会話が同じになるようにランダム要素は除去される。   The entire conversation can be determined in advance and then downloaded directly to the doll. For example, a Simpson Family® episode can be downloaded to a group of Simpson Family® dolls. Since a person can create a conversation or a conversation engine can create a conversation and can be edited later, the doll can have a particularly realistic conversation by determining the conversation in advance. The same commands are used in creating a predetermined conversation, but the random elements are removed so that the conversation is the same each time it is activated.

上記の会話エンジンを独立して使用して会話を生成することができる。例えば、漫画などのテレビ番組を書く自動スクリプトに上記の会話エンジンを使用することができる。   The above conversation engine can be used independently to generate a conversation. For example, the above conversation engine can be used for automatic scripts for writing television programs such as comics.

1つの特定の実施形態では、テーマを生成するためにテーマをスクリプトで記述し、その後コンパイラを使用してスクリプトをコンパイルする。実行時エラーチェックを行って、テーマが終わりの無い会話又はその他のエラーを生成しないことを確実にし、その後サニティチェックを行って会話が全く無意味なものでないことを確実にする。その後、オーディオファイルが録音されると、テーマを玩具にダウンロードすることができる。以下でより詳細に説明する代替の実施形態では、テーマスクリプトの生成を容易にするオーサリングツールが提供される。しかしながら、依然としてテーマ内の会話の基本原理が適用される。例えば、両実施形態には、何を発言するかを選択する同じ方法が存在する。   In one particular embodiment, the theme is scripted to generate the theme, and then the script is compiled using a compiler. Run-time error checking is performed to ensure that the theme does not generate endless conversations or other errors, and then a sanity check is performed to ensure that the conversation is not useless at all. Later, when the audio file is recorded, the theme can be downloaded to the toy. In an alternative embodiment described in more detail below, an authoring tool is provided that facilitates theme script generation. However, the basic principles of conversation within the theme still apply. For example, both embodiments have the same way of selecting what to say.

人形の選択
図3に示すように、会話エンジンは発話者セレクタ218を有する。発話者セレクタは、次の発話する玩具を選択する。次の発話する玩具を選択するには、ネットワーク内の玩具のいずれかをランダムに選択する、玩具を名前(ID番号)で選択する、及び現在の発話者を選択してもう一度発話させるという3つの可能性がある。従って、次の発話者を選択する第1のプロセスは、上記の3つの可能性のいずれを使用すべきかをランダムに選択することである。次の発話者を名前で選択する場合、その玩具がネットワーク内に存在するかどうかを判定するためのチェックを行う必要がある。
Doll Selection As shown in FIG. 3, the conversation engine has a speaker selector 218. The speaker selector selects a toy to speak next. There are three ways to select the next toy to speak: randomly selecting one of the toys in the network, selecting the toy by name (ID number), and selecting the current speaker to speak again there is a possibility. Thus, the first process of selecting the next speaker is to randomly select which of the above three possibilities should be used. When selecting the next speaker by name, a check must be made to determine if the toy is in the network.

上述したように、select文が次に誰が発話するかを選択する。次の発話者を決定する場合、選択肢としては、関連する発話で応答すること、別の人形を選択して話しかけること、或いは現在の発話者に関して何かを知らせることがある。   As described above, the select statement selects who will speak next. When determining the next speaker, options include responding with a related utterance, selecting another doll to speak, or informing something about the current speaker.

発話者セレクタ218内でSELECT文を使用して、次の発話者のランダム選択を開始する。或いは、SELECT文が論理を使用して次の発話者への参照を決定することができる。例えば、発話するように選択された次の人形がジェーンである場合、現在の発話者が「ジェーン、あなたの好きなペットは何?」と尋ねることができる。ジェーンが次の発話者として設定されているので、ジェーンから回答が来ることになる。以下の例でわかるように、特定のパラメータが解らなくても&文を使用して次の発話者、又は他のいずれかの一般的パラメータを参照することができる。例えば、&NEXT.NAMEは次の発話者の変数NAMEを参照するものであるが、これを使用して次の発話者の名前を発言することができる。   A SELECT statement is used in the speaker selector 218 to initiate a random selection of the next speaker. Alternatively, the SELECT statement can use logic to determine a reference to the next speaker. For example, if the next doll selected to speak is Jane, the current speaker can ask "Jane, what is your favorite pet?" Since Jane is set as the next speaker, Jane will answer. As can be seen in the examples below, the & sentence can be used to reference the next speaker, or any other general parameter, without knowing the specific parameters. For example, & NEXT. NAME refers to the next speaker's variable NAME, which can be used to speak the name of the next speaker.

人形が続けて2回発話することはできないなどのさらなる選択肢が利用可能であり、従って、例えばジェーンが犬を飼っていると発表した場合、その直後にジェーンが発話するように選択されることはない。   Additional options are available, such as the doll cannot speak twice in a row, so if Jane announces that she has a dog, for example, Jane will be chosen to speak immediately afterwards. Absent.

次の発話する人形を選択するために同様の方法がオーサリングツールにより利用され、これについて以下でさらに詳細に説明する。   A similar method is used by the authoring tool to select the next doll to speak, which will be described in more detail below.

パラメータ記憶
パラメータ記憶メモリ216は、現在の会話に関する情報を記憶する。記憶された情報は、すでに使用された語句、使用された変数、フロー制御変数、及びネットワーク内に存在する人形などのその他のこのような情報を含む。情報は、コントローラ人形内にのみ記憶される。スレーブユニットは、次の発言事項に関する情報のみを受信する。
Parameter storage The parameter storage memory 216 stores information relating to the current conversation. Stored information includes words and phrases already used, variables used, flow control variables, and other such information such as dolls present in the network. Information is stored only in the controller doll. The slave unit receives only information related to the next message.

会話において使用された変数は、後程会話内で参照できるように記憶される。変数は、人形を記述する情報であり、これを使用して性格を差別化する。
「私のFluffyという」という語句から記憶される情報は、及びFluffyという情報である。この変数を使用して、人形が飼っているペットの種類を設定することができる。人形が特定の変数のサブセットのみを有することができるように変数を設定することができる。例えば、女の子の人形がヘビをペットとして有することはあり得ない。
Variables used in the conversation are stored for later reference within the conversation. A variable is information that describes a doll and is used to differentiate personality.
Information stored from the phrase “my dog is called Fluffy ” is information about dogs and Fluffy . You can use this variable to set the type of pet your doll keeps. Variables can be set so that the doll can only have a specific subset of variables. For example, a girl's doll cannot have a snake as a pet.

フロー制御変数を使用して、すでに使用された分岐に関する情報を記憶する。例えば、動物園にいる場合にはゴリラを見に行くように分岐を進めることができる。この情報を記憶して、会話が動物園に戻らないようにする。   Flow control variables are used to store information about branches that have already been used. For example, if you are in a zoo, you can branch to go to see a gorilla. Remember this information so that the conversation does not return to the zoo.

或いは、すでに使用された語句を記憶して、会話が永遠に続かないようにする。1回の会話内で特定の単語/語句を使用できる回数に限界値を設定することができ、この限界値は1回、2回、3回又はそれ以上であってもよい。これにより、会話が過度に反復的にならないことを確実にする。   Alternatively, remember words that have already been used so that the conversation does not last forever. A limit can be set on the number of times a particular word / phrase can be used within a conversation, and this limit may be once, twice, three times or more. This ensures that the conversation is not overly repetitive.

パラメータ記憶メモリ内に設定及び記憶できるグローバル変数も存在する。グローバル変数の例には、ネットワーク内の人形の全てに影響を与えるあらゆるものがあり、例えば「外は雨が降っている」であり、又は会話内で人形がずっと居た場所である。グローバル変数には、人形のコンテキストとは無関係にアクセスできるので、テーマ内のどの時点においてもこれを使用することができる。   There are also global variables that can be set and stored in the parameter storage memory. Examples of global variables are anything that affects all of the dolls in the network, such as “It's raining outside” or where the doll has been in the conversation all the time. Global variables can be accessed regardless of the doll's context, so they can be used at any point in the theme.

テーマ/人形に関する属性を記憶するために、パラメータもオーサリングツールを使用して定義され、これについて以下でさらに詳細に説明する。手短に言えば、テーマ属性/グローバル変数はテーマ全体に関連するパラメータを記憶し、あらゆる人形がいつでもこれにアクセスすることができ、人形属性/ローカル変数は個々の人形に関連するパラメータを記憶し、前の人形/現在の人形/次の人形のみがこれにアクセスすることができる。   In order to store attributes related to the theme / doll, parameters are also defined using the authoring tool, which will be described in more detail below. In short, theme attributes / global variables store parameters related to the entire theme and any doll can access them at any time, doll attributes / local variables store parameters related to individual dolls, Only the previous doll / current doll / next doll can access it.

人形固有のダウンロード
図4は、人形がメモリに記憶されたテーマを変更又は更新できるプロセスの概略図である。人形300は、人形の識別に使用されるID番号302を含む。人形は、USB接続を介してPC304に接続され、PCは、標準的な接続方式を介してインターネット306に接続されている。インターネットは、ダウンロード可能なテーマ310を含むウェブサイト308にPCを接続することができる。テーマは、接続された人形によって変わるという理由で、ユーザが選択できないサブテーマ312を含む。例えば、人形のID番号を使用して識別されたジャックという人形にはジルのサブテーマは提示されない。テーマは、全ての性格型に対して一般的なものである。サブテーマは、テーマの表現が異なるとともに人形の性格型に依存する点を除き、メインテーマと同一である。従って、オーディオファイルは、異なる声、(同じ意味の)異なる言い回しなど、サブテーマごとに異なる。
Doll Specific Download FIG. 4 is a schematic diagram of a process by which a doll can change or update a theme stored in memory. The doll 300 includes an ID number 302 that is used to identify the doll. The doll is connected to the PC 304 via a USB connection, and the PC is connected to the Internet 306 via a standard connection method. The Internet can connect a PC to a website 308 that includes a downloadable theme 310. The theme includes a sub-theme 312 that the user cannot select because it changes depending on the connected doll. For example, a Jill sub-theme is not presented to a doll named Jack identified using a doll ID number. Themes are common to all personality types. The sub theme is the same as the main theme, except that the theme expression is different and it depends on the personality of the doll. Therefore, the audio file is different for each sub-theme, such as different voices, different phrases (with the same meaning).

或いは、人形にダウンロードされる最初の性格を使用して、後からダウンロードされた性格を最初の種類と同じになるように制限することができる。例えば、人形がジャックと設定された場合、ウェブサイトは、この人形が接続されたときにジャックのサブテーマを認識し、ユーザにジャックのサブテーマのみを提示する。ウェブサイトは、人形の名前変数、すなわちジャックにアクセスしてこれをサブテーマの名前リストと比較することによりサブテーマを認識する。   Alternatively, the first character downloaded to the doll can be used to limit the later downloaded character to be the same as the first type. For example, if the doll is set to Jack, the website will recognize Jack's sub-theme when the doll is connected and present only the Jack's sub-theme to the user. The website recognizes the sub-theme by accessing the doll's name variable, Jack, and comparing it to the sub-theme's name list.

ダウンロードしたサブテーマは、「動物園」などの選択されたテーマのスクリプト、関連する性格型、人形が会話を発声できるようにする対応するオーディオファイル、及びネットワーク内の人形が全て同じテーマを有することを確実にするために使用されるテーマIDを含む。   The downloaded sub-theme is a script of the selected theme such as “zoo”, the associated personality type, the corresponding audio file that allows the doll to speak the conversation, and the dolls in the network all have the same theme. Contains the theme ID that is used to ensure.

PC304は、テーマを効率的な態様でダウンロードできるように、人形300とウェブサイト310との間をインターフェイス接続するようになっている。さらに、テーマは人形にのみ記憶され、従ってテーマを必要とする個々の人形はウェブサイトに接続される必要がある。従って、1人のユーザが2つの人形を有し、個々の人形に同じテーマを求める場合、ユーザは個々の人形をウェブサイトに接続して適当なサブテーマをダウンロードする必要がある。   The PC 304 is configured to interface between the doll 300 and the website 310 so that the theme can be downloaded in an efficient manner. Furthermore, the theme is stored only in the doll, so individual dolls that need the theme need to be connected to the website. Thus, if a user has two dolls and wants the same theme for each doll, the user needs to connect each doll to a website and download the appropriate sub-theme.

これとは別に、人形は常に複数のテーマを記憶することができる。人形は、同時に1つのテーマを使用して通信するが、このテーマはコントローラによりいつでも変更することができる。従って、人形は「スポーツ」というテーマを使用して、その後「動物園」というテーマの使用に進むことができる。これにより、会話をより長く継続させることができ、人形の使い勝手を拡張するさらなる組み合わせが与えられる。   Apart from this, the doll can always store multiple themes. The doll communicates using one theme at the same time, but this theme can be changed at any time by the controller. Thus, the doll can use the theme “sports” and then proceed to use the theme “zoo”. This allows the conversation to last longer and provides additional combinations that extend the usability of the doll.

人形は全て、他の人形と同じテーマを有していないときに手短に通信できるようにデフォルトテーマを有する。デフォルトテーマは2、3の基本的な語句を含み、ユーザをウェブサイトに接続してテーマをダウンロードするように導くことができる。   All dolls have a default theme so that they can communicate easily when they do not have the same theme as other dolls. The default theme contains a few basic phrases that can guide the user to connect to the website and download the theme.

テーマが安全であることを確実にするために、人形にダウンロードが行われる前に人形の一意のID番号を使用してデータを暗号化することができる。その後、個々の人形の一意のID番号を使用してテーマ内のデータを復号化することができる。これを使用して、全ての人形がウェブサイトに接続してテーマをダウンロードすることを確実にすることができる。例えば、個々のジェーンという人形が同じサブテーマを使用したいと思っても、データは特定の人形ごとに別様に符号化されており、従ってこの特定の人形以外にとっては事実上役に立たないものである。   To ensure that the theme is secure, the data can be encrypted using the doll's unique ID number before the doll is downloaded. The unique ID number of each doll can then be used to decrypt the data within the theme. This can be used to ensure that all dolls connect to the website and download the theme. For example, even if an individual Jane doll wants to use the same sub-theme, the data is encoded differently for a particular doll and is therefore virtually useless for this particular doll. .

性格の表現及びテーマのスクリプト記述
前述したように、個々の異なるテーマは、異なる性格を表現できるようにする様々なサブテーマを有する。テーマごとのスクリプトは異なるものであり、これを使用してこのテーマに従う様々な会話を生成する。しかしながら、全てのテーマ内の個々のサブテーマは、会話を生成するための同じスクリプトを有するが、サブテーマ内で使用される言語は異なる。これにより、同じテーマに関して複数の性格を利用できるようにすることができる。
Personality Expression and Theme Scripting As noted above, each different theme has various sub-themes that allow it to express different personalities. The scripts for each theme are different and are used to generate various conversations that follow this theme. However, the individual sub-themes within all themes have the same script for generating conversations, but the languages used within the sub-themes are different. Thereby, a plurality of personalities can be used for the same theme.

会話の可変性を増加させるために、同じ質問を尋ねるための複数のランダム選択法が存在する。従って、例えば、単純な質問をする複数の方法が存在し、これは、例えば「次は何をしましょうか」、「次は何をするんだい」、「次は何ですか」のようにテーマ/サブテーマに依存するものであってもよい。個々のサブテーマは、同じ物事を意味するために使用する異なる表現を有することができる。例えば、1つのサブテーマでは「こんにちは、お元気ですか?」と言うことができ、別のテーマでは「やあ、調子はどうだい?」と言う。事実上語句の意味は同じものであるが、表現、従って性格が異なる。このようにして、変化に富んだ面白い会話を作成するために、各テーマがあらゆる数のサブテーマを有することができる。このようにして、ユーザ体験が高められるとともに大量のメモリを必要としないより多様なゲームプレイが可能となる。   There are multiple random selection methods for asking the same question to increase conversation variability. So, for example, there are multiple ways to ask a simple question, such as "What to do next", "What to do next", "What is next" It may depend on the theme / sub-theme. Individual sub-themes can have different expressions used to mean the same thing. For example, "Hello, how are you?" Is one of the sub-themes can say that, in another theme referred to as "Hi, How's it going?". Virtually the meanings of the phrases are the same, but the expressions and therefore the personalities are different. In this way, each theme can have any number of sub-themes to create interesting and varied conversations. In this way, the user experience is enhanced and more diverse game play is possible without requiring a large amount of memory.

性格の特徴は、同一のテーマに起因することができる。従って、同じテーマのジャックバージョンとジルバージョンとを有することが可能である。ジャックバージョンはサブテーマであり、ジルバージョンもサブテーマである。   Personality features can be attributed to the same theme. Thus, it is possible to have a jack version and a jill version of the same theme. The Jack version is a sub theme, and the Jill version is also a sub theme.

人形の名前、すなわちジェーンが性格型と関連しているので、ジェーンという人形により表される性格は全てのテーマについて同じであり、テーマのコンテンツのみが変化する。これにより、人形は一定のままであることができ、異なる状況でも人形が同じ様に反応できるようになる。   Since the name of the doll, ie Jane, is associated with the personality type, the personality represented by the Jane doll is the same for all themes and only the content of the theme changes. This allows the doll to remain constant and allows the doll to react the same way in different situations.

或いは、人形がウェブサイトにより最初に初期化されるときの人形の名前及び人形の性格を人形のユーザが選択することもできる。これにより、ユーザが人形との関わりをより深めることができる。このとき人形の名前及び性格型が人形内のメモリに記憶され、個々の属性がIDと関連付けられ、これが例えばさらなるサブテーマをダウンロードする際に使用される。   Alternatively, the doll user can select the doll name and doll character when the doll is first initialized by the website. Thereby, a user can deepen the relationship with a doll more. At this time, the doll's name and personality type are stored in a memory in the doll and each attribute is associated with an ID, which is used, for example, when downloading further sub-themes.

ダウンロード可能なテーマは、表現とスクリプトとの組合せであり、会話の種類を決定付けるものである。   The downloadable theme is a combination of expression and script, which determines the type of conversation.

人形の美的価値観(aesthetics)及び語彙を、ターゲットオーディエンスに応じた年齢となるようにカスタマイズすることもできる。様々なテーマは、年齢に応じた等級を有することができる。これにより、例えば10代の市場向けにはヒップホップをテーマにした人形が可能となる。   The doll's aesthetics and vocabulary can also be customized to be of age according to the target audience. Various themes can have grades according to age. This enables hip hop-themed dolls for teenage markets, for example.

さらに、別の人形セット(これは単一の人形であってもよい)のみが使用できる語句を提供することができる。この語句が選択された場合、現在の人形が使用できることを確実にするためのチェックが行われる。この人形がこの語句を使用できない場合には別の語句が選択される。   In addition, phrases that can only be used by another doll set (which may be a single doll) may be provided. When this word is selected, a check is made to ensure that the current doll can be used. If this doll cannot use this word, another word is selected.

同様に、命令の部分を別の人形セットのみに制限して、会話にさらなるランダム性を導入することができる。   Similarly, the command portion can be limited to only another doll set to introduce more randomness into the conversation.

或いは、玩具が戦車又は他のこのような玩具の形をとる。この場合の玩具の性格の表現は、会話とは対照的に動きの形をとる。例えば、1つの玩具の戦車が「防御的」性格を有し、別の玩具の戦車が「攻撃的」性格を有することもできる。   Alternatively, the toy takes the form of a tank or other such toy. In this case, the expression of the character of the toy takes the form of movement as opposed to conversation. For example, one toy tank may have a “defensive” character and another toy tank may have an “aggressive” character.

オーサリングツール
オーサリングツールとは、複数の人形に対して様々な会話テーマを作成するために使用できるアプリケーションのことである。上述したような会話は、会話が従うことができる可能性のある分岐が多数であるため、作成にかなりの量の時間が必要とされる。従って、プロセスをより効率化するために、オーサリングツールを提供してこのプロセスを支援する。クライアントアプリケーションは、図10に示すようなPC1000又はラップトップ1002などのパーソナルコンピュータなどで実行されるが、複数のユーザが同じテーマに取り組めるように、或いは単一のユーザが異なる場所から同じテーマに取り組めるように、データはサーバ1004上に記憶される。サーバ上では、データベースをクライアントアプリケーションとインターフェイス接続するためのウェブサービスが行われる。クライアントアプリケーションは、インターネット306を介してサーバ1004と通信する。クライアントアプリケーションはウェブサービス、ひいてはデータベースへの要求をXMLを使用してフォーマット化し、SOAPプロトコルを使用してデータを送信する。
Authoring Tool An authoring tool is an application that can be used to create various conversation themes for multiple dolls. Conversations such as those described above require a significant amount of time to create because of the many branches that the conversation can follow. Therefore, in order to make the process more efficient, authoring tools are provided to support this process. The client application is executed on a personal computer such as a PC 1000 or a laptop 1002 as shown in FIG. 10, but a plurality of users can work on the same theme, or a single user can work on the same theme from different places. As such, the data is stored on the server 1004. On the server, a web service is provided to interface the database with the client application. The client application communicates with the server 1004 via the Internet 306. The client application formats the request for the web service, and thus the database, using XML and sends the data using the SOAP protocol.

オーサリングツールの概要
図11は、オーサリングツールの概要を示す図である。テーマ開発者が玩具のために単純かつ効率的にテーマを出力できるようにするためにユーザインターフェイス1100が設けられる。設けられたユーザインターフェイスを使用して、開発者は以下のステップに従う。
1. テーマ生成エンジン1102を使用してテーマを作成
2. 玩具生成エンジン1104を使用してこのテーマに合わせた玩具を作成
3. コンテキスト入力ウィンドウ1106を使用して個々の玩具ごとに複数のコンテキストを作成
4. コード生成エンジン1108を使用して命令(「C」コード)を出力
5. 辞書生成エンジン1110を使用して個々の人形ごとに記録すべき語句の「辞書」を出力
6. 必要であれば、PCでテーマをテストする際に使用するシミュレーションエンジン1111を使用してシミュレーションとしてテーマを出力
Outline of Authoring Tool FIG. 11 is a diagram showing an outline of the authoring tool. A user interface 1100 is provided to allow theme developers to simply and efficiently output themes for toys. Using the provided user interface, the developer follows the following steps:
1. Create theme using theme generation engine 1102 2. Create toy for this theme using toy generation engine 1104 3. Use context input window 1106 to create multiple contexts for each toy Create 4. Output instruction (“C” code) using code generation engine 1108 5. Output “dictionary” of words to be recorded for each doll using dictionary generation engine 1110 If necessary, output the theme as a simulation using the simulation engine 1111 used when testing the theme on a PC

本明細書で使用する場合、用語コンテキストは、例えばテーマ別会話内の個々の位置ごとに、人形が何を発言するか、またどの人形が次に発話するかを決定する少なくとも1つのコンテキストが存在するように、テーマデータ内のコンテンツのサブセットを意味する。コンテキストは、テーマ/人形の属性を設定することもできる。   As used herein, a term context is at least one context that determines what a doll speaks and which doll speaks next, for example, for each individual position within a thematic conversation. As such, it means a subset of the content in the theme data. The context can also set theme / doll attributes.

コード生成エンジン及び辞書生成エンジン1110を使用して命令及び「辞書」がそれぞれ出力されると、記録手段を使用して語句が記録され、レコーダ1112を使用してオーディオファイルが作成され保存される。レコーダは、特定の作成中のテーマに必要な表現データの各々を生成するように関係者に促す。その後レコーダは、適当な表現データに対応するID番号を個々のオーディオファイルに割り当てる。使用時には、玩具のプロセッサが操作するコードにより、適当なID番号を使用してオーディオファイルが参照され、玩具のスピーカを使用して出力される。   When an instruction and a “dictionary” are output using the code generation engine and the dictionary generation engine 1110, a phrase is recorded using a recording unit, and an audio file is created and stored using the recorder 1112. The recorder prompts interested parties to generate each piece of expression data needed for a particular theme being created. The recorder then assigns an ID number corresponding to the appropriate expression data to each audio file. In use, the audio file is referenced using the appropriate ID number by the code operated by the toy processor and output using the toy speaker.

基本命令セット1114(玩具のプロセッサ用ファームウェア)が(コード生成エンジン1108により生成される)テーマ別命令セットと組み合わされ、テーマに従って玩具を動作させるために、コンパイラ1116を使用して玩具のプロセッサが使用するバイナリファイルにコンパイルされる。上述した先の実施形態では、基本の命令/ファームウェアのセットが玩具のプロセッサメモリに位置し、テーマが変更又は更新されるたびにテーマ別命令セット及びオーディオファイルのみが人形にダウンロードされた。   The basic instruction set 1114 (toy processor firmware) is combined with the thematic instruction set (generated by the code generation engine 1108) and used by the toy processor using the compiler 1116 to operate the toy according to the theme. Compiled into a binary file. In the previous embodiment described above, the basic instruction / firmware set was located in the processor memory of the toy and only the thematic instruction set and audio files were downloaded to the doll each time the theme was changed or updated.

命令がコンパイルされると、コンバイナエンジン1120を使用してこれらをオーディオファイルと共にバンドルし、個々の人形にダウンロードできるようにする(個々の人形は同じテーマ別命令を含む個別のダウンロードを有するが、これには個別のオーディオファイルが含まれる)。   Once the instructions are compiled, they are bundled together with audio files using the combiner engine 1120 so that they can be downloaded to individual dolls (each doll has a separate download containing the same thematic instructions, but this Includes individual audio files).

オーサリングツールは、テーマを記憶したサーバ1004及びデータベース1122へのアクセス権を有する。テーマは、テーマ開発者により確定されたかどうかに応じて異なるフォーマットで記憶される。未確定のテーマは、オーサリングツールが情報に容易にアクセスできるように記憶され、これは、テーマ名、玩具名、コンテキストなどの参照事項を含むデータベースの形をとる。テーマ開発者がテーマを確定させると、テーマは、未確定フォーマットに加え上述したような命令セットとしても記憶される。これにより、確定したテーマを修正するとともに、先に確定したテーマに基づいて新しいテーマを作成できるようになる。玩具のユーザが自分の玩具/人形1126にテーマ別データをダウンロードできるようにするウェブサイト1124が提供される。   The authoring tool has access rights to the server 1004 and database 1122 that store themes. Themes are stored in different formats depending on whether they have been finalized by the theme developer. Ambiguous themes are stored so that the authoring tool can easily access the information, which takes the form of a database that includes references such as theme names, toy names, contexts, and the like. When the theme developer determines the theme, the theme is stored as an instruction set as described above in addition to the undefined format. As a result, the determined theme can be corrected and a new theme can be created based on the previously determined theme. A website 1124 is provided that allows toy users to download thematic data to their toy / doll 1126.

オーサリングツールは、上述したようなものを含むいくつかの機能を有する。
1)これを使用して、フォーマット済みのテキストファイルから会話をインポートすることができる。
2)これを使用して、テーマ生成エンジン1102を使用して複数の人形のためのテーマ別会話を作成及び編集することができる。
3)これを使用して、シミュレーションエンジン1111を使用して会話プロセスをシミュレートし、結果として得られるテーマ別会話のテキスト出力を作成することができる。
4)これを使用して、辞書生成エンジン1110を使用して個々の人形に関する記録すべき全ての語句のリストをまとめることができる。
5)これを使用して、コード生成エンジン1108を用いて「C」コード出力(命令セット)を作成することができ、その後これをコンパイルして修正済みプロセッサファームウェアとリンクさせ、ダウンロードの準備が整っている個々の人形のためにバイナリデータファイルを作成することができる。
The authoring tool has several functions including those described above.
1) This can be used to import conversations from a formatted text file.
2) This can be used to create and edit thematic conversations for multiple dolls using the theme generation engine 1102.
3) This can be used to simulate the conversation process using the simulation engine 1111 and create a text output of the resulting thematic conversation.
4) This can be used to compile a list of all words to be recorded for each doll using the dictionary generation engine 1110.
5) This can be used to create a “C” code output (instruction set) using the code generation engine 1108, which is then compiled and linked with the modified processor firmware and ready for download. Binary data files can be created for individual dolls.

会話データの入力
オーサリングツールのアプリケーションユーザインターフェイスを図12a〜図15に示す。個々のインターフェイスのウィンドウは、入力ウィンドウとインターフェイス接続するか、或いは次のインターフェイスウィンドウへ進むかのいずれかを行うための数多くのナビゲーションボタンを有する。ユーザインターフェイスは、プロセッサ1150及び関連メモリ1152を利用してテーマ開発者にユーザインターフェイスの様々な態様を表示し、受信機1153を利用してユーザが入力したコンテンツを受信する。プロセッサ1150及びメモリ1152は、PC1000又はラップトップ1002内に位置する。本明細書で使用する場合、用語コンテンツは、スクリプトデータ、表現データ、テーマデータ、人形データ及びユーザがオーサリングツールに入力できる他のあらゆるデータ型を意味する。
Conversation Data Input The application user interface of the authoring tool is shown in FIGS. Each interface window has a number of navigation buttons to either interface with the input window or advance to the next interface window. The user interface uses the processor 1150 and associated memory 1152 to display various aspects of the user interface to the theme developer and receives content entered by the user using the receiver 1153. The processor 1150 and the memory 1152 are located in the PC 1000 or the laptop 1002. As used herein, the term content refers to script data, expression data, theme data, doll data, and any other data type that a user can enter into the authoring tool.

図12aは、第1のインターフェイスウィンドウであり、以下の選択肢を有する。
テーマの追加(1100):これは新しいテーマを作成するために使用され、通常は使用される最初の選択肢である。図12b及び12cに示すように、以下の入力を必要とするテーマフォームを立ち上げる。
名前:テーマの名前。これは、spoken_text_stringのためのプレースホルダである。
人形の数:このテーマ内でサポートされる人形の総数
説明:テーマの説明
テーマ属性:位置などの、テーマのグローバル属性
人形属性:気分などの、人形のローカル属性
FIG. 12a is a first interface window with the following options:
Add theme (1100): This is used to create a new theme and is usually the first choice used. As shown in FIGS. 12b and 12c, a theme form is launched that requires the following inputs.
Name: Name of the theme. This is a placeholder for spoken_text_string.
Number of dolls: Total number of dolls supported in this theme Description: Theme description Theme attributes: Theme global attributes, such as location Doll attributes: Local attributes of the doll, such as mood

これらの入力は、上述したような会話の構築で必要とされる入力と同等のものである。オーサリングツールの実施形態を参照しながら説明したように、テーマ及び人形属性は、上述のようにそれぞれグローバル変数及びローカル変数と同等のものである。しかしながら、オーサリングツールは、構造化された様々な入力ウィンドウをテーマ開発者に提供して情報を効率よく入力できるようにする。   These inputs are equivalent to those required for constructing a conversation as described above. As described with reference to the authoring tool embodiment, the theme and doll attributes are equivalent to global and local variables, respectively, as described above. However, the authoring tool provides a variety of structured input windows to the theme developer so that information can be input efficiently.

さらに詳細には、テーマ属性は、名前及び任意に値から成る。値は、spoken_text_stringのためのプレースホルダであってもよい。以下で説明するように、spoker_text_stringは、テーマが確定した後に作成される。spoken_text_stringとは、会話中にアクセスできるサウンドファイルのことである。例えば、テーマが動物園内に位置するとした場合、考えられるテーマ属性は、位置=「動物園」であり、人形がこれを使用して、例えば「やあ、動物園は本当に楽しいな」と言うことができ、この場合「動物園」という単語は、「位置」というテーマ属性を使用してアクセスされたものである。   More specifically, the theme attribute consists of a name and optionally a value. The value may be a placeholder for spoken_text_string. As will be described below, the spoke_text_string is created after the theme is determined. Spoken_text_string is a sound file that can be accessed during a conversation. For example, if the theme is located in a zoo, the possible theme attribute is position = “zoo” and the doll can use this to say, for example, “Hey, the zoo is really fun” In this case, the word “zoo” is accessed using the theme attribute “position”.

人形属性は、特定のテーマにおける個々の人形が属性に値を必要とするときにインターフェイスウィンドウ内に作成される。例えば、属性の設定が「気分」である場合、個々の人形のこの属性に「楽しい」「悲しい」、「怒っている」などの値が与えられる。会話中、会話エンジンは、人形属性(ローカル変数)のいずれかにアクセスしてその属性を会話で使用することができる。
編集(1202):これは既存のテーマを編集するために使用される。例えば、テーマAlon#1(1206)を選択して編集を押すことにより、ユーザがAlon#1のテーマの詳細を編集できるようになる。
除去(1204):これは選択したテーマを削除するために使用される。
Doll attributes are created in the interface window when individual dolls in a particular theme require values for the attributes. For example, when the attribute setting is “mood”, values such as “fun”, “sad”, and “angry” are given to this attribute of each doll. During a conversation, the conversation engine can access any of the doll attributes (local variables) and use the attributes in the conversation.
Edit (1202): This is used to edit an existing theme. For example, by selecting the theme Alon # 1 (1206) and pressing Edit, the user can edit the details of the theme of Alon # 1.
Remove (1204): This is used to delete the selected theme.

図12aは、3つのテーマ1208、1208及び1210が作成された後のウィンドウを示している。個々のテーマがテーマの詳細の概要を示しており、これにはテーマの短い説明、テーマに関連する人形の数及びそのID番号が含まれていることがわかる。テーマのフォームに入力された情報は、その後出力命令を生成する際に検索するためにサーバ1004内のデータベース1122に記憶される。   FIG. 12a shows the window after the three themes 1208, 1208 and 1210 have been created. It can be seen that each theme gives an overview of the theme details, including a short description of the theme, the number of dolls associated with the theme, and their ID numbers. Information entered into the theme form is then stored in the database 1122 in the server 1004 for retrieval when generating output commands.

テーマが作成されると、ユーザは次のウィンドウへ進んでテーマ内の人形を作成する。図13aは人形生成ウィンドウを示しており、ユーザが「人形追加」ボタン1300を押すと、図13bに示すウィンドウが表示される。このウィンドウを使用することにより、人形を作成し、名前をつけ、短い説明を付けることができるようになる。   Once the theme is created, the user proceeds to the next window and creates a doll within the theme. FIG. 13 a shows a doll generation window. When the user presses the “add doll” button 1300, the window shown in FIG. 13 b is displayed. Using this window, you can create a doll, give it a name, and give a short description.

図13a及び図13bに示すウィンドウを使用して、必要なだけの人形を作成することができる。しかしながら、作成できる人形の数は、その特定のテーマに関して前もって決定した人形の最大数により制限される。これらの同じウィンドウを使用して既存の人形を編集することも可能である。このようにして個々の人形を作成することによりサブテーマが生成される。上述したように、サブテーマは個々の特定の人形のテーマである。例えば、会話を記録するために使用する音声は玩具ごとに異なり、コンテキストデータも異なる。この場合も、人形のフォームに入力された情報が、その後出力命令を生成する際に検索するためにサーバ1004内のデータベース1122に記憶される。   The windows shown in FIGS. 13a and 13b can be used to create as many dolls as needed. However, the number of dolls that can be created is limited by the maximum number of dolls determined in advance for that particular theme. It is also possible to edit existing dolls using these same windows. Sub-themes are generated by creating individual dolls in this way. As described above, the sub-theme is the theme of each specific doll. For example, the voice used to record the conversation is different for each toy, and the context data is also different. Again, the information entered in the doll's form is stored in the database 1122 in the server 1004 for later retrieval when generating an output command.

図14は、テーマ内の個々の人形に対して異なるコンテキストを入力するコンテキスト定義ウィンドウを示している。図14に示すように、位置100に2つのコンテキスト1400及び1402が定義されており、1つはDoll#1のためのものであり、1つはDoll#2のためのものである。従って、会話内で位置100がアクセスを受けた場合、上述したような方法により人形が選択され、対応するコンテキストがアクセスを受ける。個々のコンテキストは、人形が何を発言すべきか、及び次にどの人形が発話すべきかに関する情報を保持する。この結果、会話を作成するための構造をテーマ開発者に提供することにより、上述したような会話構築のプロセスが容易化される。テーマ開発者は、もはやテーマ自体をコード化する必要はなく、むしろオーサリングツールが、テーマ開発者の入力に応じて必要なコードを生成する。   FIG. 14 shows a context definition window for entering different contexts for individual dolls in the theme. As shown in FIG. 14, two contexts 1400 and 1402 are defined at location 100, one for Doll # 1 and one for Doll # 2. Thus, when location 100 is accessed in a conversation, a doll is selected by the method described above and the corresponding context is accessed. Each context holds information about what the doll should speak and which doll should speak next. As a result, the process for constructing the conversation as described above is facilitated by providing the theme developer with a structure for creating the conversation. The theme developer no longer needs to code the theme itself, rather the authoring tool generates the necessary code in response to the theme developer's input.

図15は、テーマ内の個々の位置のためのコンテキスト生成ウィンドウを示す。図15に示す例では、これは位置100及びDoll#1のためのコンテキストである。個々のコンテキストは以下の情報を必要とする。
・Position(1500)〜図14に示すコンテキスト定義ウィンドウ内で新しいコンテキストが作成される際にオーサリングツールにより自動的に作成されるこの位置を表記するテキスト文字列。これは個々のコンテキスト行にとって便利なラベルである。これはいずれのテキストであってもよいが、デフォルトはコンテキスト行に100から始めて順に番号を付ける。テキストラベルの使用目的は、会話を作成及び編集している間に明暸さを助長することである。「C」コードの出力が必要な場合、全ての位置ラベルが、コンテキスト位置に対応するyoume_conversation_struct_t構造(この及び本明細書で説明するその他の構造に利用されるCコード命名規則)の配列の形のインデックスに変換される。
・Statement(1502)〜人形が発言できる文のリストであり、ランダム選択プロセスで使用する重み付けを伴う。文は、spoken_text_stringsである語句のリストを含む。これは、会話内のこのコンテキストポイントにおいて特定の人形が発言できる文のリストである。個々の文は角括弧で囲まれ、個々の文をコンマで分離し(例えば[statement1],[statement2],[statement3])、又は図15に示すようにコンテキスト入力ウィンドウの別々の行に入力することができる。文は、ランダム選択用の重み付け及び語句のリストから成る。この場合の重み付けは、SET制御、BRANCH制御又はCHOOSE制御などの条件付きフロー制御を参照しながら上述したような重み付けと同様の態様で機能する。個々の語句は、明示的なspoken_text_string、又はテーマ属性又は人形属性への参照のいずれかであり、例えば、文はテーマの位置又は人形の気分を参照することができる。明示的spoken_text_stringsは、(「こんにちは、お元気ですか」などの)2重引用符内のテキストとして定義される。参照は以下の形を取る
○ theme.attribute テーマ/グローバル属性に関する
○ me.attribute 現在の発話者人形属性に関する
○ prev.attribute 前の発話者人形属性に関する
○ next.attribute 次の発話者人形属性に関する
○ name.attribute 名前の付いた人形/ローカル属性に関する
以下は、Statementsフィールドへの有効な入力例である。
○ ブランク〜これは、この時点でこの人形による発言が存在しないことを意味する。
○ [1,“hello how are you”]〜この時点で「今日は、お元気ですか」と特定された1つの文のみがこの人形により話される。
○ [1,“hello”,prev.name、how are you]〜この時点で「今日は」の次に前の発話者名、その後「お元気ですか」がこの人形により話される。
○ [1,“hello”][1,“hi”]〜等しい重み付けの2つの文。default_say_procedureが使用された場合、この時点で50%の時間は「今日は」がこの人形により発言され、残りの50%の時間は「やあ」が発言される。
○ [3,“hello”][1,“howdy”]−等しくない重み付けの2つの文。default_say_procedureが使用された場合、この時点で75%の時間は「今日は」がこの人形により発言され、残りの25%の時間は「よう」が発言される。
・Say(1504)〜発言するために使用される手順。ブランクにした場合、default_say_procedureが使用される。default_say_procedureは、重み付けを使用して利用可能な文の1つをランダムに選択する。或いは、ドロップダウンリストを使用して、異なる言動を提供するあらゆる利用可能な用意されたsay手順を選択することができる。ドロップダウンリスト内に上述したようなsay手順を提供することができる。最終的に、特別な動作が必要な場合、必要なsay手順の「C」コードをここに入力することができる。
・Transition(1506)〜次の人形を選択するために使用される手順。NOTME、ANY、ME、PREV、FINISHを含む上述の手順のいずれであってもよく、或いは人形の名前の1つ又は何らかの「C」コードをここに入力することができる。ブランクにした場合、NOTME transitionであるdefault_transition_procedureが使用される。これとは別に、利用可能なtransition手順のプルダウンリストが存在する。このリストは、以下の用意されたtransitionで構成され、(各々について詳細に上述したような)ドロップダウンメニューを介してオーサリングツール内でアクセスされる。
○ NOTME 現在の発話者を除くいずれかの人形をランダムに選択する。
○ ANY いずれかの人形をランダムに選択する。
○ ME 現在の発話者を選択する。
○ PREV 前の発話者を選択する。
○ Doll’s name この人形を選択する。
また、特別なtransition動作が必要な場合、必要なtransition手順の「C」コードをここに入力することができる。
・Next(1508)〜ランダム選択プロセスにおいて使用される次にどこへ行くかについての分岐選択のリストであり、重み付けを伴う。これは、次のコンテキスト位置のための分岐選択のリストである。個々の分岐選択は角括弧で囲まれ、コンマで区切られる。分岐選択自体は位置ラベルのリストから成り、ランダム選択のための重み付けを伴う。上述したようなBRANCHコマンドとフォーマットが類似する。以下は、(各々について詳細に上述したような)このフィールドへの有効な入力例である。
○ [(1,label1),(1,label2)]〜等しい重み付けの2つのラベルの選択を含む1つの分岐選択。
○ [(1,label1),(1,label2)]![(2,label3),(3,label4)]〜2つの分岐選択、最初の方は等しい重み付けの2つのラベルの選択を含み、後の方は重み付け2及び3の2つのラベルの選択を含む。
・Branch(1510)〜分岐に影響を与えるために使用される手順、フォーマットは、会話構造を参照しながら上述したものと同じである。そうでなければ、何らかの「C」コードをここに入力することができる。このフィールドは、分岐手順を指定して分岐選択を処理するために使用される。ブランクにした場合、default_branch_procedureが使用される。default_branch_procedureは、Nextリスト内の最初の分岐選択を使用し、与えられた重み付けを使用してラベルの1つをランダムに選択する。その後、コンテキストは、その位置ラベルとして選択されたラベルを有するコンテキスト行に変更される。これとは別に、利用可能な用意された分岐手順のプルダウンリストが存在する。このドロップダウンリスト内に上述したような分岐手順を提供することができる。
・Attributes(1512)〜属性、seMlag、及びランダム選択のための値及び重み付けのリスト。このフィールドは、このコンテキストポイントにおいて値で設定を行うためのいずれかの属性を指定するために使用され、すなわちテーマ開発者は、「気分」という人形属性をハッピーに設定することができる。ブランクにした場合、属性は設定されない。設定される個々の属性は、角括弧で囲まれ、コンマで区切られる。角括弧内では、属性が指定された後に、属性を一旦設定すべきか、又はリセットすることができるかを指定するset_flagが続き、その後ランダム選択のための値及び重み付けのリストが続く。属性フィールドは、上述したようなSETコマンドの同等物である。以下は、属性フィールドへの有効な入力である。
○ ブランク 属性は設定されない。
○ [me.attribute1,set,(1,“hello”)] 1つの属性が設定され、未だ設定されていない場合、spoken_text_string“hello”の値に「ハロー」が設定される。
○ [me.attribute1,reset,(1,“hello”)(1,“hi”)],[me.attribute2,set,(1,“peter”)(1,“paul”)]
2つの属性が設定される。最初の属性は、すでに設定されていたとしても「ハロー」又は「ハイ」に設定される。次の属性は、未だ設定されていていない場合に「ピーター」又は「ポール」に設定される。
・Set(1514)〜属性値の設定に影響を与えるために使用される手順。ブランクにした場合、default_set_procedureが使用される。default_set_procedureは、set_flagを考慮して個々の指定された属性を適当な値の選択に設定する。「set」のset_flagは、まだ設定されていない場合に限り属性を設定できることを意味する。「reset」のset_flagは、属性を何度でもリセットできることを意味する。これとは別に、利用可能な用意されたset手順のプルダウンリストが存在する。最終的に、何らかの特別なカスタム設定した動作が必要な場合、必要なset手順の「C」コードをここに入力することができる。
FIG. 15 shows the context generation window for individual positions within the theme. In the example shown in FIG. 15, this is the context for location 100 and Doll # 1. Each context requires the following information:
Position (1500) to a text string representing this position automatically created by the authoring tool when a new context is created in the context definition window shown in FIG. This is a convenient label for individual context lines. This can be any text, but the default is to number the context lines sequentially starting at 100. The purpose of text labels is to promote clarity while creating and editing conversations. If output of “C” code is required, all location labels are in the form of an array of the volume_conversion_struct_t structure (this is the C code naming convention used for this and other structures described herein) corresponding to the context location. Converted to an index.
Statement (1502)-A list of sentences that a doll can speak, with weights used in the random selection process. The sentence includes a list of phrases that are spoken_text_strings. This is a list of sentences that a particular doll can speak at this context point in the conversation. Individual sentences are enclosed in square brackets and separated by commas (eg, [statement1], [statement2], [statement3]) or entered on separate lines in the context input window as shown in FIG. be able to. A sentence consists of a list of random selection weights and phrases. The weighting in this case functions in the same manner as the weighting described above with reference to conditional flow control such as SET control, BRANCH control, or CHOOSE control. Each phrase is either an explicit spoken_text_string, or a reference to a theme attribute or doll attribute, for example, a sentence can refer to a theme location or doll mood. Explicitly spoken_text_strings is defined as the text of the ( "Hello, how are you" such as) in double quotation marks. The reference takes the following form: ○ theme. attribute on theme / global attribute ○ me. attribute related to the current speaker doll attribute ○ prev. attribute related to the previous speaker doll attribute ○ next. attribute related to the next speaker doll attribute ○ name. The following for an attribute named doll / local attribute is an example of a valid input to the Statements field.
○ Blank ~ This means that there is no remark by this doll at this point.
[1, “hello how are you”]-At this point, only one sentence identified as "How are you today?" Is spoken by this doll.
[1, “hello”, prev. name, how are you]-At this point in time, the utterance name next to "Today is" and then "How are you" are spoken by this doll.
O [1, “hello”] [1, “hi”] to two sentences with equal weighting. If default_say_procedure is used, 50% of the time will be spoken by this doll for 50% of the time and the rest of 50% will be spoken of “Hi”.
O [3, “hello”] [1, “howdy”] — Two sentences with unequal weights. If default_say_procedure is used, 75% of the time will be spoken by this doll for 75% of the time, and the other 25% of the time will be spoken of “Yo”.
Say (1504)-Procedure used to speak. If left blank, default_say_procedure is used. default_say_procedure randomly selects one of the available sentences using weighting. Alternatively, the drop-down list can be used to select any available prepared say procedure that provides different behavior. A say procedure as described above can be provided in the drop-down list. Finally, if a special action is required, the “C” code of the required say procedure can be entered here.
Transition (1506) —The procedure used to select the next doll. It can be any of the procedures described above including NOTME, ANY, ME, PREV, FINISH, or one of the names of the dolls or some “C” code can be entered here. When blank, default_transition_procedure which is NOTME transition is used. Apart from this, there is a pull-down list of available transition procedures. This list consists of the following prepared transitions, accessed in the authoring tool via a drop-down menu (as described in detail above for each).
○ NOTME Randomly select any doll except the current speaker.
○ ANY Select any doll at random.
○ ME Selects the current speaker.
○ PREV Select the previous speaker.
○ Doll's name Select this doll.
Also, if a special transition operation is required, the “C” code for the required transition procedure can be entered here.
Next (1508)-a list of branch choices for where to go next used in the random selection process, with weights. This is a list of branch choices for the next context location. Individual branch selections are enclosed in square brackets and separated by commas. The branch selection itself consists of a list of position labels, with weights for random selection. The format is similar to the BRANCH command as described above. The following are examples of valid entries for this field (as described in detail above for each):
O [(1, label1), (1, label2)] to one branch selection including selection of two labels with equal weighting.
○ [(1, label1), (1, label2)]! [(2, label3), (3, label4)] to two branch selections, the first includes the selection of two labels with equal weighting, the latter includes the selection of two labels with weights 2 and 3 .
Branch (1510) —The procedure and format used to influence the branch is the same as described above with reference to the conversation structure. Otherwise, some “C” code can be entered here. This field is used to specify a branch procedure and handle branch selection. If left blank, default_branch_procedure is used. default_branch_procedure uses the first branch selection in the Next list and randomly selects one of the labels using the given weights. The context is then changed to a context line with the label selected as its location label. Apart from this, there is a pull-down list of prepared branch procedures available. A branching procedure as described above can be provided in this drop-down list.
Attributes (1512) —List of values and weights for attributes, seMlag, and random selection. This field is used to specify any attribute to set by value at this context point, i.e. the theme developer can set the doll attribute "mood" happy. If left blank, no attribute is set. Individual attributes to be set are enclosed in square brackets and separated by commas. Within the square brackets, after an attribute is specified, it is followed by a set_flag that specifies whether the attribute should be set once or can be reset, followed by a list of values and weights for random selection. The attribute field is the equivalent of the SET command as described above. The following are valid inputs to the attribute field:
○ Blank Attribute is not set.
○ [me. attribute1, set, (1, “hello”)] When one attribute is set and is not set yet, the value of spoken_text_string “hello” is set to “hello”.
○ [me. attribute1, reset, (1, “hello”) (1, “hi”)], [me. attribute2, set, (1, "peter") (1, "paul")]
Two attributes are set. The first attribute is set to “Hello” or “High” even if it is already set. The next attribute is set to “Peter” or “Paul” if it is not already set.
Set (1514) —The procedure used to influence the setting of the attribute value. If blank, default_set_procedure is used. default_set_procedure sets each specified attribute to the selection of an appropriate value taking into account set_flag. A set_flag of “set” means that an attribute can be set only when it has not been set yet. A set_flag of “reset” means that the attribute can be reset any number of times. Apart from this, there is a pull-down list of prepared set procedures available. Finally, if any special custom action is required, the “C” code for the required set procedure can be entered here.

上述したように、Statements、Say、Transition、Next、Branch、Attributes、及びSetのフィールドが個々の人形ごとに反復される。Say、Transition、Next及びBranchのフィールドは全て、玩具/人形間の対話方法に寄与するパラメータであり、これらの全ては会話構造を参照しながら上述したようなコマンドと同等である。   As described above, the Statements, Say, Transition, Next, Branch, Attributes, and Set fields are repeated for each doll. The Say, Transition, Next, and Branch fields are all parameters that contribute to the toy / doll interaction method, all of which are equivalent to commands as described above with reference to the conversation structure.

図15bは、コンテキスト生成ウィンドウの代替の実施形態を示している。領域1550に示すように、次の人形がいつ発言するかをユーザが決定できるようにするよう設定できる追加パラメータが存在する。これらのオプションは、後続、開始からの時間を計る、終了からの時間を計る、の3つである。後続パラメータは、発話している人形に続けて、すなわち重ならず交互に会話を継続できるようにする。開始からの時間を計るパラメータは、ユーザに、人形が発話を開始してから次の人形が発話を開始するまでの時間間隔を入力できるようにする。これによって2体の人形が同時に発話できるようになり、例えば複数の人形がジョークに反応して同時に笑うことができる。終了からの時間を計るパラメータは、開始からの時間を計るパラメータと類似しているが、ユーザが、次の人形が現在の人形の発話の終了前に発話を開始するための時間間隔を入力する点が異なる。この機能により、より本物そっくりの会話を構築できるようになる。   FIG. 15b shows an alternative embodiment of the context generation window. As shown in region 1550, there are additional parameters that can be set to allow the user to determine when the next doll will speak. There are three options: follow, time from start, time from end. The subsequent parameters allow the conversation to continue following the doll that is speaking, i.e. alternately without overlapping. The parameter for measuring time from the start allows the user to enter the time interval from when the doll starts speaking until the next doll starts speaking. This allows two dolls to speak at the same time, for example, multiple dolls can react to jokes and laugh at the same time. The parameter to time from end is similar to the parameter to time from start, but the user enters a time interval for the next doll to start speaking before the end of the current doll's utterance. The point is different. This feature allows you to build a more authentic conversation.

会話が完了するまで、Contextオプションを繰り返し使用して、会話にコンテキスト行を追加する。   Use the Context option repeatedly to add a context line to the conversation until the conversation is complete.

個々の人形及び個々のコンテキストの定義を含め、テーマが完了すると、オーサリングツールはセーブ機能を提供する。このオプションは会話を保存するために使用され、一例として以下のディレクトリを作成する。
c:\youme\themes\theme_name
c:\youme\themes\theme_name\doll_name〜個々の人形ごと
c:\youme\themes\theme_name\doll_name\audio〜個々の人形ごと
When the theme is complete, including the definition of individual dolls and individual contexts, the authoring tool provides a save function. This option is used to save conversations and creates the following directories as an example:
c: \ youme \ themes \ theme_name
c: \ youme \ themes \ theme_name \ doll_name ~ for each doll c: \ youme \ themes \ theme_name \ doll_name \ audio ~ for each doll

従って、1つのテーマに必要なファイルは、全てマスターディレクトリフォルダ「theme_name」内に保存される。個々の人形ごとにサブフォルダを作成して、個々の人形のダウンロードを効率的に管理できるようにする。最終的に、個々の人形のサブフォルダは、この人形に必要なオーディオファイルを記憶するためのフォルダを有する。   Therefore, all the files necessary for one theme are stored in the master directory folder “theme_name”. Create subfolders for each individual doll so that the download of individual dolls can be managed efficiently. Finally, each doll's subfolder has a folder for storing the audio files needed for this doll.

このオプションは以下のファイルも作成する。
c:\youme\themes\theme_name\theme.txt〜テキストファイルとしてテーマデータを含む。
c:\youme\themes\theme_name\doll_name\doll.txt〜テキストファイルとして人形データを含む。
c:\youme\themes\theme_name\doll_name\audio\A00001.wav
c:\youme\themes\theme_name\doll_name\audio\A00002.wav
...
...
...
c:\youme\themes\theme_name\doll_name\audio\A00010.wav
...
...
c:\youme\themes\theme_name\doll_name\audio\Annnnn.wav
This option also creates the following files:
c: \ youme \ themes \ theme_name \ theme. txt—includes theme data as a text file.
c: \ youme \ themes \ theme_name \ doll_name \ doll. txt ~ Contains doll data as a text file.
c: \ youme \ themes \ theme_name \ doll_name \ audio \ A00001. wav
c: \ youme \ themes \ theme_name \ doll_name \ audio \ A00002. wav
. . .
. . .
. . .
c: \ youme \ themes \ theme_name \ doll_name \ audio \ A00010. wav
. . .
. . .
c: \ youme \ themes \ theme_name \ doll_name \ audio \ Annnnn. wav

作成されるwavファイルは、個々の人形ごとにテーマ内で定義されるspoken_text_stringsの各々のプレースホルダである。spoken_text_stringsには、A00001.wavから開始する順番でA0000n.wavというファイル名が割り当てられる。ファイル名の中で使用されるnは、「C」コードの出力が必要な場合の語句のインデックスとしても使用される。1つの例では、レコーダ(1112)が、必要なspoken_text_stringを上演させるように関係者を促し、その後、次のspoken_text_stringで関係者を促す前に正しいファイル名でファイルを自動的に保存する。   The created wav file is a placeholder for each of the spoke_text_strings defined in the theme for each doll. spoken_text_strings includes A00001. In the order starting from wav, A0000n. The file name wav is assigned. N used in the file name is also used as an index of a word when the output of “C” code is required. In one example, the recorder (1112) prompts participants to play the required spoken_text_string, and then automatically saves the file with the correct file name before prompting the participant with the next spoken_text_string.

また、オーサリングツールは、会話に対応する「C」コードを生成するようになっている。「C」コードの大部分は予め定義され(基本命令セット)、玩具/人形のプロセッサのためのオペレーティングシステムとして機能する。会話に対応する「C」コード(テーマ別命令セット)が出力されると、予め定義された「C」コードと組み合わされ(図11を参照)、その後これがコンパイルされて人形又はPC内のプロセッサを操作するのに適したバイナリファイルが作成される。新しいテーマが作成されるたびに人形にオペレーティングシステム/ファームウェアを組み込むことにより、必要なときにいつでも人形の機能を単純かつ効率的に変更できるようになる。   The authoring tool generates a “C” code corresponding to the conversation. Most of the "C" code is predefined (basic instruction set) and serves as an operating system for the toy / doll processor. When the “C” code (thematic instruction set) corresponding to the conversation is output, it is combined with a predefined “C” code (see FIG. 11), which is then compiled to run the doll or processor in the PC. A binary file suitable for operation is created. By incorporating an operating system / firmware into the doll whenever a new theme is created, the doll's functionality can be changed simply and efficiently whenever needed.

2種類の「C」コードを出力することができる。
1.ウィンドウ用「C」コード〜この「C」コードは以下の形で保存することができる。
c:\youme\themes\theme_name\theme_simulation.c、及び
c:\youme\themes\theme_name\theme_simulation.h
後でこのコードをコンパイルしてウィンドウベースの会話シミュレーションエンジンとリンクさせることができる。結果的に得られるアプリケーションを、c:\youme\themes\theme_name\simulation.exeの形で保存することができる。シミュレータにより、ユーザがどの人形を現在の及びアクティブな人形と考えるべきかを指定できるようになる。その後、シミュレータは、実際の人形で行われそうな形で会話例をシミュレートする。シミュレータは、アクティブな人形の1つを現在の発話者となるようにランダムに選択し、この人形の最初のコンテキスト行を処理する。その後、個々の新しい行を順に実行して、どの人形が発話しているか、及びこれらが何を発言しているかを出力する。シミュレータは、会話が終わるまで継続する。
2.プロセッサ用「C」コード〜後でこのコードをコンパイルし、修正済みのプレイヤとリンクさせて個々の人形ごとのバイナリデータファイルを生成することができる。これらの「C」コードファイルは、個々の人形ごとに以下の形で保存することができる。
c:\youme\themes\theme_name\dollname\youme_chat.c、及び、
c:\youme\themes\theme_name\dollname\youme_chat.h
結果的に得られるバイナリデータファイルを以下の形で保存することができる。
:c:\youme\themes\theme_name\doll_name\player.sb.
Two types of “C” codes can be output.
1. "C" code for window-This "C" code can be stored in the following form.
c: \ youme \ themes \ theme_name \ theme_simulation. c, and c: \ youme \ themes \ theme_name \ theme_simulation. h
This code can later be compiled and linked with a window-based conversation simulation engine. The resulting application is c: \ youme \ themes \ theme_name \ simulation. It can be saved in exe form. The simulator allows the user to specify which dolls should be considered current and active dolls. The simulator then simulates an example conversation in a way that would be performed with an actual doll. The simulator randomly selects one of the active dolls to be the current speaker and processes the first context line for this doll. Each new line is then executed in turn to output which dolls are speaking and what they are speaking. The simulator continues until the conversation ends.
2. Processor “C” code—this code can later be compiled and linked with a modified player to generate a binary data file for each individual doll. These “C” code files can be stored for each individual doll in the following form:
c: \ youme \ themes \ theme_name \ dollname \ youme_cat. c and
c: \ youme \ themes \ theme_name \ dollname \ youme_cat. h
The resulting binary data file can be saved in the following form:
: C: \ youme \ themes \ theme_name \ doll_name \ player. sb.

バイナリデータファイルは、個々の人形において会話を実行するために必要な情報セット全体を含む。このバイナリデータファイルはプロセッサ用ファームウェアを含むので、ファームウェアを更新する追加のプロセスを必要とせずに、人形の機能に追加の特徴を組み入れることができる。   The binary data file contains the entire set of information necessary to carry out a conversation in an individual doll. Since this binary data file contains the firmware for the processor, additional features can be incorporated into the doll's functionality without requiring an additional process to update the firmware.

人形用のwavファイルとして正しい語句を記録するために、図11に示すように、個々の人形ごとに全ての異なる語句(spoken_text_strings)のリストを作成し、辞書生成エンジン1110を使用して出力し、これが個々の人形にとって必要な語句の辞書となる。辞書生成エンジン1110は、サーバ1004内のデータベース1122と通信し、データベース内に記憶されたテーマに関する情報に基づいてリストをコンパイルする。この辞書は、事実上、表現/文と、この表現/文に割り当てられたID番号との間のルックアップテーブルである。   In order to record correct words as a puppet wav file, a list of all different words (spoken_text_strings) is created for each individual doll as shown in FIG. 11 and output using the dictionary generation engine 1110, This is a dictionary of words that are necessary for each doll. The dictionary generation engine 1110 communicates with the database 1122 in the server 1004 and compiles the list based on information about themes stored in the database. This dictionary is effectively a lookup table between an expression / sentence and the ID number assigned to this expression / sentence.

個々の人形が使用する語句は、個々のコンテキスト行のStatementsフィールド及びAttributesフィールド内で定義される。これらは明示的に定義されたspoken_text_stringsであってもよく、或いはカスタム属性への参照であってもよい。明示的なspoken_text_stringが定義されるときには常に、A00001.wavから開始する順番のA00xxx.wavなどのファイル名がこれに割り当てられる。番号xxxもまた語句のインデックスである。spoken_text_stringsのリストは以下のファイル内に保存することができる。
c:\youme\themes\theme_name\phrases.txt〜これは、このテーマで使用される全ての語句のリストを含む。
c:\youme\themes\theme_name\doll_name\phrases.txt〜これらは、個々の人形が使用する全ての語句のリストを含む。
The phrases used by individual dolls are defined in the Statements and Attributes fields of the individual context lines. These may be explicitly defined spoken_text_strings or may be references to custom attributes. Whenever an explicit spoke_text_string is defined, A00001. A00xxx. of the order starting from wav. A file name such as wav is assigned to this. The number xxx is also a phrase index. The list of spoken_text_strings can be saved in the following file:
c: \ youme \ themes \ theme_name \ phrases. txt ~ This contains a list of all the phrases used in this theme.
c: \ youme \ themes \ theme_name \ doll_name \ phrases. txt ~ These contain a list of all the phrases used by an individual doll.

これらのファイルは、以下のフォーマットのテキストを含む。
A00xxx テキストとしての関連語句
These files contain text in the following format:
A00xxx Related phrases as text

このようにして、語句のリストを順番に記録し、適当なファイル名で保存し、人形内で使用するための、或いはPCが仮想人形として機能する場合にはPC内で使用するためのダウンロードに向けて準備することができるので、数多くのwavファイルを作成するプロセスが単純化される。   In this way, a list of words is recorded in order, saved with an appropriate file name, and used for use in a doll, or for use in a PC if the PC functions as a virtual doll. The process of creating a large number of wav files is simplified.

図12aに示すように、ファイルを生成するプロセスは、ボタン1212「ファイルの生成」により起動される。ユーザは、完了している適当なテーマを選択してボタン1212を押す。これにより、上述したようなファイルが生成される。その後、ファイルのバンドル全体が人形にアップロードされ、このバンドルは、テーマ及び付随するオペレーティングシステムのバイナリファイル、発話のためのサウンド(wav)ファイル及びプロセッサ動作コード(ファームウェア)を含む。   As shown in FIG. 12a, the process of creating a file is activated by a button 1212 “Create File”. The user selects an appropriate theme that has been completed and presses button 1212. Thereby, the file as described above is generated. The entire bundle of files is then uploaded to the doll, which includes the theme and accompanying operating system binary files, sound (wav) files for speech and processor operating code (firmware).

上述したように、youme_conversation_struct_tという会話構造の配列が会話の主な制御データである。概略的には、コントローラ人形において会話が操作される場合、最初の人形に関するこの配列のインデックス1により指定されたコンテキストにおいて会話エンジンが起動する。その後、以下の行動を行う。
1.現在のコンテキストのtransition手順を呼び出して、どの人形が次になるかを決定する。
2.現在のコンテキストのset手順を呼び出して、コンテキスト内で指定されたあらゆる属性の値を設定する。
3.現在のコンテキストのsay手順を呼び出して、コンテキスト内に指定されたデータに従ってどの文を発言すべきかを選択する。この結果、現在の人形がコントローラ人形でない場合、遠隔の人形との無線通信が行われる。いずれにせよ、エンジンは手順の前にオーディオ出力が完了するまで待機する。
4.コンテキストのbranch手順を呼び出して、次のインデックスを選択し、使用する会話配列に入れる。
5.前の人形ポインタ(prev)を現在の人形ポインタ(me)と同等に設定する。
6. 現在の人形ポインタ(me)を次の人形ポインタ(next)と同等に設定する。
次の人形ポインタは、ステップ1において設定済みである。
7.その後、新しいインデックス及び新しい人形で再びステップ1から開始し、ステップ4の1つにおいてFINISH分岐にぶつかるまでこのプロセスを継続する。
As described above, an array of conversation structure called volume_conversion_struct_t is the main control data of conversation. In general, when a conversation is operated on a controller doll, the conversation engine is started in the context specified by index 1 of this array for the first doll. Then, the following actions are taken.
1. Call the current context's transition procedure to determine which doll will be the next.
2. Call the current context's set procedure to set the value of any attribute specified in the context.
3. Call the current context's say procedure to select which sentence to speak according to the data specified in the context. As a result, if the current doll is not a controller doll, wireless communication with a remote doll is performed. In any case, the engine waits for audio output to complete before the procedure.
4. Call the context's branch procedure to select the next index and place it in the conversation array to use.
5. Set the previous doll pointer (prev) equal to the current doll pointer (me).
6. Set the current doll pointer (me) equal to the next doll pointer (next).
The next doll pointer has been set in step 1.
7. Then start again at step 1 with the new index and new doll, and continue this process until the FINISH branch is hit in one of steps 4.

図12dに示す代替の実施形態では、会話を入力する追加の方法を提供する。「インポートテーマ」ボタン1250は、ユーザがテーマ別会話を作成するためにテキストファイルをインポートできるようにする。テキストファイルをインポートには、ファイルを適切にフォーマットしなければならない。このインポートテーマ機能は、テキストファイルを人形にアップロードするのに適したフォーマットにユーザからのさらなる入力を伴わずに直接変換できるようにする。   In the alternative embodiment shown in FIG. 12d, an additional method of entering a conversation is provided. The “Import Theme” button 1250 allows the user to import a text file to create a thematic conversation. To import a text file, the file must be properly formatted. This import theme feature allows a text file to be converted directly into a format suitable for uploading to a doll without further input from the user.

テキストファイルのコンテンツは、テーマを構築するために必要なコンテンツの一部又は全てとすることができる。例えば、テキストファイルは、あらゆる話題に関する(好ましくは内蔵された)会話全体を含むことができる。次に、この会話全体をオーサリングツールにインポートして、人形を制御するのに適したフォーマットに変換する。テキストファイルは、見た目が(プレイなどのための)スクリプトと同様であり、人形名の後にこの人形が発言すべき単語が続く。オーサリングツールは、テキストファイル内を進み、人形名を抽出し、図13a及び図13bを参照しながら上述したようにこの名前の人形を作成し、その後対応するテキストをコンテキスト(コンテキストについては上記でより詳細に説明している)として記憶する。抽出手順中、オーサリングツールは、同じ人形名が以前にテキストファイルから抽出されたことがない場合にのみ新たな人形を作成する。この場合、対応するテキストがこの人形の別のコンテキストとして記憶される。この手順は、テキストファイル全体がオーサリングツール内に解析され終わるまで継続する。   The content of the text file can be part or all of the content necessary to build the theme. For example, a text file can contain an entire conversation (preferably built-in) on any topic. The entire conversation is then imported into the authoring tool and converted into a format suitable for controlling the doll. The text file looks similar to a script (for play, etc.), and the doll name is followed by the word that the doll should speak. The authoring tool proceeds through the text file, extracts the doll name, creates a doll with this name as described above with reference to FIGS. 13a and 13b, and then enters the corresponding text into the context (context above for context). As described in detail). During the extraction procedure, the authoring tool creates a new doll only if the same doll name has not been previously extracted from the text file. In this case, the corresponding text is stored as another context for this doll. This procedure continues until the entire text file has been parsed into the authoring tool.

図12eはテキストファイルをオーサリングツール内にインポートする処理のフロー図である。インポート手段が、人形名に関連するテキストの行を識別し、この名前の人形が存在しない場合、人形を作成する。次に、テキストがオーサリングツールデータベースにインポートされ、対応する人形のコンテキストに関連付けられる。この処理は、テキストの行が全てオーサリングツール内にインポートされるまで継続する。テキストファイルが解析されるようにするためには、これを正しくフォーマットしなければならず、この場合、人形名の後にコロンを続けなければならず、後続する人形のための個々の入力は新たな行に行わなければならない。付録Iには、以下のフォーマット要件を使用してフォーマットしたテキストファイルの例を示す。
・$Theme:
・この記述に続くテキストはテーマ名としてインポートされる。
・$Dolln:
・この記述に続くテキストはDollnと呼ばれる人形のための記述としてインポートされる。
FIG. 12e is a flowchart of a process for importing a text file into the authoring tool. The importing means identifies the line of text associated with the doll name and creates a doll if no doll with this name exists. The text is then imported into the authoring tool database and associated with the corresponding doll context. This process continues until all lines of text are imported into the authoring tool. In order for the text file to be parsed, it must be formatted correctly, in which case the doll name must be followed by a colon, and the individual input for subsequent dolls will be new. Must be done on line. Appendix I shows an example of a text file formatted using the following formatting requirements:
・ $ Theme:
• The text following this description is imported as the theme name.
・ $ Dolln:
The text following this description is imported as a description for a doll called Dolln.

上述したように、オーサリングツールは、テキストファイルを解析してしまうと出力命令を生成する。この実施形態では、テキストファイル会話エンジンが、確定的会話のみを作成できるようにする。しかしながら、後述するように、テキストファイルがオーサリングツール内にインポートされると、ユーザは、さらなる確率的結果を含めるように会話を修正することができる。   As described above, the authoring tool generates an output command when the text file is analyzed. In this embodiment, the text file conversation engine allows only deterministic conversations to be created. However, as described below, once the text file is imported into the authoring tool, the user can modify the conversation to include additional probabilistic results.

USB通信ドングル
さらなる実施形態では、PCが本明細書で説明するような玩具と無線で対話できるようにするUSB通信ドングルが提供される。図16は、PC304に取り付けられ、人形100と無線通信しているUSB通信ドングル1600の概略図である。ドングルは、無線モジュール104と、IR/RF送/受信機212と、インターフェイス1602とを含む。これらの構成要素は、インターフェイス1602を除き、上述したような人形100内に含まれるものと同じものである。しかしながら、PC304は、人形100が有するような独立したプロセッサを有するドングルの代わりにプロセッサ1604として利用され、従って事実上、PCが物理的人形100と通信できる仮想人形になる。仮想人形には、現実の人形と同様の外観を有することができる、PCのモニタに表示されるアニメ化したアバターが提供され、これによりアバターのアニメーションが人形の発話と同期化される。会話を実行するために、PCは、玩具のプロセッサをエミュレートするためのエミュレータをメモリ1606内に記憶している。或いは、上述したように、オーサリングツールがPCベースの仮想人形の特定のコードを出力する。いずれにせよ、テーマ別会話データを使用し、玩具/人形のファームウェアをエミュレートするPC上で実行されるアプリケーションを使用して会話が実行される。玩具/人形の発話は、PCのスピーカを介して出力される。
USB Communication Dongle In a further embodiment, a USB communication dongle is provided that allows a PC to interact wirelessly with a toy as described herein. FIG. 16 is a schematic diagram of a USB communication dongle 1600 attached to the PC 304 and wirelessly communicating with the doll 100. The dongle includes a wireless module 104, an IR / RF transmitter / receiver 212, and an interface 1602. These components are the same as those included in the doll 100 as described above, except for the interface 1602. However, the PC 304 is used as a processor 1604 instead of a dongle having an independent processor as the doll 100 has, thus effectively becoming a virtual doll that allows the PC to communicate with the physical doll 100. The virtual doll is provided with an animated avatar that can have an appearance similar to that of a real doll and displayed on a PC monitor, thereby synchronizing the avatar animation with the doll's utterance. To execute the conversation, the PC stores an emulator in memory 1606 for emulating a toy processor. Alternatively, as described above, the authoring tool outputs a specific code for the PC-based virtual doll. In any case, the conversation is performed using an application running on a PC that emulates toy / doll firmware using thematic conversation data. The toy / doll utterance is output via a PC speaker.

インターフェイス1602はUSB接続であり、無線通信ドングル1600をPC304に接続するための効率的な方法を提供する。ドングルが使用する無線通信プロトコルは、本明細書で説明するような人形間で使用されるものと同じものであり、すなわちIEEE802.15.4.である。   Interface 1602 is a USB connection and provides an efficient way to connect wireless communication dongle 1600 to PC 304. The wireless communication protocol used by the dongle is the same as that used between dolls as described herein, ie IEEE 802.15.4. It is.

ユーザは、ウェブサイトに接続すると、USB通信ドングルを使用して物理的人形とウェブサイト内でアニメ化された仮想人形との間の会話を容易化することができる。このようにして、1人のユーザが、複数の物理的人形を必要とせずに人形の会話エンジンの機能を使用することができる。また、仮想人形は、複数の物理的人形との会話に参加することができる。2人のユーザが各々USB通信ドングルを取り付けたラップトップコンピュータを有する場合、仮想人形が他の仮想人形と対話することもできる。   When connected to a website, a user can use a USB communication dongle to facilitate a conversation between a physical doll and a virtual doll animated within the website. In this way, a single user can use the functions of a doll conversation engine without the need for multiple physical dolls. The virtual doll can also participate in conversations with a plurality of physical dolls. If two users each have a laptop computer with a USB communication dongle attached, the virtual doll can also interact with other virtual dolls.

ゲームのプレイ
さらなる実施形態では、玩具が子供とゲームをプレイするようにもなっている。例えば、ヘビとはしご、ネズミ取り、ルード又はサイコロを使用してプレイすることができる他のあらゆる偶然に基づくゲームなどのボードゲームを玩具がプレイすることができる。
Game Play In a further embodiment, the toy also plays a game with the child. For example, a toy can play a board game, such as a snake and ladder, a mousetrap, any other accident-based game that can be played using a lude or dice.

玩具には、サイコロをシミュレートするために使用される乱数発生器が設けられる。さらに、玩具は、駒がボードに沿って進むことができるスペースの数を計数するようになっている。玩具は、駒を必要なスペースの数だけ移動させるように音で子供に合図する。子供が駒を移動させると、子供はボタンなどを押すことにより、次の玩具/子供の番であることを玩具に示す。或いは、ボードは対話型でもあり、プレイボードからカウンタの位置に関する情報を受信するセンサなどを含む。プレイは、勝者が出るまでこのように進行する。   The toy is provided with a random number generator that is used to simulate the dice. In addition, the toy counts the number of spaces that the piece can travel along the board. The toy signals the child with a sound to move the piece by the required number of spaces. When the child moves the piece, the child indicates to the toy that it is the next toy / children's turn by pressing a button or the like. Alternatively, the board is also interactive and includes a sensor that receives information about the position of the counter from the playboard. Play proceeds in this way until a winner is reached.

図5は、ゲームエンジン400をさらに含むコントローラ玩具200の概略図である。残りの構成要素は、図2及び図3で説明したものと同じである。ゲームエンジン400は、ボードメモリ402と、乱数発生器404と、位置RAM406と、確認応答受信機408とを含む。   FIG. 5 is a schematic diagram of a controller toy 200 further including a game engine 400. The remaining components are the same as those described in FIGS. The game engine 400 includes a board memory 402, a random number generator 404, a position RAM 406, and an acknowledgment receiver 408.

ボードメモリ402は、ヘビとはしご又はルードなどのボードゲームのレイアウトに関する情報を記憶する。乱数発生器は、サイコロをシミュレートするために使用され、数字1、2、3、4、5及び6(又は、ゲームに適した他のいずれかの数字セット)を生成するようになっている。位置RAMは、この場合はコントローラ及び3つのスレーブであるが、プレイヤの各々のボード上の位置に関する情報を記憶するために使用される。ボードメモリ及び仮想サイコロの転がりとともにこの情報を使用して、駒が移動するのに適した位置の数を計数し、駒が移動するスクウェアにはしごの底部又はヘビの頭部などの何らかの特別な関連性があるかどうかを識別する。   The board memory 402 stores information relating to the layout of a board game such as a snake, a ladder, or a roodo. A random number generator is used to simulate the dice and generate numbers 1, 2, 3, 4, 5 and 6 (or any other set of numbers suitable for the game) . The position RAM, in this case a controller and three slaves, is used to store information about the position of each player on the board. Use this information along with the rolling of the board memory and virtual dice to count the number of positions suitable for the piece to move, and any special associations such as the bottom of the ladder or the head of the snake to the square where the piece moves Identify if there is sex.

会話エンジン204は、ゲームエンジンから得られる情報を利用してスペースの数を計数し、例えば最初の位置がスクウェア13であり、仮想サイコロを転がして4が出た場合、人形が「4が出て、14、15、16、17と移動したよ」)とスピーカ210を介して発声する。この例では、スクウェア17がヘビの頭部とした場合、人形は「あらら、スクウェア6までヘビを滑り落ちてしまった」と発声するであろう。計数メカニズムは、テキストを適当な回数循環し、そこで位置RAM406内の最終位置を思い出す。従って、例えば仮想サイコロを転がして4が出た場合、数字のリストに4回アクセスして最終結果を出す。   The conversation engine 204 counts the number of spaces using information obtained from the game engine. For example, when the first position is the square 13 and the virtual dice rolls and 4 comes out, the doll is “4 out. , 14, 15, 16, and 17 "). In this example, if the square 17 is the snake's head, the doll will say, "Oh, I've slipped down the snake to the square 6." The counting mechanism circulates the text an appropriate number of times where it remembers the final position in the position RAM 406. Thus, for example, if the virtual dice is rolled and 4 is output, the final result is obtained by accessing the list of numbers four times.

また、人形は、子供が起動する外部乱数発生器から情報を受信することもできる。このようにして、子供が人形と一緒に遊ぶことができ、人形は、子供を含むプレイヤの駒の全ての経過を追っていつ勝者が出たかを判定することができる。   The doll can also receive information from an external random number generator activated by the child. In this way, the child can play with the doll, and the doll can determine when the winner has come out following all the progress of the player's pieces including the child.

図6は、ゲームをプレイするプロセスのフロー図である。ゲームはユーザにより開始され(ステップ500)、コントローラ人形がプレイヤの数を判定するためのチェックを行う(ステップ502)。次に、コントローラ人形が乱数発生器などを使用して最初のプレイヤを決める(ステップ504)。次に、コントローラ人形が最初のプレイヤのために仮想サイコロを転がし(ステップ506)、或いは子供が最初のプレイヤの場合には、コントローラ人形が子供にサイコロを転がすように求める。次に、コントローラ人形は、プレイヤにカウンタ/駒をボード上の対応するスクウェアの数だけ移動させるように指示し(ステップ508)、その後子供がカウンタを移動させたという確認応答を待つ(ステップ510)。ステップ512において、コントローラ人形は、子供にカウンタが移動したという確認応答を促すまで、2秒、3秒、5秒又は8秒などの所定の秒数待つ。コントローラ人形が確認応答を受信すると、プレイヤがゲームに勝ったかどうかを判定するためのチェックが行われる(ステップ514)。プレイヤがゲームに勝っていなかった場合、プレイは次のプレイヤへ進み(ステップ516)、プレイヤが勝つまで(ステップ518)ステップ506からプロセスが続く。   FIG. 6 is a flow diagram of a process for playing a game. The game is started by the user (step 500) and the controller doll performs a check to determine the number of players (step 502). Next, the controller doll determines the first player using a random number generator or the like (step 504). Next, the controller doll rolls the virtual dice for the first player (step 506), or if the child is the first player, the controller doll asks the child to roll the dice. The controller doll then instructs the player to move the counter / piece by the number of corresponding squares on the board (step 508) and then waits for an acknowledgment that the child has moved the counter (step 510). . In step 512, the controller doll waits for a predetermined number of seconds, such as 2, 3, 5, or 8 seconds until it prompts the child to acknowledge that the counter has moved. When the controller doll receives a confirmation response, a check is made to determine if the player has won the game (step 514). If the player has not won the game, play proceeds to the next player (step 516) and the process continues from step 506 until the player wins (step 518).

ゲームエンジンは、上述した方法であらゆるルールに基づくゲームをプレイするようになっている。   The game engine is adapted to play a game based on any rule by the method described above.

或いは、システムがC言語などの従来のプログラム言語を実行し、より複雑なアルゴリズムを実行してチェスなどのより複雑なゲームをプレイすることができる。上述したものと同じ言語を使用して会話を生成し、またこの言語がC言語プログラムから参照されるであろう。   Alternatively, the system can execute a conventional programming language such as C language and execute a more complicated algorithm to play a more complicated game such as chess. The conversation will be generated using the same language as described above, and this language will be referenced from the C language program.

このような玩具及び人形は子供に異なる対話の機会を与え、子供たちのプレイを向上させる。   Such toys and dolls give children different opportunities to interact and improve their play.

テーマの例
会話を構築する異なる方法の様々な例が存在する。例えば、動物園というテーマとペットというテーマなどのランダムに生成された会話、台本通りの(確定的)会話、ヘビとはしごなどをプレイできるようにするゲームをプレイするというテーマを有することができる。
Theme examples There are various examples of different ways to build a conversation. For example, it may have the theme of playing a game that allows you to play randomly generated conversations, such as a zoo theme and a pet theme, a scripted (deterministic) conversation, a snake, a ladder, and the like.

ユニットのプロセッサ102を、会話コンパイラ206、会話データベース208及びパラメータ記憶装置216などのその他のモジュールとともに使用してテーマ内のスクリプトを解釈する。例えば、変数が定義された場合、パラメータ記憶装置内でメモリが割り当てられる。会話が開始されるたびに、パラメータ記憶装置内で変数が割り当てられる。これによりテーマを変更すること、すなわち動物園からペットへの変更ができるようになり、また前の会話からの変数と衝突することなく適当なメモリリソースに新しい変数を割り当てできるようになる。さらに、PREV、NEXT及びMEなどのパラメータにもパラメータ記憶装置内のメモリが割り当てられる。これにより、SELECT文がスクリプト内のパラメータを参照できるようになる。   The unit's processor 102 is used in conjunction with other modules such as the conversation compiler 206, conversation database 208 and parameter store 216 to interpret scripts in the theme. For example, if a variable is defined, memory is allocated in the parameter store. Each time a conversation is started, a variable is assigned in the parameter store. This makes it possible to change the theme, ie change from zoo to pet, and assign new variables to appropriate memory resources without conflicting with variables from previous conversations. Further, the memory in the parameter storage device is allocated to parameters such as PREV, NEXT, and ME. As a result, the SELECT statement can refer to the parameters in the script.

SAY文を使用する場合、コントローラ人形は、無線モジュール及び送信機を使用して関連する人形へコマンドを送信するために上述の通信プロトコルを使用するか、或いはコントローラ人形が現在の発話者である場合にはコントローラ人形の関連するモジュールを利用するかのいずれかを行う。発話するために必要な人形内の発話コンパイラ206を利用して、発話データベース208内の適当なオーディオファイルにアクセスする。例えば、動物園というテーマ内のSAY文を含む最初の行は、「SAY(i think we’ve seen everything now,p03,lets go home)」である。この文は、会話データベース内のオーディオファイルへの3つの参照で構成される。これらの参照は、「i think we’ve seen everything now」、「p03」、及び「lets go home」である。これらはすべてオーディオファイルを参照するが、「p03」という参照は特定の長さの休止を意味する。この休止は、オーディオファイルに適当に間隔をあけるために使用される空白のオーディオファイルである。その後、会話コンパイラ206がスピーカ210を使用してオーディオファイルを再生する。   When using a SAY sentence, the controller doll uses the communication protocol described above to send commands to the associated doll using a wireless module and transmitter, or if the controller doll is the current speaker Either use the relevant module of the controller doll. An appropriate audio file in the utterance database 208 is accessed using the utterance compiler 206 in the doll required to speak. For example, the first line including a SAY sentence in the theme of zoo is “SAY (i think we've been having now, p03, let's go home)”. This sentence consists of three references to the audio file in the conversation database. These references are “i think we've been experiencing now”, “p03”, and “let's go home”. These all refer to audio files, but the reference “p03” means a certain length of pause. This pause is a blank audio file that is used to properly space the audio file. Thereafter, the conversation compiler 206 uses the speaker 210 to reproduce the audio file.

いずれの場合にも、プロセッサがコードを解釈し、適当なモジュールを利用して文を実行する。   In either case, the processor interprets the code and executes the statement using the appropriate module.

代替の実施形態では、本明細書で説明するように、プロセッサが内蔵インタプリタを使用せず、代わりに個々のテーマが、プロセッサが正しく機能できるようにする全てのプロセッサ制御命令を含むバイナリデータファイルで構成される。これにより、事実上必要なときにはいつでもプロセッサのファームウェアを新機能に更新できるようになる。以下で提供するテーマの例は、全てオーサリングツールを使用して生成することができる。しかしながら、玩具/人形を制御するための命令は、コンパイルされた「C」コードのバイナリファイルとなるであろう。   In an alternative embodiment, as described herein, the processor does not use a built-in interpreter, but instead individual themes are binary data files that contain all processor control instructions that allow the processor to function correctly. Composed. This allows the processor firmware to be updated with new functions whenever practically needed. The example themes provided below can all be generated using an authoring tool. However, the instructions for controlling the toy / doll will be a compiled “C” code binary file.

プロセッサ及び関連電子部品
図8は、図2及び図3に示す概略図の潜在的生産バージョンのための回路図及びパーツリストの概略を示しており、付録IIが図8内の構成要素について詳述する。図9は代替の回路図の概略を示しており、付録IIIが図9内の構成要素について詳述する。生産回路に含めることができる選択肢が存在し、これらについては後で説明する。
Processor and Associated Electronic Components FIG. 8 shows a schematic of the circuit diagram and parts list for the potential production version of the schematic shown in FIGS. 2 and 3, and Appendix II details the components in FIG. To do. FIG. 9 shows a schematic of an alternative circuit diagram, and Appendix III details the components in FIG. There are options that can be included in the production circuit, which will be described later.

回路は以下を含む。
・Jennic無線コントローラ
生産回路はJennicICを使用し、RF回路を含み、ファームウェアとデータとを組み合わせて単一の大型フラッシュメモリICにする。Jennic無線コントローラは、例えばZigbee無線通信プロトコルを使用して人形間で通信を行うことができる。
・充電器
生産回路は、USBポートから充電するように特別に設計された部品を使用し、充電中に回路に給電も行う。
・音声増幅器
生産回路上の音声増幅器はD級オーディオアンプである。このアンプは非常に効率がよい(〜80%)。
The circuit includes:
The Jennic wireless controller production circuit uses a Jenic IC, includes an RF circuit, and combines firmware and data into a single large flash memory IC. The Jennic wireless controller can communicate between dolls using, for example, the Zigbee wireless communication protocol.
• The charger production circuit uses components specially designed to charge from the USB port and also powers the circuit during charging.
The audio amplifier on the audio amplifier production circuit is a class D audio amplifier. This amplifier is very efficient (~ 80%).

技術的選択肢
このセクションでは、図8の生産回路に含まれていない考えられる選択肢について説明する。
・USBインターフェイス
FTDI FT245RQ
この構成要素は、主にUSBドライバソフトウェアを備えたすぐに使用できるICとして選ばれたものであり、開発労力を低減させる。主な欠点は、Jennic上のほとんどのDIOx線を使用するという点である。これは現行の設計には問題ないが、会話圧縮ICなどの他の選択肢にDIOx線が必要とされる場合、この部品は不適当なものとなる。
Technical Options This section describes possible options that are not included in the production circuit of FIG.
USB interface
FTDI FT245RQ
This component was chosen primarily as a ready-to-use IC with USB driver software, reducing development effort. The main drawback is that most DIOx lines on Jennic are used. This is fine for current designs, but if other options such as conversation compression ICs require DIOx lines, this part becomes unsuitable.

代替の実施形態
以下の両選択肢は、USB内蔵8ビットマイクロコントローラIC及びSPIスレーブインターフェイスである。これらはいずれもこれらを機能的にするために開発されたファームウェア及びソフトウェアドライバを有する必要があるが、両メーカは、このプロセスに役立てるためのリファレンス設計、利用上の注意などを提供している。これらの部品の利点は、JennicSPIインターフェイスとインターフェイス接続することができ、また1本のDIOx線しか必要とせずに他のDIOx線を他の用途のために解放する点である。
Alternative Embodiments Both of the following options are an USB built-in 8-bit microcontroller IC and an SPI slave interface. Both of these need to have firmware and software drivers developed to make them functional, but both manufacturers provide reference designs, usage notes, etc. to help with this process. The advantage of these components is that they can interface with the Jennic SPI interface and only require one DIOx line, freeing other DIOx lines for other applications.

玩具は、複雑なUSB要件を有しておらず、唯一の要件は、プログラムされるデータをフラッシュメモリにダウンロードすることである。装置は、メモリスティックなどのいかなる一般的な装置の機能にも対応する必要はない。これにより必要な開発労力が低減される。   Toys do not have complex USB requirements, the only requirement is to download the programmed data to flash memory. The device need not correspond to the function of any common device such as a memory stick. This reduces the required development effort.

以下で特定する部品は、単純な低出力埋込み型アプリケーションを対象とするとともにSPIスレーブインターフェイスを有するものとして選んだものである。しかしながら、メーカのグループ又は他社メーカから得られる装置も同様に適している可能性が十分にある。
Cypress CY7C63833−LFXC
Atmel AT90USB82−16MU
The components identified below were chosen for simple low-power embedded applications and having an SPI slave interface. However, it is quite possible that devices from a group of manufacturers or from other manufacturers are suitable as well.
Cypress CY7C63833-LFXC
Atmel AT90USB82-16MU

電池
リチウムイオン
図8及び図9に示す回路はリチウムイオン(Li+)電池を使用する。
3つの理由からLi+電池を選択した。
i)形状〜実証機のプロジェクトに便利であった平坦プリズム状パッケージの形で利用可能である。
ii)開発しやすさ〜Li+の充電要件は、特に充電器が追加の回路に同時に給電する必要がある場合に代替品よりも単純である。
iii)電力容量〜実証機起動時の控えめな電力要件の評価値が、利用可能な空間が狭くてもLi技術が十分な電力を与えることが示唆していた。
(後述を参照)。
代替の充電技術は、NiMH及びNiCadである。NiMHは、NiCad(Li+より複雑な)と同様の充電要件を有するが、Li+と同様の(より高い)出力密度(特定の物理体積に関しては保持電力が大きい)及び価格を有する。
battery
Lithium Ion The circuits shown in FIGS. 8 and 9 use lithium ion (Li +) batteries.
The Li + battery was selected for three reasons.
i) Shape-It can be used in the form of a flat prismatic package that was convenient for the demonstration project.
ii) Ease of development—Li + charging requirements are simpler than alternatives, especially when the charger needs to power additional circuits simultaneously.
iii) The evaluation value of the power capacity to the conservative power requirement at the start-up of the demonstration machine suggested that the Li technology provides sufficient power even if the available space is narrow.
(See below).
Alternative charging technologies are NiMH and NiCad. NiMH has similar charging requirements as NiCad (more complex than Li +), but has the same (higher) power density (larger holding power for a specific physical volume) and price than Li +.

NiCad/NiMH
このセクションでは、Li+と比較したNiCad/NiMH電池の特性について考察する。説明を簡潔にするために、以下のセクションではNiMHをNiCadと表記する。
NiCad / NiMH
In this section, the characteristics of NiCad / NiMH cells compared to Li + are considered. For simplicity, NiMH is denoted as NiCad in the following sections.

i)形状
通常、NiCad電池には単三及び単四などの標準サイズがあるが、他の形状も利用可能である。小型の構成要素を使用でき、2ピース及び/又はフレキシブル回路/コネクタなどのより複雑なPCBの製造コストが抑制事項にならないと考えられる生産環境では、標準サイズの電池の使用を可能にすることができる。
i) Shape NiCad batteries typically have standard sizes such as AA and AAA, but other shapes are also available. In production environments where small components can be used and the production costs of more complex PCBs such as two-piece and / or flexible circuits / connectors are not likely to be a constraining factor, allow the use of standard size batteries it can.

ii)開発しやすさ
新しいデータをダウンロードできるように、(USBポートから)電池を充電すると同時に(USBポートから)回路に電源を入れる必要がある(電池の充電と回路への給電とを同時に行うことはできない)。充電中に回路を電池から絶縁すること、或いは回路を接続したままにすることのいずれもが可能である。電池を絶縁するにはより複雑な回路を伴う。回路を接続したままにすることは、回路が制御している電池への通常の電流と、玩具の回路が受ける余分な電流との両方を充電器が見ることを意味する。
ii) Ease of development It is necessary to charge the battery (from the USB port) and simultaneously turn on the circuit (from the USB port) so that new data can be downloaded (charging the battery and powering the circuit simultaneously) It is not possible). It is possible to either insulate the circuit from the battery during charging or leave the circuit connected. Insulating batteries involves more complex circuitry. Leaving the circuit connected means that the charger sees both the normal current to the battery the circuit is controlling and the extra current that the toy circuit receives.

Li+充電器の場合、回路を接続したままにすることはそれほど重大な問題ではない。主な欠点は、Li+電池が完全に充電されると充電器の電源を切ることが一般的であるという点である。この機能は禁止する必要があり、そうでなければ玩具の回路も同様に電源が切れてしまう。この結果、電池の寿命が短縮される。   In the case of the Li + charger, leaving the circuit connected is not a significant problem. The main drawback is that it is common to turn off the charger when the Li + battery is fully charged. This function should be prohibited, otherwise the toy circuit will be turned off as well. As a result, the battery life is shortened.

NiCad充電器の場合、回路を接続したままにすることは極めて重大な問題である。NiCad電池のほうが、特に充電の終了頃に充電プロファイルが複雑になる。このプロファイルが正しく検出されない場合、電池が二度と完全充電されないか、或いは電池が過充電された結果、電池への損傷及び過大な温度上昇が発生する。充電器は、このプロファイルを検出する2つの方法のうちの1つを使用する。第1の方法は、電池により引き込まれる電流の変化によるものである。残念ながら、現在の回路により引き込まれる電流では、充電器を混乱させた結果、危険な状況を生じる可能性がある。第2の方法は、電池の温度の変化を検出することによるものである。しかしながら、電池の充電部品も通常の使用中に高温になる。この用途では、信頼できる結果が得られるほど十分に電池を熱的に絶縁することは困難であると考えられる。   In the case of NiCad chargers, leaving the circuit connected is a critical issue. The NiCad battery has a more complicated charging profile especially at the end of charging. If this profile is not detected correctly, the battery will never be fully charged or the battery will be overcharged, resulting in damage to the battery and excessive temperature rise. The charger uses one of two ways to detect this profile. The first method is by changing the current drawn by the battery. Unfortunately, the current drawn by the current circuit can create a dangerous situation as a result of disrupting the charger. The second method is by detecting changes in battery temperature. However, battery charging components also become hot during normal use. In this application, it may be difficult to thermally insulate the battery sufficiently to obtain reliable results.

電池を絶縁することは、図8の回路が採用する解決策である。充電器のICは、高性能の電力管理回路を組み込んで絶縁を行う。この統合電力管理は、既製品におけるNiCad技術には利用不可能である。従って、これは別個の構成要素又は特注のICにおいて実現されることになる。   Insulating the battery is the solution adopted by the circuit of FIG. The charger IC incorporates a high performance power management circuit to provide isolation. This integrated power management is not available for NiCad technology in off-the-shelf products. This will therefore be realized in a separate component or a custom IC.

iii)電力容量
このセクションでは、人形の電子部品に関する電源要件について説明する。このセクションで使用される電池寿命は、以下の電池容量に基づくものである。
・単四アルカリ=1150mAh @1.5V
・単四NiCad=300mAh @1.2V
・単四NiMH=750mAh @1.2V
・Li+プリズム状=620mAh@3.7V
注:Li+電池は、同じ定格の場合他の電池の2倍の電力を保持するが、その理由は電圧が2倍の大きさだからである。2つの単四電池を直列で使用する必要があり、或いは1つの単四を昇圧型コンバータと共に使用してその能力を半分とする。
iii) Power capacity This section describes the power requirements for the doll's electronic components. The battery life used in this section is based on the following battery capacities:
-AAA alkali = 1150mAh @ 1.5V
-AAA NiCad = 300mAh @ 1.2V
・ Single NiMH = 750mAh @ 1.2V
・ Li + prism shape = 620 mAh@3.7V
Note: Li + batteries retain twice the power of other batteries at the same rating because the voltage is twice as large. Either two AAA batteries need to be used in series, or one AAA can be used with a boost converter to halve its capacity.

図9に示す回路の電力評価
推定電力消費量=発話時136mA、その他の場合48mA。これは、以下で構成される。
・Jennicモジュール=48mA
・音声ドライバ
250mW最大8オームスピーカ出力=175mA、ただし、各々の人形が時間の半分ずつ発話する2つの人形間の会話において=>88mA
注:スピーカが時間全体にわたって最大電力で駆動されることはありそうにないが、オーディオアンプは100%効率ではないので、88mAが合理的な妥協点である。
・残りの回路=無視できる
The power evaluation estimated power consumption of the circuit shown in FIG. 9 = 136 mA during speech, and 48 mA in other cases. This consists of:
・ Jenic module = 48mA
Voice driver 250 mW max 8 ohm speaker output = 175 mA, but in a conversation between two dolls where each doll speaks half of the time => 88 mA
Note: Although it is unlikely that the speaker will be driven at maximum power over time, the audio amplifier is not 100% efficient, so 88 mA is a reasonable compromise.
・ Remaining circuit = negligible

実証機の評価に基づく電池寿命。

Figure 2014028284
実証機にとっては、単一のプリズム状Li+による解決策が当然の選択であった。 Battery life based on evaluation of demonstration machines.
Figure 2014028284
For the demonstrator, the solution with a single prismatic Li + was a natural choice.

図8に示す回路の電力要件。
全体的な電力消費量の中で音声電力が最も重要な因子であるため、より正確な値を得ることが重要である。最良の方法は直接測定であるが、これは音声パフォーマンスが一旦終了したときに限り可能である。
Power requirements for the circuit shown in FIG.
Since voice power is the most important factor in the overall power consumption, it is important to obtain a more accurate value. The best method is direct measurement, but this is only possible once the voice performance has ended.

しかしながら、音声電力が推定値ほど大きくないであろうことを示唆するいくつかの要素が存在する。
・発話の特性により、波形の平均電力はピーク振幅をかなり下回るものとなる。例えば、発話は多くの休止を含む。従って、回路が最大平均出力レベルを下回るレベルで駆動する可能性がある。
・生産回路で使用されるD級アンプは、図9に示す回路のものよりもはるかに良好な効率を有し、この結果大幅な節電となる。
However, there are several factors that suggest that voice power will not be as great as the estimate.
• Depending on the utterance characteristics, the average power of the waveform is well below the peak amplitude. For example, an utterance includes many pauses. Therefore, there is a possibility that the circuit is driven at a level below the maximum average output level.
Class D amplifiers used in production circuits have much better efficiency than that of the circuit shown in FIG. 9, resulting in significant power savings.

実証用の会話のさらに詳細な計算及び分析により、平均音声電力は会話中10mAにすぎず、従って2つの人形間の会話に関しては5mAという平均値になることが示唆されている。これにより、発話時に合計53mAで非発話時に48mAをもたらすJennic電力が優勢となる。
注:この音声電力レベルは、音楽ではなく発話音声に関するものである。
音声電力の改良評価に基づく電池寿命

Figure 2014028284
A more detailed calculation and analysis of the demonstration conversation suggests that the average voice power is only 10 mA during the conversation, and thus an average value of 5 mA for the conversation between the two dolls. This predominates Jennic power, which provides a total of 53 mA when speaking and 48 mA when not speaking.
Note: This voice power level is for speech, not music.
Battery life based on improved evaluation of voice power
Figure 2014028284

Jennicの電力消費量を削減する方法が存在する。現在、Jennicは常にオンであり、絶えずメッセージを探っている。ファームウェア及び人形が互いに通信する方法の変更により、絶えず探っている必要があるのは(最初に電源が入れられる)1つの人形のみとなる。他の人形は、発話する必要がある場合には定期的に第1の人形に確認することができ、この短時間の間のみ給電される必要がある。残りの時間は、Jennicは低電力スリープモードに入ることができる。10%の負荷サイクルが達成可能な場合、これにより非発話時に10倍の電力消費量が削減される。発話時にはJennicに給電する必要があるが、メッセージを探る必要がないので、RF部は非給電状態にすることができる。これによりJennicの電力消費量が4倍削減される。従って、全体的な電流消費量を発話時には14mAに、非発話時には4mAに低減させることが可能となる。   There are ways to reduce Jenic's power consumption. Currently, Jennic is always on and constantly searching for messages. Due to changes in the way firmware and dolls communicate with each other, only one doll (which is initially turned on) needs to be constantly searching. Other dolls can periodically check with the first doll when it needs to speak, and need only be powered for this short period. For the remaining time, Jennic can enter a low power sleep mode. If a 10% duty cycle is achievable, this reduces power consumption by a factor of 10 when not speaking. Although it is necessary to supply power to Jenic when speaking, there is no need to search for a message, so the RF unit can be in a non-powered state. This reduces Jennic's power consumption by a factor of four. Therefore, the overall current consumption can be reduced to 14 mA when speaking and to 4 mA when not speaking.

ほとんどの人形がこの低減された電力要件を有するようになるが、(最初に電源を入れられる)1つの人形にはこの節電が行われないことになる。人形の起動方法の変更により、これも同様に低減させることが可能になると思われる。どのようなことが実現可能であるかを判定するためにはさらなる調査が必要である。   Most dolls will have this reduced power requirement, but one doll (which is powered on first) will not have this power saving. It seems that this can be reduced as well by changing the puppet activation method. Further investigation is needed to determine what is feasible.

低減されたJennicの電力要件に基づく電池寿命

Figure 2014028284
これらの電力要件を実現できる場合、2本の単四標準、NiCad又はNiMH電池が使用可能になる。 Battery life based on reduced Jennic power requirements
Figure 2014028284
If these power requirements can be achieved, two AAA standards, NiCad or NiMH batteries can be used.

自動電源オフ機能
人形の電子部品の現在の仕様では、オン/オフスイッチが回路の作動を制御する。他の玩具とは異なり、人形は、アクティブな人形のいずれか1体のボタンが押されるのを待って受動的に座っているので、いつ人形のスイッチがオンになるかは明らかでない。これは、人形の電源をオフにするのを忘れる可能性が高いことを意味する。このため、(翌日などの)次回人形で遊ぶときには電池が切れてしまっている結果となる。
In the current specification of electronic parts for automatic power off function dolls, an on / off switch controls the operation of the circuit. Unlike other toys, the doll sits passively waiting for any one button on the active doll to be pressed, so it is not clear when the doll is switched on. This means that you are more likely to forget to turn off the doll. This results in the battery running out the next time you play with the doll (such as the next day).

回路がひとりでに『スタンバイ』モードに切り替わり、電流をほとんど引き出さないようにすることは可能であるが、これは現在の機能仕様には含まれていない。電子部品がいつこのスタンバイモードに入るか及びどのようにして再起動するかは、人形の全体的な挙動及びパフォーマンスに密接な関係がある。   Although it is possible for a circuit to switch to "standby" mode by itself and draw little current, this is not part of the current functional specification. When an electronic component enters this standby mode and how it restarts is closely related to the overall behavior and performance of the doll.

発話の圧縮
発話の圧縮により、同じメモリ量により多くの音声データを記憶できるようになる。現在の設計には発話圧縮技術は含まれていない。現在の設計では、結果として64kbps(ビット/秒)のデータ転送速度をもたらす8ビット8kHzの音声データが使用され、約1000秒(17分)の音声データを記憶できるようにする64Mbit直列フラッシュメモリが使用されている。会話の圧縮を使用して、このデータ転送速度を2kbpsと8kbpsとの間に下げることができるが、圧縮率を高くするほど音声品質は低くなる。つまり、8kbpsの場合、4Mbitフラッシュメモリは約500秒(8 1/2分)の音声データを保持することができる。
Speech compression Speech compression allows more audio data to be stored in the same amount of memory. The current design does not include speech compression technology. The current design uses 8 bit 8 kHz audio data resulting in a data rate of 64 kbps (bits / second), and a 64 Mbit serial flash memory that allows about 1000 seconds (17 minutes) of audio data to be stored. It is used. Conversation compression can be used to reduce this data rate between 2 kbps and 8 kbps, but the higher the compression ratio, the lower the voice quality. That is, in the case of 8 kbps, the 4 Mbit flash memory can hold the audio data for about 500 seconds (8 1/2 minutes).

圧縮音声データは、再生時に解凍を必要とする。これは、ソフトウェア又は専用ハードウェア内で行うことができる。2、3の選択肢を以下に示す。   The compressed audio data needs to be decompressed during reproduction. This can be done in software or dedicated hardware. A few options are shown below.

Jennicコントローラ上でのソフトウェア解凍
この選択肢は幅広く調査されていない。まず、適当な圧縮/解凍アルゴリズムのソースコードを発見し、このアルゴリズムをJennicコントローラに移植できるようにする必要がある。次に、このアルゴリズムが必要とし、Jennicコントローラ上で利用可能な処理電力の分析を行う必要がある。
Software decompression on Jennic controllers This option has not been extensively investigated. First, it is necessary to find the source code of an appropriate compression / decompression algorithm so that this algorithm can be ported to the Jennic controller. Next, the processing power required by this algorithm and available on the Jennic controller needs to be analyzed.

Sensory社の音声合成IC
Sensory社は、マイクロコントローラのファミリを2つ有する。SC−6xファミリは、事前プログラムされたSC−691スレーブシンセサイザを有する。これは、Jennicとインターフェイス接続するのに9本のDIOx線を必要とする4ビットMCUインターフェイスを有し、32オームのスピーカを直接駆動させることができる。新しい方のRSC46xファミリは、事前プログラムされたスレーブシンセサイザを有していないので、カスタムファームウェアを開発することが必要となる。Jennicとは4ビット、又は8ビットMCUインターフェイス(9本又は15本のDOIx線)でインターフェイス接続するようになるであろう。しかしながら、こちらのほうがプロセッサは強力であり(音声認識アルゴリズムを処理することができる)、8オームのスピーカを直接駆動させることができる。Jennicは両方に対応する十分なDIOx線を有していないので、これらの部品のどちらもUSB FT245チップと共に使用することができない。スレーブSPI USBチップが必要となる(USBのセクションを参照)。
Sensory synthesis IC from Sensory
Sensory has two families of microcontrollers. The SC-6x family has a preprogrammed SC-691 slave synthesizer. It has a 4-bit MCU interface that requires nine DIOx lines to interface with Jennic and can directly drive a 32 ohm speaker. The newer RSC46x family does not have a preprogrammed slave synthesizer, so it is necessary to develop custom firmware. Jenic will interface with a 4-bit or 8-bit MCU interface (9 or 15 DOIx lines). However, here the processor is more powerful (can handle speech recognition algorithms) and can directly drive an 8 ohm speaker. Neither of these components can be used with the USB FT245 chip because Jenic does not have enough DIOx lines to accommodate both. A slave SPI USB chip is required (see USB section).

かなりの処理電力を有するRSC−4xなどの音声合成マイクロコントローラを使用することは、代替のシステム構築の可能性を示唆する。メイン人形アルゴリズムを実行させるとともにスレーブマイクロプロセッサとして合成マイクロコントローラを使用して音声を単純に解凍するJennic無線マイクロコントローラの代わりに、合成マイクロコントローラがメイン人形アルゴリズムを実行するとともに無線通信のためにスレーブコプロセッサとして無線マイクロコントローラを使用することができる。さらなる詳細については無線マイクロコントローラのセクションを参照されたい。   Using a speech synthesis microcontroller such as RSC-4x with significant processing power suggests the possibility of building an alternative system. Instead of a Jennic wireless microcontroller that runs the main doll algorithm and simply decompresses the speech using a synthesis microcontroller as a slave microprocessor, the synthesis microcontroller executes the main doll algorithm and performs slave communication for wireless communication. A wireless microcontroller can be used as the processor. See the wireless microcontroller section for more details.

無線マイクロコントローラ
現在の設計は、2.4GHzIEEE802.15.4パーソナルエリアネットワーク通信規格に基づくものである。全ての低レベルRF通信に対応するために必要なRFハードウェア及びファームウェアを含む無線マイクロコントローラ製品が存在する。通信内のデータのみは、人形アプリケーションにより定義する必要がある。現在の設計は、Jennic無線マイクロコントローラを選択している。
Wireless microcontroller The current design is based on the 2.4 GHz IEEE 802.15.4 personal area network communication standard. There are wireless microcontroller products that contain the RF hardware and firmware necessary to support all low-level RF communications. Only the data in the communication needs to be defined by the doll application. The current design has selected a Jennic wireless microcontroller.

IEEE802.15.4製品は低レベルRF通信に対応するが、人形アプリケーションには良好に適合しない一面がある。IEEE 802.15.4はノードの階層構造に基づくものであり、多くの機能低減装置が全機能搭載装置と通信する。人形アプリケーションはピアツーピア構造を有し、全ての装置が同じものである。   Although the IEEE 802.15.4 product supports low-level RF communication, there are aspects that are not well suited for doll applications. IEEE 802.15.4 is based on the hierarchical structure of nodes, and many function reduction devices communicate with all function-equipped devices. The doll application has a peer-to-peer structure and all devices are the same.

同じ2.4GHz又は異なるISM周波数帯で機能する他のRFトランシーバ製品が利用可能である。これらは必要なRFハードウェアを全て含むが、特定の低レベルプロトコルを強いるものではない。これらのトランシーバICは、汎用マイクロコントローラ又はRSC4倍速音声シンセサイザーなどの専用マイクロコントローラのスレーブとして機能する。これらの部品を使用して、専用のピアツーピア通信プロトコルを開発することができる。   Other RF transceiver products are available that function in the same 2.4 GHz or different ISM frequency bands. These include all the necessary RF hardware, but do not impose a specific low level protocol. These transceiver ICs function as slaves to a dedicated microcontroller such as a general-purpose microcontroller or an RSC quad-speed audio synthesizer. These components can be used to develop dedicated peer-to-peer communication protocols.

RFトランシーバの例には、Tl CC2500及びAtmel ATA542Xファミリがある。これらの部品は、JennicICよりも低い電力消費量及び単位原価を実現する可能性がある。 Examples of RF transceivers include the Tl CC2500 and Atmel ATA542X families . These parts may realize lower power consumption and unit cost than Jennic IC.

言うまでもなく、本発明は、単なる例示として説明した上記実施形態の詳細に限定されることを意図されたものではなく、本発明の範囲内において詳細の修正を行うことができることを理解されたい。   Of course, it is to be understood that the present invention is not intended to be limited to the details of the above-described embodiments described by way of example only, and that modifications of detail can be made within the scope of the invention.

説明及び(必要に応じて)特許請求の範囲並びに図面において開示した個々の特徴は、単独で又はあらゆる適当な組み合せで提供することができる。   The individual features disclosed in the description and (where appropriate) the claims and drawings may be provided alone or in any appropriate combination.

付録I〜オーサリングツール内にインポートするためのフォーマットしたテキストファイルの例

Figure 2014028284
Appendix I-Example of a formatted text file for importing into the authoring tool
Figure 2014028284

付録II〜図8に関する部品の詳細

Figure 2014028284

Figure 2014028284

Figure 2014028284
Details of parts related to Appendix II to Figure 8
Figure 2014028284

Figure 2014028284

Figure 2014028284

付録III〜図9に関する部品の詳細

Figure 2014028284

Figure 2014028284

Figure 2014028284
Details of parts related to Appendix III to Figure 9
Figure 2014028284

Figure 2014028284

Figure 2014028284

以上の説明に関して更に以下の項を開示する。  The following items are further disclosed with respect to the above description.
(1)(1)
少なくとも1つの他の同じような玩具と対話するようにされた玩具であって、  A toy adapted to interact with at least one other similar toy,
プロセッサと、  A processor;
前記プロセッサに結合されたメモリと、  A memory coupled to the processor;
を備え、前記プロセッサが、  The processor comprises:
行うべき行動を表す出力信号を生成する手段と、    Means for generating an output signal representing the action to be taken;
少なくとも1つの他のこのような玩具における受信のための、前記玩具が自身の行動を終える前に前記少なくとも1つの他のこのような玩具が行動を起こすようにするためのトリガ信号を生成する手段と、    Means for generating a trigger signal for reception at at least one other such toy so that said at least one other such toy takes action before said toy has finished its action When,
を備える、  Comprising
ことを特徴とする玩具。A toy characterized by that.

(2)(2)
前記トリガ信号が、前記玩具が自身の行動を開始した後に所定の時間間隔で生成される、  The trigger signal is generated at a predetermined time interval after the toy starts its action.
ことを特徴とする項(1)に記載の玩具。The toy according to item (1), wherein:

(3)(3)
前記トリガ信号が、前記玩具が自身の行動を終える前に所定の時間間隔で生成される、ことを特徴とする項(1)又は項(2)に記載の玩具。  The toy according to item (1) or item (2), wherein the trigger signal is generated at a predetermined time interval before the toy finishes its action.

(4)(4)
ユーザが前記所定の時間間隔の目安を入力できるようにする入力部をさらに備える、  An input unit that allows a user to input a measure of the predetermined time interval;
ことを特徴とする項(2)又は項(3)に記載の玩具。The toy according to item (2) or item (3), wherein

(5)(5)
所定の時間間隔が、1秒未満、又は1/2秒未満、又は1/4秒未満であり、実質的に0秒であることがより好ましい、  More preferably, the predetermined time interval is less than 1 second, or less than 1/2 second, or less than 1/4 second, and is substantially 0 second.
ことを特徴とする項(2)、項(3)又は項(4)に記載の玩具。The toy according to item (2), item (3), or item (4), wherein

(6)(6)
前記行動が、音を発すること、光を発すること、及び動きのうちの少なくとも1つである、  The action is at least one of emitting sound, emitting light, and movement;
ことを特徴とする項(1)から項(5)のいずれかに記載の玩具。The toy according to any one of items (1) to (5), characterized in that:

(7)(7)
前記少なくとも1つの他のこのような玩具と無線で通信するようにされた無線通信モジュールをさらに備える、  A wireless communication module adapted to wirelessly communicate with the at least one other such toy;
ことを特徴とする項(1)から項(5)のいずれかに記載の玩具。The toy according to any one of items (1) to (5), characterized in that:

(8)(8)
前記無線通信モジュールが、トリガ信号、対話に関する情報、及び玩具に関する情報のうちの少なくとも1つを送信する、  The wireless communication module transmits at least one of a trigger signal, information about interaction, and information about toys;
ことを特徴とする項(7)に記載の玩具。The toy according to item (7), wherein

(9)(9)
前記対話に関する情報が、玩具が出力する行動、行動の持続時間、及び少なくとも1つの他の玩具がとるべき行動のうちの少なくとも1つを含む、  The information regarding the dialogue includes at least one of an action output by the toy, a duration of the action, and an action to be taken by at least one other toy.
ことを特徴とする項(8)に記載の玩具。The toy according to item (8), wherein

(10)(10)
前記メモリが、所定の対話を記憶するようになっている、  The memory is adapted to store predetermined interactions;
ことを特徴とする項(1)から項(9)のいずれかに記載の玩具。The toy according to any one of items (1) to (9), characterized in that:

(11)(11)
前記プロセッサは、前記対話を疑似ランダムに決定するようになっている、  The processor is adapted to determine the interaction pseudo-randomly;
ことを特徴とする項(1)から項(10)のいずれかに記載の玩具。The toy according to any one of items (1) to (10), characterized in that:

(12)(12)
前記玩具が、生きているかのように対話するようになっている、  The toys are designed to interact as if they were alive,
ことを特徴とする項(1)から項(11)のいずれかに記載の玩具。The toy according to any one of items (1) to (11), characterized in that:

(13)(13)
前記対話が、会話、音声対話、対人対話、教育的対話、演奏、及びゲームプレイのうちの少なくとも1つである、  The dialogue is at least one of conversation, voice dialogue, interpersonal dialogue, educational dialogue, performance, and game play;
ことを特徴とする項(1)から項(12)のいずれかに記載の玩具。The toy according to any one of items (1) to (12), characterized in that:

(14)(14)
前記玩具が、このような玩具のグループ内のメンバーとして対話するようになっている、  The toy is adapted to interact as a member in a group of such toys,
ことを特徴とする項(13)に記載の玩具。The toy according to item (13), wherein

(15)(15)
前記グループが、音楽バンド、車のグループ、又は軍事資産のグループのうちの1つを表す、  The group represents one of a music band, a group of cars, or a group of military assets;
ことを特徴とする項(14)に記載の玩具。The toy according to item (14), wherein

(16)(16)
前記トリガ信号を使用してグループの行動を同期させる、  Using the trigger signal to synchronize group actions;
ことを特徴とする項(14)又は項(15)に記載の玩具。The toy according to item (14) or item (15), wherein:

(17)(17)
別のこのような玩具からトリガ信号を受け取る手段をさらに備え、前記トリガ信号を使用して行動を開始する時点を決定する、  Further comprising means for receiving a trigger signal from another such toy, wherein the trigger signal is used to determine when to initiate an action;
ことを特徴とする項(1)から項(16)のいずれかに記載の玩具。The toy according to any one of items (1) to (16), characterized in that:

(18)(18)
前記玩具が、人形、ゲームボード、乗り物、及び軍事資産のうちの1つである、  The toy is one of a doll, a game board, a vehicle, and a military asset;
ことを特徴とする項(1)から項(17)のいずれかに記載の玩具。The toy according to any one of items (1) to (17), characterized in that:

(19)(19)
少なくとも1つの他の同じような玩具と対話するようにされた玩具で使用するためのコンピュータ可読メモリであって、  A computer readable memory for use with a toy adapted to interact with at least one other similar toy,
行うべき行動を表す出力信号を生成するためのコードと、  Code to generate an output signal representing the action to be taken,
少なくとも1つの他のこのような玩具において受信して、前記玩具が自身の行動を終える前に前記少なくとも1つの他のこのような玩具が行動を起こすようにするためのトリガ信号を生成するためのコードと、  For receiving at at least one other such toy and generating a trigger signal to cause the at least one other such toy to take action before the toy has finished its action. Code,
を含むことを特徴とするコンピュータ可読メモリ。A computer readable memory comprising:

(20)(20)
前記メモリが、前記玩具が自身の行動を開始した後に所定の時間間隔で前記トリガ信号を生成するためのコードをさらに含む、  The memory further includes code for generating the trigger signal at a predetermined time interval after the toy starts its action.
ことを特徴とする項(19)に記載のコンピュータ可読メモリ。The computer-readable memory according to Item (19), wherein

(21)(21)
前記メモリが、前記玩具が自身の行動を終える前に所定の時間間隔で前記トリガ信号を生成するためのコードをさらに含む、  The memory further includes code for generating the trigger signal at predetermined time intervals before the toy finishes its action.
ことを特徴とする項(19)又は項(20)に記載のコンピュータ可読メモリ。Item (19) or Item (20) characterized in that the computer-readable memory.

(22)(22)
前記メモリが、ユーザが前記所定の時間間隔の目安を入力できるようにするためのコードをさらに含む、  The memory further includes code for allowing a user to enter a measure of the predetermined time interval;
ことを特徴とする項(20)又は項(21)に記載のコンピュータ可読メモリ。Item (20) or Item (21) characterized in that the computer-readable memory.

(23)(23)
前記所定の時間間隔が、1秒未満、又は1/2秒未満、又は1/4秒未満であり、実質的に0秒である、  The predetermined time interval is less than 1 second, or less than 1/2 second, or less than 1/4 second, and is substantially 0 second;
ことを特徴とする項(20)、項(21)又は項(22)に記載のコンピュータ可読メモリ。The computer-readable memory according to Item (20), Item (21), or Item (22).

(24)(24)
前記行動が、音を発すること、光を発すること、及び動きのうちの少なくとも1つである、  The action is at least one of emitting sound, emitting light, and movement;
ことを特徴とする項(19)から項(23)のいずれかに記載のコンピュータ可読メモリ。Item 14. The computer-readable memory according to any one of items (19) to (23).

(25)(25)
玩具のテーマ別データを作成するためのオーサリングツールであって、  An authoring tool for creating toy theme data,
特定のテーマに関するコンテンツを受信する手段と、  A means of receiving content on a particular theme;
前記コンテンツを処理して、前記特定のテーマ内の前記玩具を動作させる命令セットを生成する手段と、  Means for processing the content to generate a set of instructions for operating the toy within the particular theme;
前記命令セットを出力する手段と、  Means for outputting the instruction set;
を含むことを特徴とするオーサリングツール。An authoring tool characterized by including:

(26)(26)
前記受信手段が、前記特定のテーマに関するスクリプトデータと、前記玩具の性格を定義する表現データとの両方を別個に含むコンテンツを受信するようにされた、  The receiving means is configured to receive content that separately includes both script data relating to the specific theme and expression data defining the character of the toy;
ことを特徴とする項(25)に記載のオーサリングツール。The authoring tool according to item (25), characterized in that:

(27)(27)
前記受信手段が、コンテンツを別の部分の形で受信するようにされた、  The receiving means is adapted to receive the content in the form of another part;
ことを特徴とする項(26)に記載のオーサリングツール。The authoring tool according to item (26), wherein:

(28)(28)
個々の表現データ部分に一意のID番号を割り当てる手段をさらに含む、  Further comprising means for assigning a unique ID number to each representation data portion;
ことを特徴とする項(27)に記載のオーサリングツール。The authoring tool according to item (27), wherein:

(29)(29)
前記処理手段が、前記命令セット内の前記表現データ部分への参照として前記一意のID番号を利用するようにされた、  The processing means uses the unique ID number as a reference to the representation data portion in the instruction set;
ことを特徴とする項(28)に記載のオーサリングツール。The authoring tool according to item (28), wherein:

(30)(30)
前記受信手段が、テーマ全体又はテーマの本質的部分を含むコンテンツを1つの動作で受信するようにされた、  The receiving means is configured to receive content including the entire theme or an essential part of the theme in one operation;
ことを特徴とする項(25)から項(29)のいずれかに記載のオーサリングツール。The authoring tool according to any one of Items (25) to (29), characterized in that:

(31)(31)
前記コンテンツがフォーマット済みファイルの形である、  The content is in the form of a formatted file;
ことを特徴とする項(30)に記載のオーサリングツール。The authoring tool according to item (30), wherein:

(32)(32)
前記フォーマット済みファイルがテキストファイルである、  The formatted file is a text file;
ことを特徴とする項(31)に記載のオーサリングツール。The authoring tool according to item (31), wherein:

(33)(33)
前記処理手段が、前記フォーマット済みファイルのコンテンツのみを使用して前記命令セットを生成する、  The processing means generates the instruction set using only the contents of the formatted file;
ことを特徴とする項(31)又は項(32)に記載のオーサリングツール。The authoring tool according to item (31) or item (32), wherein

(34)(34)
前記表現データが、テーマ名、前記玩具の名前、及び前記玩具が対話するために使用する文のうちの少なくとも1つを含む、  The representation data includes at least one of a theme name, a name of the toy, and a sentence used by the toy to interact;
ことを特徴とする項(25)から項(33)のいずれかに記載のオーサリングツール。The authoring tool according to any one of Items (25) to (33), characterized in that:

(35)(35)
前記スクリプトデータが、前記テーマ内で対話できる玩具の数、対話方法、テーマ関連パラメータ、及び玩具関連パラメータのうちの少なくとも1つを含む、  The script data includes at least one of the number of toys that can interact within the theme, the interaction method, theme related parameters, and toy related parameters;
ことを特徴とする項(25)から項(34)のいずれかに記載のオーサリングツール。The authoring tool according to any one of Items (25) to (34), characterized in that:

(36)(36)
前記玩具関連パラメータが、次の対話する玩具を選択するための予め定めたルールに関する情報を含む、  The toy related parameters include information regarding a predetermined rule for selecting a next toy to interact with;
ことを特徴とする項(35)に記載のオーサリングツール。The authoring tool according to item (35), wherein:

(37)(37)
前記対話方法がタイミング関連パラメータを含む、  The interaction method includes timing related parameters;
ことを特徴とする項(36)に記載のオーサリングツール。The authoring tool according to item (36), wherein:

(38)(38)
前記タイミング関連パラメータが、次の玩具がいつ対話を行うかを決定する  The timing related parameters determine when the next toy interacts
ことを特徴とする項(37)に記載のオーサリングツール。The authoring tool according to Item (37), characterized in that:

(39)(39)
前記タイミング関連パラメータが、前記現在の玩具の対話の開始から前記次の玩具の対話の開始までの時間遅延、及び前記次の玩具の対話の開始から前記現在の玩具の対話の終了前までの時間遅延の一方を含む、  The timing related parameters are a time delay from the start of the current toy interaction to the start of the next toy interaction, and a time from the start of the next toy interaction to the end of the current toy interaction; Including one of the delays,
ことを特徴とする項(38)に記載のオーサリングツール。The authoring tool according to item (38), characterized in that:

(40)(40)
ゲームに関するコンテンツを受信する手段をさらに含む、  Further comprising means for receiving content relating to the game,
ことを特徴とする項(25)から項(39)のいずれかに記載のオーサリングツール。The authoring tool according to any one of Items (25) to (39), wherein:

(41)(41)
前記ゲームに関するコンテンツが、ゲームを実行できるようにするロジックを含む、  The content relating to the game includes logic that enables the game to run;
ことを特徴とする項(40)に記載のオーサリングツール。The authoring tool according to item (40), wherein:

(42)(42)
特定のテーマに関する前記スクリプトデータと表現データとを配列の形でともに記憶する手段をさらに含む、  Means for storing the script data and the expression data relating to a specific theme together in the form of an array;
ことを特徴とする項(25)から項(41)のいずれかに記載のオーサリングツール。The authoring tool according to any one of Items (25) to (41), characterized in that:

(43)(43)
前記処理手段が、前記配列から前記命令セットを生成するようにされた、  The processing means is adapted to generate the instruction set from the array;
ことを特徴とする項(42)に記載のオーサリングツール。The authoring tool according to item (42), characterized in that:

(44)(44)
前記処理手段が、前記表現データの少なくとも一部を含む少なくとも1つのリストをコンパイルする手段を含む、  The processing means includes means for compiling at least one list including at least a portion of the representation data;
ことを特徴とする項(25)から項(43)のいずれかに記載のオーサリングツール。The authoring tool according to any one of Items (25) to (43), characterized in that:

(45)(45)
前記リストコンパイル手段が、前記特定のテーマにおける個々の玩具ごとにそれぞれのリストをコンパイルするようにされた、  The list compiling means is adapted to compile each list for each individual toy in the specific theme;
ことを特徴とする項(44)に記載のオーサリングツール。The authoring tool according to item (44), characterized in that:

(46)(46)
前記表現データがシンボルデータである、  The expression data is symbol data;
ことを特徴とする項(25)から項(45)のいずれかに記載のオーサリングツール。The authoring tool according to any one of Items (25) to (45), characterized in that:

(47)(47)
前記シンボルデータの上演データバージョンを記録する記録手段をさらに含む、  Recording means for recording a performance data version of the symbol data;
ことを特徴とする項(46)に記載のオーサリングツール。The authoring tool according to item (46), characterized in that:

(48)(48)
関係者に、上演データの必要な部分を生成するように促す手段をさらに含む、  Further comprising means to prompt the interested parties to generate the necessary part of the performance data;
ことを特徴とする項(47)に記載のオーサリングツール。The authoring tool according to item (47), characterized in that:

(49)(49)
前記プロセッサが、前記シンボルデータと上演データとの間のルックアップテーブルを生成するようにされた、  The processor is adapted to generate a lookup table between the symbol data and performance data;
ことを特徴とする項(47)又は項(48)に記載のオーサリングツール。The authoring tool according to Item (47) or Item (48), wherein

(50)(50)
前記処理手段が、前記表現データを出力するようにされた、  The processing means is adapted to output the expression data;
ことを特徴とする項(25)から項(49)のいずれかに記載のオーサリングツール。The authoring tool according to any one of Items (25) to (49), characterized in that:

(51)(51)
前記処理手段がさらに、前記表現データと命令セットとを別個に出力するようにされた、  The processing means is further configured to output the expression data and the instruction set separately.
ことを特徴とする項(50)に記載のオーサリングツール。The authoring tool according to item (50), characterized in that:

(52)(52)
前記処理手段が、前記玩具の基本機能を制御するための基本命令セットと、該基本命令セットが前記テーマ内の前記玩具を制御するためのテーマ別命令セットとを含む命令セットを生成するようにされた、  The processing means generates an instruction set including a basic instruction set for controlling basic functions of the toy and a thematic instruction set for controlling the toy in the theme. Was
ことを特徴とする項(25)から項(51)のいずれかに記載のオーサリングツール。The authoring tool according to any one of Items (25) to (51), characterized in that:

(53)(53)
前記プロセッサが、前記基本命令セット及び前記テーマ別命令セットを共に組み合わせるようにされた、  The processor is adapted to combine the basic instruction set and the thematic instruction set together;
ことを特徴とする項(52)に記載のオーサリングツール。The authoring tool according to item (52), wherein:

(54)(54)
コンパイラをさらに含む、  Further including a compiler,
ことを特徴とする項(52)又は項(53)に記載のオーサリングツール。The authoring tool according to Item (52) or Item (53), wherein

(55)(55)
前記コンパイラが、前記基本命令セット及び前記テーマ別命令セットをコンパイルするようにされた、  The compiler is adapted to compile the basic instruction set and the thematic instruction set;
ことを特徴とする項(54)に記載のオーサリングツール。The authoring tool according to item (54), wherein:

(56)(56)
前記プロセッサが、前記命令セットをコンピュータ可読コードに変換するようになっている符号化エンジンを含む、  The processor includes an encoding engine adapted to convert the instruction set into computer readable code;
ことを特徴とする項(25)から項(55)のいずれかに記載のオーサリングツール。The authoring tool according to any one of Items (25) to (55), characterized in that:

(57)(57)
前記オーサリングツールの前記出力が会話エンジン内で使用されるようにされ、該会話エンジンが、  The output of the authoring tool is adapted to be used in a conversation engine,
会話のテーマを選択する手段と、  A means of selecting a conversation theme,
複数の起点から起点をランダムに選択する手段と、  Means for randomly selecting a starting point from a plurality of starting points;
変数に基づいて語句をランダムに選択する手段と、  A means of randomly selecting phrases based on variables;
変数に基づいて次の発話者をランダムに選択する手段と、  A means of randomly selecting the next speaker based on a variable;
を含むことを特徴とする項(25)から項(56)のいずれかに記載のオーサリングツール。The authoring tool according to any one of Items (25) to (56), characterized by including:

(58)(58)
玩具のテーマ別データを作成するオーサリングツールのためのユーザインターフェイスであって、  A user interface for an authoring tool that creates toy thematic data,
各々がテーマに関するコンテンツの特定のサブセットの入力に対応する入力ウィンドウのセットをユーザに提供する手段と、  Means for providing the user with a set of input windows, each corresponding to an input of a particular subset of content relating to the theme;
前記テーマ別データの出力を開始する手段と、  Means for starting output of the thematic data;
を含むことを特徴とするユーザインターフェイス。A user interface characterized by including:

(59)(59)
前記コンテンツのサブセットが、テーマ関連データ、玩具関連データ及びコンテキスト関連データのうちの少なくとも1つを含む、  The subset of content includes at least one of theme related data, toy related data and context related data;
ことを特徴とする項(58)に記載のユーザインターフェイス。Item 42. The user interface according to Item 58.

(60)(60)
前記コンテキスト関連データが、前記玩具が対話するために使用する文、対話方法、テーマ関連パラメータ及び玩具関連パラメータのうちの少なくとも1つを含む、  The context related data includes at least one of a sentence used by the toy to interact, a dialogue method, a theme related parameter and a toy related parameter;
ことを特徴とする項(59)に記載のユーザインターフェイス。Item 42. The user interface according to Item 59.

(61)(61)
玩具のテーマ別データを生成するためのシステムであって、  A system for generating toy theme data,
前記テーマ別データにアクセスし、これを作成及び編集するためのオーサリングツールと、  An authoring tool for accessing, creating and editing the thematic data;
前記テーマ別データを記憶するためのデータベースを含むサーバと、  A server including a database for storing the thematic data;
を含み、Including
前記オーサリングツールが、インターネットを介して前記テーマ別データにアクセスするようにされた、  The authoring tool is adapted to access the thematic data via the Internet;
ことを特徴とするシステム。A system characterized by that.

(62)(62)
前記オーサリングツールが、前記テーマ別データを処理して配列するようにされ、前記データベースが、前記テーマ別データを前記配列の形で記憶するようにされた、  The authoring tool is adapted to process and arrange the thematic data, and the database is adapted to store the thematic data in the form of the arrangement;
ことを特徴とする項(61)に記載のシステム。The system according to item (61), characterized in that:

(63)(63)
前記オーサリングツールが、項(25)から項(57)のいずれかに記載のオーサリングツールである、  The authoring tool is the authoring tool according to any one of Items (25) to (57).
ことを特徴とする項(62)に記載のシステム。The system according to item (62), characterized in that:

(64)(64)
ユーザインターフェイスをさらに含む、  Further including a user interface,
ことを特徴とする項(61)から項(63)のいずれかに記載のシステム。The system according to any one of Items (61) to (63), wherein:

(65)(65)
前記インターフェイスが、項(58)から項(60)のいずれかに記載のインターフェイスである、  The interface is the interface according to any one of Items (58) to (60).
ことを特徴とする項(64)に記載のシステム。Item 64. The system according to Item 64.

(66)(66)
少なくとも1つの他の同じような玩具と対話するようにされた少なくとも1つの玩具とコンピュータとの間に無線通信を提供するための装置であって、  An apparatus for providing wireless communication between at least one toy and a computer adapted to interact with at least one other similar toy,
前記装置を前記コンピュータに接続する通信ポートと、  A communication port for connecting the device to the computer;
前記コンピュータと前記又は各玩具との間にネットワークを確立する手段と、  Means for establishing a network between the computer and the or each toy;
を含み、Including
前記装置が、前記コンピュータが別のこのような玩具であるかのように前記又は各玩具と通信できるようにする、  Allowing the device to communicate with the or each toy as if the computer were another such toy;
ことを特徴とする装置。A device characterized by that.

(67)(67)
前記装置が、前記コンピュータを仮想玩具として機能できるようにする、  Allowing the device to function as a virtual toy;
ことを特徴とする項(66)に記載の玩具。The toy according to item (66), wherein:

(68)(68)
前記通信ポートがUSB通信ポートである、  The communication port is a USB communication port;
ことを特徴とする項(66)又は項(67)に記載の玩具。Item 26. The toy according to item 66 or 67.

(69)(69)
前記ネットワークが無線である、  The network is wireless;
ことを特徴とする項(66)、項(67)又は項(68)に記載の玩具。The toy according to item (66), item (67), or item (68), wherein

(70)(70)
少なくとも1つの他の同じような玩具と対話するようにされた少なくとも1つの玩具と、  At least one toy adapted to interact with at least one other similar toy;
各々が項(66)から項(69)のいずれかに記載の装置を含む少なくとも1つのコンピュータと、  At least one computer, each comprising a device according to any of paragraphs (66) to (69);
を含み、Including
前記コンピュータと装置との組み合わせが、さらなるこのような玩具であるかのように機能する、  The combination of the computer and device functions as if it were a further such toy,
ことを特徴とするシステム。A system characterized by that.

(71)(71)
前記コンピュータが、仮想玩具を提供するようになっている視覚及び音声出力を含む、ことを特徴とする項(70)に記載のシステム。  A system as in claim (70), wherein the computer includes visual and audio output adapted to provide a virtual toy.

(72)(72)
前記仮想玩具がアバターである、  The virtual toy is an avatar;
ことを特徴とする項(71)に記載のシステム。Item 82. The system according to Item 71.

1700:プロセッサ
1702:メモリ
1704:変換器
1706:無線通信モジュール
1708:対話エンジン
1700: Processor 1702: Memory 1704: Converter 1706: Wireless communication module 1708: Dialogue engine

Claims (72)

少なくとも1つの他の同じような玩具と対話するようにされた玩具であって、
プロセッサと、
前記プロセッサに結合されたメモリと、
を備え、前記プロセッサが、
行うべき行動を表す出力信号を生成する手段と、
少なくとも1つの他のこのような玩具における受信のための、前記玩具が自身の行動を終える前に前記少なくとも1つの他のこのような玩具が行動を起こすようにするためのトリガ信号を生成する手段と、
を備える、
ことを特徴とする玩具。
A toy adapted to interact with at least one other similar toy,
A processor;
A memory coupled to the processor;
The processor comprises:
Means for generating an output signal representing the action to be taken;
Means for generating a trigger signal for reception at at least one other such toy so that said at least one other such toy takes action before said toy has finished its action When,
Comprising
A toy characterized by that.
前記トリガ信号が、前記玩具が自身の行動を開始した後に所定の時間間隔で生成される、
ことを特徴とする請求項1に記載の玩具。
The trigger signal is generated at a predetermined time interval after the toy starts its action.
The toy according to claim 1.
前記トリガ信号が、前記玩具が自身の行動を終える前に所定の時間間隔で生成される、ことを特徴とする請求項1又は請求項2に記載の玩具。   The toy according to claim 1 or 2, wherein the trigger signal is generated at a predetermined time interval before the toy finishes its action. ユーザが前記所定の時間間隔の目安を入力できるようにする入力部をさらに備える、
ことを特徴とする請求項2又は請求項3に記載の玩具。
An input unit that allows a user to input a measure of the predetermined time interval;
The toy according to claim 2 or claim 3, wherein
所定の時間間隔が、1秒未満、又は1/2秒未満、又は1/4秒未満であり、実質的に0秒であることがより好ましい、
ことを特徴とする請求項2、請求項3又は請求項4に記載の玩具。
More preferably, the predetermined time interval is less than 1 second, or less than 1/2 second, or less than 1/4 second, and is substantially 0 second.
The toy according to claim 2, claim 3, or claim 4.
前記行動が、音を発すること、光を発すること、及び動きのうちの少なくとも1つである、
ことを特徴とする請求項1から請求項5のいずれかに記載の玩具。
The action is at least one of emitting sound, emitting light, and movement;
The toy according to any one of claims 1 to 5, characterized in that.
前記少なくとも1つの他のこのような玩具と無線で通信するようにされた無線通信モジュールをさらに備える、
ことを特徴とする請求項1から請求項5のいずれかに記載の玩具。
A wireless communication module adapted to wirelessly communicate with the at least one other such toy;
The toy according to any one of claims 1 to 5, characterized in that.
前記無線通信モジュールが、トリガ信号、対話に関する情報、及び玩具に関する情報のうちの少なくとも1つを送信する、
ことを特徴とする請求項7に記載の玩具。
The wireless communication module transmits at least one of a trigger signal, information about interaction, and information about toys;
The toy according to claim 7, wherein:
前記対話に関する情報が、玩具が出力する行動、行動の持続時間、及び少なくとも1つの他の玩具がとるべき行動のうちの少なくとも1つを含む、
ことを特徴とする請求項8に記載の玩具。
The information regarding the dialogue includes at least one of an action output by the toy, a duration of the action, and an action to be taken by at least one other toy.
The toy according to claim 8, wherein:
前記メモリが、所定の対話を記憶するようになっている、
ことを特徴とする請求項1から請求項9のいずれかに記載の玩具。
The memory is adapted to store predetermined interactions;
The toy according to any one of claims 1 to 9, characterized in that.
前記プロセッサは、前記対話を疑似ランダムに決定するようになっている、
ことを特徴とする請求項1から請求項10のいずれかに記載の玩具。
The processor is adapted to determine the interaction pseudo-randomly;
The toy according to any one of claims 1 to 10, characterized in that:
前記玩具が、生きているかのように対話するようになっている、
ことを特徴とする請求項1から請求項11のいずれかに記載の玩具。
The toys are designed to interact as if they were alive,
The toy according to any one of claims 1 to 11, characterized in that:
前記対話が、会話、音声対話、対人対話、教育的対話、演奏、及びゲームプレイのうちの少なくとも1つである、
ことを特徴とする請求項1から請求項12のいずれかに記載の玩具。
The dialogue is at least one of conversation, voice dialogue, interpersonal dialogue, educational dialogue, performance, and game play;
The toy according to any one of claims 1 to 12, characterized in that:
前記玩具が、このような玩具のグループ内のメンバーとして対話するようになっている、
ことを特徴とする請求項13に記載の玩具。
The toy is adapted to interact as a member in a group of such toys,
The toy according to claim 13.
前記グループが、音楽バンド、車のグループ、又は軍事資産のグループのうちの1つを表す、
ことを特徴とする請求項14に記載の玩具。
The group represents one of a music band, a group of cars, or a group of military assets;
The toy according to claim 14.
前記トリガ信号を使用してグループの行動を同期させる、
ことを特徴とする請求項14又は請求項15に記載の玩具。
Using the trigger signal to synchronize group actions;
The toy according to claim 14 or 15, characterized in that:
別のこのような玩具からトリガ信号を受け取る手段をさらに備え、前記トリガ信号を使用して行動を開始する時点を決定する、
ことを特徴とする請求項1から請求項16のいずれかに記載の玩具。
Further comprising means for receiving a trigger signal from another such toy, wherein the trigger signal is used to determine when to initiate an action;
The toy according to any one of claims 1 to 16, wherein the toy is characterized by that.
前記玩具が、人形、ゲームボード、乗り物、及び軍事資産のうちの1つである、
ことを特徴とする請求項1から請求項17のいずれかに記載の玩具。
The toy is one of a doll, a game board, a vehicle, and a military asset;
The toy according to any one of claims 1 to 17, wherein the toy is characterized by that.
少なくとも1つの他の同じような玩具と対話するようにされた玩具で使用するためのコンピュータ可読メモリであって、
行うべき行動を表す出力信号を生成するためのコードと、
少なくとも1つの他のこのような玩具において受信して、前記玩具が自身の行動を終える前に前記少なくとも1つの他のこのような玩具が行動を起こすようにするためのトリガ信号を生成するためのコードと、
を含むことを特徴とするコンピュータ可読メモリ。
A computer readable memory for use with a toy adapted to interact with at least one other similar toy,
Code to generate an output signal representing the action to be taken,
For receiving at at least one other such toy and generating a trigger signal to cause the at least one other such toy to take action before the toy has finished its action. Code,
A computer readable memory comprising:
前記メモリが、前記玩具が自身の行動を開始した後に所定の時間間隔で前記トリガ信号を生成するためのコードをさらに含む、
ことを特徴とする請求項19に記載のコンピュータ可読メモリ。
The memory further includes code for generating the trigger signal at a predetermined time interval after the toy starts its action.
The computer-readable memory of claim 19.
前記メモリが、前記玩具が自身の行動を終える前に所定の時間間隔で前記トリガ信号を生成するためのコードをさらに含む、
ことを特徴とする請求項19又は請求項20に記載のコンピュータ可読メモリ。
The memory further includes code for generating the trigger signal at predetermined time intervals before the toy finishes its action.
21. The computer readable memory according to claim 19 or claim 20, wherein
前記メモリが、ユーザが前記所定の時間間隔の目安を入力できるようにするためのコードをさらに含む、
ことを特徴とする請求項20又は請求項21に記載のコンピュータ可読メモリ。
The memory further includes code for allowing a user to enter a measure of the predetermined time interval;
The computer-readable memory according to claim 20 or claim 21,
前記所定の時間間隔が、1秒未満、又は1/2秒未満、又は1/4秒未満であり、実質的に0秒である、
ことを特徴とする請求項20、請求項21又は請求項22に記載のコンピュータ可読メモリ。
The predetermined time interval is less than 1 second, or less than 1/2 second, or less than 1/4 second, and is substantially 0 second;
23. The computer-readable memory according to claim 20, 21, 21 or 22.
前記行動が、音を発すること、光を発すること、及び動きのうちの少なくとも1つである、
ことを特徴とする請求項19から請求項23のいずれかに記載のコンピュータ可読メモリ。
The action is at least one of emitting sound, emitting light, and movement;
The computer-readable memory according to any one of claims 19 to 23, wherein
玩具のテーマ別データを作成するためのオーサリングツールであって、
特定のテーマに関するコンテンツを受信する手段と、
前記コンテンツを処理して、前記特定のテーマ内の前記玩具を動作させる命令セットを生成する手段と、
前記命令セットを出力する手段と、
を含むことを特徴とするオーサリングツール。
An authoring tool for creating toy theme data,
A means of receiving content on a particular theme;
Means for processing the content to generate a set of instructions for operating the toy within the particular theme;
Means for outputting the instruction set;
An authoring tool characterized by including:
前記受信手段が、前記特定のテーマに関するスクリプトデータと、前記玩具の性格を定義する表現データとの両方を別個に含むコンテンツを受信するようにされた、
ことを特徴とする請求項25に記載のオーサリングツール。
The receiving means is configured to receive content that separately includes both script data relating to the specific theme and expression data defining the character of the toy;
26. An authoring tool according to claim 25.
前記受信手段が、コンテンツを別の部分の形で受信するようにされた、
ことを特徴とする請求項26に記載のオーサリングツール。
The receiving means is adapted to receive the content in the form of another part;
27. An authoring tool according to claim 26.
個々の表現データ部分に一意のID番号を割り当てる手段をさらに含む、
ことを特徴とする請求項27に記載のオーサリングツール。
Further comprising means for assigning a unique ID number to each representation data portion;
The authoring tool according to claim 27.
前記処理手段が、前記命令セット内の前記表現データ部分への参照として前記一意のID番号を利用するようにされた、
ことを特徴とする請求項28に記載のオーサリングツール。
The processing means uses the unique ID number as a reference to the representation data portion in the instruction set;
The authoring tool according to claim 28.
前記受信手段が、テーマ全体又はテーマの本質的部分を含むコンテンツを1つの動作で受信するようにされた、
ことを特徴とする請求項25から請求項29のいずれかに記載のオーサリングツール。
The receiving means is configured to receive content including the entire theme or an essential part of the theme in one operation;
30. The authoring tool according to any one of claims 25 to 29, wherein:
前記コンテンツがフォーマット済みファイルの形である、
ことを特徴とする請求項30に記載のオーサリングツール。
The content is in the form of a formatted file;
31. An authoring tool according to claim 30.
前記フォーマット済みファイルがテキストファイルである、
ことを特徴とする請求項31に記載のオーサリングツール。
The formatted file is a text file;
32. The authoring tool according to claim 31.
前記処理手段が、前記フォーマット済みファイルのコンテンツのみを使用して前記命令セットを生成する、
ことを特徴とする請求項31又は請求項32に記載のオーサリングツール。
The processing means generates the instruction set using only the contents of the formatted file;
33. The authoring tool according to claim 31 or claim 32.
前記表現データが、テーマ名、前記玩具の名前、及び前記玩具が対話するために使用する文のうちの少なくとも1つを含む、
ことを特徴とする請求項25から請求項33のいずれかに記載のオーサリングツール。
The representation data includes at least one of a theme name, a name of the toy, and a sentence used by the toy to interact;
The authoring tool according to any one of claims 25 to 33, wherein:
前記スクリプトデータが、前記テーマ内で対話できる玩具の数、対話方法、テーマ関連パラメータ、及び玩具関連パラメータのうちの少なくとも1つを含む、
ことを特徴とする請求項25から請求項34のいずれかに記載のオーサリングツール。
The script data includes at least one of the number of toys that can interact within the theme, the interaction method, theme related parameters, and toy related parameters;
The authoring tool according to any one of claims 25 to 34, wherein:
前記玩具関連パラメータが、次の対話する玩具を選択するための予め定めたルールに関する情報を含む、
ことを特徴とする請求項35に記載のオーサリングツール。
The toy related parameters include information regarding a predetermined rule for selecting a next toy to interact with;
36. An authoring tool according to claim 35.
前記対話方法がタイミング関連パラメータを含む、
ことを特徴とする請求項36に記載のオーサリングツール。
The interaction method includes timing related parameters;
The authoring tool according to claim 36.
前記タイミング関連パラメータが、次の玩具がいつ対話を行うかを決定する
ことを特徴とする請求項37に記載のオーサリングツール。
38. The authoring tool of claim 37, wherein the timing related parameters determine when the next toy interacts.
前記タイミング関連パラメータが、前記現在の玩具の対話の開始から前記次の玩具の対話の開始までの時間遅延、及び前記次の玩具の対話の開始から前記現在の玩具の対話の終了前までの時間遅延の一方を含む、
ことを特徴とする請求項38に記載のオーサリングツール。
The timing related parameters are a time delay from the start of the current toy interaction to the start of the next toy interaction, and a time from the start of the next toy interaction to the end of the current toy interaction; Including one of the delays,
40. An authoring tool according to claim 38.
ゲームに関するコンテンツを受信する手段をさらに含む、
ことを特徴とする請求項25から請求項39のいずれかに記載のオーサリングツール。
Further comprising means for receiving content relating to the game,
40. The authoring tool according to any one of claims 25 to 39, wherein:
前記ゲームに関するコンテンツが、ゲームを実行できるようにするロジックを含む、
ことを特徴とする請求項40に記載のオーサリングツール。
The content relating to the game includes logic that enables the game to run;
41. An authoring tool according to claim 40.
特定のテーマに関する前記スクリプトデータと表現データとを配列の形でともに記憶する手段をさらに含む、
ことを特徴とする請求項25から請求項41のいずれかに記載のオーサリングツール。
Means for storing the script data and the expression data relating to a specific theme together in the form of an array;
The authoring tool according to any one of claims 25 to 41, wherein:
前記処理手段が、前記配列から前記命令セットを生成するようにされた、
ことを特徴とする請求項42に記載のオーサリングツール。
The processing means is adapted to generate the instruction set from the array;
43. An authoring tool according to claim 42.
前記処理手段が、前記表現データの少なくとも一部を含む少なくとも1つのリストをコンパイルする手段を含む、
ことを特徴とする請求項25から請求項43のいずれかに記載のオーサリングツール。
The processing means includes means for compiling at least one list including at least a portion of the representation data;
The authoring tool according to any one of claims 25 to 43, wherein:
前記リストコンパイル手段が、前記特定のテーマにおける個々の玩具ごとにそれぞれのリストをコンパイルするようにされた、
ことを特徴とする請求項44に記載のオーサリングツール。
The list compiling means is adapted to compile each list for each individual toy in the specific theme;
45. An authoring tool according to claim 44.
前記表現データがシンボルデータである、
ことを特徴とする請求項25から請求項45のいずれかに記載のオーサリングツール。
The expression data is symbol data;
The authoring tool according to any one of claims 25 to 45, wherein:
前記シンボルデータの上演データバージョンを記録する記録手段をさらに含む、
ことを特徴とする請求項46に記載のオーサリングツール。
Recording means for recording a performance data version of the symbol data;
The authoring tool according to claim 46.
関係者に、上演データの必要な部分を生成するように促す手段をさらに含む、
ことを特徴とする請求項47に記載のオーサリングツール。
Further comprising means to prompt the interested parties to generate the necessary part of the performance data;
48. An authoring tool according to claim 47.
前記プロセッサが、前記シンボルデータと上演データとの間のルックアップテーブルを生成するようにされた、
ことを特徴とする請求項47又は請求項48に記載のオーサリングツール。
The processor is adapted to generate a lookup table between the symbol data and performance data;
49. An authoring tool according to claim 47 or claim 48.
前記処理手段が、前記表現データを出力するようにされた、
ことを特徴とする請求項25から請求項49のいずれかに記載のオーサリングツール。
The processing means is adapted to output the expression data;
The authoring tool according to any one of claims 25 to 49, wherein:
前記処理手段がさらに、前記表現データと命令セットとを別個に出力するようにされた、
ことを特徴とする請求項50に記載のオーサリングツール。
The processing means is further configured to output the expression data and the instruction set separately.
51. An authoring tool according to claim 50.
前記処理手段が、前記玩具の基本機能を制御するための基本命令セットと、該基本命令セットが前記テーマ内の前記玩具を制御するためのテーマ別命令セットとを含む命令セットを生成するようにされた、
ことを特徴とする請求項25から請求項51のいずれかに記載のオーサリングツール。
The processing means generates an instruction set including a basic instruction set for controlling basic functions of the toy and a thematic instruction set for controlling the toy in the theme. Was
52. The authoring tool according to any one of claims 25 to 51, wherein:
前記プロセッサが、前記基本命令セット及び前記テーマ別命令セットを共に組み合わせるようにされた、
ことを特徴とする請求項52に記載のオーサリングツール。
The processor is adapted to combine the basic instruction set and the thematic instruction set together;
53. An authoring tool according to claim 52.
コンパイラをさらに含む、
ことを特徴とする請求項52又は請求項53に記載のオーサリングツール。
Further including a compiler,
54. An authoring tool according to claim 52 or claim 53.
前記コンパイラが、前記基本命令セット及び前記テーマ別命令セットをコンパイルするようにされた、
ことを特徴とする請求項54に記載のオーサリングツール。
The compiler is adapted to compile the basic instruction set and the thematic instruction set;
55. An authoring tool according to claim 54.
前記プロセッサが、前記命令セットをコンピュータ可読コードに変換するようになっている符号化エンジンを含む、
ことを特徴とする請求項25から請求項55のいずれかに記載のオーサリングツール。
The processor includes an encoding engine adapted to convert the instruction set into computer readable code;
56. The authoring tool according to any one of claims 25 to 55, wherein:
前記オーサリングツールの前記出力が会話エンジン内で使用されるようにされ、該会話エンジンが、
会話のテーマを選択する手段と、
複数の起点から起点をランダムに選択する手段と、
変数に基づいて語句をランダムに選択する手段と、
変数に基づいて次の発話者をランダムに選択する手段と、
を含むことを特徴とする請求項25から請求項56のいずれかに記載のオーサリングツール。
The output of the authoring tool is adapted to be used in a conversation engine,
A means of selecting a conversation theme,
Means for randomly selecting a starting point from a plurality of starting points;
A means of randomly selecting phrases based on variables;
A means of randomly selecting the next speaker based on a variable;
57. The authoring tool according to any one of claims 25 to 56, comprising:
玩具のテーマ別データを作成するオーサリングツールのためのユーザインターフェイスであって、
各々がテーマに関するコンテンツの特定のサブセットの入力に対応する入力ウィンドウのセットをユーザに提供する手段と、
前記テーマ別データの出力を開始する手段と、
を含むことを特徴とするユーザインターフェイス。
A user interface for an authoring tool that creates toy thematic data,
Means for providing the user with a set of input windows, each corresponding to an input of a particular subset of content relating to the theme;
Means for starting output of the thematic data;
A user interface characterized by including:
前記コンテンツのサブセットが、テーマ関連データ、玩具関連データ及びコンテキスト関連データのうちの少なくとも1つを含む、
ことを特徴とする請求項58に記載のユーザインターフェイス。
The subset of content includes at least one of theme related data, toy related data and context related data;
59. A user interface according to claim 58.
前記コンテキスト関連データが、前記玩具が対話するために使用する文、対話方法、テーマ関連パラメータ及び玩具関連パラメータのうちの少なくとも1つを含む、
ことを特徴とする請求項59に記載のユーザインターフェイス。
The context related data includes at least one of a sentence used by the toy to interact, a dialogue method, a theme related parameter and a toy related parameter;
60. The user interface of claim 59.
玩具のテーマ別データを生成するためのシステムであって、
前記テーマ別データにアクセスし、これを作成及び編集するためのオーサリングツールと、
前記テーマ別データを記憶するためのデータベースを含むサーバと、
を含み、
前記オーサリングツールが、インターネットを介して前記テーマ別データにアクセスするようにされた、
ことを特徴とするシステム。
A system for generating toy theme data,
An authoring tool for accessing, creating and editing the thematic data;
A server including a database for storing the thematic data;
Including
The authoring tool is adapted to access the thematic data via the Internet;
A system characterized by that.
前記オーサリングツールが、前記テーマ別データを処理して配列するようにされ、前記データベースが、前記テーマ別データを前記配列の形で記憶するようにされた、
ことを特徴とする請求項61に記載のシステム。
The authoring tool is adapted to process and arrange the thematic data, and the database is adapted to store the thematic data in the form of the arrangement;
62. The system of claim 61, wherein:
前記オーサリングツールが、請求項25から請求項57のいずれかに記載のオーサリングツールである、
ことを特徴とする請求項62に記載のシステム。
The authoring tool is the authoring tool according to any one of claims 25 to 57.
63. The system of claim 62.
ユーザインターフェイスをさらに含む、
ことを特徴とする請求項61から請求項63のいずれかに記載のシステム。
Further including a user interface,
64. The system according to any one of claims 61 to 63, wherein:
前記インターフェイスが、請求項58から請求項60のいずれかに記載のインターフェイスである、
ことを特徴とする請求項64に記載のシステム。
61. The interface is an interface according to any of claims 58 to 60.
65. The system of claim 64.
少なくとも1つの他の同じような玩具と対話するようにされた少なくとも1つの玩具とコンピュータとの間に無線通信を提供するための装置であって、
前記装置を前記コンピュータに接続する通信ポートと、
前記コンピュータと前記又は各玩具との間にネットワークを確立する手段と、
を含み、
前記装置が、前記コンピュータが別のこのような玩具であるかのように前記又は各玩具と通信できるようにする、
ことを特徴とする装置。
An apparatus for providing wireless communication between at least one toy and a computer adapted to interact with at least one other similar toy,
A communication port for connecting the device to the computer;
Means for establishing a network between the computer and the or each toy;
Including
Allowing the device to communicate with the or each toy as if the computer were another such toy;
A device characterized by that.
前記装置が、前記コンピュータを仮想玩具として機能できるようにする、
ことを特徴とする請求項66に記載の玩具。
Allowing the device to function as a virtual toy;
The toy according to claim 66.
前記通信ポートがUSB通信ポートである、
ことを特徴とする請求項66又は請求項67に記載の玩具。
The communication port is a USB communication port;
68. A toy according to claim 66 or claim 67.
前記ネットワークが無線である、
ことを特徴とする請求項66、請求項67又は請求項68に記載の玩具。
The network is wireless;
69. A toy according to claim 66, 67 or 68.
少なくとも1つの他の同じような玩具と対話するようにされた少なくとも1つの玩具と、
各々が請求項66から請求項69のいずれかに記載の装置を含む少なくとも1つのコンピュータと、
を含み、
前記コンピュータと装置との組み合わせが、さらなるこのような玩具であるかのように機能する、
ことを特徴とするシステム。
At least one toy adapted to interact with at least one other similar toy;
70. At least one computer, each comprising an apparatus according to any of claims 66 to 69;
Including
The combination of the computer and device functions as if it were a further such toy,
A system characterized by that.
前記コンピュータが、仮想玩具を提供するようになっている視覚及び音声出力を含む、ことを特徴とする請求項70に記載のシステム。   The system of claim 70, wherein the computer includes visual and audio output adapted to provide a virtual toy. 前記仮想玩具がアバターである、
ことを特徴とする請求項71に記載のシステム。
The virtual toy is an avatar;
72. The system of claim 71, wherein:
JP2013192224A 2008-07-18 2013-09-17 Interactive toy Pending JP2014028284A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBPCT/GB2008/002457 2008-07-18
PCT/GB2008/002457 WO2009010760A2 (en) 2007-07-19 2008-07-18 Interacting toys

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2011517987A Division JP5404781B2 (en) 2008-07-18 2009-01-21 Interactive toys

Publications (1)

Publication Number Publication Date
JP2014028284A true JP2014028284A (en) 2014-02-13

Family

ID=40651476

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2011517987A Expired - Fee Related JP5404781B2 (en) 2008-07-18 2009-01-21 Interactive toys
JP2013192224A Pending JP2014028284A (en) 2008-07-18 2013-09-17 Interactive toy

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2011517987A Expired - Fee Related JP5404781B2 (en) 2008-07-18 2009-01-21 Interactive toys

Country Status (3)

Country Link
EP (1) EP2341991A1 (en)
JP (2) JP5404781B2 (en)
WO (1) WO2010007336A1 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0714148D0 (en) 2007-07-19 2007-08-29 Lipman Steven interacting toys
WO2012142936A1 (en) * 2011-04-19 2012-10-26 玩具概念有限公司 Electronic interactive toy device
CN102881198A (en) * 2011-09-15 2013-01-16 徐菲 Interaction train learning machine toy device and method
CN102836549B (en) * 2011-06-24 2014-12-31 徐菲 Electronic interactive toy (shooting toy) device and method
CN102836548A (en) * 2011-06-24 2012-12-26 徐菲 Electronic interactive toy (merry-go-round) device and method
CN102799155B (en) * 2012-07-27 2014-08-20 宁波华亿第三极科技有限公司 Game equipment intelligent control system and control method thereof
GB2511479A (en) * 2012-12-17 2014-09-10 Librae Ltd Interacting toys
ES2668463T3 (en) 2014-08-15 2018-05-18 Vtech Electronics, Ltd. Electronic toy with independent radial connector and associated communication protocol

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09281985A (en) * 1996-04-11 1997-10-31 Kirindou:Kk Speech generator capable of making conversation maintaining matching property
JPH119847A (en) * 1997-06-25 1999-01-19 Kobe Nippon Denki Software Kk Talkative parrot sounding device
JPH11505054A (en) * 1996-02-27 1999-05-11 レクストロン・システムズ・インコーポレーテッド Interactive dolls for PC peripherals
JP2000135384A (en) * 1998-10-30 2000-05-16 Fujitsu Ltd Information processing device and animal-mimicking apparatus
JP2000341374A (en) * 1999-05-31 2000-12-08 Sony Corp Information incoming call notice toy unit, information transmission method and information incoming call notice toy system
JP2002063505A (en) * 2000-08-16 2002-02-28 Nippon Telegr & Teleph Corp <Ntt> Information distributing method, information distribution center device, information distributing terminal device, and character figure
JP2002120174A (en) * 2000-10-11 2002-04-23 Sony Corp Authoring system, authoring method and storage medium
JP2002259376A (en) * 2001-02-28 2002-09-13 Vivarium Inc Natural language generating system for electronic pet
JP2002292154A (en) * 2001-03-30 2002-10-08 Bandai Co Ltd Moving body control system
JP2002307354A (en) * 2000-11-07 2002-10-23 Sega Toys:Kk Electronic toy
JP2002337079A (en) * 2001-05-11 2002-11-26 Sony Corp Device/method for processing information, recording medium and program
JP2003205483A (en) * 2001-11-07 2003-07-22 Sony Corp Robot system and control method for robot device
WO2006114625A2 (en) * 2005-04-26 2006-11-02 Steven Lipman Toys

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6560511B1 (en) * 1999-04-30 2003-05-06 Sony Corporation Electronic pet system, network system, robot, and storage medium
US7252572B2 (en) * 2003-05-12 2007-08-07 Stupid Fun Club, Llc Figurines having interactive communication
US20050157668A1 (en) * 2003-12-24 2005-07-21 Michael Sivan Wireless remote control and data transfer system
GB2425490A (en) * 2005-04-26 2006-11-01 Steven Lipman Wireless communication toy
GB0714148D0 (en) * 2007-07-19 2007-08-29 Lipman Steven interacting toys

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11505054A (en) * 1996-02-27 1999-05-11 レクストロン・システムズ・インコーポレーテッド Interactive dolls for PC peripherals
JPH09281985A (en) * 1996-04-11 1997-10-31 Kirindou:Kk Speech generator capable of making conversation maintaining matching property
JPH119847A (en) * 1997-06-25 1999-01-19 Kobe Nippon Denki Software Kk Talkative parrot sounding device
JP2000135384A (en) * 1998-10-30 2000-05-16 Fujitsu Ltd Information processing device and animal-mimicking apparatus
JP2000341374A (en) * 1999-05-31 2000-12-08 Sony Corp Information incoming call notice toy unit, information transmission method and information incoming call notice toy system
JP2002063505A (en) * 2000-08-16 2002-02-28 Nippon Telegr & Teleph Corp <Ntt> Information distributing method, information distribution center device, information distributing terminal device, and character figure
JP2002120174A (en) * 2000-10-11 2002-04-23 Sony Corp Authoring system, authoring method and storage medium
JP2002307354A (en) * 2000-11-07 2002-10-23 Sega Toys:Kk Electronic toy
JP2002259376A (en) * 2001-02-28 2002-09-13 Vivarium Inc Natural language generating system for electronic pet
JP2002292154A (en) * 2001-03-30 2002-10-08 Bandai Co Ltd Moving body control system
JP2002337079A (en) * 2001-05-11 2002-11-26 Sony Corp Device/method for processing information, recording medium and program
JP2003205483A (en) * 2001-11-07 2003-07-22 Sony Corp Robot system and control method for robot device
WO2006114625A2 (en) * 2005-04-26 2006-11-02 Steven Lipman Toys

Also Published As

Publication number Publication date
JP5404781B2 (en) 2014-02-05
JP2011528246A (en) 2011-11-17
WO2010007336A1 (en) 2010-01-21
EP2341991A1 (en) 2011-07-13

Similar Documents

Publication Publication Date Title
JP5628029B2 (en) Interactive toys
JP5404781B2 (en) Interactive toys
JP2011528246A5 (en)
US6110000A (en) Doll set with unidirectional infrared communication for simulating conversation
RU2419477C2 (en) Devices with musical interaction
CN101208141B (en) Toy
JP3494567B2 (en) Portable communication toy and information storage medium
US20130059284A1 (en) Interactive electronic toy and learning device system
US20130130587A1 (en) Interactive toy apparatus and method of using same
US10643482B2 (en) Fill-in-the-blank audio-story engine
JP2003205483A (en) Robot system and control method for robot device
US20140170929A1 (en) Interacting toys
CN107908709A (en) Parent-offspring&#39;s language chats interactive approach, apparatus and system
Angulo et al. Aibo jukeBox–A robot dance interactive experience
KR101419038B1 (en) toy control method with scenario instruction
WO2005038776A1 (en) Voice controlled toy
Al-Khalifa et al. Basma: An interactive IoT-based plush toy for Arabic-speaking children
JPH10328421A (en) Automatically responding toy
WO2019132092A1 (en) Plush doll robot with voice recognition function
TW200909035A (en) Interactive motion toy system and control method therefor

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140519

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140811

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140814

A524 Written submission of copy of amendment under section 19 (pct)

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20141119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150401

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150410

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150727