JP5404781B2 - 対話式玩具 - Google Patents
対話式玩具 Download PDFInfo
- Publication number
- JP5404781B2 JP5404781B2 JP2011517987A JP2011517987A JP5404781B2 JP 5404781 B2 JP5404781 B2 JP 5404781B2 JP 2011517987 A JP2011517987 A JP 2011517987A JP 2011517987 A JP2011517987 A JP 2011517987A JP 5404781 B2 JP5404781 B2 JP 5404781B2
- Authority
- JP
- Japan
- Prior art keywords
- toy
- doll
- theme
- conversation
- action
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63H—TOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
- A63H3/00—Dolls
- A63H3/28—Arrangements of sound-producing means in dolls; Means in dolls for producing sounds
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63H—TOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
- A63H2200/00—Computerized interactive toys, e.g. dolls
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63H—TOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
- A63H30/00—Remote-control arrangements specially adapted for toys, e.g. for toy vehicles
- A63H30/02—Electrical arrangements
- A63H30/04—Electrical arrangements using wireless transmission
Description
本発明の第1の態様によれば、少なくとも1つの他の同じような玩具と対話するようになっている玩具が提供され、この玩具は、プロセッサと、このプロセッサに結合されたメモリとを備え、前記プロセッサは、行うべき行動を表す出力信号を生成する手段と、少なくとも1つの他のこのような玩具における受信のための、前記玩具が自身の行動を終える前に前記少なくとも1つの他のこのような玩具が行動を起こすようにするためのトリガ信号を生成する手段とを含む。前記玩具が自身の行動を終える前に別のこのような玩具が行動を起こすようにするためのトリガ信号を生成する手段を提供することにより、より多才な、具体的にはより本物そっくりな対話を実現することができる。
本発明のさらなる態様によれば、玩具のテーマ別データを作成するためのオーサリングツールが提供され、該オーサリングツールは、特定のテーマに関連するコンテンツを受信する手段と、前記コンテンツを処理して前記特定のテーマ内で前記玩具を動作させるための命令セットを生成する手段と、前記命令セットを出力する手段とを含む。玩具を動作させるための命令セットを生成する手段を提供することにより、テーマ別の命令を生成するプロセスを実質的により効率化することができる。
本発明のさらなる態様によれば、本明細書で説明するような少なくとも1つの玩具とコンピュータの間に無線通信を提供する装置が提供され、該装置は、装置をコンピュータに接続するための通信ポートと、コンピュータと前記又は各玩具との間にネットワークを確立する手段とを含み、コンピュータが別のこのような玩具であるかのように前記又は各玩具と通信できるようにする装置を提供する。
本発明のさらに別の態様によれば、プロセッサと、該プロセッサに結合されたメモリと、前記プロセッサに結合された出力部と、少なくとも1つのさらなるこのような玩具とのネットワーク接続を確立する手段とを含む玩具が提供され、プロセッサは、ネットワーク接続が確立された各玩具の出力を制御する手段を含む。
玩具は、別のこのような玩具と対話するようになっており、前記プロセッサは、前記対話に関連する少なくとも1つの変数を定義する手段と、前記変数をメモリに記憶する手段と、前記変数を使用して前記玩具の(対話型)出力を制御する手段とを含むことが好ましい。
前記プロセッサは、前記メモリにテーマ別データを記憶するようになっており、前記テーマはスクリプトデータ及び表現データを含み、前記表現データが前記玩具の性格を定義することが好ましい。
プロセッサは、対話するための玩具を予め定めたルールに基づいて選択する手段を含むことが好ましい。
玩具は、他の同様の玩具とゲームをプレイすることに適した生きているものの形をとり、前記プロセッサはゲームエンジンを含み、該ゲームエンジンは、前記玩具が生きているかのようにゲームをプレイ可能にするようになっていることが好ましい。
本発明のさらに別の態様によれば、複数の玩具にテーマ別データを提供する装置が提供され、該装置は、各々が複数のサブテーマを含む前記テーマ別データを記憶する手段と、特定の玩具を識別する手段と、特定の玩具に基づいてサブテーマを選択する手段と、前記玩具に対して前記特定のサブテーマを出力する手段とを含む(この結果、テーマ別ダウンロードへのアクセスがより効率的に達成されることが好ましい)。
本発明のさらに別の態様によれば、玩具などの装置のための会話エンジンが提供され、該会話エンジンは、会話のテーマを選択し、複数の起点から起点をランダムに選択し、変数に基づいて語句をランダムに選択し、変数に基づいて次の発話者をランダムに選択する手段を含む。
・子供が玩具と対話式に遊ぶことができる
・オンザフライで構築される会話
・会話を開始する前に会話が前処理される
・会話がネットワーク内に存在する人形に基づく
・会話がネットワーク内に存在する人形の種類に基づく
・会話の長さ及び方向性の制御に使用される重み付け
・会話の半ばでテーマを切り替える能力
・2、3又はそれ以上の玩具
・玩具は生きているもの/人間/人形である
・対話は通信を含み、通信は広い意味で定められる
・オーサリングツール〜玩具が読み込み可能なプログラムコードにコンパイルされる会話データを入力する機能を提供する。
・USB通信ドングル〜玩具とPCとの間の通信を可能にする装置を提供する。
・コントローラ人形〜3以上の人形であり、単一のコントローラとして最初に電源が入った人形を使用して制御が行われる。
・性格の表現〜人形の性格要素に基づいて、同じテーマが異なる表現を有する。
・テーマのスクリプト作成〜テーマは、ダウンロード可能な表現の組合せであり、スクリプト/スクリプト及び表現は、異なるテーマごとに不可欠な/異なるスクリプトである。
・パラメータ記憶〜現在の会話に関する情報を記憶する能力、例えば、「私の犬はFluffyと言います」という語句では、人形がその会話内の情報(ペット=「犬」及びペットの名前=「fluffy」)を後で使用するために記憶する。
・人形固有のダウンロード〜ウェブサイトダウンロードのみが、特定の性格に関する特定の言語を表現として有し、性格に従って表現がダウンロードされる。
・会話の構造〜人形は、関連する発話で応答するか、別の人形を選択して話しかけるか、或いは自分自身について何かを発表するかのいずれかを選択する。
・人形の選択〜コントローラは、次にどの人形が発話するかをランダムに決定し、ランダムに選択するものの、人形は2回続けて発話することができず、或いは特定の人形を名前で選択することもできない。
・ゲームのプレイ〜人形は人間のようにゲームをプレイする。
図3でわかるように、コントローラユニット200がいくつかのスレーブユニット(202)と通信している。コントローラは、会話エンジン204と、発話コンパイラ206と、発話データベース208と、スピーカ(変換器)210と、スレーブユニットからデータを送信及び受信できる送信機/受信機212とを含む。会話エンジンは、ランダム発話セレクタ214と、パラメータ記憶メモリ216と、発話者セレクタ218とを含む。スレーブユニットは、コントローラユニットの全ての構成要素を有しており、図3ではスレーブユニットの構成要素の全てを示しているわけではない。
・人形がオンになったときに、参加する既存のネットワークが存在するかどうかを判定するためのチェックを行う〜これは送/受信機212を使用して遂行される。
・利用可能なネットワークが存在しない場合、この人形がコントローラになって自動的にネットワークを設定する〜必要な場合、無線モジュール104がネットワークを作成するようになっている。
・オンになった個々の後続の人形が、メモリに記憶した人形ID番号及びテーマ/複数のテーマID番号を送信する〜情報は送信機212により送信される。
・コントローラがテーマ/複数のテーマをチェックして、コントローラと同じ参加するテーマ/複数のテーマを有する人形のみを許可する〜コントローラユニットが、送信データとメモリに記憶されたデータとの比較を行う。
・2又はそれ以上の人形がネットワークに参加すると、会話を開始することが可能となる。
・ユーザがボタンを押すことなどにより会話を開始し、コントローラが、他の人形に何を発言すべきかを指示する会話を開始する。
・ユーザは、いつでも再びボタンを押して会話を停止することができる。
玩具は通信プロトコルを使用して通信し、メッセージのフォーマットは以下の通りである。
[MessageID,SendingToy_ID,ReceivingToy_ID,MessageType,Parameters]
[MessageID,SendingToy_ID,ReceivingToy_ID,START]
[MessageID,SendingToy_ID,ReceivingToy_ID,STOP]
[MessageID,SendingToy_ID,ReceivingToy_ID,SAY,PhraseID]
[MessageID,SendingToy_ID,ReceivingToy_ID,Ack,Parameter]
[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]
別の実施形態では、玩具が他の同じような玩具とより本物そっくりに対話するようにされる。この人形、乗り物などの形をした玩具は、これらがまるで生きているかのように対話できるようにする対話エンジンを備える。この対話エンジンは、玩具が同時に、すなわち個々の玩具が行動を終えてから別の玩具が別の行動を開始できるようにする必要なく行動を出力できるようにする。この対話エンジンは本明細書で説明する会話エンジンに類似するが、対話エンジンは、会話エンジンに加え或いはこれとは別に発話以外の動きなどの行動の出力を取り扱うことができる。
・行動の開始から時間を計った同期
・玩具が現在の行動を開始してから或る時間間隔後に次の玩具をトリガする。この例では、人形Aが語句1を発言し始めてからx秒後に人形Bが語句2を発言するようにトリガする。
・例えば、この同期の形を使用して、人形Bが人形Aの発言に「飽きて」きたという理由で人形Aの言葉を遮るようにすることができる。
・行動間の時間間隔がゼロの同期
・玩具が現在の行動を開始した直後に玩具をトリガする。この例では、人形Aが語句3を発言し始めた0秒後に人形Bが語句4を発言するようにトリガする。
・例えば、この同期の形を使用して、複数の人形が音楽バンドにいるかのように対話できるようにし、バンドの全てのメンバーが同時に演奏を開始するようにすることができる。
・行動の終了から時間を計った同期
・玩具が現在の行動を終了する前の或る時間間隔に次の玩具をトリガする。この例では、人形Aが語句5を終えるy秒前に人形Bが語句6を発言するようにトリガする。
・例えば、この同期の形を使用して、人形Aが発言を終える前に人形Bが人形Aのジョークに対して「笑い」始めるようにすることができる。
会話エンジンは、会話をオンザフライで構築する。或いは、会話を開始する前に会話全体を構築してその後メモリに記憶し、その後事実上終了まで会話が実行される。しかしながら、いずれにしても、構築される会話は特定のランダム選択に基づくことになる。
・変数の定義及び変数設定
・コンテキスト参照及びスイッチング
・条件付きフロー制御
・無条件フロー制御
・発話語句
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からのフラグに基づいて条件付きで選択を行う。
・ローカル変数〜これらは、個々の玩具/人形に関連する変数である。ローカル変数は、個々の人形のデータセット内で作成される。人形変数は、DEFINE VARIABLE_NAME文により作成される。
・グローバル変数〜これらは、「テーマ」に関連する変数であり、個々の人形とは関連性がない。グローバル変数は、DEFINE G_VARIABLE_NAME文により作成される。
会話中、定義された変数に値を設定することが必要となる。これはSET文で遂行される。以下のように、SET文は、値のセットからランダムに取り出した値で変数を設定できるようにするランダム特徴で構成される。
SET VARIABLE_NAME([w1,value1],[w2,value2],..........,[wn,valuen])
SET COLOUR([1,red],[1,blue],[1,green])
という命令文の場合、変数COLOURを等しい確率で赤色、青色又は緑色に設定することになる。人形の変数は、現在の人形との関連において設定される。
ポインタを使用して発話者に関する情報を記憶するとともに、コントローラ人形が他の人形を参照できるようにする。会話を構築する場合、これらを使用して理にかなった会話を作成し、以下が使用するポインタである。
前の発話者(PREV)=前の発話者のID番号
現在の発話者(ME)=現在の玩具のID番号
次の発話者(NEXT)=選択された次の発話者のID番号
・SELECT NOTME〜これは、ランダムに選択された人形のグループの現在の人形以外のいずれかとなるように次の発話者を選択する。
・SELECT NEXT〜これは、ランダムに選択された人形のグループのいずれかとなるように次の発話者を選択する。
・SELECT PREV〜これは、前の発話者と同じになるように次の発話者を選択する。
・SELECT NAME〜これは、名前NAMEを有する人形を次の発話者となるように選択する。このSELECTコマンドの変形は、台本通りの会話のためのものである。
・SWITCH SPEAKER label〜これは、発話者のコンテキスト及び分岐をラベルが指定する命令に切り替える。コンテキストを切り替えると、前の発話者(PREV)は現在の発話者(ME)に等しくなり、現在の発話者(ME)は次の発話者(NEXT)に等しくなり、次の発話者(NEXT)は未定義となる。
・SWITCH FINISH〜これは、会話を終了するために使用するコマンドである。
時として、会話中、フローが様々な変数の値に左右される。これは、以下のコマンドで遂行される。
・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が指定する命令に分岐し、そうでない場合には次の命令を使用する。
時として、命令のフローを無条件で変更できることが必要となる。この場合、TEST文は使用されずにBRANCH又はCHOOSE文が常に実行される。これは、以下の命令文を使用して遂行される。
・BRANCH label〜これは、ラベルが指定する命令に無条件で分岐する。
・CHOOSE([w1,label1][w2,label2][wn,labeln])〜これは、重み付けw1,w2,...,wnを使用してランダム選択に基づいてlabel1、label2、...、labelnが指定する命令に分岐する。
会話エンジンの重要な部分は語句の発話である。これは、以下の命令文で遂行される。
SAY(phrase1,phrase2,...,phrasen)コマンド。
このコマンドは、現在の発話者(ME)である人形に語句phrase1,phrase2,...,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
図3に示すように、会話エンジンは発話者セレクタ218を有する。発話者セレクタは、次の発話する玩具を選択する。次の発話する玩具を選択するには、ネットワーク内の玩具のいずれかをランダムに選択する、玩具を名前(ID番号)で選択する、及び現在の発話者を選択してもう一度発話させるという3つの可能性がある。従って、次の発話者を選択する第1のプロセスは、上記の3つの可能性のいずれを使用すべきかをランダムに選択することである。次の発話者を名前で選択する場合、その玩具がネットワーク内に存在するかどうかを判定するためのチェックを行う必要がある。
パラメータ記憶メモリ216は、現在の会話に関する情報を記憶する。記憶された情報は、すでに使用された語句、使用された変数、フロー制御変数、及びネットワーク内に存在する人形などのその他のこのような情報を含む。情報は、コントローラ人形内にのみ記憶される。スレーブユニットは、次の発言事項に関する情報のみを受信する。
「私の犬はFluffyという」という語句から記憶される情報は、犬及びFluffyという情報である。この変数を使用して、人形が飼っているペットの種類を設定することができる。人形が特定の変数のサブセットのみを有することができるように変数を設定することができる。例えば、女の子の人形がヘビをペットとして有することはあり得ない。
図4は、人形がメモリに記憶されたテーマを変更又は更新できるプロセスの概略図である。人形300は、人形の識別に使用されるID番号302を含む。人形は、USB接続を介してPC304に接続され、PCは、標準的な接続方式を介してインターネット306に接続されている。インターネットは、ダウンロード可能なテーマ310を含むウェブサイト308にPCを接続することができる。テーマは、接続された人形によって変わるという理由で、ユーザが選択できないサブテーマ312を含む。例えば、人形のID番号を使用して識別されたジャックという人形にはジルのサブテーマは提示されない。テーマは、全ての性格型に対して一般的なものである。サブテーマは、テーマの表現が異なるとともに人形の性格型に依存する点を除き、メインテーマと同一である。従って、オーディオファイルは、異なる声、(同じ意味の)異なる言い回しなど、サブテーマごとに異なる。
前述したように、個々の異なるテーマは、異なる性格を表現できるようにする様々なサブテーマを有する。テーマごとのスクリプトは異なるものであり、これを使用してこのテーマに従う様々な会話を生成する。しかしながら、全てのテーマ内の個々のサブテーマは、会話を生成するための同じスクリプトを有するが、サブテーマ内で使用される言語は異なる。これにより、同じテーマに関して複数の性格を利用できるようにすることができる。
オーサリングツールとは、複数の人形に対して様々な会話テーマを作成するために使用できるアプリケーションのことである。上述したような会話は、会話が従うことができる可能性のある分岐が多数であるため、作成にかなりの量の時間が必要とされる。従って、プロセスをより効率化するために、オーサリングツールを提供してこのプロセスを支援する。クライアントアプリケーションは、図10に示すようなPC1000又はラップトップ1002などのパーソナルコンピュータなどで実行されるが、複数のユーザが同じテーマに取り組めるように、或いは単一のユーザが異なる場所から同じテーマに取り組めるように、データはサーバ1004上に記憶される。サーバ上では、データベースをクライアントアプリケーションとインターフェイス接続するためのウェブサービスが行われる。クライアントアプリケーションは、インターネット306を介してサーバ1004と通信する。クライアントアプリケーションはウェブサービス、ひいてはデータベースへの要求をXMLを使用してフォーマット化し、SOAPプロトコルを使用してデータを送信する。
図11は、オーサリングツールの概要を示す図である。テーマ開発者が玩具のために単純かつ効率的にテーマを出力できるようにするためにユーザインターフェイス1100が設けられる。設けられたユーザインターフェイスを使用して、開発者は以下のステップに従う。
1. テーマ生成エンジン1102を使用してテーマを作成
2. 玩具生成エンジン1104を使用してこのテーマに合わせた玩具を作成
3. コンテキスト入力ウィンドウ1106を使用して個々の玩具ごとに複数のコンテキストを作成
4. コード生成エンジン1108を使用して命令(「C」コード)を出力
5. 辞書生成エンジン1110を使用して個々の人形ごとに記録すべき語句の「辞書」を出力
6. 必要であれば、PCでテーマをテストする際に使用するシミュレーションエンジン1111を使用してシミュレーションとしてテーマを出力
1)これを使用して、フォーマット済みのテキストファイルから会話をインポートすることができる。
2)これを使用して、テーマ生成エンジン1102を使用して複数の人形のためのテーマ別会話を作成及び編集することができる。
3)これを使用して、シミュレーションエンジン1111を使用して会話プロセスをシミュレートし、結果として得られるテーマ別会話のテキスト出力を作成することができる。
4)これを使用して、辞書生成エンジン1110を使用して個々の人形に関する記録すべき全ての語句のリストをまとめることができる。
5)これを使用して、コード生成エンジン1108を用いて「C」コード出力(命令セット)を作成することができ、その後これをコンパイルして修正済みプロセッサファームウェアとリンクさせ、ダウンロードの準備が整っている個々の人形のためにバイナリデータファイルを作成することができる。
オーサリングツールのアプリケーションユーザインターフェイスを図12a〜図15に示す。個々のインターフェイスのウィンドウは、入力ウィンドウとインターフェイス接続するか、或いは次のインターフェイスウィンドウへ進むかのいずれかを行うための数多くのナビゲーションボタンを有する。ユーザインターフェイスは、プロセッサ1150及び関連メモリ1152を利用してテーマ開発者にユーザインターフェイスの様々な態様を表示し、受信機1153を利用してユーザが入力したコンテンツを受信する。プロセッサ1150及びメモリ1152は、PC1000又はラップトップ1002内に位置する。本明細書で使用する場合、用語コンテンツは、スクリプトデータ、表現データ、テーマデータ、人形データ及びユーザがオーサリングツールに入力できる他のあらゆるデータ型を意味する。
テーマの追加(1100):これは新しいテーマを作成するために使用され、通常は使用される最初の選択肢である。図12b及び12cに示すように、以下の入力を必要とするテーマフォームを立ち上げる。
名前:テーマの名前。これは、spoken_text_stringのためのプレースホルダである。
人形の数:このテーマ内でサポートされる人形の総数
説明:テーマの説明
テーマ属性:位置などの、テーマのグローバル属性
人形属性:気分などの、人形のローカル属性
編集(1202):これは既存のテーマを編集するために使用される。例えば、テーマAlon#1(1206)を選択して編集を押すことにより、ユーザがAlon#1のテーマの詳細を編集できるようになる。
除去(1204):これは選択したテーマを削除するために使用される。
・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」コードをここに入力することができる。
c:\youme\themes\theme_name
c:\youme\themes\theme_name\doll_name〜個々の人形ごと
c:\youme\themes\theme_name\doll_name\audio〜個々の人形ごと
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
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.
c:\youme\themes\theme_name\phrases.txt〜これは、このテーマで使用される全ての語句のリストを含む。
c:\youme\themes\theme_name\doll_name\phrases.txt〜これらは、個々の人形が使用する全ての語句のリストを含む。
A00xxx テキストとしての関連語句
1.現在のコンテキストのtransition手順を呼び出して、どの人形が次になるかを決定する。
2.現在のコンテキストのset手順を呼び出して、コンテキスト内で指定されたあらゆる属性の値を設定する。
3.現在のコンテキストのsay手順を呼び出して、コンテキスト内に指定されたデータに従ってどの文を発言すべきかを選択する。この結果、現在の人形がコントローラ人形でない場合、遠隔の人形との無線通信が行われる。いずれにせよ、エンジンは手順の前にオーディオ出力が完了するまで待機する。
4.コンテキストのbranch手順を呼び出して、次のインデックスを選択し、使用する会話配列に入れる。
5.前の人形ポインタ(prev)を現在の人形ポインタ(me)と同等に設定する。
6. 現在の人形ポインタ(me)を次の人形ポインタ(next)と同等に設定する。
次の人形ポインタは、ステップ1において設定済みである。
7.その後、新しいインデックス及び新しい人形で再びステップ1から開始し、ステップ4の1つにおいてFINISH分岐にぶつかるまでこのプロセスを継続する。
・$Theme:
・この記述に続くテキストはテーマ名としてインポートされる。
・$Dolln:
・この記述に続くテキストはDollnと呼ばれる人形のための記述としてインポートされる。
さらなる実施形態では、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のスピーカを介して出力される。
さらなる実施形態では、玩具が子供とゲームをプレイするようにもなっている。例えば、ヘビとはしご、ネズミ取り、ルード又はサイコロを使用してプレイすることができる他のあらゆる偶然に基づくゲームなどのボードゲームを玩具がプレイすることができる。
会話を構築する異なる方法の様々な例が存在する。例えば、動物園というテーマとペットというテーマなどのランダムに生成された会話、台本通りの(確定的)会話、ヘビとはしごなどをプレイできるようにするゲームをプレイするというテーマを有することができる。
図8は、図2及び図3に示す概略図の潜在的生産バージョンのための回路図及びパーツリストの概略を示しており、付録IIが図8内の構成要素について詳述する。図9は代替の回路図の概略を示しており、付録IIIが図9内の構成要素について詳述する。生産回路に含めることができる選択肢が存在し、これらについては後で説明する。
・Jennic無線コントローラ
生産回路はJennicICを使用し、RF回路を含み、ファームウェアとデータとを組み合わせて単一の大型フラッシュメモリICにする。Jennic無線コントローラは、例えばZigbee無線通信プロトコルを使用して人形間で通信を行うことができる。
・充電器
生産回路は、USBポートから充電するように特別に設計された部品を使用し、充電中に回路に給電も行う。
・音声増幅器
生産回路上の音声増幅器はD級オーディオアンプである。このアンプは非常に効率がよい(〜80%)。
このセクションでは、図8の生産回路に含まれていない考えられる選択肢について説明する。
・USBインターフェイス
FTDI FT245RQ
この構成要素は、主にUSBドライバソフトウェアを備えたすぐに使用できるICとして選ばれたものであり、開発労力を低減させる。主な欠点は、Jennic上のほとんどのDIOx線を使用するという点である。これは現行の設計には問題ないが、会話圧縮ICなどの他の選択肢にDIOx線が必要とされる場合、この部品は不適当なものとなる。
以下の両選択肢は、USB内蔵8ビットマイクロコントローラIC及びSPIスレーブインターフェイスである。これらはいずれもこれらを機能的にするために開発されたファームウェア及びソフトウェアドライバを有する必要があるが、両メーカは、このプロセスに役立てるためのリファレンス設計、利用上の注意などを提供している。これらの部品の利点は、JennicSPIインターフェイスとインターフェイス接続することができ、また1本のDIOx線しか必要とせずに他のDIOx線を他の用途のために解放する点である。
Cypress CY7C63833−LFXC
Atmel AT90USB82−16MU
リチウムイオン
図8及び図9に示す回路はリチウムイオン(Li+)電池を使用する。
3つの理由からLi+電池を選択した。
i)形状〜実証機のプロジェクトに便利であった平坦プリズム状パッケージの形で利用可能である。
ii)開発しやすさ〜Li+の充電要件は、特に充電器が追加の回路に同時に給電する必要がある場合に代替品よりも単純である。
iii)電力容量〜実証機起動時の控えめな電力要件の評価値が、利用可能な空間が狭くてもLi技術が十分な電力を与えることが示唆していた。
(後述を参照)。
代替の充電技術は、NiMH及びNiCadである。NiMHは、NiCad(Li+より複雑な)と同様の充電要件を有するが、Li+と同様の(より高い)出力密度(特定の物理体積に関しては保持電力が大きい)及び価格を有する。
このセクションでは、Li+と比較したNiCad/NiMH電池の特性について考察する。説明を簡潔にするために、以下のセクションではNiMHをNiCadと表記する。
通常、NiCad電池には単三及び単四などの標準サイズがあるが、他の形状も利用可能である。小型の構成要素を使用でき、2ピース及び/又はフレキシブル回路/コネクタなどのより複雑なPCBの製造コストが抑制事項にならないと考えられる生産環境では、標準サイズの電池の使用を可能にすることができる。
新しいデータをダウンロードできるように、(USBポートから)電池を充電すると同時に(USBポートから)回路に電源を入れる必要がある(電池の充電と回路への給電とを同時に行うことはできない)。充電中に回路を電池から絶縁すること、或いは回路を接続したままにすることのいずれもが可能である。電池を絶縁するにはより複雑な回路を伴う。回路を接続したままにすることは、回路が制御している電池への通常の電流と、玩具の回路が受ける余分な電流との両方を充電器が見ることを意味する。
このセクションでは、人形の電子部品に関する電源要件について説明する。このセクションで使用される電池寿命は、以下の電池容量に基づくものである。
・単四アルカリ=1150mAh @1.5V
・単四NiCad=300mAh @1.2V
・単四NiMH=750mAh @1.2V
・Li+プリズム状=620mAh@3.7V
注:Li+電池は、同じ定格の場合他の電池の2倍の電力を保持するが、その理由は電圧が2倍の大きさだからである。2つの単四電池を直列で使用する必要があり、或いは1つの単四を昇圧型コンバータと共に使用してその能力を半分とする。
推定電力消費量=発話時136mA、その他の場合48mA。これは、以下で構成される。
・Jennicモジュール=48mA
・音声ドライバ
250mW最大8オームスピーカ出力=175mA、ただし、各々の人形が時間の半分ずつ発話する2つの人形間の会話において=>88mA
注:スピーカが時間全体にわたって最大電力で駆動されることはありそうにないが、オーディオアンプは100%効率ではないので、88mAが合理的な妥協点である。
・残りの回路=無視できる
全体的な電力消費量の中で音声電力が最も重要な因子であるため、より正確な値を得ることが重要である。最良の方法は直接測定であるが、これは音声パフォーマンスが一旦終了したときに限り可能である。
・発話の特性により、波形の平均電力はピーク振幅をかなり下回るものとなる。例えば、発話は多くの休止を含む。従って、回路が最大平均出力レベルを下回るレベルで駆動する可能性がある。
・生産回路で使用されるD級アンプは、図9に示す回路のものよりもはるかに良好な効率を有し、この結果大幅な節電となる。
注:この音声電力レベルは、音楽ではなく発話音声に関するものである。
音声電力の改良評価に基づく電池寿命
人形の電子部品の現在の仕様では、オン/オフスイッチが回路の作動を制御する。他の玩具とは異なり、人形は、アクティブな人形のいずれか1体のボタンが押されるのを待って受動的に座っているので、いつ人形のスイッチがオンになるかは明らかでない。これは、人形の電源をオフにするのを忘れる可能性が高いことを意味する。このため、(翌日などの)次回人形で遊ぶときには電池が切れてしまっている結果となる。
発話の圧縮により、同じメモリ量により多くの音声データを記憶できるようになる。現在の設計には発話圧縮技術は含まれていない。現在の設計では、結果として64kbps(ビット/秒)のデータ転送速度をもたらす8ビット8kHzの音声データが使用され、約1000秒(17分)の音声データを記憶できるようにする64Mbit直列フラッシュメモリが使用されている。会話の圧縮を使用して、このデータ転送速度を2kbpsと8kbpsとの間に下げることができるが、圧縮率を高くするほど音声品質は低くなる。
つまり、8kbpsの場合、4Mbitフラッシュメモリは約500秒(8 1/2分)の音声データを保持することができる。
この選択肢は幅広く調査されていない。まず、適当な圧縮/解凍アルゴリズムのソースコードを発見し、このアルゴリズムをJennicコントローラに移植できるようにする必要がある。次に、このアルゴリズムが必要とし、Jennicコントローラ上で利用可能な処理電力の分析を行う必要がある。
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のセクションを参照)。
現在の設計は、2.4GHzIEEE802.15.4パーソナルエリアネットワーク通信規格に基づくものである。全ての低レベルRF通信に対応するために必要なRFハードウェア及びファームウェアを含む無線マイクロコントローラ製品が存在する。通信内のデータのみは、人形アプリケーションにより定義する必要がある。現在の設計は、Jennic無線マイクロコントローラを選択している。
(1)
少なくとも1つの他の同じような玩具と対話するようにされた玩具であって、
プロセッサと、
前記プロセッサに結合されたメモリと、
を備え、前記プロセッサが、
行うべき行動を表す出力信号を生成する手段と、
少なくとも1つの他のこのような玩具における受信のための、前記玩具が自身の行動を終える前に前記少なくとも1つの他のこのような玩具が行動を起こすようにするためのトリガ信号を生成する手段と、
を備える、
ことを特徴とする玩具。
前記トリガ信号が、前記玩具が自身の行動を開始した後に所定の時間間隔で生成される、
ことを特徴とする項(1)に記載の玩具。
前記トリガ信号が、前記玩具が自身の行動を終える前に所定の時間間隔で生成される、ことを特徴とする項(1)又は項(2)に記載の玩具。
ユーザが前記所定の時間間隔の目安を入力できるようにする入力部をさらに備える、
ことを特徴とする項(2)又は項(3)に記載の玩具。
所定の時間間隔が、1秒未満、又は1/2秒未満、又は1/4秒未満であり、実質的に0秒であることがより好ましい、
ことを特徴とする項(2)、項(3)又は項(4)に記載の玩具。
前記行動が、音を発すること、光を発すること、及び動きのうちの少なくとも1つである、
ことを特徴とする項(1)から項(5)のいずれかに記載の玩具。
前記少なくとも1つの他のこのような玩具と無線で通信するようにされた無線通信モジュールをさらに備える、
ことを特徴とする項(1)から項(5)のいずれかに記載の玩具。
前記無線通信モジュールが、トリガ信号、対話に関する情報、及び玩具に関する情報のうちの少なくとも1つを送信する、
ことを特徴とする項(7)に記載の玩具。
前記対話に関する情報が、玩具が出力する行動、行動の持続時間、及び少なくとも1つの他の玩具がとるべき行動のうちの少なくとも1つを含む、
ことを特徴とする項(8)に記載の玩具。
前記メモリが、所定の対話を記憶するようになっている、
ことを特徴とする項(1)から項(9)のいずれかに記載の玩具。
前記プロセッサは、前記対話を疑似ランダムに決定するようになっている、
ことを特徴とする項(1)から項(10)のいずれかに記載の玩具。
前記玩具が、生きているかのように対話するようになっている、
ことを特徴とする項(1)から項(11)のいずれかに記載の玩具。
前記対話が、会話、音声対話、対人対話、教育的対話、演奏、及びゲームプレイのうちの少なくとも1つである、
ことを特徴とする項(1)から項(12)のいずれかに記載の玩具。
前記玩具が、このような玩具のグループ内のメンバーとして対話するようになっている、
ことを特徴とする項(13)に記載の玩具。
前記グループが、音楽バンド、車のグループ、又は軍事資産のグループのうちの1つを表す、
ことを特徴とする項(14)に記載の玩具。
前記トリガ信号を使用してグループの行動を同期させる、
ことを特徴とする項(14)又は項(15)に記載の玩具。
別のこのような玩具からトリガ信号を受け取る手段をさらに備え、前記トリガ信号を使用して行動を開始する時点を決定する、
ことを特徴とする項(1)から項(16)のいずれかに記載の玩具。
前記玩具が、人形、ゲームボード、乗り物、及び軍事資産のうちの1つである、
ことを特徴とする項(1)から項(17)のいずれかに記載の玩具。
少なくとも1つの他の同じような玩具と対話するようにされた玩具で使用するためのコンピュータ可読メモリであって、
行うべき行動を表す出力信号を生成するためのコードと、
少なくとも1つの他のこのような玩具において受信して、前記玩具が自身の行動を終える前に前記少なくとも1つの他のこのような玩具が行動を起こすようにするためのトリガ信号を生成するためのコードと、
を含むことを特徴とするコンピュータ可読メモリ。
前記メモリが、前記玩具が自身の行動を開始した後に所定の時間間隔で前記トリガ信号を生成するためのコードをさらに含む、
ことを特徴とする項(19)に記載のコンピュータ可読メモリ。
前記メモリが、前記玩具が自身の行動を終える前に所定の時間間隔で前記トリガ信号を生成するためのコードをさらに含む、
ことを特徴とする項(19)又は項(20)に記載のコンピュータ可読メモリ。
前記メモリが、ユーザが前記所定の時間間隔の目安を入力できるようにするためのコードをさらに含む、
ことを特徴とする項(20)又は項(21)に記載のコンピュータ可読メモリ。
前記所定の時間間隔が、1秒未満、又は1/2秒未満、又は1/4秒未満であり、実質的に0秒である、
ことを特徴とする項(20)、項(21)又は項(22)に記載のコンピュータ可読メモリ。
前記行動が、音を発すること、光を発すること、及び動きのうちの少なくとも1つである、
ことを特徴とする項(19)から項(23)のいずれかに記載のコンピュータ可読メモリ。
玩具のテーマ別データを作成するためのオーサリングツールであって、
特定のテーマに関するコンテンツを受信する手段と、
前記コンテンツを処理して、前記特定のテーマ内の前記玩具を動作させる命令セットを生成する手段と、
前記命令セットを出力する手段と、
を含むことを特徴とするオーサリングツール。
前記受信手段が、前記特定のテーマに関するスクリプトデータと、前記玩具の性格を定義する表現データとの両方を別個に含むコンテンツを受信するようにされた、
ことを特徴とする項(25)に記載のオーサリングツール。
前記受信手段が、コンテンツを別の部分の形で受信するようにされた、
ことを特徴とする項(26)に記載のオーサリングツール。
個々の表現データ部分に一意のID番号を割り当てる手段をさらに含む、
ことを特徴とする項(27)に記載のオーサリングツール。
前記処理手段が、前記命令セット内の前記表現データ部分への参照として前記一意のID番号を利用するようにされた、
ことを特徴とする項(28)に記載のオーサリングツール。
前記受信手段が、テーマ全体又はテーマの本質的部分を含むコンテンツを1つの動作で受信するようにされた、
ことを特徴とする項(25)から項(29)のいずれかに記載のオーサリングツール。
前記コンテンツがフォーマット済みファイルの形である、
ことを特徴とする項(30)に記載のオーサリングツール。
前記フォーマット済みファイルがテキストファイルである、
ことを特徴とする項(31)に記載のオーサリングツール。
前記処理手段が、前記フォーマット済みファイルのコンテンツのみを使用して前記命令セットを生成する、
ことを特徴とする項(31)又は項(32)に記載のオーサリングツール。
前記表現データが、テーマ名、前記玩具の名前、及び前記玩具が対話するために使用する文のうちの少なくとも1つを含む、
ことを特徴とする項(25)から項(33)のいずれかに記載のオーサリングツール。
前記スクリプトデータが、前記テーマ内で対話できる玩具の数、対話方法、テーマ関連パラメータ、及び玩具関連パラメータのうちの少なくとも1つを含む、
ことを特徴とする項(25)から項(34)のいずれかに記載のオーサリングツール。
前記玩具関連パラメータが、次の対話する玩具を選択するための予め定めたルールに関する情報を含む、
ことを特徴とする項(35)に記載のオーサリングツール。
前記対話方法がタイミング関連パラメータを含む、
ことを特徴とする項(36)に記載のオーサリングツール。
前記タイミング関連パラメータが、次の玩具がいつ対話を行うかを決定する
ことを特徴とする項(37)に記載のオーサリングツール。
前記タイミング関連パラメータが、前記現在の玩具の対話の開始から前記次の玩具の対話の開始までの時間遅延、及び前記次の玩具の対話の開始から前記現在の玩具の対話の終了前までの時間遅延の一方を含む、
ことを特徴とする項(38)に記載のオーサリングツール。
ゲームに関するコンテンツを受信する手段をさらに含む、
ことを特徴とする項(25)から項(39)のいずれかに記載のオーサリングツール。
前記ゲームに関するコンテンツが、ゲームを実行できるようにするロジックを含む、
ことを特徴とする項(40)に記載のオーサリングツール。
特定のテーマに関する前記スクリプトデータと表現データとを配列の形でともに記憶する手段をさらに含む、
ことを特徴とする項(25)から項(41)のいずれかに記載のオーサリングツール。
前記処理手段が、前記配列から前記命令セットを生成するようにされた、
ことを特徴とする項(42)に記載のオーサリングツール。
前記処理手段が、前記表現データの少なくとも一部を含む少なくとも1つのリストをコンパイルする手段を含む、
ことを特徴とする項(25)から項(43)のいずれかに記載のオーサリングツール。
前記リストコンパイル手段が、前記特定のテーマにおける個々の玩具ごとにそれぞれのリストをコンパイルするようにされた、
ことを特徴とする項(44)に記載のオーサリングツール。
前記表現データがシンボルデータである、
ことを特徴とする項(25)から項(45)のいずれかに記載のオーサリングツール。
前記シンボルデータの上演データバージョンを記録する記録手段をさらに含む、
ことを特徴とする項(46)に記載のオーサリングツール。
関係者に、上演データの必要な部分を生成するように促す手段をさらに含む、
ことを特徴とする項(47)に記載のオーサリングツール。
前記プロセッサが、前記シンボルデータと上演データとの間のルックアップテーブルを生成するようにされた、
ことを特徴とする項(47)又は項(48)に記載のオーサリングツール。
前記処理手段が、前記表現データを出力するようにされた、
ことを特徴とする項(25)から項(49)のいずれかに記載のオーサリングツール。
前記処理手段がさらに、前記表現データと命令セットとを別個に出力するようにされた、
ことを特徴とする項(50)に記載のオーサリングツール。
前記処理手段が、前記玩具の基本機能を制御するための基本命令セットと、該基本命令セットが前記テーマ内の前記玩具を制御するためのテーマ別命令セットとを含む命令セットを生成するようにされた、
ことを特徴とする項(25)から項(51)のいずれかに記載のオーサリングツール。
前記プロセッサが、前記基本命令セット及び前記テーマ別命令セットを共に組み合わせるようにされた、
ことを特徴とする項(52)に記載のオーサリングツール。
コンパイラをさらに含む、
ことを特徴とする項(52)又は項(53)に記載のオーサリングツール。
前記コンパイラが、前記基本命令セット及び前記テーマ別命令セットをコンパイルするようにされた、
ことを特徴とする項(54)に記載のオーサリングツール。
前記プロセッサが、前記命令セットをコンピュータ可読コードに変換するようになっている符号化エンジンを含む、
ことを特徴とする項(25)から項(55)のいずれかに記載のオーサリングツール。
前記オーサリングツールの前記出力が会話エンジン内で使用されるようにされ、該会話エンジンが、
会話のテーマを選択する手段と、
複数の起点から起点をランダムに選択する手段と、
変数に基づいて語句をランダムに選択する手段と、
変数に基づいて次の発話者をランダムに選択する手段と、
を含むことを特徴とする項(25)から項(56)のいずれかに記載のオーサリングツール。
玩具のテーマ別データを作成するオーサリングツールのためのユーザインターフェイスであって、
各々がテーマに関するコンテンツの特定のサブセットの入力に対応する入力ウィンドウのセットをユーザに提供する手段と、
前記テーマ別データの出力を開始する手段と、
を含むことを特徴とするユーザインターフェイス。
前記コンテンツのサブセットが、テーマ関連データ、玩具関連データ及びコンテキスト関連データのうちの少なくとも1つを含む、
ことを特徴とする項(58)に記載のユーザインターフェイス。
前記コンテキスト関連データが、前記玩具が対話するために使用する文、対話方法、テーマ関連パラメータ及び玩具関連パラメータのうちの少なくとも1つを含む、
ことを特徴とする項(59)に記載のユーザインターフェイス。
玩具のテーマ別データを生成するためのシステムであって、
前記テーマ別データにアクセスし、これを作成及び編集するためのオーサリングツールと、
前記テーマ別データを記憶するためのデータベースを含むサーバと、
を含み、
前記オーサリングツールが、インターネットを介して前記テーマ別データにアクセスするようにされた、
ことを特徴とするシステム。
前記オーサリングツールが、前記テーマ別データを処理して配列するようにされ、前記データベースが、前記テーマ別データを前記配列の形で記憶するようにされた、
ことを特徴とする項(61)に記載のシステム。
前記オーサリングツールが、項(25)から項(57)のいずれかに記載のオーサリングツールである、
ことを特徴とする項(62)に記載のシステム。
ユーザインターフェイスをさらに含む、
ことを特徴とする項(61)から項(63)のいずれかに記載のシステム。
前記インターフェイスが、項(58)から項(60)のいずれかに記載のインターフェイスである、
ことを特徴とする項(64)に記載のシステム。
少なくとも1つの他の同じような玩具と対話するようにされた少なくとも1つの玩具とコンピュータとの間に無線通信を提供するための装置であって、
前記装置を前記コンピュータに接続する通信ポートと、
前記コンピュータと前記又は各玩具との間にネットワークを確立する手段と、
を含み、
前記装置が、前記コンピュータが別のこのような玩具であるかのように前記又は各玩具と通信できるようにする、
ことを特徴とする装置。
前記装置が、前記コンピュータを仮想玩具として機能できるようにする、
ことを特徴とする項(66)に記載の玩具。
前記通信ポートがUSB通信ポートである、
ことを特徴とする項(66)又は項(67)に記載の玩具。
前記ネットワークが無線である、
ことを特徴とする項(66)、項(67)又は項(68)に記載の玩具。
少なくとも1つの他の同じような玩具と対話するようにされた少なくとも1つの玩具と、
各々が項(66)から項(69)のいずれかに記載の装置を含む少なくとも1つのコンピュータと、
を含み、
前記コンピュータと装置との組み合わせが、さらなるこのような玩具であるかのように機能する、
ことを特徴とするシステム。
前記コンピュータが、仮想玩具を提供するようになっている視覚及び音声出力を含む、ことを特徴とする項(70)に記載のシステム。
前記仮想玩具がアバターである、
ことを特徴とする項(71)に記載のシステム。
1702:メモリ
1704:変換器
1706:無線通信モジュール
1708:対話エンジン
Claims (19)
- 少なくとも1つの他の同じような玩具と対話するようにされた玩具であって、
プロセッサと、
前記プロセッサに結合されたメモリと、
を備え、前記プロセッサが、
第1の玩具が行うべき行動を表す出力信号を生成する手段と、
少なくとも1つの第2の玩具が受信するための、前記第1の玩具が行動を終える前に前記第2の玩具が行動を起こすようにするためのトリガ信号を、前記第1の玩具が行動している間に生成する手段と、
を備える、
ことを特徴とする玩具。 - 前記トリガ信号が、前記玩具が自身の行動を開始した後に、又は前記玩具が自身の行動を終える前に、所定の時間間隔で生成される、
ことを特徴とする請求項1に記載の玩具。 - ユーザが前記所定の時間間隔の目安を入力できるようにする入力部をさらに備える、
ことを特徴とする請求項2に記載の玩具。 - 前記所定の時間間隔が、1秒未満、又は1/2秒未満、又は1/4秒未満である、
ことを特徴とする請求項2又は請求項3に記載の玩具。 - 前記行動が、音を発すること、光を発すること、及び動きのうちの少なくとも1つである、
ことを特徴とする請求項1から請求項4のいずれかに記載の玩具。 - 前記少なくとも1つの他のこのような玩具と無線で通信するようにされた無線通信モジュールをさらに備える、
ことを特徴とする請求項1から請求項5のいずれかに記載の玩具。 - 前記無線通信モジュールが、トリガ信号、対話に関する情報、及び玩具に関する情報のうちの少なくとも1つを送信し、前記対話に関する情報が、玩具が出力する行動、行動の持続時間、及び少なくとも1つの他の玩具がとるべき行動のうちの少なくとも1つを含む、
ことを特徴とする請求項6に記載の玩具。 - 前記メモリが、前記対話に関する情報を記憶するようになっている、
ことを特徴とする請求項1から請求項7のいずれかに記載の玩具。 - 前記プロセッサは、前記対話を疑似ランダムに決定するようになっている、
ことを特徴とする請求項1から請求項8のいずれかに記載の玩具。 - 前記対話が、会話、音声対話、対人対話、教育的対話、演奏、及びゲームプレイのうちの少なくとも1つである、
ことを特徴とする請求項1から請求項9のいずれかに記載の玩具。 - 前記トリガ信号を使用してグループの行動を同期させる、
ことを特徴とする請求項10に記載の玩具。 - 別のこのような玩具からトリガ信号を受け取る手段をさらに備え、前記トリガ信号を使用して行動を開始する時点を決定する、
ことを特徴とする請求項1から請求項11のいずれかに記載の玩具。 - 前記玩具が、人形、ゲームボード、乗り物、及び軍事資産のうちの1つである、
ことを特徴とする請求項1から請求項12のいずれかに記載の玩具。 - 少なくとも1つの他の同じような玩具と対話するようにされた玩具で使用するためのコンピュータ可読メモリであって、
第1の玩具が行うべき行動を表す出力信号を生成するステップと、
少なくとも1つの第2の玩具において受信して、前記第1の玩具が自身の行動を終える前に前記第2の玩具が行動を起こすようにするためのトリガ信号を、前記第1の玩具が行動している間に生成するステップと、
を前記玩具のプロセッサに実行させるプログラムを記憶したことを特徴とするコンピュータ可読メモリ。 - 前記プログラムが、前記玩具が自身の行動を開始した後に、又は前記玩具が自身の行動を終える前に、所定の時間間隔で前記トリガ信号を生成するステップをさらに前記玩具のプロセッサに実行させる、
ことを特徴とする請求項14に記載のコンピュータ可読メモリ。 - 前記プログラムが、ユーザが前記所定の時間間隔の目安を入力できるようにするステップをさらに前記玩具のプロセッサに実行させる、
ことを特徴とする請求項15に記載のコンピュータ可読メモリ。 - 前記所定の時間間隔が、1秒未満、又は1/2秒未満、又は1/4秒未満である、
ことを特徴とする請求項15又は請求項16に記載のコンピュータ可読メモリ。 - 前記行動が、音を発すること、光を発すること、及び動きのうちの少なくとも1つである、
ことを特徴とする請求項14から請求項16のいずれかに記載のコンピュータ可読メモリ。 - 玩具と少なくとも1つの他の同じような玩具との間の対話の方法であって、
前記玩具のプロセッサが、第1の玩具が行うべき行動を表す出力信号を生成するステップと、
前記玩具のプロセッサが、少なくとも1つの第2の玩具が受信するための、前記第1の玩具が行動を終える前に前記第2の玩具が行動を起こすようにするためのトリガ信号を、前記第1の玩具が行動している間に生成するステップと、
を含む、
ことを特徴とする方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/GB2008/002457 WO2009010760A2 (en) | 2007-07-19 | 2008-07-18 | Interacting toys |
GBPCT/GB2008/002457 | 2008-07-18 | ||
PCT/GB2009/000160 WO2010007336A1 (en) | 2008-07-18 | 2009-01-21 | Interacting toys |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013192224A Division JP2014028284A (ja) | 2008-07-18 | 2013-09-17 | 対話式玩具 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2011528246A JP2011528246A (ja) | 2011-11-17 |
JP2011528246A5 JP2011528246A5 (ja) | 2012-03-15 |
JP5404781B2 true JP5404781B2 (ja) | 2014-02-05 |
Family
ID=40651476
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011517987A Expired - Fee Related JP5404781B2 (ja) | 2008-07-18 | 2009-01-21 | 対話式玩具 |
JP2013192224A Pending JP2014028284A (ja) | 2008-07-18 | 2013-09-17 | 対話式玩具 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013192224A Pending JP2014028284A (ja) | 2008-07-18 | 2013-09-17 | 対話式玩具 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP2341991A1 (ja) |
JP (2) | JP5404781B2 (ja) |
WO (1) | WO2010007336A1 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0714148D0 (en) | 2007-07-19 | 2007-08-29 | Lipman Steven | interacting toys |
WO2012142936A1 (zh) * | 2011-04-19 | 2012-10-26 | 玩具概念有限公司 | 电子互动玩具装置 |
CN102881198A (zh) * | 2011-09-15 | 2013-01-16 | 徐菲 | 互动火车学习机玩具装置及方法 |
CN102836549B (zh) * | 2011-06-24 | 2014-12-31 | 徐菲 | 电子互动玩具装置及方法(射击玩具类) |
CN102836548A (zh) * | 2011-06-24 | 2012-12-26 | 徐菲 | 电子互动玩具装置及方法(旋转木马类) |
CN102799155B (zh) * | 2012-07-27 | 2014-08-20 | 宁波华亿第三极科技有限公司 | 游乐设备智能控制系统的控制方法 |
GB2511479A (en) * | 2012-12-17 | 2014-09-10 | Librae Ltd | Interacting toys |
CA2957265C (en) * | 2014-08-15 | 2022-05-17 | Vtech Electronics, Ltd. | Electronic toy with radial independent connector and associated communication protocol |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5746602A (en) * | 1996-02-27 | 1998-05-05 | Kikinis; Dan | PC peripheral interactive doll |
JPH09281985A (ja) * | 1996-04-11 | 1997-10-31 | Kirindou:Kk | 整合性を保った会話の出来る音声発生装置 |
JP3179370B2 (ja) * | 1997-06-25 | 2001-06-25 | 神戸日本電気ソフトウェア株式会社 | おしゃべりオウム発声装置 |
JP2000135384A (ja) * | 1998-10-30 | 2000-05-16 | Fujitsu Ltd | 情報処理装置及び擬似生物機器 |
WO2000066239A1 (fr) * | 1999-04-30 | 2000-11-09 | Sony Corporation | Systeme d'animal de compagnie electronique, systeme de reseau, robot et support de donnees |
JP4337167B2 (ja) * | 1999-05-31 | 2009-09-30 | ソニー株式会社 | 情報着信通知装置、情報送信方法および情報着信通知システム |
JP2002063505A (ja) * | 2000-08-16 | 2002-02-28 | Nippon Telegr & Teleph Corp <Ntt> | 情報配信方法、情報配信センタ装置、情報配信端末装置及びキャラクタ人形 |
JP4670136B2 (ja) * | 2000-10-11 | 2011-04-13 | ソニー株式会社 | オーサリング・システム及びオーサリング方法、並びに記憶媒体 |
JP2002307354A (ja) * | 2000-11-07 | 2002-10-23 | Sega Toys:Kk | 電子玩具 |
JP2002259376A (ja) * | 2001-02-28 | 2002-09-13 | Vivarium Inc | 電子ペットの自然言語生成システム |
JP2002292154A (ja) * | 2001-03-30 | 2002-10-08 | Bandai Co Ltd | 運動体制御システム |
JP2002337079A (ja) * | 2001-05-11 | 2002-11-26 | Sony Corp | 情報処理装置および方法、記録媒体、並びにプログラム |
JP2003205483A (ja) * | 2001-11-07 | 2003-07-22 | Sony Corp | ロボットシステム及びロボット装置の制御方法 |
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 |
EP1885466B8 (en) * | 2005-04-26 | 2016-01-13 | Muscae Limited | Toys |
GB0714148D0 (en) * | 2007-07-19 | 2007-08-29 | Lipman Steven | interacting toys |
-
2009
- 2009-01-21 EP EP09784524A patent/EP2341991A1/en not_active Withdrawn
- 2009-01-21 JP JP2011517987A patent/JP5404781B2/ja not_active Expired - Fee Related
- 2009-01-21 WO PCT/GB2009/000160 patent/WO2010007336A1/en active Application Filing
-
2013
- 2013-09-17 JP JP2013192224A patent/JP2014028284A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
JP2014028284A (ja) | 2014-02-13 |
EP2341991A1 (en) | 2011-07-13 |
WO2010007336A1 (en) | 2010-01-21 |
JP2011528246A (ja) | 2011-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5628029B2 (ja) | 対話式玩具 | |
JP5404781B2 (ja) | 対話式玩具 | |
JP2011528246A5 (ja) | ||
US8324492B2 (en) | Musically interacting devices | |
US6110000A (en) | Doll set with unidirectional infrared communication for simulating conversation | |
CN101208141B (zh) | 玩具 | |
US9039482B2 (en) | Interactive toy apparatus and method of using same | |
JP3494567B2 (ja) | 携帯用通信玩具及び情報記憶媒体 | |
US20130059284A1 (en) | Interactive electronic toy and learning device system | |
US10643482B2 (en) | Fill-in-the-blank audio-story engine | |
JP2003205483A (ja) | ロボットシステム及びロボット装置の制御方法 | |
US20140170929A1 (en) | Interacting toys | |
Angulo et al. | Aibo jukeBox–A robot dance interactive experience | |
KR101419038B1 (ko) | 시나리오 명령을 통한 완구의 제어 시스템 | |
WO2005038776A1 (en) | Voice controlled toy | |
WO2019132092A1 (ko) | 음성인식 기능을 가진 봉제 인형 로봇 | |
TW200909035A (en) | Interactive motion toy system and control method therefor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120123 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120123 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120720 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120726 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20121026 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20121102 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130128 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130314 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20130613 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20130620 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20130712 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20130722 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130917 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20131007 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131029 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |