説明

モバイル・エージェント情報、プラットフォーム情報および情報記憶媒体

【課題】 情報端末装置間を自律的に移動する電子ペットを実現する。
【解決手段】 通信回線8に接続し、データの送受信可能な情報端末装置(ノード)であるパソコン2、携帯電話機3A〜3C、PDA4に、モバイル・エージェントの実行環境であるプラットフォームを機能させる。電子ペットEであるモバイル・エージェントは、電子ペットの育成情報と、移動の目的を定義した情報と、移動発源ノード(パソコン2)に戻るための宛先情報とを有し、各ノードにおいてプラットフォーム上で実行されることによって装置で育成ゲームを実行させる。そして、移動先のノードで目的を達したならば、次のノードに移動する、或いは宛先情報に基づいて電子メールMを介して移動発源ノードに戻る。従って、ユーザは、ノード間を移動する電子ペットを楽しむことができる。

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、所定の通信回線に接続可能な情報端末装置において、育成ゲーム的要素を備えたモバイル・エージェント情報等に関する。
【0002】
【従来の技術】従来、所与のキャラクタ(例えば、白いネコ、桃色のクマ、女の子など)の画像を、仮想ペットや仮想住人(以下、電子ペットと言う)にみたてて世話をして育成遊戯を楽しむ、所謂育成ゲームがある。
【0003】育成ゲームでは、プレーヤは、家庭用ゲーム装置やパソコン、携帯電話、PDAなどの情報端末装置によって表示される電子ペットに対して、例えば、会話や食事、身繕い、しりとり、ゲーム、トレーニングなど、種々の世話を行う操作をする。世話が行われる都度、世話の内容に応じて電子ペットの育成パラメータが変化し、該育成パラメータに基づいて、電子ペットの動作や会話の程度が変化する。従って、あたかも電子ペットが成長してゆくかのような擬似体験を楽しむことができる。
【0004】中には、家庭用ゲーム装置と通信回線接続可能な携帯情報端末装置に電子ペットのデータを移動させ、プレーヤが該装置を携行し、常に身近におくことで、より親密感を増加させるものもある。
【0005】こうした育成ゲームは、現実では育成不可能な電子ペットを育成できること、また実際のペットより世話が手軽であることから、ゲームにおける確たるジャンルを形成している。昨今の傾向としては、より世話の種類が豊富で、より様々な振舞いをする電子ペットが望まれている。
【0006】
【発明が解決しようとする課題】しかしながら、従来の育成ゲームでは、所定のアプリケーション・プログラムを実行することによって表示される画像をペットに観たてているのであって、その活動範囲はプログラムを実行する装置に限られていた。その為、例えば、イヌがご主人様(ユーザ)の言うことを聞いて何かを拾ってくると言った、所定の場所(情報端末装置)から移動して何らかの動作を実現することができず、いくら世話の種類を増加させ、電子ペットの動作を豊富にしても、電子ペットとしての行動に限界が生じ、マンネリ化する問題があった。
【0007】本発明は、上記課題を鑑みてなされたものであり、その目的とするところは、情報端末装置間を自律的に移動する電子ペットを実現することである。
【0008】
【課題を解決するための手段】上記課題を解決するために、請求項1記載の発明は、所定の通信手段を有する情報端末装置間を、前記通信手段を介して自律的に移動するとともに、滞在中の情報端末装置に所与の処理を実行させるモバイル・エージェント情報であって、移動発源の情報端末装置の宛先情報(例えば、図2のユーザ情報727)と、所与の達成条件を表す達成条件情報(例えば、図2のお出かけ行動表716)と、キャラクタの育成パラメータを表す育成情報(例えば、図2の育成パラメータ718−2)とを含むとともに、滞在中の情報端末装置に対して、前記育成情報に記述された育成パラメータに基づく前記キャラクタの育成遊戯を表示・実行して、前記育成情報を更新する育成手段(例えば、図2のエージェント実行部220)と、当該滞在中の情報端末装置内に記憶されているデータに基づいて、前記達成条件が満たされるか否かを判定する達成判定手段(例えば、図2のエージェント実行部220)と、を機能させるための情報(例えば、図2のエージェント情報71)を含む。
【0009】モバイル・エージェント(mobile agent)とは、通信回線を利用した分散システムのための公知技術の一つであって、有線/無線通信によってデータの送受信が可能な情報端末装置(以下、ノードと言う)を自律的に移動し、移動先のノードの記憶部に記憶され(モバイル・エージェント側から見ると滞在して)、該ノードに所与の機能を実行させる能力を持つプログラムである。プログラム自体を移動し、移動先のノード内で、移動元のノードとの通信無しに処理を実行することができる。
【0010】モバイル・エージェント情報とは、このモバイル・エージェント自体のプログラムコード及びプログラムの実行に必要な種々のデータを含む情報のことである。
【0011】請求項1記載の発明によれば、モバイル・エージェントは、電子ペットとしての成長の度合いや世話の程度を記憶する育成パラメータを表す育成情報を含み、移動先のノードにおいて育成遊戯を実行させる。そして、育成遊戯の結果として前記育成情報を更新することで、所謂育成ゲームを機能させる。ここで言う育成遊戯とは、例えば、絵を書く、日記を書く、歌う、宝物を埋める、踊るなどの電子ペットの一人遊び、並びにトランプ、しりとり、じゃんけん、所与のミニゲームなどの電子ペットとユーザとがいっしょに楽しむ遊び、ユーザから電子ペットへの給餌やしつけ、身繕い、言葉を教えるなどの世話、などである。
【0012】そして、モバイル・エージェントには、ユーザの使用する主たる情報端末装置である移動発源(以下、移動発源ノードという)を識別し移動先のノードから戻ってくるための宛先情報と、移動先のノードで達成すべき条件を設定した達成条件情報と、が備えられている。
【0013】宛先情報とは、例えば、通信回線接続のIPアドレスや、電子メールアドレス、装置の識別番号、URLなど特定のノードを識別してアクセスするのに必要な情報である。達成情報とは、例えば、「指定されたテキストや画像を装置に付属するディスプレイ装置等に表示する」、「音声を再生する」、「指定された文字列を含むファイルを検索して複製する」、「指定された宛先に電子メールを送信する」、「所与の時間留まる」など移動先の装置で実行可能な種々の動作や状態を達成条件として指定する情報であって、移動先のノードで取得できる種々のデータと比較することで達成されたか否かが判断される。
【0014】従って、モバイル・エージェントは、従来と同様に電子ペットとして育成ゲームの対象となるとともに、ノード間を移動することができ、しかも予め達成条件を与えておけば(設定しておけば)移動先で達成条件を満たすと、前記宛先情報に基づいて移動発源ノードに帰ってくることができる。
【0015】例えば、モバイル・エージェント(電子ペット)は、ユーザの所有するゲーム装置を移動発源ノードとして、その中に滞在するだけでなく、外出時には携帯電話機に移動してユーザとともに外出し、外出先でユーザから世話を受け、また会話をすることができる。そして、帰宅後は携帯電話機からパソコンに移動して、ユーザが仕事をしているデスクトップ画面上に居て、仕事の合間に世話を受け、会話をすることができる。電子ペットがいつのまにかゲーム装置から抜け出して、携帯電話機のなかでユーザが出かけるのを待っているといった状況も可能となる。
【0016】また、ユーザの言いつけ(達成条件情報)に従って、ノード間を渡り歩き、言いつけを果たして(即ち達成条件をクリアして)ちゃんとご主人様のもと(移動発源ノード)に戻ってくることも可能となる。言いつけとして、電子ペットに、指定したファイルを特定のノードに運ばせる、或いはノード間を移動して指定した条件を満たすファイルを集めさせることも可能となる。
【0017】このように、請求項1記載の発明によれば、情報端末装置間を自律的に移動する電子ペットを実現し、電子ペットの行動範囲を所定の装置から広げることで、あたかも、本物のペットのような移動を伴った振舞いをさせることが可能となり、世話や動作にバリエーションを付加し、育成ゲームの楽しみ方を増やすことができる。また、達成条件の設定によっては、単なる育成ゲームとしての効果に加え、例えば、情報の配布機能や、新しい人間関係の出会いをもたらすコミュニケーションツールとしての機能を実現することができる。
【0018】尚、通信回線とは、データ授受が可能な通信路を意味する。即ち、通信回線とは、直接接続のための専用線(専用ケーブル)やイーサネット(R)等によるLANの他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また通信方法については有線/無線を問わない意味である。
【0019】また、請求項2記載の発明のように、自装置の現在位置を検出する検出手段(例えば、図2の位置情報検出部60、位置情報取得部26)と、所定の通信手段とを有する情報端末装置間を、前記通信手段を介して自律的に移動するとともに、滞在中の情報端末装置に所与の処理を実行させるモバイル・エージェント情報であって、移動発源の情報端末装置の宛先情報と、位置に関する所与の達成条件を表す達成条件情報と、キャラクタの育成パラメータを表す育成情報とを含むとともに、滞在中の情報端末装置に対して、前記育成情報に記述された育成パラメータに基づく前記キャラクタの育成遊戯を表示・実行して、前記育成情報を更新する育成手段と、前記検出手段による検出結果に基づいて、前記達成条件が満たされるか否かを判定する達成判定手段(例えば、図2のエージェント実行部220)と、を機能させるための情報を含むとしても良い。
【0020】自装置の現在位置とは、ノードの存在する地理的な位置条件であって、例えば、住所、緯度経度、高度、建物の名前などである。自装置の現在位置を検出する検出手段とは、例えば、公知のGPS機能、携帯電話機やPHSによる位置情報検索サービス等がこれに該当する。
【0021】請求項2記載の発明によれば、モバイル・エージェントは、移動先のノードで位置情報を取得し、達成条件に設定された位置情報と比較することで、移動発源ノードとは異なった位置に存在する別のノードを目的地して移動することができる。
【0022】具体的には、例えば、達成情報を「北海道稚内市(わっかないし)に到達」とするならば、電子ペットは、現在の位置情報と稚内市の位置情報(例えば緯度経度)を比較して、北に向けて自動的に移動し、稚内市に存在する何れかのノードに移動することができる。或いは、所定の住所に在住の友人宅のノードに移動させることもできる。
【0023】この様に、達成条件に位置情報を加えることで、モバイル・エージェントの移動方向や、具体的な移動先を確実に指定することが可能となり、例えば、電子ペットに旅をさせる、特定の相手にメールを運ばせると言った、従来の電子ペットでは実現されなかった振舞いを作りだすことができる。
【0024】更に、請求項3記載の発明のように、請求項1又は2のモバイル・エージェント情報において、滞在中の情報端末装置に対して、前記育成情報に記述された育成パラメータに基づいて、移動が可能か否かを判定する判定手段(例えば、図2のエージェント実行部220)を機能させるための情報(例えば、図2のエージェント情報71)を含み、前記判定手段により移動可能と判定された場合に他の情報端末装置への移動が可能となるとしても良い。
【0025】請求項3記載の発明によれば、請求項1又は2と同様の効果を奏するとともに、モバイル・エージェントの移動は、判定手段によって育成情報に基づいて可否判定される。例えば、電子ペットが、育成間もない頃ではノード間の移動はできないが、成長とともに自身で移動をするようにできる。従って、従来のように、成長の証が単に画面内の電子ペットの動作表示が変化し、会話のボキャブラリーが増えるだけではなく、ユーザはより育成の程度や育成の証を明確に体感できるようになる。
【0026】移動可能の判定は、その他、複数の中から移動先を選択できるようになる、電子メールアドレスを指定すれば移動するようになる、複数の移動先を連続して移動できる、などの移動能力の変化を設定しても良いのは勿論である。
【0027】また、請求項4記載の発明のように、請求項1〜3の何れかのモバイル・エージェント情報において、移動先条件を表す移動先条件情報(例えば、図2のお出かけ行動表716、条件定義ファイル716−2)を含むとともに、滞在中の情報端末装置に対して、前記通信手段を介して他の情報端末装置と通信を行い、当該他の情報端末装置が前記移動先条件を満たすか否かを判定する移動判定手段(例えば、図2のエージェント実行部220)と、前記移動判定手段により、移動先条件を満たすと判定された場合に、当該他の情報端末装置に移動する移動手段(例えば、図2のエージェント実行部220)と、を機能させるための情報を含むとしても良い。
【0028】移動先条件とは、例えば、ノードの有する機能や、ノードの有る場所の情報、所有者の情報、ノードが実行中のプログラムの状態、ノードのIDや製造メーカなどの情報などであって、適宜設定して構わない。
【0029】請求項4記載の発明によれば、請求項1〜3の何れかと同様の効果を奏するとともに、モバイル・エージェントは、移動に先立って移動判定手段によって移動先のノードが移動先条件を満たしているか否かを判定し、条件に見合う移動先を選択する。これによって、例えば、現在より所定の方角に向かう場合には、よりその方角に近い場所のノードを選択することで、効率的に移動することができる。また、移動前に機能の確認をすることで、送信機能の無いノードに移動してしまって、移動発源ノードに戻れなくなるなどのノードの機能による障害を回避できる。
【0030】また、ユーザにとってみれば、電子ペット(モバイル・エージェント)に様々なバリエーションのある行動をとらせることができる。例えば、電子ペットに、所有者の情報から同じ出身地のノードを選択して移動して、友達の輪を広げるきっかけにすることもできる。
【0031】請求項5記載の発明は、請求項1〜4の何れかのモバイル・エージェント情報において、前記通信手段は、アドホック・ネットワークを形成するための近距離無線手段(例えば、図2のBluetooth(R)チップ52、Bluetooth(R)制御部252)であり、当該アドホック・ネットワークを通じて情報端末装置間を自律的に移動することを特徴とする。
【0032】アドホック・ネットワークとは、人が携帯型の情報端末装置を持って移動することによって、人の移動に伴って次々と変化する身辺の機器・装置と動的にネットワークと形成されるネットワークのことである。従来のようにネットワークを構成する機器や端末が固定されず、また、所定の人の作業によるケーブル接続や無線回線接続を必要としない。アドホック・ネットワークを形成するための近距離無線手段としては、例えば、Bluetooth(R)((R)は登録商標を意味する)などの技術が上げられる。
【0033】請求項5記載の発明によれば、請求項1〜4の何れかと同様の効果を奏するとともに、いちいち人がネットワークに繋げるための作業を必要としないために、ユーザに、モバイル・エージェントである電子ペットが自身で出かけていく感覚をより一層感じさせることができる。また、ユーザに、たまたまその瞬間にそこに存在した或いはそこに居た「縁」で繋がる感覚を与えることで、新しい出会いに対する期待感やわくわく感を感じさせることができる。
【0034】更に、請求項6記載の発明のように、請求項1〜4の何れかのモバイル・エージェント情報において、前記通信手段は、アドホック・ネットワークを形成して前記移動を実現するための近距離無線手段と、インターネットに接続可能なネット接続手段とを有し、滞在中の情報端末装置に対して、前記達成判定手段により達成条件を満たすと判定された場合に、前記宛先情報に基づいて、前記ネット接続手段を介して移動発源の情報端末装置に報知情報を送信する送信手段を機能させるための情報(例えば、図2のエージェント情報71、お出かけ行動表716)を含むことを特徴としても良い。
【0035】モバイル・エージェントは、ユーザの直接的な操作から離れて他のノードで動作するために、ユーザは、モバイル・エージェントがちゃんと動作しているか窺い知ることはできない。しかし、請求項6記載の発明よれば、請求項1〜4の何れかと同様の効果を奏するとともに、モバイル・エージェントは、移動先のノード(滞在中の情報端末装置)において、所与の達成条件を満たすと、移動発源ノードに対してインターネットを介して、例えば、電子メール等でその旨知らせることができる。これによってユーザは、モバイル・エージェントが、他のノードでの行動の一部を知ることが可能になる。
【0036】報知情報は、最終的な達成条件を満たす場合に限らず、適宜各段階の達成条件に基づいて発するとしても構わない。例えば、他のノードへ移動して、所与のテキストを含んだファイルを持ち帰る場合、最終的な達成条件は、ファイルを持ち帰ることであるが、その過程の移動完了も一つの達成条件とみなし、ノード間の移動がエラーなく完了したならば、その旨の報知情報を送信する。これによって、ユーザは、モバイル・エージェントの動向を知ることができ、何らかのエラーで戻ることのできないモバイル・エージェントの帰りを待つことを回避できる。
【0037】また、請求項7記載の発明のように、請求項6のモバイル・エージェント情報において、前記達成判定手段により達成条件を満たすと判定された場合に、前記宛先情報に基づいて、前記ネット接続手段を介して移動発源の情報端末装置に移動するための情報(例えば、図2のエージェント情報71、ブリーダ情報718−1)を含むとしても良い。
【0038】先に述べたようにアドホック・ネットワークは、その構成が固定されているわけではないので、モバイル・エージェントが移動先のノードで所与の条件を達成して移動発源ノードに戻る際に、移動時に形成されていたネットワークが維持されているとは限らない。
【0039】請求項7記載の発明によれば、請求項6と同様の効果を奏するとともに、例えば、電子メールとともにモバイル・エージェント自身を添付することで、アドホック・ネットワークが形成されていない状態であっても、移動発源ノードに戻ることが可能となる。
【0040】また、請求項8記載の発明のように、請求項6又は7のモバイル・エージェントにおいて、滞在中の情報端末装置に対して、当該滞在中の情報端末装置の特定情報を、前記ネット接続手段を介して所定のサーバに送信する手段を機能させるための情報(例えば、図2のエージェント・プログラム710、お出かけ行動表716、添付ファイル情報718−4)を含むとしても良い。
【0041】特定情報とは、ノードへの連絡やデータの送受信を可能にするための個体識別のための情報であって、例えば、ノードが携帯電話であれば電話番号、電子メール機能を備えていれば電子メールアドレス、などである。
【0042】請求項8記載の発明によれば、請求項6又は7と同様の効果を奏するとともに、モバイル・エージェントの滞在中の場所(ノード)を特定する情報をサーバに記憶しておくことが可能となり、所謂迷子状態を回避することができる。更には、前記特定情報とともに、自身の複製を添付・送信するならば、サーバにモバイル・エージェントのバックアップをとることが可能となる。従って、移動先のノードが何らかの理由で、他のノードとアドホック・ネットワークを形成できない状況(例えば、山の中にいる、海の上にいる、故障、紛失、電池切れなど)でモバイル・エージェントが移動発源に戻れない場合の保障とすることができる。
【0043】また、請求項9記載の発明のように、請求項1〜8のいずれかのモバイル・エージェント情報において、滞在中の情報端末装置に対して、当該滞在中の情報端末装置内に記憶されている所与のデータを取得する取得手段(例えば、図2のエージェント実行部220)と、前記移動の際に、前記取得手段により取得されたデータを保持する保持手段(例えば、図2のエージェント実行部220、添付ファイル情報718−4)と、前記取得手段がデータを取得した際に、キャラクタが所与のアイテムを所持する画像を表示する所持画像表示手段(例えば、図2のエージェント実行部220)と、を機能させるための情報(例えば、図2のエージェント・プログラム710、キャラクタ情報714)を含むことを特徴とする。
【0044】請求項9記載の発明によれば、請求項1〜8の何れかと同様の効果を奏するとともに、モバイル・エージェントは、移動先のノードに記憶されているデータを移動発源ノードに持ち帰えることができる。この際、所与のアイテムを持った画像を表示することで、電子ペットが何らかの情報を所持していることを示す。
【0045】例えば、電子ペットがイヌ型の場合、アイテムとしてホネを咥えさせることで、データをもっていることが、ユーザに明確になる。また、移動先のノードでお土産として何らかのデータを受け取る場合、背中に風呂敷づつみを背負わせて、何かもらってきたことをユーザに知らせる演出効果を付加できる。アイテムを所持する電子ペットの画像は、例えば、一枚画であっても良いし、キャラクタの画像にアイテムの画像を合成して表示しても構わない。アイテム画像の種類が、データの内容に応じて選択される、或いは表示形態が変化されるとしても良いのは勿論である。
【0046】この様に、電子ペットであるモバイル・エージェントに、データの取得とともにアイテムを所持させることで、ユーザにあたかも電子ペットがお使いをしているような感覚を与えることができる。
【0047】また、請求項10記載の発明のように、請求項1〜9の何れかのモバイル・エージェント情報において、育成パラメータに応じて実行が可能となる育成遊戯情報を複数含むとともに、前記育成手段が、前記複数の育成遊戯情報内、前記育成情報に記述された育成パラメータに応じた育成遊戯情報を実行するための情報、を含むとしても良い。
【0048】育成遊戯とは、例えば、絵を書く、日記を書く、歌を歌う、宝物を埋める、踊りを踊るなどの電子ペットの一人遊び、並びにトランプ、しりとり、じゃんけん、所与のミニゲームなどの電子ペットとユーザとがいっしょに楽しむ遊び、ユーザから電子ペットへの給餌やしつけなどの世話である。
【0049】請求項10記載の発明によれば、請求項1〜9の何れかと同様の効果を奏するとともに、複数の育成遊戯情報があって、育成の度合いに応じて遊べる内容が変化する。従って、ユーザにより育てる楽しみを提供することができる。
【0050】また、請求項11記載の発明は、請求項1〜10の何れかのモバイル・エージェント情報において、滞在中の情報端末装置に対して、前記宛先情報に基づいて、当該滞在中の情報端末装置が移動発源の情報端末装置か否かを判定することにより、帰還したか否かを判定する帰還終了判定手段(例えば、図2のエージェント実行部220、位置情報検出部60)と、前記帰還終了判定手段により帰還したと判定された場合に所与の演出をする演出手段(例えば、図2のエージェント実行部220)と、を機能させるための情報(例えば、図2のエージェント情報71、ユーザ情報727)を含むことを特徴とする。
【0051】請求項11記載の発明によれば、請求項1〜10の何れかと同様の効果を奏するとともに、他のノードに移動していたモバイル・エージェントが移動発源ノードに戻ってきたら、帰還したことを表現する演出がされる。
【0052】演出の内容は、適宜設定して構わない。例えば、出発からの経過時間に応じて、短時間で戻ってきたら額に汗して息を荒くするキャラクタの画像を表示して、あたかも急いで戻ってきたような感じを演出できる。また逆に、長時間懸けて戻ってきた場合は、少し疲れた表情と泥だらけの姿のキャラクタ画像を表示して、あたかも長旅であったかのような感じを演出できる。その他、演出はテキストの表示や音の再生、アニメーションや動画ファイルの表示などであってもよい。
【0053】請求項12記載の発明は、プロセッサによる演算・制御により、所定の通信手段を有する情報端末装置に対して、請求項1〜11の何れか記載のモバイル・エージェント情報を生成する生成手段(例えば、図2のランチャー部222)と、前記通信手段を介して受信されたモバイル・エージェント情報、及び/又は、前記育成手段により育成されたモバイル・エージェント情報を記憶する記憶手段(例えば、図2のプラットフォーム部22)と、前記記憶手段に記憶されているモバイル・エージェント情報の実行中断/再開を制御する制御手段(例えば、図2の実行制御部226)と、を機能させるための情報(例えば、図2のプラットフォーム情報72)を含むプラットフォーム情報である。
【0054】プラットフォームとは、モバイル・エージェントが生成や移動、及び達成条件に設定された条件を満たすべく滞在中のノードに所与の機能を実行させるために必要な自動実行環境である。モバイル・エージェントをアプリケーションソフトとみなせば、OS或いはミドルウェアに該当する。プラットフォーム情報は、プラットフォームを情報端末装置に対して機能させるためのプログラム及びプログラムの実行に必要な種々のデータを含んでいる。
【0055】図31は、モバイル・エージェントとプラットフォームの関係を示す概念図であって、典型的なモバイル・エージェントの動作に必要な構成と、その移動する際の流れを示している。
【0056】図31(a)は、構成の一例である。モバイル・エージェントを受け入れ実行できる情報端末装置には、予めプラットフォーム情報に従って、モバイル・エージェントの自動実行環境(プラットフォーム)が機能している。そして、エージェントのプログラムコードの生成手段や、エージェントが移動する際に、エージェントの実行中断/再開、コードのエンコード/デコード、データの送受信を実現する。
【0057】図31(b)は、モバイル・エージェントの移動する際の流れの一例である。移動前のモバイル・エージェントは、プラットフォームによってその実行が中断され、そのプログラムコード及び内部状態や実行状態の情報は符号化される。符号化されたデータは、通信回線を介して移動先の情報端末装置に送られる。移動先の情報端末装置では、プラットフォームによって、送られたデータからプログラムコード、内部状態や実行状態の情報が復号化され、モバイル・エージェントは、中断された状態から実行を再開される。
【0058】従って、情報端末装置に請求項12記載のプラットフォーム情報を実行させることで、ユーザは、請求項1〜11の何れかのモバイル・エージェントによる電子ペットの育成を楽しむことができる。
【0059】また、請求項13記載の発明のように、請求項12のプラットフォーム情報において、前記記憶手段に記憶されているモバイル・エージェント情報に含まれる情報に基づいて、当該モバイル・エージェント情報に関する報告情報を生成・表示する報告手段を前記情報端末装置に機能させるための情報を含むとしても良い。
【0060】報告情報とは、例えば、モバイル・エージェントの育成情報に基づく育成の状況やユーザとの親密度、現在与えられている達成条件の内容、モバイル・エージェントの行動履歴などであって、適宜設定してよい。
【0061】請求項13記載の発明によれば、請求項12と同様の効果を奏するとともに、ユーザは、モバイル・エージェントの状態を知ることができ、今後の世話の方針や対処を考える手助けとすることができる。
【0062】請求項14記載の発明は、請求項1〜11の何れか記載のモバイル・エージェント情報を記憶した情報記憶媒体である。
【0063】情報記憶媒体とは、情報端末装置自身、或いは該装置に所定の読み取り装置を介して通信可能にした状態で、読み出し可能な記憶媒体であって、例えば、ICメモリ、CD−ROM、DVD、MDなどである。請求項14記載の発明によれば、該情報記憶媒体に格納されたモバイル・エージェント情報を実行させることによって、請求項1〜11の何れかと同様の効果を奏することができる。
【0064】また、請求項15記載の発明は、請求項12または13記載のプラットフォーム情報を記憶した情報記憶媒体であって、同様に情報記憶媒体に格納されたプラットフォーム情報を実行させることによって、請求項12又は13と同様の効果を奏することができる。
【0065】
【発明の実施の形態】次に、図1〜図30を参照して、本発明を適用した実施形態について説明する。
【0066】[構成の説明]図1は、本実施形態における構成と利用形態の概念を示す図である。同図に示すように、本実施形態は、通信回線8に接続可能な、パソコン2や携帯電話機3A〜3C、PDA4などのノード(情報端末装置)と、サーバ6から構成される。モバイル・エージェントEは、上記ノード間を移動することができる。
【0067】パソコン2、携帯電話機3A〜3C、PDA4は、インターネット接続技術、データ通信技術、電子メール技術などによって、それぞれ通信回線8に接続し、サーバ6とデータの送受信が可能である。また、それぞれ近距離無線により互いにアドホック・ネットワークNa〜Ndを形成するためのハードウェアとソフトウェアを備えている。
【0068】アドホック・ネットワークNa〜Ndとは、ノード間で必要に応じて一時的に構築されるネットワークであって、例えば、一方のノードを携行して移動する場合、人の移動に伴って周囲の機器の構成が変化するが、それに応じて動的にネットワークの構成を変化させる特徴を持つ。
【0069】具体的には、例えば、Bluetooth(R)などの技術によって実現される。図1の例では、破線で示された円(Na〜Nd)が、個々のアドホック・ネットワークに該当する。Bluetooth(R)では、アドホック・ネットワークNa〜Ndは、ピコネットに相当する。本実施形態では、パソコン2、携帯電話機3A〜3C、PDA4等のノードは、Bluetooth(R)を利用し、それぞれBluetooth(R)の規格に基づいた、Bluetooth(R)チップ等のハードウェア、及びネットワーク形成とデータの転送等に必要なプロトコルを実装しているものとする。
【0070】各ノードでプラットフォームを機能させるためのプラットフォーム情報は、例えば、CD−ROM、DVD、MO、メモリカードなどの情報記憶媒体9に格納され、パソコン2及び携帯電話機3A〜3C、PDA4等の情報端末装置にインストールされる。或いは、通信回線8を介して配信される。
【0071】サーバ6は、例えば、ワークステーションや、パソコンなど所謂サーバとして機能可能な装置であって、例えば、移動先でエージェントが損失した場合のバックアップや、プログラムのアップデート配信や、所与のアイテム情報の追加配信などを担う。バックアップの場合では、例えば、モバイル・エージェントEが移動する都度発信してくる特定情報、即ちバックアップに必要な種々のデータを記憶・管理する。また、サーバ6は、記憶されたモバイル・エージェントEの情報をインターネット上にWebサイトとして公開する機能を備えても良い。従って、サーバ6は、その目的から常時ネットワークに接続可能であることが望ましい。尚、ユーザの所有するパソコン2が常時通信回線8に接続されている環境にあるならば、サーバ6として機能させても構わない。
【0072】利用形態としては、ユーザは、電子ペットにあたるモバイル・エージェントEを、基本的にはユーザが所有する主たる情報端末装置(移動発源ノード;図1R>1の例では、例えば、パソコン2)内に留め、モバイル・エージェントによって育成ゲームを楽しむ。場合によっては、ユーザの別のノード(携帯電話機3A)にモバイル・エージェントEを移動させ、外出先でも育成ゲームを楽しむ。
【0073】そして、モバイル・エージェントEは、ユーザから与えられた達成条件に応じて、上述のアドホック・ネットワークNa〜Ndを介して、移動発源ノード以外の、携帯電話機3A〜3C、PDA4のノード間を移動する。移動先のノードで与えられた達成条件を満たせば、モバイル・エージェントEは、電子メールMに添付されてパソコン2にもどってくる。
【0074】尚、携帯情報端末装置として、パソコン2及び携帯電話機3A〜3C、PDA4を例示しているが、これに限定されるものではなく、例えば、PHS、家庭用ゲーム装置、FAX、TV、携帯用ゲーム装置などであってもよい。また、通信回線8は、例えばLANなどであっても構わない。
【0075】[情報端末装置の機能ブロックの説明]図2は、本実施形態における、ノード(情報端末装置;パソコン2、携帯電話機3A〜3C、およびPDA4)の機能ブロック図である。
【0076】同図において、各ノードは、ユーザが電子ペットへの世話操作や移動条件などの入力を行う操作部10と、装置全体の動作を司る処理部20と、電子ペットの画像や種々の選択画面や設定画面を表示する表示部30と、効果音等を出力する音出力部40と、データの送受信を行う送受信部50と、ノードの現在の位置情報を検知する位置情報検出部60と、プログラムおよび各種のデータを格納する記憶部70と、を備える。
【0077】操作部10は、例えば、電子ペットの名前、世話の内容、移動条件などの種々の選択や決定等の入力をするものであって、操作入力信号は、処理部20に出力される。その機能は、例えば、十字キー、トラックパッド、マウス、レバー、ボタン、ダイヤル、入力ペンなどのハードウェアによって実現できる。
【0078】処理部20は、例えば、装置全体の制御、装置内の各機能ブロックへの命令、ゲーム演算などの各種の演算処理を行う。その機能は、例えば、CPU(CISC型、RISC型)、DSP、或いはASIC(ゲートアレイ等)などのハードウェアや所与のプログラムによって実現できる。プログラムは、例えば、後述する記憶部70に格納されており、必要に応じて読み出され実行される。
【0079】処理部20には、モバイル・エージェントの実行環境であるプラットフォーム部22と、表示部30に表示させる画像信号を生成する画像生成部23と、音出力部40に出力させる効果音などの音信号を生成する音生成部24と、送受信部50を介してデータの送受信を司る通信制御部25と、位置情報検出部60から位置情報を取得する位置情報取得部26と、が含まれる。
【0080】プラットフォーム部22は、エージェント実行部220と、ゲーム演算部221と、ランチャー部222と、コード変換部224と、実行制御部226と、インターネットに接続して電子メールの送受信をする電子メール部228と、を含む。そして、例えば、モバイル・エージェントの受け入れ、モバイル・エージェントの実行及び補助、情報端末装置に滞在するエージェントの管理、電子ペットの育成遊戯のためのユーザの入出力処理、などを担い育成ゲームの環境を実現する。
【0081】プラットフォーム部22は、例えば、情報端末装置のアーキテクチャに依存しないプログラム実行環境、例えば、Java(R)を基盤として構築・実現される。Java(R)は、オブジェクト指向、分散処理、アーキテクチャ中立をテーマとして設計された言語である。Java(R)言語は、バイトコードと称される中間言語にコンパイルされ、バイトコードは、JavaVM(Java Virtual Machine)という仮想コンピュータ(バーチャルマシン)で実行される。そして、分散処理は、バーチャルマシンが動作している情報端末装置に、バイトコードを送ることで実現される。本実施形態をJava(R)で実現する場合は、モバイル・エージェントのプログラムコードはこのバイトコードに相当し、モバイル・エージェントによる育成遊戯等の機能は、分散処理に相当する。具体的な先例としては、例えば、Aglets(日本IBM)、Plangent(東芝)、JUMON(オムロン)などがあり、プラットフォーム部22は、適宜これらの先例を利用するとしてもよい。
【0082】エージェント実行部220は、プラットフォーム部22上で、後述するエージェント情報71を実行することで機能し、電子ペットにあたるモバイル・エージェントの種々の処理を実現する。即ち、エージェント実行部220は、実行状態のモバイル・エージェントに相当する。そして、例えば、電子ペットの一人遊び状態の表示、ユーザへの話し掛け、ユーザからの話し掛けへの応答、世話の表示、他の情報端末装置への移動など、電子ペットの存在を示す処理を実行する。
【0083】ゲーム演算部221は、電子ペットが生活する環境の管理やユーザインターフェースの管理の機能を担う。例えば、各種設定をおこなうメニュー画面の表示、育成ゲームの舞台(世界)やアイテムを3DCGで表現する場合のオブジェクトの配置などを実行する。
【0084】ランチャー部222は、モバイル・エージェントのプログラムコードを生成する。コード変換部224は、モバイル・エージェントの移動時にプログラムコードや内部状態や実行状態の情報を符号化/復号化する。実行制御部226は、移動時にモバイル・エージェントの実行の中断/再開を行う。
【0085】画像生成部23は、例えば、CPU、DSP、画像生成専用のLSIなどのハードウェア、および記憶部70に格納されたプログラムやデータによって実現され、プラットフォーム部22からの指示信号や各種データ等に基づいて、3DCG及び2DCG画像の生成・合成を行って、育成ゲームの画面を生成する。
【0086】音生成部24は、例えば、CPU、DSP、音生成専用のLSIなどのハードウェア、および記憶部70に格納されたプログラムやデータによって実現され、ゲーム演算部221からの信号やデータに基づいて音信号の生成・合成を行う。電子ペットの鳴き声、効果音、BGMなどの音データが記憶部70に予め用意・記憶されている場合は、該データの読出し及び再生や圧縮データの解凍(デコード処理)なども行う。
【0087】通信制御部25は、インターネットへの接続、及び近距離無線によるアドホック・ネットワークの形成に係る処理を司り、送受信部50を介して他の情報端末装置や所定のサーバとデータの送受信を行う。携帯電話回線やPHS回線への接続や、該回線を利用したインターネットに接続するための処理はここで実行される。更に、通信制御部25は、本実施形態では近距離無線技術としてBluetooth(R)を利用するのでBluetooth(R)プロトコルよる通信の制御を司るBluetooth(R)制御部252を含む。
【0088】位置情報取得部26は、位置情報検出部60の制御、及び位置情報検出部60からの信号に基づいてノードの現在の位置情報を求める。位置情報は、例えば、緯度・経度、標高、住所などの形式で得られる。位置情報の検出の方法としては、例えば、携帯電話会社などが提供する位置情報検索サービスや、GPSを利用する方法などがあり、位置情報取得部26は、採用する方法にそれぞれ必要とされる種々の処理を司ることになる。
【0089】表示部30は、画像生成部23からの画像信号に基づいて、電子ペットを表現する画像データを表示するものであって、例えば、CRT、LCD、ELD、PDP、HMD等のハードウェアによって実現できる。
【0090】音出力部40は、音生成部24からの音信号に基づいて、メニュー画面等のキー操作音や、電子ペットの鳴き声、世話をする際の効果音、BGMなどを出力するものである。その機能は、スピーカ等によって実現できる。
【0091】送受信部50は、通信制御部25の通信信号に基づいて信号の送受信を行うものであって、通信回線8や、LAN、携帯電話回線網、PHS回線網に接続するための送受信装置を備える。特に本実施形態では、アドホック・ネットワークを形成するためのBluetooth(R)チップ52が備えられている。Bluetooth(R)チップ52は、ベースバンド部、RF部、ファームウェア部からなる複数または1つのLSIからなる。
【0092】位置情報検出部60は、情報端末装置の位置情報を検出するためのものである。例えば、位置情報検出の方法として携帯電話会社によるサービスの一部として提供される位置情報検索サービスを利用する場合は、携帯電話回線に接続するための送受信装置によって実現される。或いは、GPSを利用する場合は、GPS観測に必要な、電波を受信する受信装置によって実現される。
【0093】図3は、位置情報取得の概念図である。図3R>3(a)は、予め詳細な位置座標が分かっている複数の基地局Bとの間で、三角測量法に基づいてノード(携帯電話機3A、3B、3n)の位置を求める。具体的には、携帯電話会社等が提供する位置情報検索サービスとして実現されており、(a)の方法を利用する場合は、位置情報検出部60は、携帯電話回線やPHS回線に接続する送受信装置に相当し、位置情報取得部26は位置情報検出部60からの信号から具体的な位置情報(例えば、緯度経度、標高などの座標や、住所など)を取得する。
【0094】図3(b)は、GPSを利用する場合である。例えば、数mの誤差で位置を決定できるDGPS(デファレンシャルGPS)を利用する場合では、基地局B(基準局)とノード(観測点)で同時にGPS観測を行い、基地局Bが、基地局Bの座標値と情報端末装置の座標値の差を求めて無線等でノードに補正情報として送る。基地局Bは、電子基準点のほか、予め詳細な位置座標が分かっている携帯電話やPHSの基地局Bであっても構わない。従って、図3(b)の方法を利用する場合は、位置情報検出部60は、GPS観測に必要な送受信装置を含み、位置情報取得部26は、位置情報検出部60からの信号に基づいて具体的な緯度・経度の位置情報を取得する。
【0095】記憶部70は、情報端末装置の制御に必要な種々のプログラムやデータが格納されており、その機能は、例えば、CD−ROM、MO、FD(R)、DVD、ICメモリ、ハードディスク等のハードウェアによって実現される。本実施形態では特に、エージェント情報71と、プラットフォーム情報72と、電子メールプログラム76と、インターネット接続プログラム77と、Bluetooth(R)情報78と、を含む。
【0096】エージェント情報71は、育成対象となる電子ペットの本体であって、滞在するノードに育成ゲームを実行させる為に必要なプログラムやデータ、電子ペットを表示するために必要な画像データや音データなどを格納する。従って、情報端末装置には、モバイル・エージェント(電子ペット)の数だけ存在する。エージェント情報71は、特に、エージェント・プログラム710と、状態情報712と、キャラクタ情報714と、お出かけ行動表716と、エージェント所持情報718と、を含み、ノード間を移動の際にはこれらを1セットとして移動する。
【0097】エージェント・プログラム710は、移動先の情報端末装置で実行させる処理のプログラムのコードであって、例えばJava(R)上ではバイトコードに該当する。エージェント・プログラム710は、ランチャー部222によって生成され、実行制御部226によって実行状態にされて、前述のエージェント実行部220として機能する。そして、所与のキャラクタ画像が表示され電子ペットが活動をはじめ、ユーザは該電子ペットに育成遊戯をすることができる。
【0098】状態情報712は、例えば、インスタンス変数などのヒープ領域内の情報や、ローカル変数などのスタック領域の情報、及びプログラムカウンタなどである。状態情報712を含むことによって、モバイル・エージェントは、移動前の状態から処理を継続可能となる。状態情報712は、ゲームの設定によっては無くても構わないが、その場合は、移動後はエージェント・プログラム710の最初から実行されるので、プログラムの記述に注意が必要である。
【0099】キャラクタ情報714は、電子ペットを表示するために必要な画像データや音データなどを格納する。
【0100】お出かけ行動表716は、モバイル・エージェントが、移動先のノードでの行動と行動の達成条件を設定する情報が格納されており、ユーザによって移動前に定義される。
【0101】図4は、お出かけ行動表の構成の一例を説明する図である。同図に示すように、お出かけ行動表716は、アクション定義ファイル716−1と、条件定義ファイル716−2と、到着日時716−3と、場所情報716−4と、アクション履歴716−5を含む。
【0102】アクション定義ファイル716−1は、移動先におけるモバイル・エージェントの行動を記述するデータであって、例えば、「メールを運ぶ」「友達を見つける」「目的地に行く」など行動の内容ごとに用意されたスクリプトなどであって、後述するプラットフォーム情報72のアクション情報729に格納されたものから選択・複製される。
【0103】条件定義ファイル716−2は、アクション定義ファイル716−1の内容に応じた条件の詳細を記憶する。例えば、「メールを運ぶ」アクションの場合、宛先のアドレスや、メールのファイル名、添付ファイル名、移動先のノードにおける滞在時間などの情報がこれに該当する。
【0104】到着日時716−3は、移動先の情報端末装置に移動完了した日時であって、次の移動をはじめる際の基準時間とされる。例えば、モバイル・エージェントが移動先にいつまでも居ては育成ゲームが成り立たないので、所定の時間が過ぎたら自動的に次の端末に移動するなどの処置が取られる。或いは、ユーザの情報端末装置を出発した日時を記憶し、現在の時間と比較して所定の時間が経過した場合はユーザの元に戻ることで、期限による移動を設定することができる。
【0105】場所情報716−4は、移動先のノード(情報端末装置)を特定するための情報であって、例えば、装置のシリアルナンバーや電子メールのアドレス情報である。移動の都度サーバ6に送信するバックアップ情報に含めることによって、移動の履歴などに活用する。
【0106】アクション履歴716−5は、モバイル・エージェントが移動先での行動の履歴を記憶する。例えば、移動回数、移動先からサーバ6にバックアップ情報の送信をしたかどうかのフラグ、達成条件を満たしたかのフラグ(帰巣フラグ)、などであってアクションに応じて適宜設定して良い。
【0107】エージェント所持情報718は、電子ペットの個体の特性に関する情報であって、ブリーダ情報718−1と、育成パラメータ718−2と、お友達ファイル718−3と、添付ファイル情報718−4と、を含む。
【0108】ブリーダ情報718−1は、電子ペットの飼主、即ち移動発源ノードのユーザについての情報であるとともに、移動発源ノードに戻る際の宛先情報を記憶する。その内容は、ユーザ名(本名またはニックネーム)と移動発源ノードのメールアドレスのほか、適宜設定される。モバイル・エージェントは、現在滞在中のノードに記憶されているユーザ情報727(後述)とブリーダ情報718−1とを比較することによって、移動発源ノードであるかどうかを判断することができる。
【0109】育成パラメータ718−2は、育成ゲームにおける電子ペットの育成の状態を記述する情報である。例えば、名前、性別、種族、年齢、誕生日、ユーザとの親密度、各種能力のレベルなどである。種族は、例えば「桃色のクマ」「白いネコ」といった外観を規定する。レベルは、単純にレベルを示す数値のほか、例えば、覚えた単語、覚えた遊び、覚えた行動、所持するアイテム、他のノードに移動した回数、最も遠く/近くの移動場所、などの項目ごとの詳細な情報が含まれるとしても良い。
【0110】また、育成パラメータ718−2には、電子ペットが実行可能な処理(電子ペットの行動)に対応したフラグが用意され、世話がされ育成の度合いに応じて、実行可能な行動のフラグが立てられる。
【0111】お友達ファイル718−3は、電子ペットが同じノード内に滞在する他の電子ペットとの間で交わされた情報を格納する。図5は、お友達ファイルの構成の一例を示す図である。同図に示すように、例えば、相手の電子ペットの名前、ご主人様の名前、コメントなどが記憶されている。
【0112】添付ファイル情報718−4は、モバイル・エージェントが移動の際に、お出かけ行動表716に基づいて移動する際に、追加的に移動させるファイルを格納する。例えば、モバイル・エージェントが電子メールを運ぶ場合は、電子メールのファイルがここに格納され、移動先のノードに記憶したならば配達したとして削除される。或いは、お土産として音楽データや画像データを添付する場合も、ここに格納される。
【0113】プラットフォーム情報72は、モバイル・エージェント自動実行環境を実現させるためのプログラムやデータを格納する。プラットフォーム部22をJava(R)で構築・実現する場合には、Java(R)の実行に必要な情報もここに含まれる。
【0114】プラットフォーム情報72には、特に、プラットフォームプログラム721と、ゲーム世界情報722と、エージェント・キャラ情報723と、世話アイテム情報724と、ユーザ情報727と、エージェント管理情報728と、アクション情報729と、が含まれる。
【0115】プラットフォームプログラム721は、処理部20にプラットフォーム部22を機能させるためのプログラムである。
【0116】ゲーム世界情報722は、電子ペットを除くゲーム画面を構築し、制御するためのプログラムやデータを格納する。具体的には、例えば、電子ペットを飼う飼育部屋を表示するためのデータなどで、3DCGで表示する場合は、オブジェクトのデータやテクスチャのデータなどがここに含まれる。
【0117】エージェント・キャラ情報723は、育成する電子ペットの画像を表示するための画像データ或いは、画像生成に必要なデータ群であって、例えば、ビットマップデータやキャラクタを形成するオブジェクトデータ、モーションデータなどである。電子ペットの持つアイテム等に関する画像データもここに含まれる。また、電子ペットの泣き声なども含まれる。そして、モバイル・エージェントが生成される際、電子ペットの種族の設定や年齢の設定などに応じて、適宜エージェント・キャラ情報723から情報が選択されキャラクタ情報714に複製される。
【0118】世話アイテム情報724は、育成ゲームにおける世話の表示や出力に必要な情報を格納する。例えば、世話の内容ごとに、世話に使われるアイテム、電子ペットを世話している状態や電子ペットが世話されている状態を表示するための画像データ及びモーションデータ、音のデータ、及びその世話を実行した場合のパラメータの増減値、などが格納されている。
【0119】より具体的には、例えば、世話の一部として「身繕い」が有るならば、毛をすくブラシや異なる色柄の首輪といったアイテムの画像データやオブジェクトデータ、それらを使用して身繕いされる電子ペットの画像、或いは身繕いをする画像を生成するデータが含まれる。また、ブラシをかける音や身繕いされる際に電子ペットが喜んでいる泣き声などの音声を出力するためのデータを含むとしてもよい。また、世話の一部として「遊ぶ」があるならば、ゲーム内ゲーム(ミニゲーム)に必要なプログラム、プレーヤとともに該ゲームに興じる電子ペットの画像や音を出力するためのデータが格納される。
【0120】そして、モバイル・エージェントは、育成パラメータ718−2に応じて、世話アイテム情報724からデータを読み出し、世話を受ける電子ペットを表示させる。或いは、電子ペットの種族に応じた情報をエージェント情報71に複製して利用する。
【0121】尚、世話アイテム情報724は、プラットフォーム情報72に予め設定されて配布・配信されるものの他、例えば、夏の水遊びや、冬の雪遊びなどの時事に応じた内容を、通信回線経由、或いは、CD−ROMなどの情報記憶媒体の追加によって、適宜追加・削除される。更には、モバイル・エージェントが他の情報端末装置からデータを持ってくるとしても良い。
【0122】ユーザ情報727は、例えば、電子ペットの飼主であるユーザの住所、氏名、年齢、性別、ニックネーム、電子メールのアドレス、電話番号などである。この内、ニックネーム、電子メールのアドレスは、飼主の存在と移動先のノードから戻るために必要な宛先情報であって、ゲーム展開上必須とされる。その他の項目については適宜、表示/非表示が選択され、非表示の項目はモバイル・エージェントによって閲覧・公開されることはないとする。
【0123】エージェント管理情報728は、当該ノードに存在するモバイル・エージェントの数や、その状態を記憶し管理するための情報である。内容としては、例えば、モバイル・エージェントの総数、プレーヤが作った否かの識別フラグ、実行状態(中断か実行中か)のフラグ、エージェント情報71の格納されている場所に関する情報などである。
【0124】アクション情報729は、お出かけ行動表716で定義するアクション定義ファイル716−1で設定されるスクリプトやデータなどが格納されている。具体的には、例えば、「メールを配達する」、「ファイルを見つけて持ちかえる」、「目的地に行く」、「友達を見つける」、「自由旅」「100回移動する」などモバイル・エージェント(電子ペット)の行動ごとに設定・格納されている。尚、アクション情報729は、予め用意されている情報のみに限らず、サーバ6からダウンロードや情報記憶媒体9によって追加する構成としても良い。
【0125】電子メールプログラム76、インターネット接続プログラム77は、公知の技術を元にプラットフォーム部22で操作可能なように適正化されたプログラムであって、機能上の障害がなければ、情報端末装置に予め備えられているものを適宜呼び出して利用するとしても構わない。
【0126】Bluetooth(R)情報78は、公知のBluetooth(R)の規格に基づいてデータの送受信を可能とするプログラム及びデータであって、例えば、Bluetooth(R)プロトコル・スタック、Bluetooth(R)端末情報、Bluetooth(R)ユーティリティプログラムなどを含む。
【0127】尚、上述の各機能において、プログラム或いはデータのどの部分をどれだけエージェント情報71に含めモバイル・エージェントに実行させるのか、どこまでをエージェント・プラットフォーム側で実現するかは、ノードの実行環境の能力を考慮して適宜選定して構わない。
【0128】例えば、想定されるノードの処理能力が高く、また通信回線8の容量も大きい場合は、エージェント・キャラ情報723を、モバイル・エージェント自身に所持させても構わないし、反対に、ノードの処理能力が低い場合は、例えば、モバイル・エージェントの状態情報712を無くし、さらに、育成パラメータ718−2から単語の学習に関する項目を削除してエージェントの情報を削減し、移動と処理にかかる負荷を低減しても良い。
【0129】[サーバの機能ブロックの説明]次に、サーバ6の機能ブロックについて説明する。図6は、サーバ6の機能ブロックの一例を示す図である。
【0130】同図において、サーバ6は、装置全体の動作を司る処理部620と、データの送受信を行う送受信部650と、プログラムおよび各種のデータを格納する記憶部670と、を備える。
【0131】処理部620は、装置全体の制御、装置内の各機能ブロックへの命令を司る。その機能は、例えば、CPU(CISC型、RISC型)、DSP、或いはASIC(ゲートアレイ等)などのハードウェアや所与のプログラムによって実現できる。プログラムは、例えば、後述する記憶部670に格納されており、必要に応じて読み出される。
【0132】処理部620には、モバイル・エージェントからの報知情報や特定情報を含む電子メールの送受信・作成編集機能を司る電子メール部622と、送受信部650を介してデータの送受信を司る通信制御部625と、が含まれる。
【0133】記憶部670は、サーバ6の制御に必要な種々のプログラムやデータが格納されており、その機能は、例えば、CD−ROM、MO、FD(R)、DVD、ICメモリ、ハードディスク等のハードウェアによって実現される。本実施形態では特に、インターネット接続プログラム672と、電子メールプログラム674と、エージェント履歴情報676と、を含む。
【0134】エージェント履歴情報676は、ノード間を移動するモバイル・エージェントからの報知情報や特定情報を格納する。特に、該情報の更新日を記憶する最終更新日時676−1と、モバイル・エージェントの現在滞在しているノードの特定情報を記憶する最終移動場所676−2と、モバイル・エージェントの複製情報を記憶するバックアップ・エージェント676−3と、を含む。特定情報とは、ノードへの連絡やデータの送受信を可能にするための個体識別のための情報であって、例えば、ノードが携帯電話であれば電話番号、電子メール機能を備えていれば電子メールアドレスなどである。
【0135】[ノードにおける処理の流れの説明]次に、図7〜図15、及び図23〜図27を参照して、ノードの処理の流れを説明する。
【0136】図7は、育成ゲーム処理の流れを説明するためのフローチャートである。同図に示すように、ゲーム演算部221は先ず、育成ゲームの舞台となるゲーム画面、例えば、仮想の世界や飼育部屋などを表示する(ステップS102)。
【0137】既に、モバイル・エージェントがノードに滞在して実行状態にある場合は(ステップS104のYES)、エージェント実行部220が電子ペットを表示させる(ステップS106)。
【0138】図23は育成ゲームのゲーム画面の一例を示す図である。同図におけるゲーム画面では、所与の仮想世界や飼育部屋をイメージした画面構成となっている。ゲーム画面内には、メニュー画面を表示させるAと、モバイル・エージェントに話し掛けるボタンBと、が備えられ、ノードにモバイル・エージェントが滞在していて実行状態である場合は、同図に示すように電子ペットEが表示される。
【0139】ノードがパソコン2などの場合は、OSの基本画面、所謂デスクトップ画面がゲーム画面として利用されても構わない。また、ノードがポインティングデバイス(例えば、マウスやトラックパッドなど)を備える場合は、ボタンBの代りにポインティングデバイスで直接、画面内の電子ペットを指定して話し掛けをしても良いのは勿論である。
【0140】ボタンAを選択してメニュー画面を表示させると(ステップS108のYES)、エージェント・メニュー処理が実行され、例えば、モバイル・エージェントの新規作成や、他の情報端末におけるモバイル・エージェントの行動の設定などが実行される(ステップS110)。
【0141】ボタンBを選択して電子ペットに話し掛けをすると(ステップS112のYES)、選択された電子ペットに対応したエージェント実行部220に世話処理を実行するように信号が出される。そして、例えば、電子ペットへ食事を与えたり、遊んだり、話をしたりと言った、所謂育成遊戯が実行される(ステップS114)。
【0142】他の情報端末装置からモバイル・エージェントが送信されてきた場合は、モバイル・エージェントの受け入れ割り込みとなり(ステップS116のYES)、受け入れ処理が実行される(ステップS118、図12のステップS620〜S632)。
【0143】他の機能の割り込みが有った場合は(ステップS120)、適宜当該機能が実行される(ステップS122)。他の機能とは、例えば、携帯電話機能の使用、電子メールの作成及び送受信、周辺機器からの要求などである。
【0144】育成ゲーム処理において、ユーザが何も選択しない間は、モバイル・エージェントがエージェント・プログラム710に従って行動し、例えば、電子ペットが一人遊びしたり、眠ったりする様子が画面に表示される。ユーザは、気ままにその様子を眺めることができる。
【0145】[各処理の説明]続いて、育成ゲーム処理について、より具体的に説明する。
【0146】図8は、エージェント・メニュー処理の流れを説明するためのフローチャートである。同図に示すように、ゲーム演算部221は、先ずメニュー画面を表示してメニュー項目を選択させる(ステップS202)。メニューの項目としては、例えば、「生成」、「世話」、「お出かけ行動の設定」、「出発」、「迷子捜索」、「休眠」、「戻る」などが含まれる。戻るが選択されると、図7に示す育成ゲーム処理のフローに戻る(ステップS234のYES)。
【0147】図23の例では、メニュー画面A1が、ボタンAから所謂プルダウン式で表示されている。メニューの表示やメニューの選択と入力については、公知でありここでの詳細な説明は省略する。
【0148】[i:エージェントの作成処理の説明]図8において、ユーザが自分の電子ペットを作成したい場合は「生成」の項目を選択する。「生成」の項目が選択・入力されたならば(ステップS204)、ゲーム演算部221は、エージェントの作成処理を実行する(ステップS206)。
【0149】図9は、エージェントの作成処理の流れを説明するためのフローチャートである。同図に示すように、ゲーム演算部221は、先ず、モバイル・エージェントの作成の要否を選択させる(ステップS302)。作成しない場合はエージェント作成処理を終了し(ステップS302のNO)、作成する場合は、設定画面を表示する(ステップS302のYES→S304)。
【0150】ユーザは、設定画面に従って電子ペットの設定を行う。具体的には、例えば、電子ペットの名前、性別、種族や色柄などの表示形態と、初期レベルの値などを設定する。設定は、ユーザが指定しても良いし、ゲーム演算部221によって自動選択されるとしても良い。そして、選択された結果は、ゲーム演算部221によって育成パラメ−タ718−2に記憶される(ステップS306)。
【0151】次に、ゲーム演算部221は、ユーザ情報727の有無を確認する(ステップS308)。初めてモバイル・エージェントを作成する場合は、ユーザ情報727を新規に作成する(ステップS308のNO→S310)。
【0152】ユーザ情報727が既にある場合(ステップS308のYES)、或いは新規に作成されたならば、ゲーム演算部221は、ブリーダ情報718−1を作成し(ステップS312)、エージェント・キャラ情報723から必要な情報をキャラクタ情報714に複製し、電子ペットに首輪やタグなどを付けた画像を表示させる(ステップS314)。
【0153】設定が終了したならば、ランチャー部222が、設定に従ってモバイル・エージェント(電子ペット)を生成する(ステップS316)。記憶部70内には、エージェント情報71が作成される。
【0154】エージェント情報71が用意されたならば、実行制御部226がモバイル・エージェントを実行状態にし(ステップS318)、エージェント管理情報728に登録する(ステップS320)。モバイル・エージェントの生成と登録が済んだら、図8のエージェント・メニュー処理のフローに戻る。
【0155】[ii:世話処理の説明]図8において、ユーザが電子ペットの世話をしたい場合は「世話」の項目を選択する。「世話」の項目が選択・入力されたならば(ステップS208のYES)、ゲーム演算部221は世話処理を実行する(ステップS210)。
【0156】図10は、世話処理の流れを説明するためのフローチャートである。同図に示すように、ゲーム演算部221は、先ず、エージェント管理情報728を参照し、現在の電子ペットの数を確認する(ステップS402)。情報端末装置内で実行状態にあるモバイル・エージェントが複数滞在している場合は(ステップS404のYES)、その一覧を表示してユーザに世話の対象とするモバイル・エージェント(電子ペット)を選択させる(ステップS406)。
【0157】モバイル・エージェント(電子ペット)が選択されたならば、ゲーム演算部221は、該当するモバイル・エージェントのエージェント実行部220に世話処理の実行を要求する信号を出力する(ステップS408)。
【0158】世話処理実行の信号を受けたモバイル・エージェント、即ちエージェント実行部220は、育成パラメータ718−2を参照して、育成の度合いに応じ実行可能な世話の一覧を表示させ、ユーザに世話の内容を選択させる(ステップS410)。世話の内容は、ゲームの内容に応じて適宜設定可能であるが、例えば、食事、プレゼント、ゲーム、しつけ、会話、治療などが含まれる。また、世話の内容によっては、適宜選択のステップを追加するのは勿論である。例えば、給餌の場合、与えるものの種類や数を入力する。
【0159】世話の内容が選択されたならば、エージェント実行部220は、エージェント情報71または世話アイテム情報724より、世話の内容に応じた画像データ等を読出す(ステップS412)。そして、例えば、電子ペットを世話している画像、或いは電子ペットが世話をされている画像を出力する(ステップS414)。世話をしている或いはされている画像とは、例えば、食事ならば選択された食物を食べさせている、または食べている画像であり、ゲームであれば該当するミニゲーム、会話であれば会話を実現するプログラム等が実行される。世話画像は、静止画でもアニメーション等の動画でも良く、また適宜効果音やBGMなどを出力しても良いのは勿論である。
【0160】世話画像の出力が終了したならば、エージェント実行部220は、育成パラメータ718−2を変更する(ステップS416)。
【0161】更に同じ内容の世話を更に追加して行う場合は、世話アイテム情報724の読出しに戻る(ステップS418のYES)。別の内容の世話を同じ電子ペットにしたい場合は、世話項目のメニュー表示にもどる(ステップS420のNO)。
【0162】世話処理の終了が入力されると(ステップS420のYES)、エージェント実行部220は世話処理を終了し、図8のエージェント・メニュー処理のフローに戻る。
【0163】[iii:お出かけ行動設定処理の説明]ユーザが自分の電子ペットを他のノードに移動させたい場合は、お出かけ行動表716を設定する必要がある。図8において、「お出かけ行動の設定」の項目を選択・入力されたならば(ステップS212)、ゲーム演算部221は、お出かけ行動設定処理を実行する(ステップS214)。
【0164】図11は、お出かけ行動設定処理の流れを説明するためのフローチャートである。同図に示すように、ゲーム演算部221は、先ず設定画面を表示する(ステップS502)。次に、育成パラメータ718−2を参照して、育成の程度に応じたアクションの選択肢をアクション情報729から読み出し表示させ、ユーザに選択させる(ステップS504)。アクションとしては、例えば、「メールを配達する」、「ファイルを見つけて持ちかえる」、「目的地に行く」、「友達を見つける」、「自由旅」などである。
【0165】アクションが選択されたならば、更に、ユーザにアクション毎に必要な情報を入力させる(ステップS506)。アクション毎に必要な情報とは、例えば、メールの内容や添付ファイルの指定、見つけるファイルの検索条件、目的地の位置情報、自由旅の期間などがこれにあたる。
【0166】移動先(お出かけ先)での電子ペットのアクションが設定されたならば、次に、モバイル・エージェントが持ち歩くブリーダ情報718−1の内容を確認するために表示する(ステップS508)。外部に漏らしたくない情報が有る場合や変更がある場合は(ステップS510のYES)、ゲーム演算部221はブリーダ情報718−1を変更する(ステップS512)。
【0167】次に、モバイル・エージェントに添付ファイルをつける場合は(ステップS514のYES)、ファイルの作成又は選択をする(ステップS516)。ここでいう添付ファイルとは、例えば、移動先のノードのユーザへの手土産に当る画像データなどの各種データである。添付ファイルは、添付ファイル情報718−4に格納される。
【0168】図24は、お出かけ行動表の設定画面の一例を示す図である。図24(a)に示すように、アクションの選択をすると、ゲーム演算部221は、例えば(b)や(c)のように選択に応じて必要な情報を更に入力する画面を表示させる。
【0169】図24(b)はアクションとして「友達を見つける」を選択した場合の一例であって、例えば、友達の条件となるキーワードと、お出かけの期間、及び移動先のノードでの滞在期間とを、ユーザに選択させる。モバイル・エージェントは、移動先のノードのユーザ情報727にキーワードが含まれると、お友達と判断して、ユーザ情報727を複製して持ちかえる。ユーザは、相手のユーザ情報727を参照して、友達になりたければ、改めて電子メールを送ったり電子ペットを遊びに行かせることで、新しい関係を作るきっかけとすることができる。
【0170】図24(c)はアクションとして「目的地に行く」を選択した場合の一例であって、例えば、目的地の地名や、緯度・経度、住所などの条件と、お出かけの期間と、移動先のノードでの滞在期間と、手土産として持たせるモノ(添付ファイル)の情報を選択させる。
【0171】お出かけ行動の設定に変更が無ければ(ステップS518のYES)、お出かけ行動表716を作成又は更新する(ステップS520)。この際、到着日時716−3は現在時刻、場所情報716−4は移動発源の情報、アクション履歴716−5は、リセットされる。そして、図8のエージェント・メニュー処理のフローに戻る。
【0172】[iv:出発処理の説明]図8において、ユーザが自分の電子ペットを他のノードに移動させたい場合は「出発」の項目を選択する。尚、以下の説明では、現在ユーザがモバイル・エージェントを滞在させているノードをノードA、モバイル・エージェントを受信する側のノード、即ち移動先となるノードをノードBと記す。
【0173】「出発」の項目が選択・入力されたならば(ステップS216)、ゲーム演算部221は、お出かけ行動表716の内容を表示させて、ユーザに内容を確認させる(ステップS218)。変更無ければ、出発処理を実行する(ステップS220のNO→S222)。変更が有れば、お出かけ行動表設定処理を実行する(ステップS220のYES)。
【0174】図12は、出発処理の流れを説明するためのフローチャートである。同図に示すように、先ず、実行制御部226が、モバイル・エージェントの実行を中断する(ステップS602)。次いで、プラットフォーム部22は、エージェント情報71を複製し、コード変換部224が複製した情報をエンコードする(ステップS604)。以下、該複製されてエンコードされた情報を複製エージェント情報71’と言う。
【0175】次に、プラットフォーム部22は、通信制御部25及び送受信部50を介して、アドホック・ネットワークに接続されているノードを検索し、モバイル・エージェントの送受信に必要なリンクを確立する(ステップS606)。即ち、アドホック・ネットワークに接続されているノードは、ノードAとノードB以外にも存在し、複数のノード間でリンクが確立されている。
【0176】ノードBでは、リンクが成立すると(ステップS608)、ノードAにユーザ情報727と位置情報検出部60から位置情報を取得して返信する(ステップS610)。
【0177】ノードAでは、プラットフォーム部22が、返信されたユーザ情報727や位置情報を表示する(ステップS612)。ユーザは、表示された情報を確認してモバイル・エージェントの出発の可否を判断する。出発中止を入力すると、出発処理は中止される(ステップS614のYES)。出発が中止されないならば、移動先選択処理を実行する(ステップS614のNO→S616)。尚、モバイル・エージェントが自律的に移動する場合には、ステップS612〜S614は、スキップされるとしても良い。
【0178】図13は、移動先選択処理の流れを説明するためのフローチャートである。移動先選択処理では、移動目的が指定されている場合は、返信されたユーザ情報727や位置情報から該当または最も近い条件のノードを移動先として選択する。
【0179】具体的には、同図に示すように、プラットフォーム部22は、お出かけ行動表716のアクション履歴716−5を参照する(ステップS702)。
【0180】アクション履歴716−5において、帰巣フラグが立っていない場合は、お出かけの目的である達成条件はまだクリアされていないと判断し(ステップS704のYES)、プラットフォーム部22は、お出かけ行動表716を参照する(ステップS714)。
【0181】お出かけ行動表716のアクション定義ファイル716−1が、例えば、「目的地に行く」など移動目的の場所が指定されているアクションの場合は(ステップS716のYES)、アドホック・ネットワークに接続されている各ノードから返信された位置情報を参照して、目的地と最も近い端末を選択する(ステップS718)
【0182】目的地を指定しないアクションの場合は(ステップS716のNO)、表示されたノードのユーザ情報727や位置情報からユーザに選択させる、或いはランダムに選択する(ステップS720)。
【0183】一方、ステップS704において、アクション履歴716−5に、帰巣フラグが立っていれば、移動発源ノードに戻るように選択がなされる(ステップS704のYES)。プラットフォーム部22は、返信されたユーザ情報727とブリーダ情報718−1を比較する(ステップS706)。
【0184】ブリーダ情報718−1と同じ情報のノードが有れば(ステップS708のYES)、そのノードを選択する(ステップS712)。情報が一致するノードが無ければ(ステップS708のNO)、メール帰巣処理を実行し、電子メールを介して移動発源ノードに戻る(ステップS710;詳細後述)。選択が終了したならば、図12の出発処理のフローに戻る。
【0185】図25は、移動先選択処理から複製エージェント情報の送信時のノードAにおける画面表示の一例を示す図である。図25(a)では、ノードAを中心に、現在リンクされているノードが周囲に配置され、現在選択されているノードのユーザ情報727の内容が表示されている。ここで決定が入力されたならば、図25(b)のようにお出かけ行動の内容に応じた電子ペットが画面に表示され、ユーザに出発のあいさつをする。(b)は、「目的地に行く」アクションの場合の一例であって、例えば、風呂敷を背負っている電子ペットの画像が表示される。(c)は、「メールを運ぶ」アクションの場合の例であって、例えば、封書を加えた電子ペットの画像が表示される。こうした画像データは、キャラクタ情報714やエージェント・キャラ情報723から適宜読み出され表示される。
【0186】続いて、図12において、プラットフォーム部22は、選択されたノードBに対して複製エージェント情報71’を送信する(ステップS618)。
【0187】ノードBでは、受け入れ処理が実行される(ステップS620〜S632)。ノードBのプラットフォーム部22は、ノードAより複製エージェント情報71’を受信・記憶し(ステップS620)、受け入れ確認の画面表示をしてユーザに受け入れ可否の判断をさせる(ステップS622)。
【0188】図26は、受け入れ画面の一例を示す図である。図26(a)に示すように、電子ペットの受信をした旨表示され、続いて(b)に示すように、電子ペットがノードBのユーザに滞在を許可してくれるようにお願いする画面が表示される。
【0189】受け入れOKが入力された場合は(ステップS624のYES)、ノードAに受信OKの旨の信号を返信する(ステップS626)。そして、コード変換部224が受信した複製エージェント情報71’をデコードし、実行制御部226が実行状態にする(ステップS628)。これで、モバイル・エージェント(電子ペット)は、無事ノードBに移動できたことになる。
【0190】一方、受け入れがOKされない場合は(ステップS624のNO)、ノードAに受信NGの旨の信号を返信する(ステップS630)。そして、複製エージェント情報71’を削除する(ステップS632)。
【0191】一方、ノードAのプラットフォーム部22は、ノードBからの受信OK/NGの信号を受信する(ステップS634)。
【0192】受信OKであれば(ステップS636のYES)、電子ペットの移動が無事成功した旨の画面を表示させてユーザに知らせる(ステップS646)。続いて、プラットフォーム部22は、通信回線8に接続してサーバ6にアクセスし(ステップS648)、バックアップ用として複製エージェント情報71’を送信する(ステップS650)。サーバ6側では、エージェント履歴情報676のバックアップ・エージェント676−3を更新する(図示略)。そして、不要になった複製エージェント情報71’を削除し(ステップS652)、図8のエージェント・メニュー処理のフローに戻る。
【0193】受信NGであれば(ステップS636のNO)、プラットフォーム部22は、移動が失敗した旨の画面を表示させてユーザに知らせ、出発の中止判断をさせる(ステップS638)。出発中止が入力されなければ(ステップS640のNO)、再度ノードの検索とリンクの確立を行って、別の移動先を見つける(ステップS606)。出発中止が入力されたならば(ステップS640のYES)、複製エージェント情報71’を削除する(ステップS642)。そして、実行制御部226が、エージェント情報71を実行状態にもどし、図8のエージェント・メニュー処理のフローに戻る(ステップS644)。
【0194】図27は、受信成功画面と受信失敗画面の一例を示す図である。図27(a)は、移動が成功した場合であり、ノード間を渡る電子ペットの画像などが表示される。失敗した場合は、図27(b)のようにユーザにあやまる電子ペットの画像などが表示される。
【0195】[v:迷子捜索処理の説明]モバイル・エージェント(電子ペット)が他のノードに移動してしまった後は、ユーザはその帰りを待つことになる。しかし、ノード間を移動するために何らかの障害があって、戻れなくなる可能性もある。ユーザが、モバイル・エージェントの行方を確認したい、或いはとにかく戻ってきてほしい場合には、図8において、「迷子捜索」の項目を選択する。
【0196】「迷子捜索」の項目が選択・入力されたならば(ステップS224)、ゲーム演算部221は、迷子捜索処理を実行する(ステップS226)。
【0197】図14と図15は、迷子捜索処理の流れを説明するためのフローチャートである。同図に示すように、先ず、ノードAのプラットフォーム部22は、エージェント管理情報728を参照して、現在他のノードに移動している、ユーザ自身が作成したモバイル・エージェント(電子ペット)の一覧を表示し、ユーザに捜索対象を選択させる(ステップS802)。
【0198】捜索対象とするモバイル・エージェントが選択されたら、サーバ6に捜索を依頼する(ステップS804)。具体的には、例えば、サーバ6にアクセスして、その旨の信号を送信する、或いは捜索依頼の電子メールを送信する。
【0199】サーバ6の処理部620は、ノードAからの捜索依頼を受信したら強制帰巣処理を実行する(ステップS806)。捜索依頼の場合(ステップS808)、最終更新日時676−1を参照し、現在の日時と比較する(ステップS810)。
【0200】更新が所定の期限内でされている場合には(ステップS810のNO)、処理部620は、その旨無事メール(電子メール)としてノードAに返信する(ステップS818)。無事メールには、例えば、最終移動場所676−2から「△△に在住の○○さん(ニックネーム)のところに居ます」のように現在の居場所についての情報を含め、ユーザ(飼主)を安心させるとしても良い。
【0201】所定期限内で更新されていなければ、何らかの理由でモバイル・エージェントが次に移動できない状態にあると判断する(ステップS810のYES)。処理部620は、最終移動場所676−2を参照して(ステップS812)、ノードBに対して捜索メール(電子メール)を送信する(ステップS814)。捜索メールには、捜索対象のモバイル・エージェントを識別するための情報、例えば、ブリーダ情報718−1が含まれる。そして、処理部620は、捜索中である旨の捜索中メール(電子メール)をノードAに返信する(ステップS816)。
【0202】ノードAでは、サーバ6からの返信を受信したならば(ステップS830のYES)、無事メール又は捜索中メールを表示させてユーザの判断を促す(ステップS832)。
【0203】ユーザは、該メールの表示から強制帰巣させるかどうか判断し入力する。強制帰巣が入力された場合は(ステップS834のYES)、ノードAのプラットフォーム部22は、サーバ6に強制帰巣の要求を送信する(ステップS836)。強制帰巣が入力されない場合は(ステップS834のNO)迷子捜索処理を終了し、図8のエージェント・メニュー処理のフローにもどる。
【0204】サーバ6の処理部620は、ノードAからの強制帰巣の要求を受信したならば(ステップS806)、ノードBに対して捜索メールを送信する(ステップS812→S814)。そして、強制帰巣させるために捜索中である旨、捜索中メールをノードAに返信する(ステップS816)。
【0205】次に、図15を参照して、ノードBにおける処理を説明する。捜索メールを受信したノードBでは、プラットフォーム部22が、捜索問い合わせ処理を実行し、先ずエージェント管理情報728から該当するモバイル・エージェントを検索する(ステップS842)。
【0206】エージェント管理情報728に該当するモバイル・エージェントの情報が無い、或いは、既に移動済みに成っている場合(ステップS844のNO)、ノードBには居ないと判断し、その旨行方不明メールとして、サーバ6に返信して処理を終了する(ステップS854)
【0207】サーバ6では、ノードBから行方不明メールを受信した場合(図14;ステップS820のYES)、処理部620はモバイル・エージェントが自力では帰巣不能であると判断する。そして、該当するエージェント履歴情報676のバックアップであるバックアップ・エージェント676−3を読出し(図14;ステップS824)、電子メールに添付してノードAに送信する(図14;ステップS824)。バックアップをノードAに送信したならば、処理部620は、最終更新日時676−1と最終移動場所676−2を更新する(図14R>4;ステップS826)。
【0208】ノードBに、該当するモバイル・エージェントの情報が有るが(ステップS844のYES)、周囲にBluetooth(R)対応の他のノードが無いなど次のノードに移動できない場合には(ステップS846のYES)、該当するモバイル・エージェントの捜索願いが来ているので強制帰巣させる旨表示させて、ノードBのユーザに知らせる(ステップS848)。そして、ノードBのプラットフォーム部22は、後述するメール帰巣処理を実行して電子メールを介してモバイル・エージェントを帰巣させ(ステップS850)、記憶部70の該当するエージェント情報71を消去する(ステップS852)。
【0209】以上の迷子捜索処理によって、ユーザはモバイル・エージェント(電子ペット)の現在の居場所に関する情報を得られるか、強制帰巣させることができるので、出掛けたきり迷子になって悲しい思いをしなくてすむ。
【0210】[vi:実行制御処理の説明]モバイル・エージェントを一時的に実行中止したい、或いは実行を再開したい場合には、図8において、「休眠」の項目を選択する。
【0211】「休眠」の項目が選択・入力されたならば(ステップS228)、ゲーム演算部221は、エージェント管理情報728を参照して滞在中のモバイル・エージェントの一覧を表示させ、ユーザに対象を選択させる(ステップS230)。次いで、選択されたモバイル・エージェントに対して、実行中断、実行再開、削除の何れかを選択させると、実行制御部226によって当該選択された内容が実行される(ステップS232)。ゲーム演算部221は、エージェント管理情報728を更新する(ステップS233)。
【0212】[モバイル・エージェントの処理の説明]次に、図16〜図21を参照して、モバイル・エージェントの処理について説明する。
【0213】図16は、モバイル・エージェントの処理の流れを説明するためのフローチャートである。同図に示すように、生成され実行状態になったモバイル・エージェントは、エージェント実行部220によって種々の処理が実行される。
【0214】エージェント実行部220は、先ず、実行制御部226から中断信号が出されているか否かを確認する。中断信号が出されている場合には、終了する(ステップS902のYES)。中断信号が出されていない場合は(ステップS902のNO)、お出かけ行動表716を参照する(ステップS904)。
【0215】お出かけ行動表716が設定されている場合は(ステップS904のYES)、お出かけ行動表716にしたがって処理を実行する(ステップS906)。お出かけ行動表716が設定されていない場合は(ステップS904のNO)、標準行動処理を実行する(ステップS908)。
【0216】図17は、モバイル・エージェントの標準行動処理の流れを説明するためのフローチャートである。同図に示すように、エージェント実行部220は、先ず、エージェント管理情報728を参照する(ステップS1002)。
【0217】他のモバイル・エージェントが滞在している場合は(ステップS1004のYES)、お友達ファイル718−3を参照し(ステップS1006)、当該他のモバイル・エージェントが登録されていなければ(ステップS1008)、新たにお友達ファイル718−3に登録する(ステップS1010)。
【0218】次に、エージェント実行部220は、ゲーム演算部221より世話処理実行の信号が出ているかを判定する(ステップS1012)。世話処理実行の信号が出力されている場合は(ステップS1012のYES)前述の世話処理を実行する(ステップS1014)。
【0219】信号が出力されていない場合は(ステップS1012のNO)、エージェント実行部220は、育成パラメータ718−2を参照して(ステップS1016)、育成の程度に応じて実行可能な行動の中からランダムに行動を選択する(ステップS1018)。そして、行動に対応した画像データ等をキャラクタ情報714やエージェント・キャラ情報723から検索して表示する(ステップS1020)。例えば、モバイル・エージェントが「寝る」、「ゴロゴロする」、「一人遊びする」、「芸の練習をする」、「身繕いする」の行動を実行可能な場合、ランダムに何れかが選択され、画面上で電子ペットが何れかの行動をする様子が表示される。表示が終了したら、図16のエージェント・フローに戻る。
【0220】[お出かけ行動表に基づく処理の説明]次に、お出かけ行動表716に基づいたモバイル・エージェントの処理について説明する。
【0221】図18は、「目的地に行く」アクションを定義した場合の処理の流れを説明するためのフローチャートである。同図に示すように、エージェント実行部220は、先ず現在滞在しているノードのユーザ情報727及び位置情報を取得し、お出かけ行動表716及びブリーダ情報718−1と比較して、移動発源に到着したのか目的地に到着したのかを判定する(ステップS1102)。
【0222】現在滞在しているノードが、移動発源である場合は(ステップS1103のYES)、アクション履歴716−5を参照し、帰巣フラグの状態を確認する(ステップS1134)。
【0223】帰巣フラグが立っている場合は(ステップS1134のYES)、エージェント実行部220は、達成条件をクリアして帰巣してきたものとして、キャラクタ情報714またはエージェント・キャラ情報723から、お出かけ成功した旨の帰巣のあいさつを選択し表示させる(ステップS1136)。次いで、お出かけ行動表716をリセットして(ステップS1138)、図1616のフローに戻る。
【0224】帰巣フラグが立っていない場合は(ステップS1134のNO)、エージェント実行部220は、移動先のノードで何らかの理由で帰巣不能になり、バックアップ・エージェント676−3が帰巣したとして、お出かけが失敗した旨のあいさつ画面を選択・表示させる(ステップS1140)。次いで、お出かけ行動表716をリセットして(ステップS1138)、図16のフローに戻る。
【0225】図30は、帰巣時のあいさつ画面の一例を示す図である。お出かけが成功した場合は、図30(a)に続き(b)又は(d)に示すように、ユーザに対して帰巣の報告をする電子ペットの画像が表示される。(b)は「目的地に行く」アクションの場合の一例に相当し、(d)は「メッセージを探す」アクションの場合の一例である。電子ペットの画像は、例えば、長旅で汚れた様子、疲れた様子などのバリエーションの中から、お出かけ期間の長さや目的地に応じて適宜選択するとしても良い。一方、お出かけが失敗した場合は図30(a)に続き(c)が表示される。
【0226】到着地の判定において、エージェント実行部220は、条件定義ファイル716−2に格納された目的地の情報と、位置情報又はユーザ情報727の情報が一致する場合には、目的地に到着したと判断し(ステップS1104のYES)、アクション履歴716−5の帰巣フラグを立てる処理をする(ステップS1106)。
【0227】続いてエージェント実行部220は、アクション履歴716−5を参照する(ステップS1108)。到着行動処理が未実行の場合には、(ステップS1110のYES)、到着行動処理を実行して、ノードBのユーザにあいさつをする。
【0228】図19は、到着行動処理の流れを説明するためのフローチャートである。同図に示すように、エージェント実行部220は、先ず到着時間と場所情報を取得し、到着日時716−3及び場所情報716−4に記憶する(ステップS1202)。そして、アクションに応じたあいさつを表示する(ステップS1204)。あいさつの画像や音のデータは、キャラクタ情報714又はエージェント・キャラ情報723から適宜読み出して出力する。
【0229】続いて、エージェント実行部220は、添付ファイル情報718−4を参照して、飼主に持たされているファイルが有る場合や、移動中に他のノードで取得してきたファイルが有る場合は(ステップS1206のYES)、当該ファイルを出力させる(ステップS1208)。これは、移動先のノードのユーザに対する手土産を渡すことにあたる。
【0230】あいさつや添付ファイルの出力がされたならば、アクション履歴716−5を更新して(ステップS1210)、図18のフローに戻る。
【0231】続いて、エージェント実行部220は、旅先メール処理を実行する(ステップS1114)。旅先メール処理では、図20に示すように、先ず飼主に旅先からのメールを送りたい旨を表示させ、ユーザの許諾を得る(ステップS1302)。
【0232】許可された場合は(ステップS1304のYES)、ユーザ情報727を参照して旅先メールの文を作成する(ステップS1308)。例えば、「元気ですか。僕は元気。今、(場所情報)の(ニックネーム)さんのところにいるよ!」の定型文に所定の内容を挿入する。
【0233】次に、エージェント実行部220は、添付して良いファイルがあるか表示し、ノードBのユーザに選択させる(ステップS1310)。ここで言う添付して良いファイルとは、旅先のメールに添付するおまけである。ファイルが有る場合は(ステップS1312のYES)、ファイルが選択される(ステップS1314)。
【0234】選択されたファイルが画像ファイルである場合には(ステップS1316)、例えば、キャラクタ情報714やエージェント・キャラ情報723からランダムに電子ペットの画像を選択し、添付する画像として合成し(ステップS1318)、旅先メールに添付する(ステップS1320)。そして、電子メール部228が、ブリーダ情報718−1を参照して、移動発源ノードに旅先メールを送信し(ステップS1322)、アクション履歴716−5を更新する(ステップS1324)。
【0235】これによって、移動発源ノードのユーザ(電子ペットの作成者)には、電子ペットから、移動先の無事を知らせる手紙が届く。さらに、添付ファイルが有る場合には、電子ペットが合成されているので、あたかも旅先でスナップ写真を撮って送付してきたかのような楽しさを加えることができる。図28は、移動発源ノードに送付された旅先メールの表示例を示す図である。
【0236】続いて、プラットフォーム部22が、サーバ6に報知情報にあたるバックアップメールを作成・送信する処理を実行する。即ち、プラットフォーム部22は、先ず当該モバイル・エージェントのエージェント情報71を複製し(ステップS1326)、複製エージェント情報71’をエンコードする(ステップS1328)。そして、電子メール部228が、電子メールを作成して複製エージェント情報71’を添付し、(ステップS1330)、サーバ6に送信する(ステップS1332)。プラットフォーム部22は、複製エージェント情報71’を削除し(ステップS1334)、旅先メールを出させてくれたことへのお礼の表示をする(ステップS1336)。お礼の表示とは、例えば、「手紙は無事に送れました。どうもありがとう。(ニックネーム)さんて優しいね!」などのテキスト、及びこれに対応した電子ペットの画像が表示される。お礼の表示がされたら、図18のフローに戻る。
【0237】図18において、続いて、エージェント実行部220は、アクション履歴716−5を参照して帰巣フラグが立っているか確認する(ステップS1116)。帰巣フラグが立っている場合は(ステップS1116のYES)、現在滞在しているノードで目的が達成されたと判断し、設定されたアクションに応じた目的達成のあいさつを、キャラクタ情報714又はエージェント・キャラ情報723から選択・表示する(ステップS1118)。
【0238】図29は、目的達成のあいさつの画面表示の一例を示す図である。同図は「目的地に行く」アクションに対応したあいさつ画面であって、例えば、電子ペットが「(ニックネーム)さんのところで、目的の(目的地名)に到着したよ!・・(以下略)・・・」のテキストと、喜ぶ電子ペットの画像が表示される。
【0239】あいさつの画像が表示されたならば、ゲーム演算部221は、メール帰巣処理を実行し、移動発源ノードに戻る(ステップS1120)。
【0240】メール帰巣処理では、図21に示すように、電子メール部228は、ブリーダ情報718−1を参照して、移動発源ノード宛に電子メールを作成する(ステップS1402)。次に、実行制御部226が、モバイル・エージェントの実行を停止し(ステップS1404)、コード変換部224がエージェント情報71をエンコードする(ステップS1406)。
【0241】電子メール部228は、エンコードされたエージェント情報71を電子メールに添付して、移動発源ノードに送信する(ステップS1408)。メールが無事送信されたならば、プラットフォーム部22は、エージェント情報71を削除し(ステップS1410)、図18のフローに戻る。
【0242】図18のフローにおいて、帰巣フラグが立っていない場合には、(ステップS1116のNO)、エージェント実行部220は、現在時刻と到着日時716−3を比較する(ステップS1122)。お出かけ行動表716に定められた、滞在期限内の場合は(ステップS1124のYES)、エージェント実行部220は、標準行動処理を実行する(ステップS1126)。滞在期限を過ぎている場合は(ステップS1124のNO)、次の目的を目指して出発する旨表示させ(ステップS1128)、出発行動を実行する(ステップS1130)。
【0243】次に、図22を参照して、メール帰巣後の処理について説明する。同図に示すように、電子メール部228が、お帰りメールを受信する(ステップS1502)。メールに添付されているエージェント情報71は、電子メール部228またはユーザの操作によって保存される(ステップS1504)。そして、実行制御部226が、モバイル・エージェントの実行を再開する(ステップS1506)。よって、電子ペットは、無事移動先のノードから移動発源ノードに戻り、ユーザは再び育成ゲームを楽しむことができる。尚、お帰りメールの受信を既存の電子メールソフトを利用するとしても良いし、プラットフォーム部22の機能として実行されても良いのは勿論である。
【0244】
【発明の効果】本発明によれば、電子ペットは特定の情報端末装置内に留まらず、他の情報端末装置に自律的に移動することが可能である。従って、様々な電子ペットの行動の種類を増やすことが可能となる。また、行動の設定によっては、単なる育成ゲームとしての効果に加え、例えば、情報の配布機能や、新しい人間関係の出会いをもたらすコミュニケーションツールとしての機能を実現することができる。
【図面の簡単な説明】
【図1】本発明の実施形態における構成と利用形態の概念を説明するための図。
【図2】情報端末装置の機能構成を説明するブロック図。
【図3】位置情報取得方法を説明するための概念図。
【図4】お出かけ行動表の構成の一例を説明する図。
【図5】お友達ファイルの構成の一例を示す図。
【図6】サーバの機能構成を説明するブロック図。
【図7】育成ゲーム処理の流れを説明するためのフローチャート。
【図8】エージェント・メニュー処理の流れを説明するためのフローチャート。
【図9】エージェントの作成処理の流れを説明するためのフローチャート。
【図10】世話処理の流れを説明するためのフローチャート。
【図11】お出かけ行動設定処理の流れを説明するためのフローチャートである。
【図12】出発処理の流れを説明するためのフローチャート。
【図13】移動先選択処理の流れを説明するためのフローチャート。
【図14】迷子捜索処理の流れを説明するためのフローチャート。
【図15】捜索問い合わせ処理の流れを説明するためのフローチャート。
【図16】モバイル・エージェントの処理の流れを説明するためのフローチャート。
【図17】標準行動処理の流れを説明するためのフローチャート。
【図18】「目的地に行く」アクションの流れを説明するためのフローチャート。
【図19】到着行動処理の流れを説明するためのフローチャート。
【図20】旅先メール処理の流れを説明するためのフローチャート。
【図21】メール帰巣処理の流れを説明するためのフローチャート。
【図22】メール帰巣後の処理の流れを説明するためのフローチャート。
【図23】育成ゲームのゲーム画面の一例を示す図。
【図24】お出かけ行動表の設定画面の一例を示す図。
【図25】移動先選択処理から複製エージェント情報の送信時のノードAにおける画面表示の一例を示す図。
【図26】受け入れ画面の一例を示す図。
【図27】受信成功画面と受信失敗画面の一例を示す図。
【図28】移動発源ノードに送付された旅先メールの表示例を示す図。
【図29】目的達成のあいさつの画面表示の一例を示す図。
【図30】帰巣時のあいさつ画面の一例を示す図。
【図31】モバイル・エージェントとプラットフォームの関係を示す概念図。
【符号の説明】
2 パソコン
3A 携帯電話機
6 サーバ
8 通信回線
10 操作部
20 処理部
22 プラットフォーム部
220 エージェント実行部
221 ゲーム演算部
222 ランチャー部
224 コード変換部
226 実行制御部
228 電子メール部
23 画像生成部
25 通信制御部
26 位置情報取得部
30 表示部
40 音出力部
50 送受信部
60 位置情報検出部
70 記憶部
71 エージェント情報
716 お出かけ行動表
718 エージェント所持情報
718−1 ブリーダ情報
72 プラットフォーム情報
78 Bluetooth(R)情報
620 処理部
650 送受信部
670 記憶部
674 電子メールプログラム
676 エージェント履歴情報
E モバイル・エージェント(電子ペット)
Na〜Nd アドホック・ネットワーク

【特許請求の範囲】
【請求項1】所定の通信手段を有する情報端末装置間を、前記通信手段を介して自律的に移動するとともに、滞在中の情報端末装置に所与の処理を実行させるモバイル・エージェント情報であって、移動発源の情報端末装置の宛先情報と、所与の達成条件を表す達成条件情報と、キャラクタの育成パラメータを表す育成情報とを含むとともに、滞在中の情報端末装置に対して、前記育成情報に記述された育成パラメータに基づく前記キャラクタの育成遊戯を表示・実行して、前記育成情報を更新する育成手段と、当該滞在中の情報端末装置内に記憶されているデータに基づいて、前記達成条件が満たされるか否かを判定する達成判定手段と、を機能させるための情報を含むモバイル・エージェント情報。
【請求項2】自装置の現在位置を検出する検出手段と、所定の通信手段とを有する情報端末装置間を、前記通信手段を介して自律的に移動するとともに、滞在中の情報端末装置に所与の処理を実行させるモバイル・エージェント情報であって、移動発源の情報端末装置の宛先情報と、位置に関する所与の達成条件を表す達成条件情報と、キャラクタの育成パラメータを表す育成情報と、を含むとともに、滞在中の情報端末装置に対して、前記育成情報に記述された育成パラメータに基づく前記キャラクタの育成遊戯を表示・実行して、前記育成情報を更新する育成手段と、前記検出手段による検出結果に基づいて、前記達成条件が満たされるか否かを判定する達成判定手段と、を機能させるための情報を含むモバイル・エージェント情報。
【請求項3】請求項1または2において、滞在中の情報端末装置に対して、前記育成情報に記述された育成パラメータに基づいて、移動が可能か否かを判定する判定手段を機能させるための情報を含み、前記判定手段により移動可能と判定された場合に他の情報端末装置への移動が可能となることを特徴とするモバイル・エージェント情報。
【請求項4】請求項1〜3の何れかにおいて、移動先条件を表す移動先条件情報を含むとともに、滞在中の情報端末装置に対して、前記通信手段を介して他の情報端末装置と通信を行い、当該他の情報端末装置が前記移動先条件を満たすか否かを判定する移動判定手段と、前記移動判定手段により、移動先条件を満たすと判定された場合に、当該他の情報端末装置に移動する移動手段と、を機能させるための情報を含むことを特徴とするモバイル・エージェント情報。
【請求項5】請求項1〜4の何れかにおいて、前記通信手段は、アドホック・ネットワークを形成するための近距離無線手段であり、当該アドホック・ネットワークを通じて情報端末装置間を自律的に移動することを特徴とするモバイル・エージェント情報。
【請求項6】請求項1〜4の何れかにおいて、前記通信手段は、アドホック・ネットワークを形成して前記移動を実現するための近距離無線手段と、インターネットに接続可能なネット接続手段とを有し、滞在中の情報端末装置に対して、前記達成判定手段により達成条件を満たすと判定された場合に、前記宛先情報に基づいて、前記ネット接続手段を介して移動発源の情報端末装置に報知情報を送信する送信手段を機能させるための情報を含むことを特徴とするモバイル・エージェント情報。
【請求項7】請求項6において、前記達成判定手段により達成条件を満たすと判定された場合に、前記宛先情報に基づいて、前記ネット接続手段を介して移動発源の情報端末装置に移動するための情報を含むことを特徴とするモバイル・エージェント情報。
【請求項8】請求項6または7において、滞在中の情報端末装置に対して、当該滞在中の情報端末装置の特定情報を、前記ネット接続手段を介して所定のサーバに送信する手段を機能させるための情報を含むことを特徴とするモバイル・エージェント情報。
【請求項9】請求項1〜8のいずれかにおいて、滞在中の情報端末装置に対して、当該滞在中の情報端末装置内に記憶されている所与のデータを取得する取得手段と、前記移動の際に、前記取得手段により取得されたデータを保持する保持手段と、前記取得手段がデータを取得した際に、キャラクタが所与のアイテムを所持する画像を表示する所持画像表示手段と、を機能させるための情報を含むことを特徴とするモバイル・エージェント情報。
【請求項10】請求項1〜9の何れかにおいて、育成パラメータに応じて実行が可能となる育成遊戯情報を複数含むとともに、前記育成手段が、前記複数の育成遊戯情報内、前記育成情報に記述された育成パラメータに応じた育成遊戯情報を実行するための情報、を含むことを特徴とするモバイル・エージェント情報。
【請求項11】請求項1〜10の何れかにおいて、滞在中の情報端末装置に対して、前記宛先情報に基づいて、当該滞在中の情報端末装置が移動発源の情報端末装置か否かを判定することにより、帰還したか否かを判定する帰還終了判定手段と、前記帰還終了判定手段により帰還したと判定された場合に所与の演出をする演出手段と、を機能させるための情報を含むことを特徴とするモバイル・エージェント情報。
【請求項12】プロセッサによる演算・制御により、所定の通信手段を有する情報端末装置に対して、請求項1〜11の何れか記載のモバイル・エージェント情報を生成する生成手段と、前記通信手段を介して受信されたモバイル・エージェント情報、及び/又は、前記生成手段により生成されたモバイル・エージェント情報を記憶する記憶手段と、前記記憶手段に記憶されているモバイル・エージェント情報の実行中断/再開を制御する制御手段と、を機能させるための情報を含むプラットフォーム情報。
【請求項13】請求項12において、前記記憶手段に記憶されているモバイル・エージェント情報に含まれる情報に基づいて、当該モバイル・エージェント情報に関する報告情報を生成・表示する報告手段を前記情報端末装置に機能させるための情報を含むプラットフォーム情報。
【請求項14】請求項1〜11の何れか記載のモバイル・エージェント情報を記憶した情報記憶媒体。
【請求項15】請求項12または13記載のプラットフォーム情報を記憶した情報記憶媒体。

【図1】
image rotate


【図2】
image rotate


【図4】
image rotate


【図5】
image rotate


【図3】
image rotate


【図6】
image rotate


【図7】
image rotate


【図8】
image rotate


【図9】
image rotate


【図10】
image rotate


【図11】
image rotate


【図13】
image rotate


【図21】
image rotate


【図12】
image rotate


【図14】
image rotate


【図15】
image rotate


【図16】
image rotate


【図17】
image rotate


【図18】
image rotate


【図19】
image rotate


【図22】
image rotate


【図23】
image rotate


【図20】
image rotate


【図25】
image rotate


【図26】
image rotate


【図27】
image rotate


【図24】
image rotate


【図28】
image rotate


【図29】
image rotate


【図30】
image rotate


【図31】
image rotate