(57)【要約】【課題】モバイルエージェントが移動先で実行する行動に対応するユーザの応答が適切であるときおよび適切でないときにエージェントが行う行動を制御する。【解決手段】エージェントが行動する複数の通信機器が有線回線または無線回線で接続されているモバイルエージェントシステムにおいて、該通信機器に内蔵されたコンピュータを、各モバイルエージェントの行動を単純な行動の組合せで定義したアクションセットの一つが割り当てられている一つ以上のモバイルエージェント、アクションセット編集手段、アクションセット保存手段、アクションセット選択手段、アクションセット解釈手段、エージェント移動制御手段、エージェント実行手段、コンテナ制御手段として機能させ、エージェントの移動と一緒にアクションセットを移動することでエージェントの移動後の行動を制御する。  【選択図】図１
2009211541.tif 000002
【特許請求の範囲】
【請求項１】
エージェントが行動する複数の通信機器が有線回線または無線回線で接続されているモバイルエージェントシステムにおいて、
各モバイルエージェントの行動を単純な行動の組合せで定義したアクションセットの一つが割り当てられている一つ以上のモバイルエージェントと、
前記モバイルエージェントの行動を定義するアクションセットを編集するアクションセット編集手段と、
前記アクションセットに識別名を付けて保存するアクションセット保存手段と、
前記識別名の付けられているアクションセットの中から一つを選択し、モバイルエージェントに割り当てるアクションセット選択手段と、
前記モバイルエージェントに割り当てられたアクションセットの設定情報を順番に取り出して解釈するアクションセット解釈手段と、
前記通信機器間で前記モバイルエージェントを前記アクションセットに定義されている移動先に移動するエージェント移動制御手段と、
前記モバイルエージェントの移動先でアクションセットに定義されているアクションを実行するエージェント実行手段と、
前記モバイルエージェントが移動先に一緒に持って行くデータとモバイルエージェントが移動先で取得するデータを保管するコンテナ制御手段と、
を備えることを特徴とするモバイルエージェントシステム。
【請求項２】
前記アクションセットは、移動先の行動に対応する移動先の応答に対応する行動を定義することを特徴とする請求項１に記載のモバイルエージェントシステム。
【請求項３】
前記アクションセットは、返事をもらう期日と期日までに返事をもらえないときの行動を定義することを特徴とする請求項１に記載のモバイルエージェントシステム。
【請求項４】
前記返事を期日までにもらえないときの行動を複数定義することを特徴とする請求項３に記載のモバイルエージェントシステム。
【請求項５】
前記返事を期日までにもらえないときの行動を他の人に頼むと定義するときは、次の移動先を定義することを特徴とする請求項４に記載のモバイルエージェントシステム。
【請求項６】
前記アクションセットは、希望する情報やファイルを指定したのにもかかわらず、貰った情報やファイルが指定どおりではなかったときの行動を定義することを特徴とする請求項１に記載のモバイルエージェントシステム。
【請求項７】
前記貰った情報やファイルが指定どおりでなかったときの、前記行動を複数定義することを特徴とする請求項６に記載のモバイルエージェントシステム。
【請求項８】
前記情報やファイルが指定どおりでなかったときの行動を他の人に頼むと定義することを特徴とする請求項４に記載のモバイルエージェントシステム。
【請求項９】
有線回線または無線回線で接続されている複数の通信機器に内蔵されているコンピュータを、
各モバイルエージェントの行動を単純な行動の組合せで定義したアクションセットの一つが割り当てられている一つ以上のモバイルエージェント、
前記モバイルエージェントの行動を定義するアクションセットを編集するアクションセット編集手段、
前記アクションセットに識別名を付けて保存するアクションセット保存手段と、
前記識別名の付けられているアクションセットの中から一つを選択し、モバイルエージェントに割り当てるアクションセット選択手段、
前記モバイルエージェントに割り当てられたアクションセットの設定情報を順番に取り出して解釈するアクションセット解釈手段、
前記通信機器間で前記モバイルエージェントを前記アクションセットに定義されている移動先に移動するエージェント移動制御手段、
前記モバイルエージェントの移動先でアクションセットに定義されているアクションを実行するエージェント実行手段、
前記モバイルエージェントが移動先に一緒に持って行くデータとモバイルエージェントが移動先で取得するデータを保管するコンテナ制御手段、
として機能させ、モバイルエージェントの移動と一緒にアクションセットを移動することでモバイルエージェントの移動後の行動を制御するようにしたことを特徴とするモバイルエージェントの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線電話通信及びモバイル端末などの通信システムにおけるモバイルエージェントシステム及びその制御方法に関するものである。
【背景技術】
【０００２】
エージェントシステムは、従来の汎用のプログラム言語を拡張したものと、エージェントシステム専用の独自に開発したプログラム言語がある。前者の例には、Java（登録商標）言語を拡張したAglets（日本IBM株式会社)、Ｋａｆｕｋａ（富士通株式会社）、後者の例には、ＴｅｌｅＳｃｒｉｐｔ言語（Ｇｅｎｅｒａｌ Ｍａｇｉｃ社）、プランジェント（株式会社東芝）などがある。
Ｊａｖａ言語を拡張したシステムは、記述されたプログラムを解読しながら実行するので動作が遅くなると言う欠点があるが、いくつかのアプリケーションに組み込まれている。これらの技術では、モバイルエージェントは、無線回線を介して端末間を移動し、情報の提供または収集などが実現されている。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところが、現行の技術では、エージェントの行動はスクリプト言語などで記述され、複雑な行動を記述するとプログラムが複雑になる問題がある。
そこで、本発明は、上述の課題に鑑み、モバイルエージェントの移動先の行動をアクションセットに定義することで、エージェントはアクションセットで定義された単純な行動を移動先で組合わせて実行することで複雑な行動を単純な行動の組合せで提供することを目的とする。
さらに、現行の技術では、モバイルエージェントが移動先で実行する行動に対応する応答が適切でないときに、移動先の応答に対応する行動はエージェントの行動が複雑になりスクリプト言語などでの記述が困難である。例えば、エージェントが翻訳を頼みたい文書を持って移動先に移動し、何日までに翻訳できるかと質問したところ、期日までに翻訳することができないと回答されると、従来はそれに対応する行動は移動元に戻ってその旨を報告するだけであった。
本発明は、移動先で期日までに翻訳することができないと回答されたときに、次の行動をアクションセットに記述する。例えば、断られたときには、「他の人に頼む」と言うアクションを定義することでエージェントは次に頼む人に移動することができる。
【課題を解決するための手段】
【０００４】
この発明のモバイルエージェントの制御方法では、モバイルエージェントの行動を定義するアクションセットを備え、エージェントの移動と一緒にこのアクションセットを移動することでエージェントの移動先の行動をアクションセットの状態に基づいて実行するエージェント実行手段を備える。
また、上述の課題を解決するために、本発明に係るモバイルエージェントシステムの制御方法は、アクションセットに詳細な設定をすることでエージェントが持っている能力を大幅に向上することができる。例えば、エージェントに欲しい形式のファイルを収集することを命令するときは、アクションセットにファイル収集と言うアクションとファイルの形式をセットすることで、実現する。このとき、移動先で誤った形式のファイルを選択したときは、次の行動をアクションセットに記述するだけで実現する。例えば、誤った形式のファイルが選択されたとメッセージを表示するなどができる。
本発明は、エージェントが行動する複数の通信機器が有線回線または無線回線で接続されているモバイルエージェントシステムにおいて、各モバイルエージェントの行動を単純な行動の組合せで定義したアクションセットの一つが割り当てられている一つ以上のモバイルエージェントと、モバイルエージェントの行動を定義するアクションセットを編集するアクションセット編集手段と、アクションセットに識別名を付けて保存するアクションセット保存手段と、識別名の付けられているアクションセットの中から一つを選択し、モバイルエージェントに割り当てるアクションセット選択手段と、モバイルエージェントに割り当てられたアクションセットの設定情報を順番に取り出して解釈するアクションセット解釈手段と、モバイルエージェントのアクションセットに定義されている移動先に前記通信機器間を移動するエージェント移動制御手段と、モバイルエージェントの移動先でアクションセットに定義されているアクションを実行するエージェント実行手段と、モバイルエージェントが移動先に一緒に持って行くデータとモバイルエージェントが移動先で取得するデータを保管するコンテナ制御手段と、を備えることを特徴とする。この構成によれば、予め定義されたアクションセットをモバイルエージェントに割り当てることで、この割り当てられたアクションセットの定義にしたがって動作を開始する。本実施例では、モバイルエージェントの行動を次に示す９種類の単純なアクションの組合せで定義する。
移動アクション：アクションセットに設定されている移動先にエージェントを移動する
メッセージ表示アクション：アクションセットのメッセージを表示する
選択肢表示アクション：アクションセットの選択肢を表示する。
選択結果はアクションセットに保存して持ち帰る
質問アクション：アクションセットの質問を表示する。
回答はアクションセットに保存して持ち帰る
請求アクション：アクションセットの請求メッセージを表示する。
「はい」、「いいえ」の返事を持ち帰る
ファイル指定請求アクション：アクションセットの請求メッセージを表示する。
ファイルを貰う場合は貰うファイルの種類を指定できる
コンテナの中身表示アクション：コンテナの中身を全部表示する
ファイル表示アクション：移動先で指定されたファイルを表示する
期日指定請求アクション：期限付きで請求する
委託請求アクション：請求を断られたときに他の人に頼む
本実施例では、アクションセットにはモバイルエージェントが実行する行動を時系列でアクションの順番に定義する。よって、モバイルエージェントは移動元から行動を開始するので、アクション順番１には、指定された移動先へ移動せよと言う移動アクションが定義される。アクションセットには、このアクション順番に対応するアクションタイプ、パラメータ、ステータスなどが設定される。アクションタイプは、移動アクション、メッセージ表示アクションなどの番号が設定される。パレメータは、モバイルエージェントが移動先で行動するときのパラメータ（入力情報）でメッセージテキスト、画像、動画などが設定される。ステータスは、移動先でモバイルエージェントが取得した情報が設定される。例えば、二者択一の質問をしたときに選択された番号とか、Ｙｅｓ／Ｎｏの質問では選択されたＹｅｓ／Ｎｏが設定される。また、携帯電話間を移動するときは、実施例では携帯ＩＤ番号や仕事を頼んで断られたときの次の移動先など、アクションタイプで内容は相違する。
さらに、本発明に係るモバイルエージェントシステムに、モバイルエージェントが移動した移動先で実行した行動（アクション）に対応する移動先のユーザの応答に対応する行動を定義できるようにしてもよい。また、ユーザの応答までの期日を指定することで期日を過ぎたときの移動先にいるモバイルエージェントの行動を定義できるようにしてもよい。
さらに、移動先からファイル（文書、画像、音楽、映画、小説、チケットなど）を貰ってくるときに、指定通りでなかったときにモバイルエージェントが移動先で実行する行動を定義できるようにしてもよい。例えば、画像ファイルを欲しいと定義したにも係わらず、移動先のユーザが音楽ファイルを選択したときに、音楽ファイルでなく画像ファイルに変更してくださいとメッセージを表示することで伝えることができる。
さらに、移動先からファイル（文書、画像、音楽、映画、小説、チケットなど）を貰ってくるときに、そのファイルの内容が指定通りであるかどうかをチェックするために、エージェントがチェックプログラムを携行してもよい。チェックプログラムを移動先で実行させて当該ファイルが指定どおりの内容を持つものでなかったときモバイルエージェントが移動先でする実行する行動を定義できるようにしてもよい。
【発明の効果】
【０００５】
本発明のモバイルエージェントシステムによれば、モバイルエージェントの行動を単純なアクションの組合せで定義するアクションセットによって、モバイルエージェントの移動先の複雑な行動を実現することができる。
【発明を実施するための最良の形態】
【０００６】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲に係る発明を限定するものではなく、また、実施形態の中で説明されている特徴の組合せの全てが発明の解決手段に必須であるとは限らない。また、本発明は、有線回線または無線回線で接続される通信機器に内蔵されるコンピュータをソフトウェアで制御することで実現される。このソフトウェアは、コンピュータのハードウェアを物理的に活用することで各通信機器の機能及び作用効果を実現するものであり、従来技術を適用可能な部分には好適な従来技術が適用される。さらに、本発明を実現するハードウェアやソフトウェアの具体的な種類や構成などは自由に変更可能であり、例えば、本発明を実現するプログラムは本発明の一態様である。
本実施形態のモバイルエージェントシステムは、通信機器、例えば携帯電話に組み込まれ、当該通信機器を含む複数の通信機器の間でエージェントを介してコミュニケーションを提供する。
【０００７】
図１は、本実施形態に係るモバイルエージェントシステムの構成を示すブロック図である。このモバイルエージェントシステム１００（移動元携帯、移動先携帯）は、物理的には、CPU(Central Processing Unix)、ROM（Read Only Memory）、RAM(RandamAccess Memory)、EEPROM(Electrically Erasable Programmable ROM)等がCPUバスを通じて接続されたマイクロコンピュータシステムとして構成されている。モバイルエージェントシステム１００は、ユーザ操作制御手段１１０と、アクションセット編集手段１２０と、アイコンセット保存手段１３０と、アクションセット格納手段１４０と、アクションセット選択手段１５０と、エージェント移動制御手段１６０と、選択されたアクションセットが割り当てられたモバイルエージェント１７０と、エージェント移動制御手段１６０の手段で移動先に移動したモバイルエージェント１８０と、アクションセット解釈手段１９０と、エージェント実行手段２１０と、コンテナ制御手段２２０と、コンテナ制御手段２２０で保管されたコンテナと一緒に移動先から戻ってきたモバイルエージェント２３０とを有する。
ユーザ操作制御手段１１０〜エージェント移動制御手段１６０は、エージェントを最初に送り出す携帯（以後、ホスト携帯と呼ぶ）で実行される。アクションセット解釈手段１９０〜コンテナ制御手段２２０は送り出されたエージェントの行き先携帯（以後、リモート携帯と呼ぶ）で実行される。
ユーザ操作制御手段１１０は、モバイルエージェントを新規に作成する。また、携帯ＩＤテーブルに情報を設定する。さらに、エージェントを起動し、挨拶画面を表示する。さらに、キーイベントの入力を待って、アクションメニューの指示によって処理を実行する。
【０００８】
アクションセット編集手段１２０は、モバイルエージェントのアクションを新規に定義するとともに、定義したアクションを編集したり、削除したりする。アクションセット保存手段１３０は、アクションセット編集手段１２０で作成されたアクションセットに識別名を付けてアクションセット格納手段１４０に保存する。本実施例では、キーボードに示すメニューボタンを押下後、Save Action Setメニューを選択する。
本発明では、モバイルエージェントにやってもらいことをアクションセットと言う形で前もって準備することで、エージェントの能力を大幅にアップさせている。アクションセット選択手段１５０は、この前もって準備したアクションセットの中から適切なアクションセットを選択する。この選択したアクションセットは、モバイルエージェントと一緒に移動先に移動する。
エージェント移動制御手段１６０は、アクションセット選択手段１５０で選択されたアクションセットをモバイルエージェント１７０に付加するとともに設定されている移動先に移動する。モバイルエージェントの移動方法は、従来技術に述べたJava（登録商標）言語を拡張したAglets（日本IBM株式会社)、Ｋａｆｕｋａ（富士通株式会社）や専用の独自に開発したプログラム言語ＴｅｌｅＳｃｒｉｐｔ言語（Ｇｅｎｅｒａｌ Ｍａｇｉｃ社）、プランジェント（株式会社東芝）などで公開されているので説明を省略する。
【０００９】
アクションセット解釈手段１９０は、エージェントの行き先携帯で実行され、モバイルエージェントと一緒に送られてくるアクションセットからアクション順番にアクションタイプ、パラメータを取り出し、アクションタイプに該当する処理を実行する。コンテナ制御手段２２０は、ファイルを持ち帰るアクションのエージェントが来たときにリモート携帯の中のファイル名を選択する。ファイルタイプの指定があるときは選択されたファイルのタイプと指定されたファイルタイプが一致するかチェックを行い、不一致のときはメッセージを表示する。ファイルタイプが一致するときはモバイルエージェントと一緒に移動するコンテナに保管する。
【００１０】
アクションセットに設定された移動先での行動（エージェントの振る舞い）が終了したら移動元に戻る。移動先での行動の結果はモバイルエージェント２３０と一緒に移動するアクションセットに設定される。モバイルエージェントは、アクションセット、コンテナと一緒に移動元に戻る。
図２は、本実施形態のモバイルエージェントシステムのユーザ操作を制御する一例を示す。プログラムをスタートすると、エージェントが新規に作成される（Ｓ２０１）。まず、XMLファイルで作成されたホスト携帯の情報を取り出して、携帯ＩＤテーブルに格納する。
【００１１】
図３は、本実施形態のXMLファイルのフォーマットを示す。この例は、携帯IDは、BLACK、ＩＭＥＩは、“３５４８０５０１６２４１７４１”、ＢｌｕｅｔｏｏｔｈＩＤは、“００１ａｄｃ２１２ｃｄｅ“、及び接続方式がＢｌｕｅｔｏｏｔｈであることを示す。図４は、Ｓ２０１で設定される携帯ＩＤテーブルのデータフォーマットの一例を示す。携帯ＩＤ、ＩＭＥＩ、ＢｌｕｅｔｏｏｔｈＩＤは図３のＸＭＬファイルで定義された携帯ＩＤがそのまま設定される。ＩＭＥＩは、Ｉｎｔｅｒｎａｔｉｏｎａｌ Ｍｏｂｉｌｅ  Ｅｑｕｉｐｍｅｎｔ  Ｉｄｅｎｔｉｔｙである。Ｃｏｎｎｅｃｔ方式はエージェント移動時に接続するやり方を定義する。本実施形態では、Ｂｌｕｅｔｏｏｔｈを選択した例で説明する。ポート番号は、データの送信、受信に用いる。ユーザビリティフラグは、ホスト携帯が通信で使えるかどうかのフラグを格納する。また、ホスト携帯と接続できるポートをチェックし、使えるポート番号を設定する。図１６は、モバイルエージェントシステムが立ち上がり、エージェントが“こんにちは、ご機嫌いかがですか?”とご主人に挨拶をしている画面である。
【００１２】
図１５は、モバイルエージェントシステムの一実施形態である携帯電話のキーボードである。モバイルエージェントのアクションセットの定義や定義されたアクションセットの編集に用いる。また、エージェントの移動先では、応答メッセージの入力などに用いる。
エージェントシステムはエージェントにどのような振る舞いをさせるかを指示するキーの入力待ちになる（Ｓ２０２）。携帯電話の左下に表示されるメニューキーを示すファンクションキーを押下後、表示されるメニューの中からａｃｔｉｏｎ（アクション）を選択する（Ｓ２０３）。続いて、下位階層のアクションメニューの選択がＡｄｄ（アクションセットの定義／追加）であるか判定がなされ（Ｓ２０４）、該当するときは、アクションセットを新規に作成または追加する（Ｓ２０５）。
【００１３】
下位階層のアクションメニューの選択がＥｄｉｔ（アクションセットの編集）であるか判定がなされ（Ｓ２０６）、該当するときは、アクションセットの編集をする（Ｓ２０７）。下位階層のアクションメニューの選択がＳａｖｅ Ａｃｔｉｏｎ Ｓｅｔ（アクションセットの保存）であるか判定がなされ（Ｓ２０８）、該当するときは、アクションセットを保存する（Ｓ２０９）。下位階層のアクションメニューの選択がＬｏａｄ Ａｃｔｉｏｎ Ｓｅｔ（アクションセットのロード）であるか判定がなされ（Ｓ２１０）、該当するときは、アクションセットをロードする（Ｓ２１１）。下位階層のアクションメニューの選択がＥｘｅｃｕｔｅ（アクションセットの実行）であるか判定がなされ（Ｓ２１１）、該当するときはアクションタイプ別に実行する（Ｓ２１３）。メニューキーの選択がＥｘｉｔ（終了）であるか判定がなされ（Ｓ２１４）、該当するときはプログラムを終了する。
【００１４】
図５は、アクションセット格納手段１４０に保存されるデータフォーマットの一例を示す。アクションセット格納手段１４０は、アクションセット編集手段１２０で作成されるアクションセットにアクションセット保存手段１３０で識別名を付けて格納する。アクションセット格納手段１４０に格納されるアクション順番は、モバイルエージェントが実行するアクションを時系列で定義する。アクション順番の１には、移動元のアクションが定義される。アクションタイプは、エージェントの単純な行動を番号で定義する。パラメータは、エージェントが移動先に移動したときの入力情報である。ステータスは、移動先で取得した各種の情報が設定される。図５に示したアクションセットの例では、アクション順番１は、アクションは移動アクション、移動先はBLACKとIDを持つ携帯電話と定義さていることを示している。アクションセット移動制御手段１６０は、移動アクションの要求が定義されているので、パラメータに定義されているBLACKと言うIDを持つ携帯電話にモバイルエージェントを移動する。アクション順番２は、パラメータに定義されたメッセージを移動先で表示すると言うアクションが定義されているので、移動先の携帯電話の画面に“はじめまして、私の名前は福助です”と表示する。続いて、アクション順番３に定義されているコンテナで運んできた中身を表示する。
【００１５】
ステータスには、モバイルエージェントが移動先で取得した情報が設定される。例えば、アクション順番４の質問アクションで質問した“あなたはどこに住んでいますか？”に”京都に住んでいます。“と答えると、ステータスには、” 京都に住んでいます。“と言う文字列が設定される。図２０、図２１は、質問アクションの本実施形態のアクション定義画面例とモバイルエージェントの移動先の実行画面例である。
アクション順番５の選択肢表示アクションで質問すると、携帯電話の画面には、パラメータで入力したメッセージが表示される。この選択肢表示アクションの回答は番号を選択する。例えば、数字の”４“を入力する、ステータスには、”４．翻訳家？“という文字列が設定される。アクション番号６の請求アクションでは、二者択一の質問をする。Ｙｅｓ／Ｎｏの質問では、選択されたＹｅｓ／Ｎｏが設定される。
【００１６】
図６は、モバイルエージェント１７０，１８０，２３０に保存されるコンテナのデータフォーマットの一例を示す。ファイル順番はファイルを追加したときに順番に付けた番号である。ファイル名は、そのファイルに付けられた名前を格納する。宛先は、コンテナに格納されたファイルを見ることができる携帯電話を示す。例えば、識別IDがRED，BLACK，SILVER，WHITE,  BLUEと５台の携帯電話があると仮定して、宛名にRED，BLUEと設定されるとモバイルエージェントが移動した先がRAD，BLUE以外では、コンテナを見られない。ファイル内容は、保存されるファイルの中身が格納される。
【００１７】
続いて、本実施形態に係るモバイルエージェントシステムの動作について説明し、併せて本発明の実施形態にかかるモバイルエージェントシステムの制御方法について説明する。
図７，８は、アクションセット編集手段１２０の動作の一例を示すフローチャートである。図７は、エージェントのアクションセットを新規に定義するフローチャートである。図７のフローチャートは、携帯電話の左下に表示されるメニューキーを押下後、表示されるメニューの中からａｃｔｉｏｎ（アクション）を選択後、下位階層のＡｄｄ（アクションタイプを追加）に続き、追加または新規に定義するアクションタイプを選択する（Ｓ７０１）。選択したアクションタイプがメッセージ表示アクションであるか判定し（Ｓ７０２）、該当するときは移動先で表示するメッセージの入力と背景音を選択する（Ｓ７０３）。図１７は、アクションタイプがメッセージ表示アクションの画面例を示す。モバイルエージェントが移動先の携帯電話の画面に次のメッセージを表示する。
【００１８】
私たちは新オフィスに移動しました
新しい住所と電話番号は以下です。
住所：東京都港区芝浦芝大門2-10
電話番号：03-3438-5555
選択したアクションタイプが選択肢表示アクションであるか判定がなされ（Ｓ７０４）、該当するときは移動先で表示する選択肢を入力する（Ｓ７０５）。選択したアクションタイプが質問アクションであるか判定がなされ（Ｓ７０６）、該当するときは移動先で質問する質問文を入力する（Ｓ７０７）。選択されたアクションタイプが請求アクションであるか判定がなされ（Ｓ７０８）、該当するときは
移動先で請求する文章を入力する（Ｓ７０９）。選択されたアクションタイプがコンテナ表示アクションであるか判定がなされ（Ｓ７１０）、該当するときはパラメータに設定する情報がないのでアクションセットの先頭にアクション順番に１とアクションタイプを設定する（Ｓ７２１）。選択したアクションタイプがファイル表示アクションであるか判定がなされ（Ｓ７１１）、該当するときは移動先で表示するファイルタイプを選択する。選択したファイルタイプは、アクションセットのパラメータに設定する（Ｓ７１２）。選択したアクションタイプが受領アクションであるか判定がなされ（Ｓ７１３）、該当するときは移動先で受領する物品のファイルタイプを入力する。例えば、音声であればmp３を、絵であればｐｉｃｔｕｒｅを、動画であればｊｐｅｇを、ｇｉｆの動的な絵であればｆｌａｓｈを、テキストであればｔｅｘｔを、他のタイプであればファイルを識別する識別子を入力する。
【００１９】
入力したファイルタイプは、アクションセットのパラメータに設定する（Ｓ７１４）。選択したアクションタイプが移動アクションであるか判定がなされ（Ｓ７１５）、該当するときは移動先の携帯IDを選択する。例えば、RED，BLACK，SILVER，WHITE, BLUEの５台の携帯電話が接続できると仮定すると、５つの携帯ＩＤが画面に表示される。選択した携帯IDは、アクションセットのパラメータに設定する（Ｓ７１６）。選択したアクションタイプが依頼アクションであるか判定がなされ（Ｓ７１７）、該当するときは移動先で表示する依頼文を入力する。また、受領する物品のファイルタイプを入力する。さらに、依頼が断られたときに依頼を転送する転送先の携帯IDを選択する。依頼文、依頼文及び転送先の選択した携帯IDは、アクションセットのパラメータに設定する（Ｓ７１８）。選択したアクションタイプが期限指定請求アクションであるか判定がなされ（Ｓ７１９）、該当するときは移動先で受領する物品のファイルタイプを入力する。また、期限と期限が近づいたときに表示するアラーム文を入力する。
【００２０】
さらに、受領する物品が貰えないときにモバイルエージェントが居座るかどうかを選択する。居座るが選択されたときは、居座って待ち続ける。選択されないとアクションセットの後続動作を実行する。（Ｓ７２０）。
図８は、定義されているエージェントのアクションセットを編集するフローチャートである。図８のフローチャートは、携帯電話の左下に表示されるメニューキーを押下後、表示されるメニューの中からａｃｔｉｏｎ（アクション）を選択後、下位階層のＥｄｉｔ（アクションセットを編集）を選択する。アクションセットの編集が選択されると、編集するアクションセットのアクション順番を選択する（Ｓ８０１）。続いて、編集するアクションのアクションタイプを選択する（Ｓ８０２）。選択したアクションタイプがメッセージ表示アクションであるか判定し（Ｓ８０３）、該当するときは移動先で表示するメッセージの入力と背景音を編集する（Ｓ８０４）。
【００２１】
選択したアクションタイプが選択肢表示アクションであるか判定がなされ（Ｓ８０５）、該当するときは移動先で表示する選択肢を編集する（Ｓ８０６）。選択したアクションタイプが質問アクションであるか判定がなされ（Ｓ８０７）、該当するときは移動先で質問する質問文を編集する（Ｓ８０８）。選択されたアクションタイプが請求アクションであるか判定がなされ（Ｓ８０９）、該当するときは移動先で表示される請求文を編集する（Ｓ８１０）.。選択したアクションタイプがファイル表示アクションであるか判定がなされ（Ｓ８１１）、該当するときは移動先で表示するファイルタイプを再選択する。再選択したファイルタイプは、アクションセットのパラメータに設定する（Ｓ８１２）。選択したアクションタイプが受領アクションであるか判定がなされ（Ｓ８１３）、該当するときは移動先で受領する物品のファイルタイプを編集する。
【００２２】
例えば、音声であればmp３を、絵であればｐｉｃｔｕｒｅと、動画であればｊｐｅｇと、ｇｉｆの動的な絵であればｆｌａｓｈを、テキストであればｔｅｘｔを、他のタイプであればファイルを識別する識別子を入力する。入力したファイルタイプは、アクションセットのパラメータに再設定する（Ｓ８１４）。選択したアクションタイプが移動アクションであるか判定がなされ（Ｓ８１５）、該当するときは移動先の携帯IDを再選択する。例えば、RED，BLACK，SILVER，WHITE,  BLUEの５台の携帯電話が接続できると仮定すると、５つの携帯ＩＤが画面に表示される。再選択した携帯IDは、アクションセットのパラメータに再設定する（Ｓ８１６）。選択したアクションタイプが依頼アクションであるか判定がなされ（Ｓ８１７）、該当するときは移動先で表示する依頼文を編集する。また、受領する物品のファイルタイプを編集する。さらに、依頼が断られたときに依頼を転送する転送先の携帯IDを再選択する。
【００２３】
依頼文、依頼文及び転送先の再選択した携帯IDは、アクションセットのパラメータに再設定する（Ｓ８１８）。選択したアクションタイプが期限指定請求アクションであるか判定がなされ（Ｓ８１９）、該当するときは移動先で受領する物品のファイルタイプを編集する。また、期限と期限が近づいたときに表示するアラーム文を編集する。さらに、受領する物品が貰えないときにモバイルエージェントが居座るかどうかを再選択する。（Ｓ８２０）。アクションタイプ別に編集されたパラメータを選択されたアクション順番の位置に保存する（Ｓ８２１）。
【００２４】
図９は、定義されたまたは編集されたエージェントのアクションセットを保存するフローチャートである。図９のフローチャートは、携帯電話の左下に表示されるメニューキーを押下後、表示されるメニューの中からＳａｖｅ Ａｃｔｉｏｎ Ｓｅｔ（アクションセット保存）を選択すると動作を開始する。保存するアクションセットの識別名を入力する（Ｓ９０１）。入力された識別名が既にあるかチェックを行い（Ｓ８０２）、既に識別名があるときは、メッセージを表示後、もう一度アクションセットの識別名の入力を待つ（Ｓ９０３）。既存の識別名がないときは、アクションセットを保存する（Ｓ９０４）。
【００２５】
図１０は、定義されたアクションセットをエージェントに割り当てるフローチャートである。図１０のフローチャートは、携帯電話の左下に表示されるメニューキーを押下後、表示されるメニューの中からＬｏａｄ  Ａｃｔｉｏｎ  Ｓｅｔ（アクションセットロード）を選択すると動作を開始する。選択するアクションセットの識別名のリストを作成し、表示する（Ｓ１００１）。図１８、図１９はアクションセットを選択する本実施形態の画面例である。選択された識別名のアクションセットをロードする（Ｓ１００２）。ロードするアクションセットに誤りがないかチェックを行い（Ｓ１００３）、誤りがあるときは、メッセージを表示する（Ｓ１００４）。誤りがないときはモバイルエージェントにアクションセットを割り当てる。
【００２６】
図１１は、アクションセット解釈手段１９０およびエージェント実行手段２１０を説明するフローチャートである。図１１のフローチャートは、携帯電話の左下に表示されるメニューキーを押下後、表示されるメニューの中からExecute（モバイルエージェント実行）を選択すると動作を開始する。アクションセットで定義されたアクションタイプが移動アクションであるとエージェント移動制御手段１６０によって移動先の携帯に移動する。エージェントが移動先で終了すると制御が戻ってくる。本実施形態では、アクションセットの取り出しはロードするカウンターで実施している。よって、アクション番号が１オリジンなので１をロードカウンターを設定する（Ｓ１１０１）。続いて、ロードカウンターとアクション番号が一致するアクションタイプを探し（Ｓ１１０２）、一致するアクション番号がないときは、ローカルホスト情報を取得した後、エージェントは移動先に戻る（Ｓ１１１８）。
【００２７】
ロードカウンターとアクション番号が一致するときは、アクションタイプを取り出し（Ｓ１１０３）、移動アクションであるか判定がなされ（Ｓ１１０４）、該当するときは移動先の携帯ＩＤをプロパティから取り出し、携帯ＩＤを持つ携帯電話に移動する（Ｓ１１０５）。取り出したアクションタイプがメッセージ表示であるか判定がなされ（Ｓ１１０６）、該当するときはプロパティに記憶されるメッセージを表示する（Ｓ１１０７）。取り出したアクションタイプが選択肢表示アクションであるか判定がなされ（Ｓ１１０８）、該当するときはプロパティに記憶される選択肢を表示する。
【００２８】
さらに選択肢に対する選択肢の回答を取得し、ステータスに保存する（Ｓ１１０９）。取り出したアクションタイプが質問アクションであるか判定がなされ（Ｓ１１１０）、該当するときはプロパティに記憶される質問文を表示する（Ｓ１１１１）。また、質問文に対する回答を取得し、ステータスに保存する。取り出したアクションタイプが請求アクションであるか判定がなされ（Ｓ１１１２）、該当するときはプロパティに記憶される請求内容を表示する。ユーザは請求内容に了承：「はい」また拒否：「いいえ」を選択する。この回答をステータスに保存する（Ｓ１１１３）。取り出したアクションタイプがコンテナ表示アクションであるか判定がなされ（Ｓ１１１４）、該当するときはコンテナに記憶されるコンテナの中身を表示する（Ｓ１１１５）。取り出したアクションタイプがファイル表示アクションであるか判定がなされ（Ｓ１１１６）、該当するときは移動先で指定されたファイルを表示する（Ｓ１１１７）。
【００２９】
例えば、音楽再生、ピクチャー表示、ムービー再生などが行われる。
取り出したアクションタイプが期日指定請求アクションであるか判定がなされ（Ｓ１１２０）、該当するときは物品を入手するまでのタイマーを初期化する（Ｓ１１２１）。初期化するとタイマーは時間を測り始め、ユーザが定義した時間になるとユーザにアラームで知らせる（Ｓ１１２４）。コンテナに集めて受領する物品リストを表示する（Ｓ１１２２）。表示された受領物品リストから受領する物品を選択し、選択された物品は正しいか判定がなされる（Ｓ１１２３）。
【００３０】
図２２は、期限して請求アクションのアクションセットの定義画面である。図２３は、移動先の携帯電話の画面に請求文を表示した画面である。図２４は、受領すべき物品リストが表示された画面である。選択した物品が正しくないときは、もう一度受領物品リストを表後、再選択する。定義した時間が過ぎてタイムアウトになったらエージェントに居座る設定がなされているか判定がなされ、居座る要求があるときは、もう一度タイマーを初期化する（Ｓ１１２５）。取り出したアクションタイプが依頼アクションであるか判定がなされ（Ｓ１１２６）、該当するときは依頼を了承するかユーザに質問する（Ｓ１１２７）。依頼を了承するときは、受領する物品リストを表示する（Ｓ１１２８）。表示された受領物品リストから受領する物品を選択後、選択された物品は正しいか判定がなされる（Ｓ１１２９）。依頼を拒否するときは、次に依頼を転送する先が登録されているか判定がなされ（Ｓ１１３０）、次に依頼をするユーザが登録されているときは、転送先の携帯ＩＤをプロパティから取り出し、転送先携帯ＩＤを持つ携帯電話に移動する（Ｓ１１３１）。
【００３１】
取り出したアクションタイプがここまで一致しないときは受領アクションであると判定がなされ、受領する物品リストを表示する（Ｓ１１３２）。表示された受領物品リストから受領する物品を選択後、選択された物品のファイルタイプは正しいか判定がなされ、選択された物品のファイルが一致するときは、選択されたファイルをコンテナに格納する（Ｓ１１３３）。図２５（ａ）〜（ｅ）は、本実施例形態のＳ１１３２とＳ１１３３の画面表示の遷移例を示す。図２５（ａ）は、音楽のファイルを請求された画面である。ユーザは、音楽ファイルが請求されているので音楽ファイルを持っているかチェックする。図２５（ｂ）は、音楽ファイルを保有するのでＯＫした画面である。図２５（ｃ）は、Ｍｅｎｕキーを押してコンテナに対するアクションを選択する画面である。コンテナにファイルを追加するときは、Ａｄｄ ｔｏ ｃｏｎｔａｉｎｅｒを選択する。図２５（ｄ）は、ファイルリストが表示された画面である。図２５（ｅ）は、該当する音楽ファイルを選択するとコンテナに選択されたファイルが保存されたことを示す画面である。
【００３２】
図１３は、エージェント移動制御手段１６０を説明するフローチャートである。エージェントの移動と移動先のエージェントを呼び戻す機能である。エージェントが移動されているか判定する（Ｓ１３０１）。これからエージェントを移動するときは、エージェントオブジェクトをシリアライズする（Ｓ１３０２）。エージェントＩＤの一致するエージェント情報をエージェント情報テーブルから取得する（Ｓ１３０３）。エージェントの詳細情報によりエージェントが使うリソースファイルリストを取得する（Ｓ１３０４）。携帯ＩＤテーブルを検索して、ローカルホストの接続方式を取得する（Ｓ１３０５）。接続方式によって、ブルートゥースまたはＧＰＲＳによってエージェントのシリアライズしたデータとリソースファイルデータを発信する（Ｓ１３０６，Ｓ１３０７，Ｓ１３０８）。
【００３３】
エージェントを呼び戻すときは、エージェントが呼び戻されるか判定する（Ｓ１３１０）。携帯ＩＤテーブルを検索して、ローカルホストの接続方式を取得する（Ｓ１３１１）。接続方式によって、ブルートゥースまたはＧＰＲＳによってエージェントのシリアライズしたデータとリソースファイルデータを受信する（Ｓ１３１２，Ｓ１３１３，Ｓ１３１４）。エージェントのアクションセットの実行結果を報告する（Ｓ１３１５）。例えば、取り集めたファイルを表示などする。
【００３４】
図１４は、コンテナ制御手段２２０の動作の一例を示すフローチャートである。図１４のフローチャートは、携帯電話の左下に表示されるメニューキーを示すファンクションを押下後、表示されるメニューの中からAdd to ｃｏｎｔａｉｎｅｒ（コンテナにファイルを追加）又はＤｅｌｅｔｅ（コンテナからファイルを削除）を選択する実行を開始する。選択されたキーがＡｄｄ ｔｏ ｃｏｎｔａｉｎｅｒであるか判定がなされ（Ｓ１４０１）、該当するときはリソースディレクトリを検索する（Ｓ１４０２）。ディレクトリある全てファイルのファイル名、ファイルサイズ、作成日及びファイル形式を読み取る（Ｓ１４０４）。読み取ったファイル情報を情報リストに保存する（Ｓ１４０５）。保存したファイル情報をリスト形式で表示する（Ｓ１４０６）。コンテナに追加するファイルを選択する（Ｓ１４０６）。選択したファイルをコンテナのファイルリストに追加する（Ｓ１４０８）。選択されたキーがＤｅｌｅｔｅであるか判定され（Ｓ１４０９）、該当するときはコンテナの全てのファイルをクリアする（Ｓ１４１０）。
【００３５】
以上により、モバイルエージェントシステム１００は、モバイルエージェントの行動を定義するアクションセットをエージェントと一緒に移動することでエージェントの移動先の行動をアクションセットを解釈しながら実行するエージェントを実現する。さらに、移動先のエージェントの行動を単純な行動の組合せで定義することができるようになり、様々な行動をエージェントにとらせることが容易にできる。
以上、本発明は実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲に限定されない。上記実施の形態に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。そのような変更又は改良を加えた形態も本発明の技術範囲に含まれ得ることが、特許請求の範囲の記載からあきらかである。
【図面の簡単な説明】
【００３６】
【図１】本実施形態に係るモバイルエージェントシステムを示すブロック図である。
【図２】モバイルエージェントシステムのユーザ操作の動作の一例を示すフローチャートである。
【図３】ホスト携帯情報のデータフォーマットの一例を示す図である。
【図４】携帯ＩＤテーブルのデータフォーマットの一例を示す図である。
【図５】アクションセットのデータフォーマットの一例を示す図である。
【図６】エージェントが収集するコンテナのデータフォーマットの一例を示す図である。
【図７】モバイルエージェントシステムの新規アクションセットの定義動作の一例を示すフローチャートである。
【図８】モバイルエージェントシステムのアクションセットの編集動作の一例を示すフローチャートである。
【図９】モバイルエージェントシステムのアクションセットの保存動作の一例を示すフローチャートである。
【図１０】モバイルエージェントシステムのアクションセットのロード動作の一例を示すフローチャートである。
【図１１】モバイルエージェントシステムのモバイルエージェントの実行動作の一例を示すフローチャートである。
【図１２】モバイルエージェントシステムのモバイルエージェントの実行動作の一例を示すフローチャートである。
【図１３】モバイルエージェントシステムのエージェント移動制御の動作の一例を示すフローチャートである。
【図１４】モバイルエージェントシステムのコンテナ追加／削除の動作の一例を示すフローチャートである。
【図１５】本発明の係るモバイルエージェントシステムの一実施形態である携帯電話のキーボードを示す図である。
【図１６】携帯電話の画面の表示の一例を示す図である。
【図１７】携帯電話の画面の表示の一例を示す図である。
【図１８】携帯電話の画面の表示の一例を示す図である。
【図１９】携帯電話の画面の表示の一例を示す図である。
【図２０】携帯電話の画面の表示の一例を示す図である。
【図２１】携帯電話の画面の表示の一例を示す図である。
【図２２】携帯電話の画面の表示の一例を示す図である。
【図２３】携帯電話の画面の表示の一例を示す図である。
【図２４】携帯電話の画面の表示の一例を示す図である。
【図２５】（ａ）〜（ｅ）携帯電話の画面の表示の遷移の一例を示す図である。
【符号の説明】
【００３７】
１００…モバイルエージェントシステムエージェントシステム、１１０…ユーザ操作制御手段、１２０…アクションセット編集手段、１３０…アクションセット保存手段、１４０…アクションセット格納手段、１５０…アクションセット選択手段、１６０…絵ジェント移動制御手段、１７０，１８０…モバイルエージェント、１９０…アクションセット解釈手段、２１０…エージェント実行手段、２２０…コンテナ制御手段、２３０…モバイルエージェント。
【図１】
2009211541.tif 000003
【図２】
2009211541.tif 000004
【図３】
2009211541.tif 000005
【図４】
2009211541.tif 000006
【図５】
2009211541.tif 000007
【図６】
2009211541.tif 000008
【図７】
2009211541.tif 000009
【図８】
2009211541.tif 000010
【図９】
2009211541.tif 000011
【図１０】
2009211541.tif 000012
【図１１】
2009211541.tif 000013
【図１２】
2009211541.tif 000014
【図１３】
2009211541.tif 000015
【図１４】
2009211541.tif 000016
【図１５】
2009211541.tif 000017
【図１６】
2009211541.tif 000018
【図１７】
2009211541.tif 000019
【図１８】
2009211541.tif 000020
【図１９】
2009211541.tif 000021
【図２０】
2009211541.tif 000022
【図２１】
2009211541.tif 000023
【図２２】
2009211541.tif 000024
【図２３】
2009211541.tif 000025
【図２４】
2009211541.tif 000026
【図２５】
2009211541.tif 000027