JP4013740B2 - 情報処理装置、情報処理支援装置および情報処理支援システム - Google Patents

情報処理装置、情報処理支援装置および情報処理支援システム Download PDF

Info

Publication number
JP4013740B2
JP4013740B2 JP2002329465A JP2002329465A JP4013740B2 JP 4013740 B2 JP4013740 B2 JP 4013740B2 JP 2002329465 A JP2002329465 A JP 2002329465A JP 2002329465 A JP2002329465 A JP 2002329465A JP 4013740 B2 JP4013740 B2 JP 4013740B2
Authority
JP
Japan
Prior art keywords
information processing
user
resource
request
information
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
Application number
JP2002329465A
Other languages
English (en)
Other versions
JP2004164288A (ja
Inventor
一郎 吉田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP2002329465A priority Critical patent/JP4013740B2/ja
Publication of JP2004164288A publication Critical patent/JP2004164288A/ja
Application granted granted Critical
Publication of JP4013740B2 publication Critical patent/JP4013740B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Telephonic Communication Services (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、外部から受ける情報処理依頼に対して、自己のリソースでは達成できない場合でも、これを他の機器と連携して処理を行えるようにした情報処理装置、情報処理支援装置、ユーザ情報管理装置および情報処理支援システムに関する。
【0002】
【発明が解決しようとする課題】
従来、1つの機器で処理機能を満足できないときに、外部の機器と連携して処理を行うことが検討されつつある。例えば、1台のPCで処理できない数値計算問題を解決するのに、複数のPCを用いて並列処理が行われることがある。この場合、複数のPCにはほぼ同じ構成(CPU、メモリ、処理速度)で、リソース自体も固定されたもののため、別の処理を行う場合、複数のPCのリソースを別の処理に適合するように再構成する必要がある。
【0003】
一方、機器を使用するユーザが人の場合、単純な数値計算とは異なり、一般的な人の要求、命令は特定の分野に限定されていないため、人からPCに命令が出されたとき、それをそのPCが持つリソースだけで処理することは難しいことになる。これは、例えば、音声認識、画像認識(読唇術)、文字認識等によるHMI(Human-Machine Interface)などを想定している。
【0004】
そのため、このような要求に対応するためには、従来の並列処理とは異なる外部機器との連携機能が必要になる(連携分散処理)。この場合、外部機器の連携により生ずる処理の遅れに関するユーザのイライラを解消するために、処理中において処理完了予測時刻等をユーザに知らせる手段が必要になる。
【0005】
また、上記の要求を実現するために、具体的には、ユーザが話した言葉を機器が認識した場合に、その単語が、名詞,動詞,形容詞,助詞等のいずれであるかを判別して分類し、ユーザの目的に合致した制御を行う機能が必要である。各品詞を分類してその活用形まで対応付けを行うことで、ユーザの意図を把握する必要がある。つまり、依頼内容を把握すること、すなわち音声認識を行った結果からテキスト解析を行うことでユーザの意図を把握するようにするのである。
【0006】
本発明は上記事情に鑑みてなされたものであり、その目的は、人、または他の機器からの情報処理依頼を受けた時、その処理を情報処理機器本体だけで実行できない場合でもこれを他の機器に依頼して実行できるようにした情報処理装置、情報処理支援装置、ユーザ情報管理装置および情報処理支援システムを提供することにある。
【0007】
【課題を解決するための手段】
請求項1の情報処理装置によれば、受付手段により外部からの依頼情報処理を受け付けると、その依頼情報処理が自己のリソースを用いて実行可能か否かを判定手段により判定し、実行不能な場合には、その実行に不足するリソースが収集可能か否かを探索手段により探索して収集可能であるときには、その不足リソースをダウンロードするかまたは外部リソースを用いて協調動作で処理するかをユーザに問い合わせ、探索手段により不足リソースがハードウェアであると判定されると共に問い合わせ手段により問い合わせした結果外部リソースを用いて協調動作で処理するとユーザにより選択入力された場合、その不足リソースのハードウェアを利用可能な情報処理装置を探索してそのハードウェアで行うべき情報処理を依頼し、問い合わせ手段により問い合わせした結果不足リソースをダウンロードして処理するとユーザにより選択入力された場合、不足リソースをダウンロードし、ダウンロードして処理する場合または外部リソースを用いた協調動作を行うときには、ユーザの依頼に対応するためのユーザのメッセージタイプを認識し当該メッセージタイプに応じた動作をなすアプリを構築する処理を実行する。
【0008】
これにより、自己が備えているリソースだけでは達成することが出来ない場合でも、依頼情報処理について不足するリソースが外部から収集可能である場合にはこれを収集してユーザの依頼に対応するためのユーザのメッセージタイプに応じた動作をなすアプリを構築することができ、これによって外部と連携して広い範囲の情報処理を達成することができ、依頼情報処理の内容の範囲についての制限を少なくして汎用的な利用をすることができるようになる。
【0009】
しかも、探索手段が不足リソースをハードウェアであると判定したときには、処理依頼手段により、不足リソースのハードウェアを利用可能な情報処理支援装置を探索して実行すべき情報処理を依頼し、そのハードウェアにより実行された結果を受領手段により受け取ることができるので、自己の内部ではハードウェアリソースが不足していて処理プログラムを構築することが出来ない場合でも、外部の情報処理支援装置が備えるハードウェアを利用して達成することができるようになる。
【0012】
請求項の情報処理装置によれば、上記各発明において、受付手段として、人が音声により入力する情報処理の依頼を受け付ける入力手段と、この入力手段により入力された音声情報を、呼びかけ、説明、依頼、質問、確認などの各メッセージタイプに分類し、当該分類されたメッセージタイプから前記実行手段が実行可能な情報として解釈する依頼解釈手段とを備えた構成としているので、情報処理の依頼をするのが人である場合に、直接音声により入力して依頼を行わせることができるようになり、使い勝手の向上を図ることができるようになる。
【0013】
請求項に記載の情報処理支援装置によれば、ネットワークを介して情報処理装置からアクセスされ、その情報処理装置が有する前記請求項1または2記載の情報処理装置により不足リソースの収集依頼を受けると、リソース提供手段は、これに応じてその不足リソースを提供するので、情報処理装置と連携して依頼情報処理の実行を達成することができるようになる。
【0014】
請求項に記載の情報処理支援装置によれば、上記請求項の発明において、処理依頼手段は、リソース提供手段により不足リソースがハードウェアであると判定されたときに、その不足リソースのハードウエアを利用可能な他の情報処理支援装置を探索してそのハードウェアで行うべき情報処理を依頼するので、依頼を受けた情報処理について自己が有するハードウェアでは処理不能でも、外部の他の情報処理支援装置と連携して情報処理を実行可能である場合には依頼して実行することができるので、自己が備えるリソースに加えて他の情報処理支援装置のハードウェアリソースも利用して処理を実現することができるようになる。
【0015】
請求項に記載の情報処理支援装置によれば、請求項に記載の情報処理装置もしくは請求項に記載の情報処理支援装置の処理依頼手段により前記不足リソースのハードウェアの利用依頼を受けたときに、対象となったハードウェアで行うべき情報処理を受け付けてこれを処理する処理手段と、この処理手段による処理結果を前記情報処理装置の受領手段に渡す送信手段とを設けているので、情報処理装置に対して、利用依頼を受けた不足リソースであるハードウェアを提供して情報処理を行ってその結果を送信手段により送信することができる。これにより、情報処理装置が単独ではハードウェアリソースが不足していて処理できない情報処理についても、これを支援して達成させることができるようになる。
【0016】
請求項に記載の情報処理支援装置によれば、上記請求項3ないし5の何れかに発明において、自己が備えるリソースが情報処理装置の処理方法選択手段により選択された外部リソースに該当する場合に、その要求に応じて協同して前記依頼情報処理を実行するので、単独では処理能力に劣る場合や、処理不能なリソースがある場合に、効率よく依頼された情報処理を達成することができるようになる。
【0022】
請求項に記載の情報処理支援システムによれば、請求項1または2記載の情報処理装置を備え、ユーザから命令を受けたときに、本体のハードウェアだけでその命令を処理できるか否かを判定する判定手段と、この判定手段により本体のみでその命令が処理できないと判定されたときに、外部の情報処理支援装置に一時的に移動して当該外部の情報処理支援装置内のリソースを利用してアクセス許可範囲内で必要な処理を完了させるAIエージェントを生成するAIエージェント生成手段とを備え、AIエージェントを、前記情報処理支援装置内で内部に保有するリソースを利用して必要な処理を完了させて、その完了結果を移動前の場所に転送させた後、必要な処理が完了すると自己消滅するように構成したので、AIエージェントという概念のもとで、情報処理装置の内部のリソースが不足する場合でも効率的に情報処理を達成することができるようになる。
【0023】
【発明の実施の形態】
以下、本発明を携帯情報処理機を用いたシステムに適用した場合の一実施形態について図面を参照して説明する。
【0024】
(基本構成の説明)
図1はこのシステムの全体構成を概略的に示すもので、情報処理装置としての携帯情報処理機1は、ユーザAが主たる使用者で、いわゆるモバイル機器と呼ばれるものである。この携帯情報処理機1は、携帯電話としての機能およびパケット通信機としての機能を兼ね備えている。
【0025】
この携帯情報処理機1は、操作入力をするためのキーボード2、表示装置3を備えると共に、マイクロホン4、スピーカ5、CCDカメラ6やタッチパネル7(図2参照)を備えており、ユーザの音声入力や操作入力あるいは画像入力を受け付けるように構成されている。外部との通信にはアンテナ8を通じて送受信を行うように構成されている。表示装置3は、例えばLCD,EL,有機EL等のものが用いられており、これはCCDカメラ6の画像表示やTVモニタとしても使用できる。
【0026】
携帯情報処理機1は、無線電話機能を使用すると、中継局9を介してネットワーク10にアクセスすることができる。ユーザAが自己のテリトリーとして使用可能な外部機器(情報処理支援装置)として、例えば家用PC(パソコン)11a、会社用PC11b車両用PC11c、その他のPC11dなどがあるが、これらはインターネットなどに代表されるネットワーク10を通じて携帯情報処理機1がアクセス可能となっている。
【0027】
また、ネットワーク10には、多数のユーザが共通に利用することができる情報処理支援装置としての外部機器12が接続されており、携帯情報処理機1によりアクセス可能となっている。さらに、後述する個人認識モジュールを多数のユーザ毎に管理しているユーザ情報管理装置としてのリソース管理会社13の端末装置(サーバ)もネットワーク10に接続されていて、携帯情報処理機1や外部機器11、12などによりアクセス可能となっている。
【0028】
図2は携帯情報処理機1の電気的構成を示している。全体の制御をつかさどる制御回路14は、CPU、ROM、RAMなどを主体として構成されるもので、電話機能の制御や通信機能に加えて、種々の情報処理機能を達成するようにソフトウェアおよびハードウェアが組み込まれている。この制御回路14には、前述した各構成に加えて、通信回路15、GPS受信機16、メモリ17や、ICカードの情報を読み書きするICカードリーダ18などが接続されている。
【0029】
通信回路15により外部へ送信されたデータは、中継局9などを経由して、家や会社、車両その他に置かれたPC11a〜11dなどで受信させたり、後述する外部機器12に受信させることができる。送信データのあて先を決めるために、機器に設定されたインターネットのIPアドレスやユーザが独自に設定したユーザアドレス等が用いられる。
【0030】
携帯情報処理機1の制御回路14は、ユーザの音声認識により得た結果を分析して、ユーザの発生音(発音の特徴、イントネーション、母音、子音の周波数帯域など)や使用する語彙からユーザの特徴を割り出して記憶するようになっている。
【0031】
前記のように、携帯情報処理機1は、そのユーザAの音声を認識してユーザAの特徴を記憶することができるように構成されている。ユーザAは、ほぼ常時使用する携帯情報処理機1の解析、学習結果をAの管理するサーバやPC11a〜11dなどに蓄積する。あるいは、リソース管理会社13のサーバにユーザAの解析、学習結果の蓄積、管理を記憶して管理するようにしてもよい。
【0032】
外部機器12は、ユーザAの持つ携帯情報処理機1にユーザAを認識するためのデータの使用依頼を行い、必要な認証が完了すると、携帯情報処理機1からユーザ認証に必要な音声認識データを受領することができる。また、外部機器12からユーザAのデータ使用依頼がリソース管理会社13のサーバにあった場合も同様に、サーバは通信によって外部機器12へ必要なデータを送るように構成されている。
【0033】
このようにして、携帯情報処理機1を用いて入力を行うユーザAについて、その携帯情報処理機1あるいはリソース管理会社13から音声認識についてのデータを受け取ることができるので、外部機器12がユーザAであることとその言語を確実に認識できるようになる。
【0034】
なお、外部機器12が携帯情報処理機1もしくはリソース管理会社13から受領した音声認識に関するデータには有効期限がつけられており、その有効期限として設定されている時間が経過すると自動的にそのデータは消去されるように決められている。なお、外部機器12の種類によっては、例えば家電製品のように、ある程度長時間使用される機器では、設定時間が日単位で設定され、自動販売機のような機器では分単位で消去されるように設定される。また、セキュリティ確保の目的でデータが使用される場合は、月や年単位でデータ更新を行うようにしても良い。
【0035】
(概略的な動作説明)
次に、認識結果をもとに事前動作確認を行う例について図3ないし5を用いて説明する。まず、図3においては、携帯情報処理機1の概略的な動作について順を追って示している。図4および図5では、それらを詳細にした流れが示されている。
【0036】
図3の携帯情報処理機1の動作フローにおいて、まず、ユーザによる入力が行われると、その情報収集を行い(ステップA1)、収集した情報についてそれらの情報が何を意味しているのかの認識処理を行う(ステップA2)。ここで、ステップA1の情報収集は、外部つまりユーザAあるいは他のユーザなどから入力があるかをチェックするステップで、続くステップA2の情報認識は、入力があるとその情報を別の形に変え、機器が理解しやすい形に変更する(音声認識では声をテキストに変更する操作を示す)処理を行う。
【0037】
次に、携帯情報処理機1は、依頼されている処理内容が認識できると、その認識結果について得られた情報の範囲で実行可能か否かを判定する(ステップA3)。これは、テキストデータを解析して、テキストデータからユーザの意向を判定する(命令、依頼、質問、その他から機器がすべき動作を決定する)処理である。
【0038】
次に、認識結果に基づいて、その依頼内容について事前動作確認を行い、実行に必要な情報で認識できない部分をユーザAに問い合わせて認識語彙を増加させる(ステップA4)。ここで、事前動作確認とは、ユーザAが発した言葉が理解できない場合、ユーザAはどのような目的を持っていて、それは具体的にどのような処理を期待しているかをユーザAに確認するために行われるものである。
【0039】
ここでは、ユーザAの意向に沿えるソフト、ハードの条件を検証する(ユーザの意向確認と、動作シミュレートを行う。ここで語彙増加、認識条件向上用の設定値の調整、マッチングデータを収集、蓄積する)。
【0040】
続いて、ユーザAの要求に内部リソースでは対応できないと判定された場合、不足リソースを探索し、不足リソースが見つかった場合、ユーザAに外部との協調による動作をすること(ここでは、不足リソースをダウンロードして携帯情報処理機1内でアプリを構築するか、それともタスクを外部に依頼するかの選択を行うこと)の情報提供、確認の処理と、ユーザAが不足リソースダウンロードまたは、協調動作を受け入れた場合に、対応するリソースを収集するか、または外部機器12へタスクを依頼する処理(ステップA5)が実施される。このようにして対応モジュールが収集されると、次に、動作確定処理(ステップA6)として、動作可能と判定された処理について実際に動作することを確定し、その動作を実行する(ステップA7)。
【0041】
これにより、ユーザAの意図に反した動作を行わないようにして、携帯情報処理機1の動作効率を改善させると共に、ユーザAの特徴を記録して認識率の改善を図るようにしている。また、ユーザAの言い間違いや勘違いによる携帯情報処理機1の動作ミスを未然に防止することができるようになる。
【0042】
(詳細な動作説明)
次に、図4および図5を参照して携帯情報処理機1の動作の詳細について説明する。この動作の主体となる制御回路14は、まず、マイクロホン4を通じて入力された音声データから、ユーザAが機器に対して入力(会話)を行おうとしているか否かについて処理を行う(ステップS1)。そして、ユーザの音声の有無の検知、背景雑音の低減などの処理結果を常時出力すると共に、ユーザAの入力(会話)があれば確実にそれを認識処理に移行できるように判定を行っている(ステップS2)。
【0043】
制御回路14は、上記出力結果から、会話があったか否かを判定し、会話が無いと判定された場合にはステップS1に戻り、会話が有りと判定された場合には、続いて会話データ部の切り出しを行う(ステップS3)。続いて、適宜切り出したデータをデジタルデータに変換し(ステップS4)、さらにそのデータが認識できるように変換処理を行う(ステップS5)。
【0044】
次に、制御回路14は、変換されたデータについて音声認識処理(音声マッチング)を行い(ステップS6)、これをテキストデータに変換する(ステップS7)。このとき、音の大きさ、抑揚データなども合わせて解析する。
【0045】
この後、制御回路14は、得られたテキストデータについて、単語の並びをもとに文の構造を、文法的に分類する(ステップS8)。続いて、テキストデータから単語を抽出し、それらを品詞(名詞、動詞、助詞、形容詞等)に分け(ステップS9)、抽出された単語については、それぞれ品詞を類別するID(データタイプタグ)を付けて記憶する(ステップS10,S11)。
【0046】
ここで、制御回路14は、各単語につけた品詞の矛盾をチェックしたり、あるいは、テキストとして認識することはできたがその意味が通らない単語(認識データ辞書にはないもの)があるかどうかについてチェックを行い(ステップS12)、問題がなければ(ステップS12で「YES」と判断)、次のステップS20へ進む。
【0047】
一方、単語に矛盾がある場合、制御回路14は、ステップS13に進み、矛盾が生じている単語を表示装置に表示して、ユーザに再入力をしてもらうように促す。制御回路14は、ユーザが再入力するのを待ち(ステップS14,S15)、入力されたデータは認識処理が行われる(ステップS16)。ユーザによる再入力が無い場合にはステップS15で「YES」と判断して、開始画面に移動する(ステップS1に戻る)。
【0048】
ここで、制御回路14は、入力されたデータの解析を行い、使用されている単語がデータ辞書にあるか否かを判定して単語に矛盾が生じていないか否かを判定する。もし、入力データが理解できない(認識辞書に無い)場合には、ユーザへ理解できない単語を復唱あるいは表示にて知らせる。ユーザはそれにより理解されなかった単語を入力する。入力結果は解析され、理解できるか否かが判定される。この部分で、制御回路14は、入力された単語を認識するための必要データを記憶し、同じユーザAの入力に対し、認識候補を増やして認識率を向上させることができるようになる。必要なデータとは、基本音素データ、音素変動パラメータ、抑揚、速度、選択語彙の変化などである。
【0049】
次に、制御回路14は、認識されたデータに矛盾がないかを再度チェックし(ステップS17)、まだ矛盾があれば、ユーザにそのデータを登録するか否かを判断し(ステップS18)、「YES」ならば正しい語を入力するよう表示させてユーザに依頼する(ステップS19)。ユーザにより代替語が入力されると、制御回路14は、音データと代替語を関連付けて保存する。また、ユーザが設定時間が経過する間、何もしない場合には、データに矛盾があるためそれ以上の処理ができないので、開始画面へ移動する(ステップS18で「NO」と判断してステップS1に戻る)。
【0050】
制御回路14は、ステップS19で代替入力を得て単語レベルで矛盾がなくなると、次に、認識されたテキストのメッセージタイプを分類する(図5のステップS20)。ここでいうメッセージタイプとは、例えば、呼びかけ、説明、依頼、質問、確認、応答などの各タイプを想定している。この分類に際しては、制御回路14は、分類されたテキストから動詞を探し、動詞の前後関係からメッセージタイプを分析して決定する(ステップS21)。
【0051】
この後、制御回路14は、そのメッセージタイプの内容に対応できるかを判定し(ステップS22)、対応できないと判定するとユーザにメッセージタイプの再確認を行う(ステップS23)。再確認の処理では、ユーザにメッセージタイプの入力を促すための画面表示を行う。そして、ユーザにより再確認の入力がなされると、制御回路14は、その結果が前と同じメッセージタイプかを確認してその結果がどのメッセージタイプかをチェックする(ステップS24)。
【0052】
制御回路14は、メッセージタイプの再チェックを行ってもそれがわからないと判定すると(ステップS24で「NO」と判断)、対応できない旨の表示と、対応できない理由や、入力に関する推奨項目を表示する(ステップS25)。この場合には、メッセージタイプを明確にするための入力の仕方の案内を行うと良い。例えば、
「質問なら、『・・・か? ですか?』、依頼なら『・・・してほしい』の語尾を使ってください。」
等の表示、又は音声伝達を行うことで案内を行うと良い。
【0053】
次に、ステップS22で、テキストのメッセージタイプに対応できると判定されると、制御回路14は、そのメッセージタイプに入れられた単語を解析し、そのメッセージの処理を行うためのリソースの有無をチェックするようになる(ステップS26)。
【0054】
次に、制御回路14は、リソース不足と判定した場合には(ステップS27で「YES」と判断)、外部機器12との通信を開始し、不足リソースを探索するようになる(ステップS28)。外部機器12としてはユーザのコンタクトできる事務所や家庭のPC11a〜11dなどを経由してインターネット10で探索したり、あるいはリソースを管理するリソース管理会社13に接続して、リソースの有無を問い合わせる。
【0055】
制御回路14は、探索処理を行うことより、不足するリソースが見つかれば(ステップS29で「YES」と判断)、リソースの属性を読み出し(ステップS30)、ユーザに不足するリソースをどのように取り扱うかを問い合わせを行う(ステップS31)。
【0056】
ここでは、制御回路14は、ユーザに対して、リソースをダウンロードする(ステップS33)か、不足リソースのサイズが大きい場合やダウンロード時間がかかりすぎる場合や内部処理能力不足が予想される等の場合で、外部機器との協調動作(ステップS34)を選ぶか、処理を取りやめる(ステップS35)かを選択する問い合わせを行う。
【0057】
ユーザが実行を示す決定をした場合(ステップS32にて、ステップS33,S34のいずれかを選択した場合)には、制御回路14は、不足リソースのダウンロード(ステップS33)または外部機器12との協調動作(ステップS34)のセットアップをして、アプリを構築する処理を実行し(ステップS36〜S39)、ユーザのメッセージに応じた動作をする(この部分の機能は、リアルタイムインタラクティブアプリ構築環境とも言える)。
【0058】
なお、上記の処理を経ることで得られたアプリについては、制御回路14は、メッセージタイプ毎に分類して記憶するようになっている。この場合、リソース自体が大きいため、記憶エリアを確保できない場合は、リソース名とそのリソースを得た場所(アドレス)情報を記憶する。これにより、将来、同じメッセージタイプにおいて、類似するユーザ依頼があった場合には、記憶したリソースの情報を読み出すことで迅速にアプリ構築が行えるようになる。
【0059】
(リソース管理会社の管理システムの説明)
次に、上記のシステムを用いた場合のリソース管理会社13における管理システムについて図6を参照して説明する。図6において、リソース管理会社13は、主にユーザの音声認識関連データをリソースとして管理するように構成されている。
【0060】
前述した携帯情報処理機1は、電話機能を有しており、図示しない電話会社と使用契約が行われる。また、電話使用と同時にリソース管理会社13との間で音声認識機能拡張への登録を行う。ここで、音声認識処理については、ユーザ本人を確認するための補助手段としても使用可能としている。
【0061】
まず、ユーザが携帯情報処理機1を用いて電話機能を使うと、ユーザの通常使用する音声認識関連データが改良され認識率が向上していく。それらの音声認識関連データは定期的にリソース管理会社13において記録される。これによって、ユーザの所有する携帯情報処理機1が壊れても音声認識関連データを失うおそれがないので、新たな携帯情報処理機1を使用する際に、その機器内で音声認識関連データを新たに作成する必要がなくなる。
【0062】
次に、ユーザが携帯情報処理機1に指示を出すと、携帯情報処理機1は、前述したように、その指示に応じてメッセージタイプを調べ、それにあったリソースをリソース管理会社13から無償で取得する。リソースのダウンロードに応じてリソース管理会社はユーザから料金を徴収するようなシステムとすることもできる。
【0063】
さらに、携帯情報処理機1を上述したようにして使用することで、ユーザが構築したアプリは、リソース管理会社13側で管理することができる。これによって、他のユーザが管理されているリソースのアプリを使いたい場合、有償あるいは無償で配布することで共有することができるようになる。その際、アプリを構築したユーザに使用料を支払うことができるようにすれば、アプリを構築するユーザ側も積極的に提供するアプリを構築することができ、また、利用するユーザ側も既に出来上がっているアプリの中から適切なものを選ぶことで迅速且つ実績のあるリソースとして活用することができるようになる。
【0064】
そして、リソース管理会社13は、サーバで管理しているユーザの音声認識関連データが外部機器12(料金をとるサービス機器)で使用することを積極的に行うことで、その使用料金を徴収するメリットを享受することができる。ユーザ認識用の音声認識関連データの使用は、外部機器12へ購入を依頼する手順のどこかでリソース管理会社13に使用を連絡する手順を設け、リソース管理会社13が使用状況を把握できるようにする。たとえば、ユーザ認識用の音声認識関連データを外部機器12に転送したタイミングでリソース管理会社13は、外部機器12の管理会社へ課金処理を行うようになっている。
【0065】
上記のようにシステムを構築することで、ユーザ認識率が高い機器は、従来の認識機能よりも優れた認識機能を提供することができるようになるため、サービスが向上しユーザにとって受け入れられやすくなる。また、本人認証を厳密に行えるようになるため、セキュリティの確保にも効果がある。また、ユーザ認識用の音声認識関連データはリソース管理会社13が管理するため、自分のデータを失うおそれがない。
【0066】
図6の例では、携帯情報処理機1にリソースを集め、携帯情報処理機1内でアプリを構築する例を示している。すなわち、ユーザの依頼に対応するためにユーザのメッセージタイプを見つけ、そのメッセージタイプに応じた動作を行えるかどうかを検証し、その結果、携帯情報処理機1内部のリソースだけでは動作が行えない場合、外部機器12などからリソースを獲得してアプリを構築する例を示している。
【0067】
携帯情報処理機1が、十分高速な演算装置やメモリ等のハードを持ち、大きなアプリも構築できるハードリソースを持っている場合は問題なく実行をすることができるが、携帯情報処理機1側のハードウェアリソースが不足し、内部では十分なアプリが構築できない場合、外部のハードウェアリソースと共同してユーザの依頼を処理するアプリを構築する必要がでてくる。
【0068】
携帯情報処理機1の制御回路14は、どのような構成でユーザの依頼に対応できるかを、言語認識結果から得られたメッセージタイプの内容を解析して、アプリ構築をシミュレートする。内部のリソースで対処できる場合は、アプリを構築してユーザの依頼を実行する。
【0069】
一方、携帯情報処理機1の内部のリソースでは対応できない場合、あるいはアプリは構築できるが処理に時間がかかる場合や、アプリを構築するハードウェアリソースがないためアプリを構築できない場合等では、次のような対応をする。制御回路14は、外部リソースを探す。対応できる外部リソースを持つリソース管理会社13、あるいはユーザが別の場所に保有する外部機器11a〜11dや外部機器12等で不足リソース(ハード)を補うことが出来れば、それらに協調動作依頼とその依頼内容を含めたデータを送信する。
【0070】
依頼内容を受信した外部のリソースを管理する機器11a〜11d,12からは、依頼内容に対する対応可否の回答と、対応可とすると、いつまでに依頼内容に対応できるかを携帯情報処理機1の制御回路14に送る。また、利用が有料であるリソース管理会社13を利用した場合には、その料金情報等も合わせて受け取る。
【0071】
携帯情報処理機1は、これらをユーザに提示して、ユーザに依頼を実行してよいかの判断を委ねる。ユーザ依頼において、ユーザが既に同じ依頼を何度も行い、ユーザがその依頼に関する判断条件を判定して、ユーザに判断を委ねることを省いて協調動作を管理することも可能である。
【0072】
(リソース管理会社から外部機器へのデータ転送の説明)
図7と図8は、リソース管理会社13から外部機器12へのデータ転送の様子を模式的に示したものである。図7に示すように、ユーザの携帯情報処理機1から外部機器12へ情報を伝達し、外部機器12はホストであるリソース管理会社13のサーバへ認識モジュールすなわちユーザ認識用の音声認識関連データの送信を依頼し、そのデータを受領する。外部機器12は、携帯情報処理機1のユーザの言語を認識してユーザの要求を処理することができるようになる。以下に図8のフローの説明をする。
【0073】
図8において、外部機器12はリソース管理会社12のサーバ(以下、リソース管理会社と略称する)にあらかじめ利用登録を行う(ステップP1)。携帯情報処理機1もリソース管理会社12に利用登録を行う(ステップP2)。リソース管理会社13は、これらの利用登録を受け付ける(ステップP3)。
【0074】
携帯情報処理機1からは、ユーザが使用をするたびにその音声認識関連データを記憶して蓄積しており、その蓄積している音声認識関連データについて、適宜の時間間隔でリソース管理会社12に送り(ステップP4)、リソース管理会社12はそのデータを定期的にアップデートする(ステップP5)。
【0075】
携帯情報処理機1のユーザAが外部機器12の利用をしたい場合、携帯情報処理機1から外部機器12に対して利用依頼を出す(ステップP6)。これに対して、外部機器12は外部機器利用依頼を受け付け、その利用依頼に含まれたユーザIDを読む(ステップP7)。次に、外部機器12は、リソース管理会社13に利用者確認依頼とデータ利用依頼を行う(ステップP8)。
【0076】
これを受けて、リソース管理会社12は、利用者確認処理をした後(ステップP9)、要求を受けた外部機器12に対して必要なデータを送る(ステップP10)。外部機器12は、ユーザの依頼を処理できるように必要なデータ(リソース)を集め(ステップP11)、アプリをセットアップするようになる(ステップP12)。
【0077】
それが完了すると、外部機器12は、ユーザに入力を促すように表示を携帯情報処理機1又は外部機器12に行う(ステップP13)。これに対して、ユーザは携帯情報処理機1を用いて入力処理を行う(ステップP14)。外部機器12はデータ認識と応答の処理を行う(ステップP15)。
【0078】
ユーザは利用が完了すると、携帯情報処理機1により利用完了入力を行う(ステップP16)。外部機器12は、携帯情報処理機1から送信された利用完了を受信すると、リソース管理会社13から受領したデータを設定時間後に消去するように処理する(ステップP17)。
【0079】
(携帯情報処理機がアプリを構築する場合の説明)
次に、図9を参照して、携帯情報処理機1がユーザからの依頼を受け、アプリ構築を検討した結果、外部機器12にてアプリ全体を構築する例を説明する。なお、この説明においては、携帯情報処理機1において、制御回路14が実施していた処理について、ソフトウェアである音声モジュールが主体的に動作する形式で説明する。
【0080】
すなわち、携帯情報処理機1の音声モジュールは、ユーザが入力する音声から言語を認識し、その認識結果からユーザの依頼をメッセージタイプに分類する。次に、リソースマネージャがメッセージタイプとその詳細を解析し、どのようなリソースを用いてアプリを構築するかを検討し、アプリ仕様設計書を作成する。アプリ仕様設計書には、アプリ構築に必要なリソースのタイプとその構成(アプリモジュールの連結)が記載されている。
【0081】
このアプリ仕様設計書に基づき、リソースマネージャは、携帯情報処理機1内部のリソースを調査する。この場合には、携帯情報処理機1内で処理することは難しいと判断している例を示している。たとえば非常に演算量が多いため、携帯情報処理機1内でアプリを構築すると時間がかかりすぎるような場合がこの例に対応する。
【0082】
携帯情報処理機1は、外部機器12へアプリ仕様設計書と携帯情報処理機1が持つリソースを外部機器12へ送る。外部機器12はアプリ使用設計書に基づき、必要なリソースを機器の内部や外部のリソース管理会社13から集め、アプリを構築する。外部機器12内で構築されたアプリは、ユーザの依頼に対する結果を出す。出された結果は通信用インターフェース回路を用いて携帯情報処理機1に送られ、ユーザに提示される。
【0083】
上記のようなアプリの構築を行う場合のリソースマネージャとユーザとの関係は、図10に示すようになっている。すなわち、リソースマネージャは、ユーザの言語やジェスチャをテキストに変換して、メッセージタイプ、メッセージタイプ対応情報(必要な機能モジュール、リソース)を決定して、ユーザの目的を確認する。
【0084】
リソースマネージャは、ユーザの目的がわかると、自己の機器の内部にあるリソースを確認して、仮のアプリを作成し、それがユーザの目的を満たすか否かを判定する。もし、ユーザの目的を満たせない時は外部からリソースを集めて再度仮のアプリを作成しユーザに提示する。ユーザが気に入ったところでアプリを完全に機能するようにリソースを配置して、アプリ動作を開始する。
【0085】
また、ユーザが気に入ったアプリの構成(リソースリスト、リソース配置等)を記録し、後でユーザが再度そのアプリの動作を希望したとき、迅速にそのアプリを構築できるようにする。
【0086】
(携帯情報処理機が外部機器と協働して処理を実行する場合の説明)
上述の例では、携帯情報処理機1が、アプリを外部機器12にて構築して、結果のみを携帯情報処理機1へ返すようにしているが、これに代えて、図11に示すように、携帯情報処理機1でアプリの一部を構築し、外部機器12で残りのアプリを構築し、それらが協調して動作し、外部機器12の結果を携帯情報処理機1が利用して最終的な結果を出すようにしてもよい。
【0087】
このような場合の一例として、JAVAVMの上で作動するリソースを大量に必要とするアプリケーションをリソースを持たない携帯情報処理機1で動作させる場合、携帯情報処理機1だけでは動作できないアプリを外部機器12と連携して動作させてユーザには見かけ上、携帯情報処理機1だけで動くように見せる手段として有効である。
【0088】
どんなアプリでも作動できるように、ネットワーク上にある使用可能なリソースのデータベースを持ち、それらを適宜利用してユーザの依頼を処理することを考えると、図11に示した構成が効率的である。
【0089】
(具体的な応用例の説明)
また、別の例として、コンピュータグラフィックスのアニメーション作成のように、大量の画像を作成する場合、1台のコンピュータでそれらの処理を行うと、莫大な演算能力が必要になる。従来は、複数のCPUを搭載できる高速なコンピュータを複数台使って、画像作成および動画作成を行っていた。
【0090】
このような場合に、本発明の構成を採用することで、画像作成の中心にある制御アプリがネットワーク上にある負荷の少ない複数のPCそれぞれに、描画に必要なアプリ機能を構築し、CPUの能力に応じて描画画面、描画枚数等を割り当てることが可能になる。また、描画された結果を、動画化するためには、制御アプリが動画化する機能を持つPC等を探して、そこへ複数のPCが描画したデータを送信するように命令を出す。これにより、従来のように高価な機器を使用しなくても、大規模な画像(動画)を作成することが可能になる。
【0091】
ただし、この前提は、制御アプリが負荷の少ないPCを選択する場合に、セキュリティ機能(相互認証)を受け、この認証が確認された場合に、選択されたPCは命令を受けるようにする。このとき、制御アプリが業務を依頼する外部PCは、それぞれ使用可能のリソースリストを持ち、制御アプリは、そのリソースリストを参照して、外部PCへの業務を割り当てるようにする。また、制御アプリは、そのリソースリストを超えるPCのリソース領域にはアクセスできないようになっている。
【0092】
(ビジネスモデルとして成立するシステムの説明)
次に、上記システムを利用して成立するビジネスモデルについて説明する。制御アプリが業務を依頼するPCのユーザには、通信料金の割引や、使用時間に応じたポイント、あるいは作成された画像を安価で利用出来る等のサービスが付加される。このようにして、業務にPCを貸すことでPCの購入を安価にすることができる。
【0093】
例えば、PC自体を主に個人リースし、ユーザの使っていない空き時間で、そのPCを使いたいユーザに共同利用させることができるようにする。ここで、空き時間に使いたいユーザは、負荷の大きなアプリを動かしたいヘビーユーザであり、通常のアプリを動作させるユーザをライトユーザとすると、ライトユーザ、ヘビーユーザ両者に時間に応じた料金を支払うようにし、PCの維持費(電気代、通信費)はヘビーユーザが使用時間、量に応じて支払うようにする。ライトユーザは、従来よりも安価にPCを使うことができる。また、ヘビーユーザは、PCを設置するために空間が不要になるという効果がある。
【0094】
(車載サーバのOS補助アプリに適用した例の説明)
次に、上記のシステムを車載サーバのOS補助アプリに適用した場合の例を示す。すなわち、車載サーバの補助アプリは、外部から依頼を受け取る(同時に複数の処理を行う)。補助アプリ(OSGi)は、依頼内容が、車載サーバに搭載されたアプリモジュール(アプレット、サーブレット、あるいはその部品ソフト)で実行できるか判定する。
【0095】
補助アプリは、車載サーバ本体で処理できないと判定すると、どのようなアプリモジュールが不足するかをチェックする。補助アプリは、不足するモジュールをネットワークにアクセスして獲得できないかをチェックする。補助アプリは、不足するアプリモジュールをネットワークを介して獲得できることがわかると、そのアプリモジュールを獲得しても良いかをユーザに問い合わせる。あるいは予めユーザが自動的にアプリモジュールを獲得する条件を設定しておく、それから外れた場合は、ユーザに問い合わせる。
【0096】
補助アプリは、不足リソースをネットワークを介して獲得する。補助アプリは、不足リソースを獲得すると、実行できるアプリケーションの形に構築して、OSに処理を渡す。OSは、依頼された処理を行う。アプリの動作が感旅してOSに完了を通知し、OSがその処理完了を確認すると、結果を補助アプリに渡す。補助アプリはアプリ不要なリソースを削除、あるいは退避する。
【0097】
続いて、上記システムにおける携帯情報処理機1の機能を、情報処理装置としてのPC11a〜11d(以下PC11と称する)が実行する場合について、PC11内に上記システムを実行するように構成されたソフトウェアであるリソース収集型AIモジュール(以下、単にAIモジュールと称する)を設定して行う場合について説明する。
【0098】
図12はその基本的な動作をチャートに示したものである。ユーザの手元(ホーム)にあるPC11のAIモジュールがユーザから処理の命令(ステップR1)を受けたとき(ステップR2)に、AIモジュール(ソフト)は、自己が常駐する本体(ハード)だけでその命令を処理できるか否かを判定する(ステップR3,R4)。
【0099】
本体内でその命令の処理が可能である場合には(ステップR4で「YES」と判断)、内部処理を実行してその結果を出力する(ステップR5,R6)。また、本体のみでその命令が処理できないと判定されると、AIモジュールは、他のPCに一時的に移動可能なAIエージェント(ソフトモジュール)を生成し、他のPC12(その他情報処理機器あるいは外部機器)にAIエージェント(ソフトモジュール)を送る(ステップR7)。
【0100】
他のPC12では、AIエージェントを受信すると(ステップR8)、内部でAIエージェントが起動するようになる。AIエージェントは、PC12内のリソース(ハードとソフト)の使用依頼をして(ステップR9)、OKであれば(ステップR10で「YES」と判断)、リソースを利用して必要な処理を完了させて(ステップR11)、その完了結果をAIモジュールのある場所(ホーム)へ転送する(ステップR12)。この後、PC12内のAIエージェントは必要な処理が完了したことをもって自己消滅するか、あるいはAIエージェントはOSにAIエージェントを消す命令を残して停止する(ステップR13)。
【0101】
また、AIエージェントが内部リソースの使用依頼を出したときに、OKが得られない場合には(ステップR10で「NO」と判断)、AIエージェントの依頼が実行できないことから、キャンセル処理を行ってその旨をAIエージェントの送信元であるAIモジュールが常駐しているPC11側に通知する(ステップR14,R15)。
【0102】
PC11側では、AIモジュールが、AIエージェントを送った先のPC12から処理結果を受け取ると(ステップR16)、その結果をユーザに出力するようになる(ステップR6)。なお、PC12に送ったAIエージェントから内部リソースの使用依頼がOKされなかった場合には、この通知を受けた後(ステップR15)、他のPC12を探索して上記のステップを繰り返し実行するか、あるは利用が出来ない場合の処置をとることになる。
【0103】
上記のようにすると、ネットワーク10を用いた遠隔処理のように、通信のために回線内に常にデータを流す必要がないため、ネットワーク回線の混雑を緩和することができる。ただし、これを安易に実行するとPCユーザのプライバシーに触れることの可能性が出てくるので、各PC11,12においては、他のPCからのAIエージェントに割り当てられるリソースを制限する機能を持たせることが必要となる。
【0104】
また、AIエージェントに公開されるネットワークエリアをパブリックエリア、公開されないエリアをプロテクトエリアと呼ぶことにする。AIエージェントは基本的にパブリックエリア情報を検索、移動することができるように設定される。さらに、AIエージェント発行者がネットワーク使用について対価を支払うことが前提であれば、対価支払に応じてAIエージェントを受け入れたPC11,12は、使用可能エリアの使用制限を緩めるようなネットワーク構成にしても良い。また、各PCユーザは他のPCユーザから利用に応じた対価を得るようにすると良い。
【0105】
次に、上記したリソース収集型AIモジュールを適用した場合の具体的事例について説明する。
【0106】
(具体的事例その1)
まず、具体的事例その1として、リアルイメージナビゲーションについて説明する。これは、ドライバが走行中に自分の目的場所の景色、道路機能(自動運転エリアか)、混雑状況、駐車場の入口の渋滞状況、駐車場が自動料金収受システムか、駐車場の駐車アシストの有無等のリアルイメージの情報を得ることができるようにしたもので、ドライバに動画で表示できるようにするナビゲーションシステムである。
【0107】
ここでは、情報処理装置として車両に搭載しているPC11cが車載サーバとして機能するように構成されている。車載サーバ11cは、カーナビゲーション装置と協働してナビゲーション機能の向上を図るものである。そして、後述する種々の情報をカーナビゲーション装置の表示装置を利用して表示させるようになっている。
【0108】
ユーザ(車両のドライバ、同乗者の使用も可能)は、車上で自分の行きたい場所(例えば、ショッピングセンタ)の名前を、通信メディアなどで知った(あるいは別のメディアで情報を入手した)とする。そのとき、ユーザがその場所の景色、渋滞状況(空から見た)、駐車場の空き状況、駐車場の入口の渋滞状況、駐車場が自動料金収受システム対応か、駐車場の自動駐車アシストの有無等を知りたくなり、車載サーバ11cに調査を依頼するシチュエーションを考える。
【0109】
車載サーバ11cは、自分自身のリソース(メモリ、DVD、CD、接続中のネットワーク等)を調査する。例えば、依頼者の欲する場所の情報(現在の航空写真、紹介文)が無い、駐車場付近の画像等を保有していない、自動走行のための基本データ(デジタル道路情報)が無い等、車載サーバ11c単独でユーザの要求を処理できない依頼であると判定すると、そのときに、ユーザ要求に答えるための不足するデータと機能を分類して、処理すべきタスクを構成し、そのタスクを処理するAIモジュールを作成する。
【0110】
ここでいうAIモジュールとは、テキストで構成されたプログラムスクリプトや、相手先PCが理解できるプログラム言語、相手PCが音声認識が可能ならユーザの音声の指示、またはそのテキスト変換されたデータ等であり、種々の形態がある。
【0111】
次にAIモジュールがどのように作動するかを詳細に説明する。車載サーバ11cは、種々の通信メディア情報をユーザに届け、必要ならその情報を記録するメディア車載機(あるいは車載サーバの追加機能モジュール)から、ユーザが調査依頼を出したキーワードを、メディア車載機が記録したデジタルデータから検索する(ここで車載サーバ11cにメディア車載機の機能を持たせるようにしてもよい)。
【0112】
その情報として、例えば
[情報1]−「○○ショッピングセンタは、会員の皆さんにXX時より30分のタイムサービスを行います。これから送りますキーワード情報をお持ちの方に限り、下記の製品を40%引きにします」
という情報をユーザが得たとする。
【0113】
ユーザは、紹介された製品を欲しいと思うと、車載サーバ11cに対して音声にて、現在位置から○○ショッピングセンタに移動して、目的の商品の購入が可能かを問い合わせることができる。
【0114】
ここで、ユーザは、単純に「上記情報の製品を購入できるか?」と車載サーバ11cに問い合わせる場合を想定する。車載サーバ11cは、ユーザのリクエストに対し、いくつかの質問をすることで、ユーザの要求が、
「XX時30分までに(MM分以内に)この車両は目的地に到着できるか」
という具体的な内容であることを判別する。そこで、車載サーバ11cは、車両の目的地到着時刻推定のタスクを実行する。
【0115】
車載サーバ11cは、目的地までのルートを複数検索し、法定速度で走行したときの平均走行時間からユーザの欲しい商品を購入できる可能性を判定する。ここで、全く可能性が無い場合は、車載サーバ11cは、ユーザに不可能という応答を返す。
【0116】
一方、車載サーバ11cが、商品を購入できる可能性があると判定した場合には、現在地から目的地までの正確な渋滞情報、渋滞を回避したときの走行時間、目的地付近の渋滞状況(駐車場付近の渋滞台数)、駐車場付近の移動速度等を考慮し、購入可能性を推定する処理を行う。しかし、上記の情報がローカルな情報で車載サーバ11cの位置からでは詳細な情報が得られない場合が考えられる。その際、車載サーバ11cは、目的地付近の種々の情報発信機器へアクセスして必要な情報を集める必要がある。
【0117】
例えば、対象となっているショッピングセンタまで行く経路1として、県道のA,B,C,Dを通過して行くとすると、その間のリアルタイム情報を集める必要がある。これ以外に経路がある場合には、それらについても同様にリアルタイム情報を集めて到達時間を求める。
【0118】
車載サーバ11cは、図13に概念的に示すように、ユーザの依頼を県道の通過エリア毎に分類し、その分類単位のタスク1,2,3などに分けて、そのタスクを行うAIモジュール1,2,3などを作成し、通過時間を調査する。それぞれの通過時間を受け取ると、目的地までの走行時間が精度良く推定できる。
【0119】
図14は、AIモジュールが生成するAIエージェントの設定事項を示しており、AIモジュールID、ターゲットネットワークID、スクリプトテキスト、検索エリア、回答データ(単位)、回答期限、AIモジュール寿命、オプション等を含むものである。
【0120】
次に、図15を参照して、AIエージェントの具体的な構成の一例を示す。AIモジュールIDは、例えばIPv6形式の値を設定している。この中にAIモジュールを作成した車載サーバ11cのIPが含まれている。そして回答データが自動的に車載サーバ11cへ戻るようになっている。これにはタスクIDまで含ませてもよい。設定例としては、例えば、
「12DE:09a1:333F:FFFF:12DE:09a1:333F:FFFF」
である。
【0121】
ターゲットネットワークIDは、例えば、設定エリアにあるサーバ(ネットワーク)のIPを設定し(複数ある場合には複数を設定)、その設定には関連情報のデータベースに事前にアクセスして絞り込むようにしておく。AIエージェントのアクセスレベルは、パブリック、プライベート1、プライベート2、アドミニストレータ等アクセス権限を分けるようにする。なお、通常はパブリックに設定される。
【0122】
スクリプトテキストは、例えば、
「県道○○線 A−B地点 の 通行車両 の 通過時間 を 複数の通過車両 の 通過時間から 算定する。」
などであり、これはコマンドとデータを順に並べて記載するようにしてもよい。
【0123】
検索エリアは、緯度範囲、経度範囲内のサーバ、あるいは関連エリアの情報データベースを持つリソース管理会社13のサーバなどを対象とする。回答データは、例えば、
「県道○○線A−B地点の車両通過時間(単位 分)」
などとして設定する。データ形式は、テキスト、バイナリ、XMLなど設定することができるが、汎用性の高いXML形式で設定することが望ましい場合が多くなっている。
【0124】
回答期限は、例えば30秒といった時間に設定される。また、AIエージェント寿命は、例えば35秒といった時間に設定される。オプション1として、AIエージェントを受入れたサーバが、そのAIエージェントも寿命が終わったこと(消去した)を送信元に連絡するように受入先サーバに依頼しておく条件や、オプション2として、回答期限延長条件などを設定する。この回答期限延長条件は、処理が指定時間内で完了しなかった場合、時間延長するか、それとも時間が来たら処理を止めるかなどを設定するものである。
【0125】
ここで、検索されるサーバには位置座標が設定される。対象となる車両にサーバが搭載されている場合、車両の移動によって検索エリアから外れる場合がある。その場合、指定した検索エリアから外れた車両については検索対象から外すことが可能になる。
【0126】
車載サーバ11cは、目的地周辺のネットワークを検索するために、キーワードを用いて、どのネットワークのどのサーバにどのような情報があるかの概略情報を得る。その結果をもとに、車載サーバ11cは、複数のAIモジュールを作る。
【0127】
AIモジュールは、最初に返信するAIエージェントが活動する概略検査ネットワークエリアと検索キーを決定し、AIエージェントをその検査ネットワークエリアのサーバに送る。複数のAIエージェントのうち、最初に車載サーバ11cから送られたAIエージェントは、受入れられたネットワークのリソースに応じて、作業する範囲と作業内容を決定し車載サーバ11cへ連絡する。作業する範囲と作業内容は、AIエージェントを受入れたサーバが適宜決定する。
【0128】
図16に示すように、最初のAIエージェントが、AIモジュールに返す情報は下記のようになる。AIモジュールIDは、上述と同様にIPv6形式の値をつける。送信先のターゲットネットワークIDは車載サーバのIDを設定する。調査範囲サーバIPは調査を行うことが認証されたサーバのIP(AIエージェント受入サーバで決定)に設定する。
【0129】
認証番号は、AIエージェントが受け入れられた結果を示す認証番号であり、これは、受入先サーバが発行するものである。この認証番号の値からAIエージェントと受入先サーバがいつ処理を開始したかを後で見なおすことができるようになっている。調査分類範囲は、AIエージェントが調査するカテゴリ(あるいはキーワード)である。
【0130】
AIモジュールは、次のAIエージェントの作業内容を第1のAIエージェントと重複しないように設定し、目的のサーバ(ネットワーク)へ送信する。以後、車載サーバから送信されるAIエージェントに同様な設定がなされるようになっている。
【0131】
AIエージェントが受け入れられると、受入先のサーバは、AIエージェントに含まれるスクリプトまたはコマンドを読み出してAIエージェントの目的を実行する。この時、受入先サーバは、AIエージェントの要求内容を分析し、パブリックエリアの情報で回答可能、すなわち目的のデータが得られれば(例えば、受入先サーバが、パブリックエリアに車両通行時間のデータベースを持っていれば)、それをAIエージェントの応答データに入れて、車載サーバ11cへ返すようになる。
【0132】
(具体的事例その2)
AIエージェントの別の形として、AIエージェントが一つのアプリケーションとして受入サーバでオープンされ、AIエージェントに含まれるスクリプトを順次実行して結果を求め、結果を車載サーバへ戻すようにすることもできる。
【0133】
スクリプトの具体例としては、例えば、
「県道○○線 A−B地点 の 通行車両 の 通過時間 を 複数の通行車両 の 通過時間から算定する」
というものである。
【0134】
このために、AIエージェントが、車載サーバ11cから情報処理支援装置である交通管理用サーバ12に送られる場合を記述する。
【0135】
(1)車載サーバ11cは、AIエージェントを交通管理サーバに送信する。
(2)交通管理サーバ12はAIエージェントを認証する。
(3)交通管理サーバ12はAIエージェント認証結果を車載サーバに送信する。
(4)交通管理サーバ12は、AIエージェントの動作部(スクリプト)を翻訳し、AIエージェントの目的が達成できるようにソフトウェアを構成する。また交通管理サーバ12がもつデータベースを検索し、目的のデータ(XX時のA地点とB地点の走行時間のデータ)を探す。
【0136】
(5)交通管理サーバ12は、目的のデータ(複数の車両のA−B間の走行時間、または走行速度が見つかるとそれを処理し、A−B間の走行時間の回答を出す。
(6)交通管理サーバ12は、設定されたデータ構成を形成して、車載サーバ11cに回答を返す。オプション関連データ送付が必要であれば、それらも同時に車載サーバ11cへ送る。
(7)回答を受けた車載サーバ11cは、回答が十分なものであれば受信完了を返す。
(8)一方、回答が不十分であれば(たとえばサンプル数が少なくて精度が悪い場合)、車載サーバ11cは、新規スクリプト(同様な交通状況の日の平均走行速度)を構成して交通管理サーバ12へ送る。
(9)交通管理サーバ12は、受信したデータが受信済みのAIエージェントであれば、そこへスクリプトを送り、再度データ検索を行う。
(10)結果が得られれば、交通管理サーバ12は再度車載サーバ11cへ回答を返す。
(11)交通管理サーバ12は、AIエージェントの寿命がくると、AIエージェントを消去する。
【0137】
AIエージェントは、送信先サーバに到着して受付がされた時に応答を返し、以後は結果がでるまで、あるいはタイムオーバになったときだけ応答を返すようにする。そのため、通常のネットワークの処理のように随時サーバ間の通信をしなくても良いため、ネットワークのトラフィックを抑えることができる。
【0138】
(具体的事例その3)
別の例として、地点A‐Bを走行する車載サーバ11cをリアルタイムでモニタし、実際の車両速度を得る例を示す。
(1)自車の車載サーバ11cは、地点A‐B間を走行する車両のサーバ12(情報処理支援装置)を検索する。
(2)検索した結果、地点A−B間を走行する車両があれば、そのIPを調べ、その車両のサーバ12にAIエージェントを送る。
(3)AIエージェントが送られた車両のサーバ12が、AIエージェントのアクセスを許せば、AIエージェントは車両速度、走行時間、車両の周囲の状況の情報等を車速センサ(あるいは測定結果メモリエリア)や車載カメラ等を利用して十分な情報を収集する。あるいは、AIエージェントに添付されたスクリプトを他車の車載サーバ12で実行する。
【0139】
(4)必要な情報が集まると、AIエージェント(あるいは他車のサーバ12)は自車の車載サーバ11cへ結果を返す。
(5)車載サーバ11cは,複数の車両から同様な情報を集め、正確な通行時間情報を得る。
(6)他車のサーバ12にアクセスする場合、アクセスしている時間に応じて利用料金を計算する(アクセスが有料設定なら)。
【0140】
(具体的事例その4)
次に、車上での画像編集を行う場合のAIエージェントの動作の例について説明する。ここでは、自車には望遠カメラがなく撮りたい景色を撮影できない場合、他車の望遠カメラを利用して景色を撮影し、それを車内で加工する例を示す。この時、車内には加工ソフトがなく、外部から加工ソフトのリソースを持ってい来る例を示す。
【0141】
(1)車載サーバ11cは、ユーザから、撮影位置を指定した写真を撮影し、それらをまとめて1つの画面を作成するように依頼される。これは、例えば、ドライブ記録アルバムの作成をする場合などである。しかし、車載サーバ11cは指定されたアングル(例えば望遠)が自車のカメラでは不可能と判定したとする。また、写真をまとめる機能を保持していないと判定したとする。
【0142】
(2)車載サーバ11cは周辺の車両のサーバ12にアクセスし、指定されたアングルで撮影できる車両があるかをAIエージェントを送って調査する。
(3)AIエージェントのスクリプトには、ユーザの希望するアングルが指定されており、他車のカメラの画像が指定条件を満たした時、その画像をキャプチャする。
(4)他車でキャプチャされた画像リソースは、AIエージェントにより自車の車載サーバ11cに送られる。
【0143】
(5)並行して、車載サーバ11cは写真をまとめる画像ソフトモジュール(リソース)を検索するために、ネットワークを検索し、関連リソースを持つリソースサーバへAIエージェントを送る。そのAIモジュールのスクリプトには検索条件(写真画像編集機能、拡大縮小、コンポジット、重ね合わせ、レイヤ構成等)が含まれる。
【0144】
(6)リソースサーバ12は車載サーバ11cへ必要なリソースを送る。ここで、対価が必要ならこの時点で支払処理を行うことになる。
(7)車載サーバ11cは、他車から受信したデータを画像編集リソースを用いてユーザの好みに合うように編集する。編集の途中段階でユーザに結果を見せ、その結果がユーザの満足が得られるまで、編集ソフト(受信リソース)を用いる。
【0145】
(具体的事例その5)
次に、通信販売品の購入をする場合の具体例について説明する。例えば、ユーザがデジタル放送で知った商品を直ぐに購入するために、それが販売される目的の場所に行く例を示す。
【0146】
ユーザは車両で、自分が購入したい物品の情報をデジタル放送から入手(見たり聞いたりして)する。この時、ユーザには品名が聞こえたが、それがいつどこで販売されるかが聞き取れなかったとする。
【0147】
ユーザは車載サーバ11cに、完全に聞き取れなかった情報の一部を検索キーワードにして、デジタル放送を検索するようにサーバに依頼する。車載サーバ11cは、メディア車載機12に、過去のユーザが聴取した放送プログラムを呼び出させて、その中から検索キーワードに適合する部分を複数選択させる。
【0148】
車載サーバ11cは、メディア車載機12が選択したいくつかの候補を選び、ユーザに提供する。ユーザは、適合するものがあれば、それを車載サーバ11cに示すことで、車載サーバ11cはユーザが情報を得た放送プログラムの必要な部分を確定する。
【0149】
車載サーバは11c、ここで、ユーザに対して、ユーザが希望する内容を問い合わせる。例えば、ユーザが品物をすぐに購入するために、販売場所まで今すぐに短時間で行きたいと応答した場合、車載サーバ11cは販売場所までのルート情報を確定したデジタル放送プログラムをもとに検索する。この場合、例えば、今日の走行スケジュールが設定されている場合に、その合間に行くためにはどのように車両走行移動を行うかということも考慮することができる。
【0150】
ユーザが購入したい製品を販売する販売会社名がデジタル放送のデータに含まれていれば、そのデータを検索キーに使って、販売場所を検索することができる。これは、販売場所の中に販売会社へのリンクデータが埋め込まれていたり、逆に、販売会社データに販売情報のリンクデータが埋め込まれているように放送プログラムが作成されているということが前提条件となる。
【0151】
この場合、メディア車載機12は、車両に送られたさまざまなデジタル情報をユーザの要求に応じて切替え、ユーザがいつ、何を聴取していたかの履歴を記録する。メディア車載機12が記録したデジタル情報データには、複数の関連情報と連携できるリンクデータ(例えばURLアドレス)が含まれている。メディア車載機12は、ユーザが設定した番組を別途記録することが可能なように構成されている。
【0152】
ユーザは通信メディアから得た情報を確認するために、自分が聞いた情報をプレイバックし、キーワードを探して情報検索を行うことができる。ここで、通信メディア情報はデジタル信号化されて車両に送られてくるため、車両に通信メディア記録手段が搭載されている。ユーザは自分が聞いた情報(音声)を再確認できる。
【0153】
また、音声情報は情報検索等でテキスト情報が必要になった場合、テキスト情報に変換される。あるいは、あらかじめテキスト情報が音声と同時に送信されている場合、そのテキスト情報を検索キーにして情報検索を用いるようにしてもよい。また、デジタル放送の信号にURLのような必要な情報に接続(リンク)するための情報を含むようにすれば、ドライバはその情報を利用して即座に関連情報サイトにアクセスすることが可能になる。
【0154】
各サイトへアクセスする際、ユーザがいわゆるブラウザを使って検索する場合、一度に多くのサーバにアクセスして情報を得ることは難しい。そのため、車載サーバはAIモジュールを多くの関連リンクのサーバに送付して、同時に多くの情報を集めるようにする。
【0155】
上記のようにAIエージェントは、スクリプトを含み、そこにユーザの嗜好、価格範囲等を入れておく。このようにして、一度に多くのWEBサイトを検索し、短時間で多くの情報を集めることができる。集めた情報は車載サーバ11cに集めることで、以後の加工が容易に行える。
【0156】
(具体的事例その6)
次に、データ収集および加工の例について述べる。ユーザが走行中に、オフィスのユーザ用PC11bのデータファイルを検索して、必要なファイルが見つかれば走行中の車両に見つかったファイルを転送し表示する。もし、必要なデータがユーザ用PC11bに見つからなかった場合、AIエージェントがオフィスネットワークに送られ、ドライバの希望するファイルに類似のファイルをネットワークから選択して、データを再構成し車両(ドライバ)に転送する。
【0157】
もし、ドライバの希望する情報データがそのネットワークになければ、AIエージェントは、オフィスのネットワークのアクセス可能エリアからそれらを検索し、ドライバの希望するデータを探索し、必要なら探索データを加工して、ドライバへ送る。
【図面の簡単な説明】
【図1】 本発明の一実施形態を示すシステムの概略的構成図
【図2】 携帯情報処理機の電気的なブロック構成図
【図3】 携帯情報処理機の概略的な処理の流れ図
【図4】 携帯情報処理機の処理プログラムのフローチャート(その1)
【図5】 携帯情報処理機の処理プログラムのフローチャート(その2)
【図6】 リソース管理システムの作用説明図
【図7】 リソース管理会社から外部機器へのデータ転送の概念図
【図8】 携帯情報処理機、リソース管理会社および外部機器の動作を相互関係を持って示す流れ図
【図9】 外部機器との協調動作を示す作用説明図(その1)
【図10】 リソースマネージャのアプリ構築の流れを説明する図
【図11】 外部機器との協調動作を示す作用説明図(その2)
【図12】 AIモジュールと他のPCとの間の動作を示す流れ図
【図13】 ユーザ依頼に基づいたタスクの構成説明図
【図14】 AIモジュールの設定事項の説明図
【図15】 AIエージェントの構成例を示す図
【図16】 AIエージェントがAIモジュールに返す情報の説明図
【符号の説明】
1は携帯情報処理機(情報処理装置)、4はマイクロホン、5はスピーカ、6はCCDカメラ、10はネットワーク、11a〜11dはPC(外部機器、情報処理装置)、12は外部機器(情報処理支援装置)、13はリソース管理会社のサーバ、14は制御回路である。

Claims (7)

  1. 外部から情報処理の依頼を受ける受付手段と、
    この受付手段により受け付けた依頼情報処理を自己のリソースを用いて実行可能か否かを判定する判定手段と、
    この判定手段により実行不可能と判定されたときに不足リソースを探索して外部から収集可能か否かを判定する探索手段と、
    この探索手段により収集可能と判定されたときにその不足リソースをダウンロードするかまたは外部リソースを用いて協調動作で処理するかをユーザに問い合わせる手段と、
    前記探索手段により不足リソースがハードウェアであると判定されると共に前記問い合わせ手段により問い合わせした結果前記外部リソースを用いて協調動作で処理するとユーザにより選択入力された場合、その不足リソースのハードウエアを利用可能な情報処理支援装置を探索してそのハードウェアで行うべき情報処理を依頼する処理依頼手段と、
    前記問い合わせ手段により問い合わせした結果、不足リソースをダウンロードして処理するとユーザにより選択入力された場合、不足リソースをダウンロードする手段と、
    前記ダウンロードして処理する場合または前記外部リソースを用いた協調動作を行うときには、ユーザの依頼に対応するための当該ユーザのメッセージタイプを認識し当該メッセージタイプに応じた動作をなすアプリを構築する処理を実行する実行手段と、
    前記外部リソースを用いた協調動作を行った場合には前記処理依頼手段が情報処理を依頼した情報処理支援装置から前記情報処理結果を受け取る受領手段とを備えたことを特徴とする情報処理装置。
  2. 請求項1記載の情報処理装置において、
    前記受付手段は、
    人が音声により入力する情報処理の依頼を受け付ける入力手段と、
    この入力手段により入力された音声情報を、呼びかけ、説明、依頼、質問、確認、応答などの各メッセージタイプに分類し、当該分類されたメッセージタイプから前記実行手段が実行可能な情報として解釈する依頼解釈手段とを備えていることを特徴とする情報処理装置。
  3. ネットワークを介して情報処理装置からアクセス可能に設けられ、請求項1または2記載の情報処理装置により前記不足リソースの収集依頼を受けるとこれに応じてその不足リソースを提供するリソース提供手段を備えたことを特徴とする情報処理支援装置。
  4. 請求項3に記載の情報処理支援装置において、
    前記リソース提供手段により前記不足リソースがハードウェアであると判定されたときに、その不足リソースのハードウエアを利用可能な他の情報処理支援装置を探索してそのハードウェアで行うべき情報処理を依頼する処理依頼手段を備えたことを特徴とする情報処理支援装置。
  5. 請求項1に記載の情報処理装置もしくは請求項4に記載の情報処理支援装置の処理依頼手段により前記不足リソースのハードウェアの利用依頼を受けたときに、対象となったハードウェアで行うべき情報処理を受け付けてこれを処理する処理手段と、この処理手段による処理結果を前記情報処理装置の受領手段に渡す送信手段とを備えたことを特徴とする情報処理支援装置。
  6. 請求項3ないし5のいずれかに記載の情報処理支援装置において、
    自己が備えるリソースが、前記情報処理装置の外部リソースとして用いられる場合に、前記情報処理装置の不足リソースの収集要求に応じて協同して前記依頼情報処理を実行することを特徴とする情報処理支援装置。
  7. 請求項1または2記載の情報処理装置と、
    ユーザから命令を受けたときに、本体のハードウェアだけでその命令を処理できるか否かを判定する判定手段と、
    この判定手段により本体のみでその命令が処理できないと判定されたときに、外部の情報処理支援装置に一時的に移動して当該外部の情報処理支援装置内のリソースを利用して アクセス許可範囲内で必要な処理を完了させるAIエージェントを生成するAIエージェント生成手段とを備え、
    前記AIエージェントを、前記情報処理支援装置内で内部に保有するリソースを利用して必要な処理を完了させて、その完了結果を移動前の場所に転送させた後、必要な処理が完了すると自己消滅するように構成したことを特徴とする情報処理支援システム。
JP2002329465A 2002-11-13 2002-11-13 情報処理装置、情報処理支援装置および情報処理支援システム Expired - Fee Related JP4013740B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002329465A JP4013740B2 (ja) 2002-11-13 2002-11-13 情報処理装置、情報処理支援装置および情報処理支援システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002329465A JP4013740B2 (ja) 2002-11-13 2002-11-13 情報処理装置、情報処理支援装置および情報処理支援システム

Publications (2)

Publication Number Publication Date
JP2004164288A JP2004164288A (ja) 2004-06-10
JP4013740B2 true JP4013740B2 (ja) 2007-11-28

Family

ID=32807453

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002329465A Expired - Fee Related JP4013740B2 (ja) 2002-11-13 2002-11-13 情報処理装置、情報処理支援装置および情報処理支援システム

Country Status (1)

Country Link
JP (1) JP4013740B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220057907A1 (en) * 2006-09-06 2022-02-24 Apple Inc. Portable electronic device for instant messaging

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4522780B2 (ja) * 2004-07-28 2010-08-11 株式会社トヨタIt開発センター グリッド・コンピューティング・システム、プログラム、記録媒体およびグリッド・コンピューティング方法
JP2006178658A (ja) * 2004-12-21 2006-07-06 Fujitsu Ltd 情報処理方法及びプログラム
JP2007087273A (ja) * 2005-09-26 2007-04-05 Toyota Infotechnology Center Co Ltd 分散処理システム及び車載端末
WO2011106382A2 (en) * 2010-02-26 2011-09-01 Rovi Technologies Corporation Dynamically configurable clusters of apparatuses
JP5514794B2 (ja) 2011-12-05 2014-06-04 パナソニック株式会社 情報処理システム
JP5832481B2 (ja) * 2013-06-12 2015-12-16 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、情報処理システム、および情報処理方法
CN113449948B (zh) * 2020-12-31 2024-05-03 北京新氧科技有限公司 业务处理的方法、装置、电子设备及介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220057907A1 (en) * 2006-09-06 2022-02-24 Apple Inc. Portable electronic device for instant messaging
US11762547B2 (en) * 2006-09-06 2023-09-19 Apple Inc. Portable electronic device for instant messaging

Also Published As

Publication number Publication date
JP2004164288A (ja) 2004-06-10

Similar Documents

Publication Publication Date Title
US20090024530A1 (en) Automatic gift messaging system
US20110016421A1 (en) Task oriented user interface platform
US20050282519A1 (en) Charging method in service providing system, service providing server, service prociding program, recording medium containing the service providing program, terminal device, terminal processing program, and recording medium containing the terminal processing program
US20070291741A1 (en) Payment System and Its Method for Supporting User Verification in Voip Configuration
JP2004310316A (ja) 配車処理装置、そのシステム、その方法、そのプログラム、および、そのプログラムを記録する記録媒体
US20090106117A1 (en) Content request, storage and/or configuration systems and methods for live content or events
KR102096158B1 (ko) 렌터카 서비스 장치 및 그 장치에서의 차량 임대 전자 계약 서비스 방법
JP2002123462A (ja) インターネットを通じたコンテンツ提供システム及びその方法
CN101681380A (zh) 位置引入数据传递设备、位置数据引入系统以及位置数据引入方法
JP2002318132A (ja) 音声対話型ナビゲーションシステムおよび移動端末装置および音声対話サーバ
KR20160071828A (ko) 데이터 중개 시스템 및 방법
CN103959355A (zh) 用于定位一个或多个对等体的系统和方法
CN110753927A (zh) 在计算设备之间同步访问控制
US20090198623A1 (en) System and method for executing and authenticating an activity at a remote location
CN109410634A (zh) 车辆管理方法、系统及存储介质
CN107395662B (zh) 利用不同的使用者识别体系识别所注册的使用者的服务器间的服务联动方法及系统
CN105430075A (zh) 公租车预定方法、装置及系统
JP2019120982A (ja) 駐車場貸出し・管理システム
US20020120713A1 (en) Broadband sign-off
JP2016224545A (ja) 経費管理システム、経費管理装置、経費管理プログラム及び経費管理方法
JP4013740B2 (ja) 情報処理装置、情報処理支援装置および情報処理支援システム
CN107070891A (zh) 服务调用方法和装置
JP2004213569A (ja) 有料道路料金支払方法、サーバ、プログラム
WO2018172906A1 (ja) 行動管理方法、行動管理装置、並びに決済補助コンピュータ
US20080107256A1 (en) Virtual contact center

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070206

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070409

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070529

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070730

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070821

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070903

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100921

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100921

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110921

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110921

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120921

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120921

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130921

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees