(57)【要約】      （修正有）【課題】ユーザの日々の行動を学習することにより、自律的に動作し、また自己を進化させユーザの行動により合致した機能を提供するシステムを提供する。【解決手段】エージェント３４はスポットマネージャにある情報から移動するべきスポットを取得し、スポットの機能を使用する。エージェントは、ユーザの日々の行動を蓄積した結果を傾向分析、誤差分析、情報数値化、反復行動分析などから解析し、特定のロジックによりこのスクリプトを随時改変し、機能を現実の状態に合わせるとともに、予測ロジックを組み立てることができる。エージェントはイベントマネージャ３５−２にイベント通知のコールバックを登録することにより、随時イベントを受けとることができる。このイベントをトリガーとしてエージェントは動作し、イベントドリブンの自立的動作を行う。【選択図】図１
2011258166.tif 000002
【特許請求の範囲】
【請求項１】
自律的に動作する機能を持ったエージェントが接触した特定機能を持ったスポットから実行可能なメソッドをスクリプトとしてエージェントオブジェクトが取得する手段と、エージェントがスポットマネージャへクエリを出し、次に移動するべきスポット情報を取得する手段とを備えることを特徴とする自律的に動作し学習機能により自己進化するエージェントシステム。
【請求項２】
エージェントを実行する上で必要な情報の大元はサーバで管理する手段と、その一部必要な部分のみを端末に保存する手段と、サーバとの通信がオンラインの状態のときに端末上でバックグラウンドで自動的に同期を取る手段と、いかなる端末からでもオンライン、オフラインに拘わらずに使用できる手段とを備えることを特徴とする自律的に動作し学習機能により自己進化するエージェントシステム。
【請求項３】
位置情報の変化を端末のＧＰＳ機能から受け、エージェントに通知するためのメソッドを登録する手段と、タイマーにより設定した時間が来るとエージェントにタイマー種別とともに通知するためのメソッドを登録する手段と、サーバシステムから特定のイベントをプッシュ機能でエージェントに通知するためのメソッドを登録する手段とを備えることを特徴とする自律的に動作し学習機能により自己進化するエージェントシステム。
【請求項４】
請求項１に記載の自律的に動作し学習機能により自己進化するエージェントシステムにおいて、上記イベントが通知されたことをトリガーとしてエージェントが動作を始めるイベントドリブンを特徴とする自律的に動作し学習機能により自己進化するエージェントシステム。
【請求項５】
特定のイベントが発生する確率を蓄積することにより予測機能を生成することを特徴とした自律的に動作し学習機能により自己進化するエージェントシステム。
【請求項６】
特定のイベントが繰り返されるのを蓄積することにより予測機能を生成する手段と、ある特定のメソッドがコールされる確率を蓄積することにより予測機能を生成する手段と、特定のメソッドの実行においてその結果が定められた閾値を超える確率が定められた率を超えた場合に閾値自体を変更し、メソッドをエラーとせず、メソッドをコールする側に適応する手段とを備え、これにより自己を進化させることができることを特徴とする自律的に動作し学習機能により自己進化するエージェントシステム。
【請求項７】
請求項６に記載の自律的に動作し学習機能により自己進化するエージェントシステムにおいて、スポットから取得したスクリプト自体を変更し自己進化させる手段と、スクリプトを実行するためのインタプリタコンパイラを備えることを特徴とする自律的に動作し学習機能により自己進化するエージェントシステム。
【請求項８】
請求項１〜７に記載の自律的に動作し学習機能により自己進化するエージェントシステムにおいて、独自スポットを生成するためにスポットを開発するためのクラスライブラリを提供する手段と、独自エージェントを生成するためにエージェントを開発するためのクラスライブラリを提供する手段と、スクリプトを実行させるためのインタプリタコンパイラを備えることを特徴とする自律的に動作し学習機能により自己進化するエージェントシステム。
【請求項９】
エージェントシステムを基礎としたシステム上で動作するアプリケーションとして、食材管理およびメニューリコメンドサービスを提供することを特徴とする、請求項１〜９のいずれかに記載の自律的に動作し学習機能により自己進化するエージェントシステム。
【請求項１０】
請求項９に記載の自律的に動作し学習機能により自己進化するエージェントシステムにおいて、嗜好を選択確立から数値化し、これを基に解析・自己進化するエージェントシステム。
【発明の詳細な説明】
【技術分野】
【０００１】  この発明は、イベントドリブン型の処理と、学習機能とインタプリタ言語搭載による自己進化型オブジェクトの機能をもとに自律的に動作し学習機能により自己進化するエージェントシステムに関わるものである。
【背景技術】
【０００２】  特開平１０−３０７８０４号公報は、ユーザとのコミュニケーションおよびキャラクタ同士のコミュニケーションから進化的にキャラクタが新たな行動を創出する手段を開示している。このような技術を使用すると、ユーザとのコミュニケーションから進化的にキャラクタが新たな行動を生成し得る自律進化型キャラクタ行動生成方法および装置を提供できる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１０−３０７８０４号公報
【発明の概要】
【発明が解決しようとしている課題】
【０００４】  しかしながら、上記従来例では、ユーザがアクションを起こしたときにのみキャラクタが変化していくシステムであり、キャラクタ自らが行動を始められないという問題があった。
【０００５】  さらに、キャラクタの行動を有限オートマンによって制御することで行動を生成しているが、有限オートマンを制御に使用すると予めステートマシン（状態機械）を記述しておく必要があり、本発明で必要な自己改変が実現できないという問題がある。
【０００６】  また、キャラクタはユーザとのコミュニケーションにより進化するが、その場合、位置情報や時間、サーバからのプッシュによる外部要因との関連性による進化ができないという問題がある。
【０００７】  この発明は上述の問題点を解決するためになされたものであり、利用者のとって便利な自律的に動作し学習機能により自己進化するエージェントシステムを提供することを目的としている。
【課題を解決するための手段】
【０００８】  上記目的を達成するためにこの発明のある局面に従うと、自律的に動作し学習機能により自己進化するエージェントシステムは、外部要因によるイベントを受信し自律的に動作する機能と、ユーザの行動を学習し、自己の動作を決定するインタプリタ言語を改変することで自己進化する機能によりユーザの行動を予測する機能を備え、動作のためのデータをサーバとクライアントで同期しながら保持することを特徴とする。
【０００９】  好ましくは自律的に動作するエージェントシステムは、イベントマネージャにコールバックメソッドを登録することにより、外部要因によるコールバックを受けることができ、イベントドリブンを実現する。
【００１０】  好ましくは自律的に動作するエージェントシステムは、ユーザの繰り返し行動を集計し蓄積することにより行動分析を行う段階と、自己進化させた機能がユーザの実際の行動に合致する確率を集計し蓄積することにより行動分析を行う段階と、自己進化させた機能がユーザの実際の行動とどれだけ誤差があるかを集計し、誤差の閾値を変化させ上記合致する確率を変動させる段階と、特定の機能が実施される頻度を集計し蓄積することにより行動分析を行う段階と、同一分野の特定の機能群が実施される方よりを集計し蓄積することにより行動分析を行う段階とを備える。
【００１１】  自律的に動作し学習機能により自己進化するエージェントシステムは、端末に保持している情報とサーバで保持している情報との同期はバックグラウンドで非明示的に行われ、いかなる端末からも同じデータを使用してエージェントを動作させることができることを特徴とする。
【００１２】  自律的に動作し学習機能により自己進化するエージェントシステムは、自律的に動作する機能を持ったエージェントが接触した特定機能を持ったスポットから実行可能なメソッドをスクリプトとしてエージェントオブジェクトが取得する手段を備え、エージェントがスポットマネージャへクエリを出し、次に移動するべきスポット情報を取得する手段とを備えることを特徴とする。
【００１３】  なお、複数のイベント用にコールバックを登録しておくと、より自律的に行動ができるという利点がある。
【００１４】  また、自律的に動作し学習機能により自己進化するエージェントシステムは、独自スポットを生成するためにスポットを開発するためのクラスライブラリを提供し、また独自エージェントを生成するためにエージェントを開発するためのクラスライブラリを提供することを特徴とする。
【００１５】  さらに、自律的に動作し学習機能により自己進化するエージェントシステムは、スクリプトを実行させるためのインタプリタコンパイラを備えることを特徴とする。
【図面の簡単な説明】
【図１】本発明の実施の形態の１つにおけるエージェントシステムを搭載する端末のブロック図である。
【図２】本発明の実施の形態の１つにおけるエージェントシステムのブロック図である。
【図３】本実施の形態における「自律」の動作を示すフローチャートである。
【図４】図３のステップ４０３の処理のフローチャートである。
【図５】本実施の形態における「蓄積」の動作を示すフローチャートである。
【図６】本実施の形態における「解析」の動作を示すフローチャートである。
【図７】本実施の形態における「自己改変」の動作を示すシーケンス図である。
【図８】本実施の形態における動作を示すユースケース図である。
【発明を実施するための形態】
【実施例】
【００１６】  図１は、本発明の実施の形態の１つにおけるエージェントシステムを搭載する端末のブロック図である。【００１７】  図を参照して、エージェントシステムは、イベントを管理するイベントマネージャ３５−１、３５−２と、スポットの機能を管理する機能マネージャ３６−１、３６−２と、メインで動作するオブジェクトであるエージェント３４と、動作するために必要な情報が格納されているデータベース３３と、自律的に動作するためのインタプリタ言語を解析実行するスクリプトエンジン４１と、複数スポットの持つ機能インデックスを格納するスポットマネージャ４２とから構成されている。【００１８】  イベントマネージャ３５−１、３５−２は端末に搭載されている位置情報システム（ＧＰＳ）を介したユーザの位置情報や、タイマー、更にはサーバから通知される情報をエージェントへ通知する機能を備え、ここへエージェントはコールバックメソッドを登録する。機能マネージャ３６−１、３６−２はスポットにある機能が登録されている部分である。データベース３３はエージェントシステムが動作するのに必要な情報が格納されており、機能マネージャ３６−１、３６−２やエージェント３４からアクセスできる機能を備える。【００１９】  スポットマネージャ４２は、スポットを管理し、エージェントからクエリを受けたときに各スポットが保持している機能インデックスとスポットの種類を返却する機能を備える。スクリプトエンジン４１は機能マネージャが保持する機能スクリプトを解析実行するためのインタプリタ解析実行エンジンである。【００２０】  次に、エージェントを搭載した端末と、サーバとの構成について説明する。【００２１】  図２は、本発明の実施の形態の１つにおけるエージェントシステムのブロック図である。【００２２】  図を参照して、エージェントシステムは、データベース２０１と、端末のデータとデータベース上のデータの同期を取るためのサーバ２０２と、バックエンドシステム２０３と、インターネット網３０１と、端末１０１から構成されている。【００２３】  サーバ２０２は、経路制御装置や電話回線を経由してインターネット３０１に接続されている。端末１０１は、入出力装置、視聴覚通知機能、位置情報取得通知機能、タイマー機能を有する反応部を備え、たとえばパケット通信、回線通信、ＰＨＳのデータ通信、無線ＬＡＮなどの広域網無線通信機能を備えている。【００２４】  次に、本実施の形態におけるエージェントシステムのうち、イベントドリブンで自律的に動作する処理について図３に示すフローチャートを参照して詳しく説明する。【００２５】  図３を参照して、まずＦ１０で示されるように、端末１０１をコールバックの受信待ちにしておく。【００２６】  端末１０１にイベントが発生し、コールバックが通知されると端末１０１はどのイベントが発生したのかを検知し、予め登録しておいた特定のイベンハンドラが起動される。各イベントハンドラには特定の処理が記述されたいおり、それに従って処理が実行される。図３には代表的なイベントを記述してある。イベントをトリガーにし処理が実行されることにより、ユーザーの指示を待つことなく、自律的に動作することができる。【００２７】  図４は図３のフローチャートの内、日時コールバック受信処理を詳細に記述したフローチャートである。図３で示されたフローチャートである特定のイベントが発生した場合においては、その他のイベントが発生しているかどうかをチェックし、その内容を保存する。最終的に発生したすべてのイベントを通知する。【００２８】  図５は蓄積の動作を示すフローチャートである。イベントをトリガーに予め登録されている特定メソッドが実行され、デバイスからの情報とユーザの反応により頻度、偏向、確率、反復、誤差等の蓄積が行われる。この蓄積により、学習機能が実装される。【００２９】  図６は解析の動作を示すフローチャートである。図５により蓄積されたデータを基に傾向分析（正規分布化）、予測との誤差の分析、設定値の妥当性の分析、反復行動分析、回帰分析、ばらつき分析（変動係数）、相関分析などの分析メソッドを使用し、分析を行う。この分析が自己改変のロジックとなる。【００３０】  図７は自己改変の動作を示すフローチャートである。Ｆ８２にしめされるように、優勢改変だった場合はそれぞれの改変につき、優先的に改変が可能である。劣勢改変だった場合は、劣勢である旨を保存し、それぞれの改変につき、劣勢である場合の改変に留める。このような改変により、自己進化が可能となる。【００３１】また、自身の動作を決定するスクリプトを変更することにより動作し続けながらの自己改変が可能となる。【００３２】  図８は動作を示すユースケース図である。図３から図７までの処理をユースケースとして示している。Ｆ１０４にしめされる端末で発生したイベントはＦ１０９のイベントハンドラを呼び出し、そこに記述されているメソッドによりユーザー（Ｆ１０１）へ通知（Ｆ１０７）され、ユーザーはそれを基に実行し（Ｆ１０５）、その選択と実行結果を蓄積（Ｆ１０６）・解析（Ｆ１０８）し、Ｆ１０２に示される端末のデータベースに保存する。【００３３】  以上のように、本実施の形態によれば、自律的な動作と学習機能により自己進化する機能とを組合せることにより、複雑な手順を踏むことなく、的確な行動予測を行うことが可能となるという優れた効果がある。【００３４】  今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【００３５】３０  アプリケーション
３２−１、３２−２  端末におけるアプリケーション固有機能格納ライブラリ
３３  端末におけるデータ格納部
３４  端末における自律駆動型制御部
３５−１、３５−２  端末におけるイベント管理部
３６−１、３６−２  端末におけるアプリケーション固有機能（スクリプト）部
４０  端末におけるエージェントシステムプラットフォーム部
４１  端末におけるスクリプトエンジン
４２  端末におけるアプリケーション固有機能管理部
１０１  端末
２０１  サーバ上のデータベース
２０２  端末と通信するためのサーバ
２０３  バックエンドシステム
３０１  インターネット網
Ｆ１０〜Ｆ２５  ステップ
Ｆ３０〜Ｆ４０  ステップ
Ｆ５０〜Ｆ６５  ステップ
Ｆ７０〜Ｆ７７  ステップ
Ｆ８１〜Ｆ９３  ステップ
Ｆ１０１〜Ｆ１０９  ステップ。
【図１】
2011258166.tif 000003
【図２】
2011258166.tif 000004
【図３】
2011258166.tif 000005
【図４】
2011258166.tif 000006
【図５】
2011258166.tif 000007
【図６】
2011258166.tif 000008
【図７】
2011258166.tif 000009
【図８】
2011258166.tif 000010