(57)【要約】【課題】ユーザ毎に異なるエージェントを自動的に生成する。【解決手段】共有知識ベース４とサービスデータベースにはネットワーク３を介してアクセス可能とし、ユーザ個々の要求は端末コンピュータ１、２に常駐する学習プログラム１２、２２で自己学習させ、同じく端末コンピュータ１、２に常駐するエージェントプログラム１１、２１内の知識ベースを学習結果の統計的な処理によってエージェントごとに更新し、常に個々のユーザの期待に近いエージェント機能を学習によって自動的に実現することにより、個々のユーザの要求に対応した自己学習型エージェントを構築する。【選択図】　図１
2004139383.tif 000002
【特許請求の範囲】
【請求項１】
エージェントプログラムと学習プログラムが端末コンピュータに常駐し、各端末コンピュータはネットワークを介してサービスデータベースにアクセス可能であり、ユーザのデータ入力によってエージェントプログラムが起動されると内蔵する知識ベースを参照し、必要に応じてサービスデータベースにアクセスして、ユーザが最も期待しているであろう回答を出力し、ユーザからの要求があれば別の回答を生成、出力して、ユーザが満足する回答を出力した後、エージェントプログラムは処理結果を学習プログラムに転送し統計的処理で学習させて、必要に応じてエージェントプログラム内の知識ベースの書き替えを行うことを特徴とする自己学習型エージェント。
【請求項２】
エージェントプログラムと学習プログラムがネットワーク上の任意の場所、例えばサーバ上に常駐し、各ユーザとはネットワークを介してリンクを持つと共に、サービスデータベースにアクセス可能であり、ユーザのデータ入力によって対応するエージェントプログラムが起動されると内蔵する知識ベースを参照し、必要に応じてサービスデータベースにアクセスして、ユーザが最も期待しているであろう回答を出力し、ユーザからの要求があれば別の回答を生成、出力して、ユーザが満足する回答を出力した後、エージェントプログラムは処理結果を学習プログラムに転送し統計的処理で学習させて、必要に応じてエージェントプログラム内の知識ベースの書き替えを行うことを特徴とする自己学習型エージェント。
【請求項３】
前記エージェントプログラムは通信回線を介して共有知識ベースにアクセス可能であり、共有知識ベースは、各エージェントプログラムが必要とするの知識ベースのうち、一定数以上のエージェントに共通な知識ベースで構成され、エージェントプログラムがネットワークを介して共有知識ベースへアクセスし、必要な知識を使用することを特徴とする請求項１および請求項２の何れかに記載の自己学習型エージェント。
【請求項４】
前記共有知識ベースが、各エージェントプログラムの知識ベースを監視し、一定数以上のエージェントに共通な知識をアップロードし、共有知識ベースの更新を行うことを特徴とする請求項３に記載の自己学習型エージェント。
【請求項５】
エージェントプログラムがある知識を使用した場合、学習プログラムに該知識に関連の深いデータをも提供できる学習機能を持たせたことを特徴とする請求項１ないし請求項４の何れかに記載の自己学習型エージェント。
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
本発明は、ポータルサイト等に使われるエージェントに関する。
【０００２】
【従来の技術】
【０００３】
従来、エージェントは予め入力に対する動作または振る舞いが決められており、個々のユーザに対応したメニューを備えたエージェントは無かった。
【０００４】
【発明が解決しようとする課題】
しかしながら、上記のような従来の方式では、エージェントに同じデータを入力しても、ユーザによって異なる、期待する出力には対応できなかった。本発明は個々のユーザに対応したエージェントを得ることを課題とする。
【０００５】
【課題を解決するための手段】
上記の課題を解決するために請求項１に記載の発明は、エージェントプログラムと学習プログラムが端末コンピュータに常駐し、各端末コンピュータはネットワークを介してサービスデータベースにアクセス可能であり、ユーザのデータ入力によってエージェントプログラムが起動されると内蔵する知識ベースを参照し、必要に応じてサービスデータベースにアクセスして、ユーザが最も期待しているであろう回答を出力し、ユーザからの要求があれば別の回答を生成、出力して、ユーザが満足する回答を出力した後、エージェントプログラムは処理結果を学習プログラムに転送し統計的処理で学習させて、必要に応じてエージェントプログラム内の知識ベースの書き替えを行うことを特徴とする。
【０００６】
本発明によれば、エージェントとしての端末コンピュータに自己学習機能を持たせることができる。
【０００７】
本発明の請求項２に記載の自己学習型エージェントは、エージェントプログラムと学習プログラムがネットワーク上の任意の場所、例えばサーバ上に常駐し、各ユーザとはネットワークを介してリンクを持つと共に、サービスデータベースにアクセス可能であり、ユーザのデータ入力によって対応するエージェントプログラムが起動されると内蔵する知識ベースを参照し、必要に応じてサービスデータベースにアクセスして、ユーザが最も期待しているであろう回答を出力し、ユーザからの要求があれば別の回答を生成、出力して、ユーザが満足する回答を出力した後、エージェントプログラムは処理結果を学習プログラムに転送し統計的処理で学習させて、必要に応じてエージェントプログラム内の知識ベースの書き替えを行うことを特徴とする。
【０００８】
本発明によれば、ネットワーク上のサーバ等にエージェントプログラムと学習プログラムをもたせるので、携帯電話機のような簡単な端末を自己学習型エージェントとして使うことができる。
【０００９】
本発明の請求項３に記載の自己学習型エージェントは、請求項１および請求項２の何れかに記載の発明において、前記エージェントプログラムは通信回線を介して共有知識ベースにアクセス可能であり、共有知識ベースは、各エージェントプログラムが必要とするの知識ベースのうち、一定数以上のエージェントに共通な知識ベースで構成され、エージェントプログラムがネットワークを介して共有知識ベースへアクセスし、必要な知識を使用することを特徴とする。
【００１０】
本発明によれば、多数のエージェントに共有の知識ベースを設けるので、各エージェントプログラムの知識ベースを小さくすることができる。
【００１１】
本発明の請求項４に記載の自己学習型エージェントは、請求項３に記載の発明において、前記共有知識ベースが、各エージェントプログラムの知識ベースを監視し、一定数以上のエージェントに共通な知識をアップロードし、共有知識ベースの更新を行うことを特徴とする。
【００１２】
本発明によれば、各エージェントプログラムの知識ベースから共有できる知識ベースを自動的にネットワークを介した共有知識ベースに移動することができる。
【００１３】
本発明の請求項５に記載の自己学習型エージェントは、請求項１ないし請求項４の何れかに記載の発明において、エージェントプログラムがある知識を使用した場合、学習プログラムに該知識に関連の深いデータをも提供できる学習機能を持たせたことを特徴とする。
【００１４】
本発明によれば、ユーザに単一の回答ではなく関連する知識をも回答することができる。
【００１５】
【発明の実施の形態】
図１は、本発明の１実施の形態を表すシステム構成図で、１および２はエージェントとして使われるパーソナルコンピュータ（ＰＣ）で、それぞれエージェントプログラム１１と学習プログラム１２、エージェントプログラム２１と学習プログラム２２を内蔵している。
【００１６】
これらパーソナルコンピュータ１および２は、ネットワーク３を介して共有知識ベース４およびサービスデータベース５にアクセス可能である。
【００１７】
各パーソナルコンピュータ１および２のエージェントプログラム１１および２１は各ユーザ固有の知識ベースを有しており、個々のユーザに特化したエージェントとして働く。
【００１８】
多数のユーザに共通な知識は共有知識ベース４に格納され、複数のエージェントからネットワーク３を介して共通に使用される。
【００１９】
サービスデータベース５はエージェントがユーザに回答を返す時に必要なデータ、例えば地図や列車やバスの時刻表を格納しており、ネットワーク３を介して全エージェントから利用される。
【００２０】
今、ユーザが自分のエージェントであるパーソナルコンピュータ、例えば１に地名とビル名を入力したとする。エージェントプログラム１１が内蔵する知識ベースが既に地名、ビル名が入力された時には時刻表を出力するという知識をもっておれば、パーソナルコンピュータ１はネットワーク３を介してサービスデータベース５にアクセスして、ユーザの居場所から駅までの時間を考慮しながら利用可能な列車の発車時刻をダウンロードしてユーザに表示する。
【００２１】
ユーザが和食と入力すれば、エージェントプログラム１１は共有知識ベース４の知識を使用すべきことを判断して、ネットワーク３を介して共有知識ベース４へアクセスして、和食の料理屋名を出力するという知識を得て、更にサービスデータベース５へアクセスして近くの和食料理屋のリストをダウンロードして、ユーザに表示する。
【００２２】
ユーザがデータを入力すると共に何を出力して欲しいか指示があると、エージェントプログラム１１は指示されたデータをサービスデータベース５からダウンロードして、エージェントとしてのパーソナルコンピュータ１に表示すると共に、学習プログラム１２へユーザの入力と要求した出力を通知し、学習プログラム１２は入力と出力の関係を学習してゆく。
【００２３】
このような学習が繰り返されると学習プログラム１２は入力と出力の関係を統計的に処理して、最も確率の高い入力と出力の関係をエージェントプログラム１１内の知識ベースに書き込むか、既に知識として登録されている場合には知識を書き替える。
【００２４】
この様にあらゆる入力に対して学習を繰り返し、エージェントプログラム１１内の知識ベースを充実させてゆく。
【００２５】
共有知識ベースは、多数のエージェントに共通の知識から構成されており、これらの知識はエージェントプログラム１１〜２１内の知識ベースには置かず、必要なときにはネットワーク３を介して共有知識ベース４へアクセスし、所要知識をダウンロードして用いる。
【００２６】
また、共有知識ベース４は全エージェントプログラム１１〜２１内の知識ベースを監視しており、一定数以上のエージェントに共通の知識を発見すると、その知識をアップロードして共有知識ベース４に加え、各エージェントの知識ベースから削除する。
【００２７】
このようにして各エージェント内の知識ベースはそのエージェントのユーザに固有のものになり、エージェント内の知識ベースの肥大化が避けられる。
【００２８】
図２および図３はエージェントプログラムの動作の一例を示すフローチャートである。以下このフローチャートによってエージェントプログラムの動作を説明する。
【００２９】
図２において、エージェントであるパーソナルコンピュータ１のユーザが自分の調べたいデータ、例えば地名を入力する（ステップＳ１０１）。エージェントプログラム１１はエージェントプログラムが内蔵する知識ベースを参照する（ステップＳ１０２）。そして利用できる知識があるかどうかを判定する（ステップＳ１０３）。
【００３０】
判定がＮＯの場合にはネットワーク３を介して共有知識ベース４へアクセスし、共有知識ベースを参照する（ステップＳ１０４）。そして利用できる知識があるかどうかを判定する（ステップＳ１０５）。
【００３１】
ステップＳ１０３およびステップＳ１０５の判定がＹＥＳの場合には、サービスデータベース５からデータを取得する必要があるかどうかを判定する（ステップＳ１０７）。判定がＹＥＳの場合にはネットワーク３を介してサービスデータベース５へアクセスして、必要データ、例えば時刻表を取得する（ステップＳ１０８）。
【００３２】
ステップＳ１０７の判定がＮＯの場合、およびステップＳ１０８で必要データを取得した場合にはパーソナルコンピュータ１の表示画面を介してユーザに回答（時刻表）を表示する（ステップＳ１０９）。
【００３３】
ここでユーザが回答に満足したかどうかを判定する（ステップ１１０）。
【００３４】
一方、ステップＳ１０５で判定がＮＯの場合には、ユーザに何を要求しているのかを入力するようプロンプトをパーソナルコンピュータ１の表示画面に表示する（ステップＳ１０６）。
【００３５】
ステップＳ１０６でプロンプトを表示した場合、およびステップＳ１１０の判定がＮＯであった場合には、ユーザは自分の要求（例えば地図）を入力する（ステップＳ１１１）。
【００３６】
ユーザの要求が入力されるとエージェントプログラムは入力された要求に従って処理を行い（ステップＳ１１２）、ユーザに回答（地図）を表示する（ステップＳ１１３）。
【００３７】
ステップＳ１１０の判定がＹＥＳの場合、およびステップＳ１１３でユーザの要求する回答が表示された場合には、図２の▲１▼から図３の▲１▼へ飛んで、エージェントプログラム１１は処理内容を学習プログラム１２へ転送する（ステップＳ１１４）。
【００３８】
学習プログラム１２はエージェントプログラム１１から転送された処理内容を用いて学習処理を実行する（ステップＳ１１５）。
【００３９】
学習処理の結果、知識ベースの書き替えが必要かどうかを判定し（ステップＳ１１６）、判定がＹＥＳの場合にはエージェントプログラム内の知識ベースの書き替えを行い（ステップＳ１１７）、一連の処理を終了する。
【００４０】
ステップＳ１１６の判定がＮＯの場合には、そのまま処理を終了する。
【００４１】
以上はエージェントプログラム１１、２１および学習プログラム１２、２２がユーザに対応した端末コンピュータに常駐する場合について説明したが、エージェントプログラム１１、２１と学習プログラム２１、２２は端末コンピュータ１、２に常駐する必要は必ずしもなく、端末コンピュータの代わりに携帯電話機のような簡単な端末機器を用い、エージェントプログラムと学習プログラムをネットワーク３上の、例えばサーバに常駐させることもできる。
【００４２】
この場合、個々の端末機器と個々のエージェントプログラム、学習プログラムの間にリンクをもたせておけば、上記フローチャートで説明したのと同等の効果が得られる。
【００４３】
知識ベースについても、単に１つの入力に対して１つの回答を出すのではなく、例えば地名を入力すれば地図と時刻表を出力する、あるいは商品名を入力すると、その商品の外観、性能、価格を出力すると共に、その商品を買った人がよく買う関連商品の情報も出力する、というように知識ベースを高度化すればユーザはより使いやすくなる。
【００４４】
【発明の効果】
本発明によれば、各エージェントがユーザの要求を学習してゆくので、個々のユーザの要求に合致した回答を出力することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態におけるシステム構成図である。
【図２】エージェントの動作の一例を示すフローチャートの一部である。
【図３】エージェントの動作の一例を示すフローチャートの一部である。
【符号の説明】
１、２、　エージェントの一例としてのパーソナルコンピュータである。
３、　　通信ネットワークである。
４、　　共有知識ベースである。
５、　　サービスデータベースである。
１１、２１、　エージェントプログラムである。
２１、２２、　学習プログラムである。
【図１】
2004139383.tif 000003
【図２】
2004139383.tif 000004
【図３】
2004139383.tif 000005