JP2010287224A - クエリー・ツリーの動作を制御する方法及びプログラム - Google Patents

クエリー・ツリーの動作を制御する方法及びプログラム Download PDF

Info

Publication number
JP2010287224A
JP2010287224A JP2010118819A JP2010118819A JP2010287224A JP 2010287224 A JP2010287224 A JP 2010287224A JP 2010118819 A JP2010118819 A JP 2010118819A JP 2010118819 A JP2010118819 A JP 2010118819A JP 2010287224 A JP2010287224 A JP 2010287224A
Authority
JP
Japan
Prior art keywords
query
node
user
response
keywords
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.)
Pending
Application number
JP2010118819A
Other languages
English (en)
Inventor
Justin P Bandholz
バンドホルツ・ジャスティン・ピー
William G Pagan
ペイガン・ウィリアムス・ジー
William J Piazza
ピィアッザ・ウィリアム・ジェイ
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2010287224A publication Critical patent/JP2010287224A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2425Iterative querying; Query formulation based on the results of a preceding query
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【課題】 複数のクエリー・ノード及び情報ノードを含むクエリー・ツリーを進行させるシステム、コンピュータに実装される方法及びコンピュータ・プログラム製品を提供する。
【解決手段】 各クエリー・ノードはプロンプト、ブランチ基準及びキーワードに関連づけられている。現クエリー・ノードはユーザにプロンプトを提示し、そしてユーザの応答が受けとられ、そしてユーザの応答内のブランチ基準及びキーワードを同定するために分析される。本方法は、ユーザの応答内のブランチ基準並びにユーザの応答内のキーワードとクエリー・ノードに関連づけられているキーワードとの比較に基づいてクエリー・ツリー内の他のノードへ進行させる。この比較は、ブランチ基準に対応する宛先ノードへの進行を正当化し、又はこの比較は、クエリー・ツリーの正しくない進行を示す。正しい進行は、ユーザの応答内のキーワードに基づいて種々な方式で実現され得る。
【選択図】図1

Description

本発明は、コール・センター、ヘルプ・デスク若しくは情報応用及びウエブ・ページで使用され得るようなクエリー・ツリー(問い合わせ木構造.)の準備及び使用に関する。
ヘルプ・デスク及びコール・センターは、コール・ハンドラと呼ばれる職員を有して設立され、問い合わせ者に対して一連の質問をすることによりこの問い合わせ者が個人であるか若しくは専門的知識を有する組織であるかを最初に同定し、次いで問い合わせ者に与える適切な応答を決定する。コール・ハンドラは、問い合わせ者と検討中の話題について専門家でないことがあるので、コール・ハンドラが行う共通的な手法は、ソフトウエアを使用することであり、このソフトウエアは、これがクエリー・ツリーを辿る間に、コール・ハンドラが問い合わせ者に特定な質問を行えるようにするプロンプトを与える。クエリー・ツリーの名前の由来は、ブランチ(即ち、枝)により接続されている一連の質問のグラフィック表示が、定型的な三角形のツリーに似ているからであり、ここで、最上部の最初のノードから複数のノードに向かって下方にブランチ(枝分かれ)し、最終的に非常に広い底部が形成されるまで、それぞれのノード自体が又複数のノードにブランチする。具体的にいうと、コール・ハンドラには、当合わせ者に答えている時点で1つの質問が提示され、ここで、この質問はツリー内の1つのノードに対応する。この質問に対する問い合わせ者の応答に基づいて、ツリー内でどのようにブランチするかの決定がなされて、次の質問若しくは問い合わせ者に与える答えを引き出す。質問しそして応答するこのプロセスは、クエリー・ツリー設計者若しくはプログラマにより決定される回数だけ継続してクエリー・ツリー内を進行する。理論的には、一連の質問及び応答は、探索された情報へ問い合わせ者を最終的にたどり着かせるべきであり、この情報とは、必要な専門的知識を有する個人への音声接続、所定の主題についての情報を含む記録された説明、若しくは更なる情報を引き出すデータであり得る。
実際のコール・ハンドラを常に係わらせるよりもむしろ、かなりのヘルプ・デスク若しくはコール・センターは、例えば対話型音声応答システムのような完全に自動化されたクエリー・ツリーを使用する。代表的には、対話型音声応答システムは、予め録音された質問若しくは音声合成された質問を流し、そして問い合わせ者の応答を同定するために音声認識技術を使用することにより、問い合わせ者がクエリー・ツリーを辿るようにする。理想的には、問い合わせ者が所望の情報に迅速且つ直接的に到達できることである。しかしながら、不適切な質問、問い合わせ者の間違った応答、音声応答を正しく認識できなかったために、問い合わせ者は、所望の情報を得ることができなかった。
これと非常に似ている自動化されたシステムは、クエリー・ツリーを辿らせる(ナビゲートする)ために、問い合わせ者が例えば電話機のキー・パッドを介して各質問に対する数字による応答を入力することを要求する。数字による応答は音声による応答よりも認識しやすいけれども、一般的に質問は、幾つかの数字による応答の意味を説明するステーツメント(言明)を含まねばならない。これらのステーツメントは、相当長くなり、従って問い合わせ者がこれらを思い出しそして評価することが困難になる。例えば、銀行の自動化システムは、“新規登録の場合は1を押してください”、現存する口座の収支の場合には2を押してください“、”自動車ローンの場合には3を押してください“、営業時間の場合には4を押してください”、“退職勘定の場合には5を押してください”、等を話しかける。新たな個人退職勘定(IRA)を設立することについての情報を望んでいる問い合わせ者は、新規登録の1を押すのか又は退職勘定の5を押すのか混乱することがある。
経験の少ないコール・ハンドラ及び自動化システムを使用することは、これらを使用する企業若しくは政府組織に著しい財政上の節約をもたらすが、問い合わせ者には彼らが必要とする情報を得るのに必要な時間数及び手間の点で不満足感が生じる可能性がある。厳密に設計されそしてスクリプトされたクエリー・ツリーは、このようなシステムに接する問い合わせ者の知識を著しく改善するが、更に改善されたコール・システムの必要性がある。
本発明の1つの実施例は、プロンプトをユーザに提示するコンピュータに実装される方法を提供し、ここで、プロンプトは、クエリー・ツリーの現クエリー・ノードにより提示される。クエリー・ツリーは、複数のクエリー・ノード、複数のブランチ及び複数の情報ノードを含み、各ブランチは、特定のクエリー・ノードに関連づけられているブランチ基準に対応し、そしてこの関連するクエリー・ノードから他のクエリー・ノード若しくは情報ノードの1つへの進行(ナビゲーション)を指示する。各クエリー・ノードはプロンプトを提示し、そして各情報ノードはユーザにとって役に立つ情報を与える。更に、各クエリー・ノードは1つ以上のキーザードに関連づけされている。更にこのコンピュータに実装された方法は、プロンプトに対するユーザの応答を受けとるステップと、現在のクエリー・ノードから他のクエリー・ノード若しくは情報ノードの1つへ至る、複数のブランチのうちの1つに対応するブランチ基準を同定するためにユーザの応答を分析するステップを含む。又、ユーザの応答は、このユーザの応答から1つ以上のキーワードを同定するために分析される。クエリー・ツリーは、ユーザの応答から得られたブランチ基準と、ユーザの応答から得られた1つ以上のキーワード及びクエリー・ノードに関連づけされているキーワードの比較に基づいて、このクエリー・ツリーの他のノードに進められる(ナビゲートされる)。
本発明の他の実施例は、複数のクエリー・ノードを有するクエリー・ツリーを準備するコンピュータに実装された方法を提供し、ここで、各クエリー・ノードは、質問(クエリー)、ブランチ基準及び予定のキーワードを含む。この方法は、次いで、複数のクエリー・ノードのうちの第1番目のクエリー・ノードからの質問に対してユーザを応答させるプロンプトを提示し、この質問に対するユーザの応答を受け取り、ブランチ基準及び1つ以上のユーザのキーワードを同定するためにユーザの応答を分析し、そしてユーザからの1つ以上のキーワードを1つ以上のクエリー・ノードからの予定のキーワードと比較する。
本発明の更に他の実施例は、コンピュータ使用可能な媒体に記録されたコンピュータ使用可能なプログラム・コードを含むコンピュータ・プログラム製品を提供する。コンピュータ・プログラム製品は、クエリー・ツリーを設立するためのコンピュータ使用可能なプログラム・コードを含み、ここでクエリー・ツリーは、複数のクエリー・ノード、複数のブランチ及び複数の情報ノードを有し、各ブランチは特定なクエリー・ノードに関連づけられているブランチ基準に対応しそして関連するクエリー・ノードから他のクエリー・ノード若しくは情報ノードの1つへの進行(ナビゲート)を指示し、ここで各クエリー・ノードはプロンプトを提示しそして各情報ノードは役に立つ情報をユーザに提示し、そして更に、コンピュータ・プログラム製品は、各クエリー・ノードに1つ以上のキーワードを関連づけるコンピュータ使用可能なプログラム・コードを含む。
スカウト・プログラムについての情報をユーザに与えるクエリー・ツリーの例を示す図である。 情報ノードのそれぞれにキーワードが関連づけられているクエリー・ツリーを示す図である。 クエリー・ツリー内でのユーザの進行を正当化し若しくは再指向するために各クエリー・ノードにおいて使用されるキーワードを示すクエリー・ツリーを示す図である。 図3のクエリー・ツリーを規定する表若しくはデータベースを示す図である。 図3のクエリー・ツリーを規定する表若しくはデータベースを示す図である。 クエリー・ツリーを構築する方法のフローチャートを示す図である。 クエリー・ツリーを動作させる方法のフローチャートを示す図である。 クエリー・ツリーを動作させる方法のフローチャートを示す図である。 クエリー・ツリーを動作させる方法のフローチャートを示す図である。
本発明の1つの実施例は、クエリー・ツリーを辿る(ナビゲートする)ためのシステム、コンピュータに実装される方法及びコンピュータ・プログラム製品を提供する。この実施例の方法は、ユーザにプロンプトを伝達するステップを含み、ここで、プロンプトは、クエリー・ツリーの現在のクエリー・ノードにより提示される。クエリー・ツリーは、複数のクエリー・ノード、複数のブランチ及び複数の情報ノードを含み、各ブランチは、特定なクエリー・ノードに関連するブランチ基準(criteria)に対応しそして関連するクエリー・ノードから他のクエリー・ノード若しくは情報ノードの1つへ進むことを指示する。各クエリー・ノードは、プロンプトを提示し、そして1つ以上のキーワードが関連づけられている。各情報ノードは、ユーザにとって役に立つ情報を与える。この実施例の方法は更に、プロンプトに対するユーザの応答を受けとることを含む。ユーザの応答は、現在のクエリー・ノードから、複数のクエリー・ノードのうち異なる1つのクエリー・ノード若しくは情報ノードの1つへ至る複数のブランチの1つに対応するブランチ基準を同定するために、そしてユーザの応答からの1つ以上のキーワードを同定するために分析される。この方法は、ユーザの応答において受けとられたブランチ基準、並びにユーザ応答において受けとられた1つ以上のキーワードとクエリー・ノードに関連づけられた1つ以上のキーワードと比較を考慮してクエリー・ツリーの他のノードへ進める。
ユーザは、ユーザが必要としている情報を効率的に決定するように設計されているプロンプトに対する応答を与えることによりクエリー・ツリー内を進行する。ユーザの応答は、このクエリー・ツリーを実装するシステムのユーザ・インターフェースに適応する種々な形で提示され得る。例えば、ユーザの応答は、ユーザ・インターフェースが電話回線と通信する電話である場合ユーザの発声若しくは数字入力でもよく、又は、ユーザの応答は、ユーザ・インターフェースがコンピュータ・ネットワークと通信するコンピュータ・ワークステーションである場合英数字入力若しくはポイントーアンドークリック(point and click)入力でもよい。又、ユーザがクエリー・ツリーを辿るために他のインターフェースが利用され得る。
クエリー・ツリーは、これ自身をグラフィック的表示及び記述させるものであるが、1つ以上の表(テーブル)若しくはデータベースとして実現され得る。例えば、表若しくはデータベースにおいて、各行若しくはレコードはクエリー・ノードを規定する。クエリー・ノードを規定する1つのレコードは、プロンプト、ブランチ基準、各ブランチ基準毎の宛先ノードID,及び関連するキーワードを与える。宛先ノードは、他のクエリー・ノード若しくは情報ノードでもよい。情報ノードは、ユーザが必要とする情報若しくは他のサービス・アクセスを与える。図を参照して以下に説明する実施例は、情報ノードを終端ノードとしているが、情報ノードにプロンプト、ブランチ基準及び対応する宛先ノードIDを含ませるようにすることも可能である。後者の場合、ユーザの応答に対するプロンプトに続いて情報若しくはサービス・アクセスが提示され得る。当業者ならば、本明細書で説明する技術を理解した後、本発明の他の特定な態様及び変形を容易に理解するであろう。
更に、各ノードは任意の数のブランチ基準を有することができるが、ブランチ基準の数はユーザから適切な応答を引き出せないような混乱を生じさせないように、1乃至10であるのが望ましい。例えば、ブランチ基準は、例えばイエス/ノー若しくは真/偽のような2進ブランチ基準又は他の質的若しくは量的なブランチ基準を含み得る。プロンプトは、ユーザに適切な応答の例を提示してもよく若しくは提示しなくてもよい。例えば、クエリー・ツリー・システムは、容認可能な応答はイエス“若しくは”ノー“であることをユーザに知らせることができる。更に、クエリー・ツリーシステムは、現在のクエリー・ノードから幾つのブランチがあるかをユーザに知らせてもよく若しくは知らせなくてもよい。例えば、プロンプトがユーザに年齢を述べることを要求するならば、ユーザの応答は音声による若しくは数字エントリィ”43“を含む。他の例では、クエリー・ツリーは、年齢を表す整数(例えば、16,17,18,・・・、41,42,43,・・・、68.69,70等)毎のブランチ基準、年齢の範囲(20−29,30−39,40−49,等)を設定するブランチ基準、又は単に年齢が21歳以上か、若しくは65歳以上かを単に判定するブランチ基準を備えて構築され得る。設けられることができる。他の例では、プロンプトは、ユーザが住んでいる市の名前及び州の名前を示すユーザの応答を求めることができる。ユーザが述べる市は広大な範囲に及ぶので、システムは、ユーザの応答を受けとり、そしてクエリー・ツリーの動作を助けるルックアップ関連の情報を得ることができる。もしもユーザの応答が、ユーザがノースカロライナ州のホーリ・スプリングスに住んでいることを示すならば、システムは、ホーリ・スプリングスで入手可能なケーブル・テレビ・レイトプランについての情報を戻す別のデータベースを探索することができる。入手可能なレイトプランは、ユーザに提示されるべき情報若しくは更なるプロンプトを示すブランチ基準として使用され得る。
1つの実施例において、ユーザは、クエリー・ツリーを実装するシステムに直接インターフェースし得る。例えば、電話若しくはコンピュータのような任意の入/出力デバイスを使用して、ユーザはスピーカ若しくはグラフィック・ディスプレイを介して直接的にプロンプト受けとることができ、そしてマイクロフォン、キーボード若しくはマウスを介して応答を直接送ることができる。もしもユーザがリモート・サーバを使用するならば、入/出力動作は、ローカル・エリア・ネットワーク、例えばインターネットのようなワイド・エリア・ネットワーク、電話回線若しくはこれらの組み合わせを介して行われることができる。随意選択的に、クエリー・ツリーは、例えばキオスク若しくは小売店のようなユーザが直接アクセスできるコンピュータに実装される。他の実施例においては、ユーザは、プロンプトを読み上げ、そしてクエリー・ツリー若しくはクエリー・ツリーを実装するシステムを何ら変更することなくユーザの応答を入力するコール・ハンドラ(係員)を通信することができる。
本発明の種々な実施例に従うと、ユーザの応答は、ブランチ基準及びブランチ基準以外の1つ以上のキーワードを同定するために分析される。もしもユーザの応答が例えば電話回線を介して受けとられる話し言葉のような音声信号として受けとられるならば、ユーザの応答を分析する準備ステップは、音声信号をこれと等価の英数字データに変換する音声認識システムを含む。音声信号から変換された若しくは英数字入力として直接受けとられた英数字データは、プロンプトを提示したクエリー・ノードに関連づけられている任意のブランチ基準若しくはキーワードに一致するワード若しくは他のデータを同定するために分析される。種々な標準が“一致”と判定するのに利用されることができるが、ブランチ基準若しくはキーワードの綴り及び形式の一般的な変化は一致として考えられる。例えば、クエリー・ツリーデータベースに含まれているブランチ基準が“theater”として記憶されている場合、“theatre”若しくは“theatrical”を含むユーザの応答は一致と考えられる。ユーザの応答において、例えば“the”,“an”、のような冠詞及び例えば“for”,“and”,“or”及び“but”のような接続詞は、ユーザの意図を示すブランチ基準又はキーワードとして見なされない。名詞、代名詞、形容詞、動詞、副詞及び数字はクエリー・ノードに関連づけされるブランチ基準若しくはキーワードとして使用されるのが望ましい。ユーザの応答中の同定された名詞、代名詞、形容詞、動詞及び副詞は、クエリー・ツリーを辿るのに使用され得る一致を同定するために現クエリー・ノードに関連づけされているブランチ基準及びキーワードと比較される。随意選択的に、ユーザの応答の内容は、ブランチ基準及びキーワードと一致するとはいえないがこれらに対する妥当性の度合いを同定するために分析され得る。例えば、語“drink”を含むユーザの応答は、”cofee“若しくは”donuts“のいずれとも一致しないが、このうち”cofee“に最も関連性があるとして識別される。
本発明の1つの実施例に従うと、コンピュータに実装される方法は、ユーザの応答が現クエリー・ノードから出るブランチに対応するブランチ基準を含むという判定に応答して現クエリー・ノードから宛先ノードへ進むステップを含む。例えば、“イエス”及び“ノー”のようなブランチ基準はクエリー・ツリーにおいて1回以上利用され得ることに注目されたい。任意に与えられたユーザの応答に含まれるブランチ基準の同定は、現クエリー・ノードからのブランチに対応するブランチ基準に集中されるべきである。ブランチ基準が同定されそして後述のようにこれが正当化されると、クエリー・ツリーは、ブランチ基準に関連する宛先ノードへ進められる。しかしながら、案内(ナビゲーション)動作の1つのステップに対して宛先ノードとして参照されたノードは、次の進行においては現ノードになる。随意選択的に、或るポインタがクエリー・ツリーの現ノードを連続的に同定しそして進行動作の間1つのノードから他のノードへ動くようにすることもできる。このプロセスは、質問を伴う単一のユーザ・セッションに亘って連続する。例えば、コンピュータの問題を解決するためにクエリー・ツリーが複雑であるような場合、ユーザは彼のユーザ・セッションを保存し、そしてこの後元に戻ってクエリー・ツリーの同じポイントから動作を続けることができる。
更に他の実施例において、コンピュータに実装される方法は、ユーザの応答内の1つ以上のキーワードが宛先ノードに関連づけられたキーワードに一致又は少なくともこれらに対して関連性があるという判定に応答して、宛先ノードへの進行を容認するステップを含む。ユーザの応答内のキーワードが宛先ノードに関連づけられたキーワードと一致するという判定は、クエリー・ツリーを通る現在の進行の仕方が、ユーザの必要度若しくは興味と一致して進行していることを正当化するのに有用である。ブランチ基準を単純に辿ることは不適切な案内を正確若しくはタイミングよく検出しないかも知れない。例えば、家畜のクリニックのためのクエリー・ツリーが“あなたの犬は何歳ですか?”というプロンプトを提示し、そして“私の猫は6歳です”というユーザの応答を得たならば、“6歳”というブランチ基準は、宛先ノードを示しうるが、“猫”というキーワードは、現クエリー・ノードから遠くにあるどの情報ノードにも一致せず若しくは関連性がない。具体的にいうと、クエリー・ツリーが不適切に進行してしまったのは、おそらく、“あなたのペットは犬ですか又は猫ですか?”という或る先行するプロンプトに対して誤った応答がなされたためである。これに対して、“私の子犬は7歳です”というユーザの応答は、“犬”というブランチ基準に一致若しくは関連性があると判断され、そしてクエリー・ツリーの進行を正当化する。
クエリー・ノードは、種々な方法で単独若しくは組み合わせ的に1つ以上のキーワードに関連づけられるようになることに注目されたい。例えば、クエリー・ノード及びブランチ基準を含むクエリー・ツリーをレイアウトし、そして各情報ノードの情報若しくは内容を同定することが可能である。情報からのキーワードは同定され、そして最初のクエリー・ノードまでクエリー・ツリーを逆方向に辿るパスに沿う各クエリー・ノードに関連づけされ得る。従って、或るクエリー・ノードに関連づけされるキーワードは、このノードからブランチして下の方向に辿ることにより得られる情報を表す。他の例として、特定なクエリー・ノードに関連づけされるキーワードは、ユーザを所望の情報に到達させるユーザの応答からのキーワードを記憶することにより時間外に増し分的に発生される。これらの2つの方法及び他の方法の組み合わせが、クエリー・ツリーの任意のノードにキーワードを関連づけするために使用され得る。本明細書で使用されている末端ノードは、クエリー・ツリーを正方向に進行することにより(即ち、各モード毎にブランチ基準を単純に与えることにより)現ノードから到達されうる任意のノードである。近接ノードは、クエリー・ツリーを逆の(負の)方向に幾らか辿ることにより(即ち、ユーザ・セッションの間に以前に進んだノードに戻ることにより)到達される任意のノードである。又、近接ノードは、近接ノードからブランチするノードをも含むが、但し、これらのノードが近接ノードに対して遠くにあるノードのうち興味あるノードでない場合に限る。
関連する実施例において、コンピュータに実装される方法は、ユーザの応答からの1つ以上のキーワードが宛先ノードに近接する任意のクエリー・ノードに関連づけられているキーワードに対して関連性がないという判定に応答して、宛先ノードへ進行することを容認するステップを含む。言い換えると、もしもユーザの応答内のキーワードが現クエリー・ノードに近接する任意のノードに対して関連性がないならば、ユーザの応答内にはブランチ基準の選択を否定するものはない。従って、クエリー・ツリーは、ユーザの応答内のブランチ基準により同定される宛先ノードに進められるべきである。
更に他の実施例において、コンピュータに実装される方法は、ユーザ・セッションの間に各プロンプトに関連して受けとられたユーザの応答のそれぞれを記憶するステップと、現プロンプトに対するユーザの応答が現クエリー・ノードよりも以前に辿ったクエリー・ノードに更に関連づけられているキーワードを含むという判定に応答して以前に辿ったクエリー・ノードに戻すステップとを含む。この方法の更に他の実施例は、現クエリー・ノードに関連づけられているキーワードよりもユーザの応答内の1つ以上のキーワードに更に関連すると判定されたキーワードに関連づけられているクエリー・ノードへ案内するステップを含む。これらの2つの実施例は、クエリー・ツリーの進行をやり直すものであるので、プロンプトを繰り返しそしてこのようにして進行する前に更なるユーザの応答を受けとることが望ましい。例えばこの方法は、現クエリー・ノードに関連づけられているどのキーワードにも関連性がない1つ以上のキーワードを含むユーザの応答を受けとったことに応答して、現クエリー・ノードからのプロンプトを繰り返し提示することを含む。
本発明の代替的な実施例は、更なるコンピュータに実装された方法を提供し、そしてこの方法は、それぞれが質問、ブランチ基準及び予定のキーワードを含む複数のクエリー・ノードを有するクエリー・ツリーを準備するステップと、ユーザに対して複数のクエリー・ノードのうちの第1番目のクエリー・ノードからの質問に応答するように促すステップと、質問に対するユーザの応答を受けとるステップと、ブランチ基準及びユーザからの1つ以上のキーワードを同定するためにユーザの応答を分析するステップと、ユーザからの1つ以上のキーワードを1つ以上のクエリー・ノードの予定のキーワードと比較するステップとを含む。ユーザからの1つ以上のキーワードを1つ以上のクエリー・ノードの予定のキーワードと比較するステップは、ユーザからの1つ以上のキーワードを、ブランチ基準により同定されたクエリー・ノード(即ち、宛先ノード)からの予定のキーワードに比較するステップを含む。この方法は更に、ユーザからの1つ以上のキーワードがブランチ基準により同定されたクエリー・ノードからの予定のキーワードと一致することに応答して、クエリー・ノードのうち第1番目のクエリー・ノードからブランチ基準により同定されたクエリー・ノードへ進めるステップを含む。これとは独立して、この方法は、ユーザからの1つ以上のキーワードがクエリー・ツリーの少なくとも1つのクエリー・ノードからの予定のキーワードに一致し、そしてユーザからの1つ以上のキーワードがブランチ基準により同定されたクエリー・ノードからの予定のキーワードに一致しないことに応答して、クエリー・ノードのうち第1番目のクエリー・ノードからクエリー・ツリーの異なるクエリー・ノードへ進めるステップを含む。
更に本発明の実施例は、コンピュータ使用可能な媒体に記録されたコンピュータ使用可能なプログラム・コードを含むコンピュータ・プログラム製品を提供し、ここで、コンピュータ・プログラム製品は、クエリー・ツリーを設立するためのコンピュータ使用可能なプログラム・コードからなる。クエリー・ツリーは、複数のクエリー・ノード、複数のブランチ及び複数の情報ノードを含み、各ブランチは特定のクエリー・ノードに関連づけされているブランチ基準に対応しそして関連づけされているクエリー・ノードから他のクエリー・ノード若しくは情報ノードの1つへ進める。前述の実施例のように、各クエリー・ノードはプロンプトを提示し、そして各情報ノードはユーザにとって役に立つ情報を提供する。この製品は更に、各クエリー・ノードを1つ以上のキーワードに関連づけるためのコンピュータ使用可能なプログラム・コードを含む。コンピュータ・プログラム製品の他の実施例は、前述の方法の任意のステップを行わせるためのコンピュータ使用可能なプログラム・コードを含み得る。
図1は、クエリー・ツリーの1つの例を示す。この特定なクエリー・ツリー10は、スカウト・プログラムについての情報をユーザに与えるための、ボーイスカウト・オブ・アメリカのための仮定的なクエリー・ツリーである。ここで、ボーイスカウト・オブ・アメリカ、ボーイスカウト、カブスカウト、ベンチャリング及びナショナル・ジャンボリは、テキサス州アービングのボーイスカウト・オブ・アメリカ・コーポレーションの商標である。最初のクエリー・ノード100は、問い合わせ者の質問を例えばボーイスカウト若しくはカブスカウトのような特定なBSAプログラムに絞り込むことを試みさせるプロンプトを与えるが、ベンチャリング等についての質問を同定するように構成され得る。例えば、“ボーイスカウト?”若しくは“あなたはボーイスカウト・プログラムについての質問を有しますか?”のようなクエリー・ノード100のプロンプトに対する肯定的応答は、宛先ノード101へ進め、これに対して、否定的応答はクエリー・ノード110へ進める。もしも肯定的なブランチ基準がノード101へ進めるならば、このノード101が新たな現ノードとなり、ナショナル・ジャンボリ(ボーイスカウトのイベント)に関するプロンプトを提示する。これとは逆に、もしも否定的なブランチ基準がノード110へ進めるならば、次いでこのノード110が新たな現ノードとなりそして“あなたはカブスカウト・プログラムに関する質問を有しますか?”というプロンプトを提示する。幾つかの質問ノード101,102及び103は、ボーイスカウト・プログラムに対して非常に特定なものであり、これらは他の質問ノードへ導き、そして最終的にはユーザに情報若しくはコンテンツを与える情報ノードに到達する。ボーイスカウト活動に関する情報ノードは図1において文字A,B,C及びDが記入された楕円形として示されている。他のクエリー・ノード及びユーザの応答は、BSAのもとでの他のプログラムに関する情報ノードE,F及びGにブランチする。説明中の例では、質問に対する応答としてイエス又はノーだけを示しているが、本発明は、それぞれのブランチ基準を有する複数のブランチを行う1つ以上の質問ノードを使用することを妨げるものではない。
クエリー・ツリーを使用する間に生じ得る問題は、幾人かのユーザが質問することにおいて使用されている専門用語になじみがなく、又は正しい答えを与えるのに十分な背景知識若しくは経験を有していないことである。例えば、ウェベロス(Webelos)というカブスカウトに属している今5年生である男の子の祖母から、彼女の孫はどのようなユニフォームを着なければならないかという問い合わせがなされることが予測される。“ボーイスカウト・プログラムについての質問がありますか?”という第1番目の質問がなされると、祖母は、カブスカウトとボーイスカウトとを混同する一般的な誤りをしがちである。特に、組織の名称がボーイスカウト・オブ・アメリカであるので、彼女は、この質問に対して“イエス”と応答しがちである。しかしながら、これは有効ではあるが間違った応答であり、図1に示すように、クエリー・ツリー10の左側に下がるように進行してしまい、その結果ユーザは、この祖母が探している情報を与えるクエリー・ノード110,111若しくは情報ノードEに全く到達できなくなる。結果として、問い合わせに無駄な時間を浪費し、そして更に知力のある(従ってコストがかかる)高いレベルのサポートに対する要求が増大する。
図2は、情報ノードのそれぞれにキーワードが関連づけされているクエリー・ツリー10を示す。これらのキーワードは例えば、情報ノードA乃至Gのそれぞれの情報若しくは内容の中に見出される若しくは、これらの情報若しくは内容に関連する名詞及び形容詞である。
図3は、各クエリー・ノードに関連づけられそして、クエリー・ツリーに沿うユーザの進行を正当化し若しくは再指向するのに使用されるキーワードを示したクエリー・ツリー10を示す。各情報ノードA乃至Gからのキーワードは、各クエリー・ノードが末端の全ての情報ノードのキーワードに関連づけされるように、ツリーをさかのぼって伝播される。
各クエリー・ノードにブランチ基準及びキーワードが関連づけされているクエリー・ツリーを用意すると、クエリー・ツリー・システム若しくはソフトウエアは、ユーザ・セッションを開始してユーザ・インターフェースにプロンプトを提示しそして応答を受けとるように準備される。或る所定のプロンプトに対して受けとられたユーザの応答は、適切な宛先ノードを決定するのに使用され得るブランチ基準及び任意のユーザのキーワード(ブランチ基準以外の)についてのユーザの選択を同定するために分析される。キーワードは、自由形式のユーザの応答から分析され、又はこのキーワードがユーザの必要性に関する重要な詳細を表すと信じるコール・ハンドラ及びユーザにより入力される。
例えば図3を参照すると、彼女(祖母)の問い合わせがボーイスカウト・プログラムに関するものであったかどうかに関するクエリー・ノード100のプロンプトに対する応答“イエス”が得られた後、クエリー・ツリーはクエリー・ノード101に進み、ここで祖母は“あなたはナショナル・ジャンボリィについて問い合わせしていますか?”というプロンプトを受けとる。もしも祖母からの応答が、“いいえ、私は私の孫がウェベロス デン(活動単位)のカーキ色のシャツきることができるかどうかを知りたい?”ということであったならば、この応答は、ブランチ基準120に一致する“いいえ”並びにユーザ・キーワードとしての“シャツ”、“カーキ色”、“ウェベロス”及び“デン(活動単位)”を同定するために分析されることができる。次いで、この方法は、ユーザのこれらのキーワードを、ブランチ基準120により同定された宛先ノード(ノード102)に関連づけされているキーワード122と比較する。ユーザの応答内の1つ以上のキーワードが宛先ノードに関連づけされているキーワードに一致するならば、この宛先ノードに向かう進行が正当化(有効化)される。
本明細書で説明するように他のテスト及び比較が行われ得る。もしもユーザの応答内のキーワードが、現ノード、若しくはこの現ノードに近接する他のノードに関連づけされるキーワードと一致しないならば、ユーザの応答のキーワードは無関係でありそしてこのクエリー・ツリー内を通る進行に影響を与えないものと見なされる。宛先ノードに関連しないが、現ノード若しくは現ノードに近接するノードに関連するキーワードは、クエリー・ツリー内での進行が適切に行われていないことを示す。
本例を続けて説明すると、クエリー・ノード101のプロンプトに対する祖母の否定的応答は、ノード102を宛先ノードとして同定するブランチ基準120と一致する。しかしながら本方法は、キーワード“シャツ”、“カーキ色”、“ウェベロス”及び“デン(活動単位)”を種々なクエリー・ノードに関連するキーワードと比較する。キーワード“シャツ”は宛先ノード102に関連づけされておらず(即ち、“シャツ”はキーワード122に一致しない)、“シャツ”は宛先ノード102に近接するノードのどれにも関連づけられていない。ユーザのキーワード“シャツ”は、クエリー・ツリーのどのノードにも関連づけられていないので、これは無関係と見なされる。
キーワード同士を比較するこのプロセスは、宛先ノード102に関連づけされているワード“カーキ色”(このキーワードは情報ノードCにおけるボーイスカウトのユニフォームついての検討から生じた)に対して繰り返される。このワードは又、カブスカウトのユニフォームの検討から生じるこのクエリー・ツリーの右側にあることに注目されたい(具体的にいうと、ノードEのウェベロスのユニフォーム、但しこのレベルまで詳細に図示されていない)。このキーワードはツリーの他の場所で見出されるがこのキーワードが宛先ノード102に取り付けられていることが見出されたので、本方法は、キーワード“カーキ色”が関連性があると判断するが、このクエリー・ツリー内の正しくない進行を示さない。
キーワードを比較するプロセスは、ユーザのキーワード“ウェベロス”及び“デン(活動単位)”に対してあと2回繰り返される。両方の場合、本方法は、キーワードが宛先ノード102に関連づけられていないが、近接ノード(ノード100)に関連づけされていることを調べる。このことは、クエリー・ツリーが適切に進行されなかったことを示す。このクエリー・ツリーを逆方向に辿って到達した最初のクエリー・ノード100にこれらのキーワードが最初にあったということは、進行が迷ったということの指示である。
クエリー・ツリーが間違った方法で進行されたことが見出されると、正しい追跡の仕方に進行を戻すための多数の方法が使用され得る。最初の例として、本方法は、このセッションの間のユーザの応答がエラーを含んでいるかも知れないと言うステーツメントを与え、そして、現ノードに関連するプロンプトを繰り返す。これの代わりに、本方法は、更に詳細なプロンプト若しくはプロンプトの代替バージョンを提示することができる。これらの更に詳細なプロンプト若しくはプロンプトの代替バージョンは、これらの必要とされるときに使用されるようにこのクエリー・ノードに関連して記憶され得る。
本例においては、進行がノード100において道に迷ったかも知れないことを検出した後に、本方法は、ノード100に進行し、そして“私は、我々がボーイスカウトについての質問に対して間違って答えた原因(指示)を探しています。あなたのお孫さんが少なくとも11歳若しくは6年生又はこれ以上であることを確認して下さい。”という代替的なプロンプトを提示する。もしも祖母の応答が“ノー”であるならば、彼女の孫は4年生であり、次いで、クエリー・ノード100に関連する否定的ブランチ基準は、宛先ノード(ここではノード110)に進行する。
新たな現ノードとしてのノード110に進むと、本方法は、この案内を有効化するために、ノード110に関連する更に詳細なプロンプト“あなたのお孫さんは、タイガーカブ、カブスカウト、若しくはウェベロス・スカウトですか?”を提示する。
新たなユーザ・セッションにおいて、第2のユーザは、最初のクエリー・ノード100のプロンプトに対して“イエス”と応答し、次いでクエリー・ノード101のナショナル・ジャンボリィに関するプロンプトに応答して、“イエス、これは今年再びバージニアで行われるのですか?”を入力する。本方法は、ユーザの応答の“イエス”をブランチ基準としてそして“バージニア”をキーワードとして同定する。ブランチ基準“イエス”はノードAへの進行を示し、そして“バージニア”は宛先ノード(即ち情報ノードA)に関連づけされるキーワードと一致するので、ブランチ基準に一致するノードAへの進行は正当化(有効化)される。本方法は、ユーザにナショナル・ジャンボリィについての情報を与えるために、ノード101からの“イエス”ブランチをノードAに進めた。
図4及び図5は、図3のクエリー・ツリーを規定する表若しくはデータベースの1つの実施例を示す。この実施例において、図4の表は、クエリー・ノードを規定し、そして図5は情報ノードを規定する。図4において、各クエリー・ノードには1行が割り当てられており、この1行は、クエリー・ノード識別子(ID)、プロンプト、ブランチ1基準、これに対応する宛先ノードID、ブランチ2基準、これに対応する宛先ID、及び関連付けられているキーワードのリストを含む。図5において各情報ノードには1行が割り当てられており、そしてこの1行は、情報ノード識別符号(ID),ユーザに取って役にたつ情報及び情報から生じる自由選択のキーワードを含む。これらの2つの表は、クエリー・ツリーを規定するために共に働き、ここで、或るブランチ基準は、情報ノードを同定する宛先ノードIDを参照する。更に、情報ノードのキーワードは、この情報ノードからクエリー・ツリーをさかのぼる経路に沿う各クエリー・ノードのキーワードと同じである。例えば、クエリー・ノード101は、情報ノードAへの移動を指し示すブランチ基準1を有するので、図5の情報ノードAに関連づけされているキーワードは、クエリー・ノード101に関連づけられている。次いで、これらのキーワードは更に、クエリー・ノード100にも関連づけされている、その理由は、クエリー・ノード100がクエリー・ノード101への移動を指し示すブランチ基準1を有するからである。関連性のこのプロセスは、各クエリー・ノードに関連するキーワードが図4の表の右側の列に示されているように、情報ノード毎に行われる。
図4の表の各記録は、追加のブランチ基準及び対応する宛先ノードIDのための追加の列を含むことができ、従ってクエリー・ノードは任意の数の方向にブランチすることができる。更に、各記録は、本明細書で説明する他の実施例を実現するために、プロンプトの更に詳細なバージョン、プロンプトの代替的はバージョン等を含んでいる。又、2つの表は組み合わされることができる。更に、情報ノードは、例えばユーザが更なる情報を取得するためにこのクエリー・ツリーの最上部に戻ることを望んでいるか否かをユーザにプロンプトする(促す)ために、情報ノード自身のブランチ基準及び対応する宛先ノードIDを含むことができる。
図6は、クエリー・ツリーを構築するための方法の1つの実施例のフローチャートである。ステップ22において、クエリー・ツリーの構築を開始することを決定した後に、クエリー・ツリーを介して使用されるべき情報がステップ24において同定されねばならない。情報の範囲が、クエリー・ツリーの複雑性を決定する。ステップ26において、情報は、情報ノード又は記録を設立するために、特定な事柄(トピック)に関する小さなステートメント(記述)に分割される。情報の範囲は、ユーザがそれについて質問できるように絞られた事柄について完全であることが望ましい。各情報ノードからのキーワードは、ステップ28において同定される。
ステップ30において、クエリー・ツリーのデザイナ若しくはプログラマは、ユーザが所望の情報ノードを選択できるように導く質問を決定し、そしてこれらの質問のそれぞれをクエリー・ノード又は記録に関連づける。次いで・ステップ32において、各クエリー・ノードが同定されたキーワードに関連づけされ、そしてこれらのキーワードは各情報ノードからこのクエリー・ツリーを上方に辿って伝播される。ブランチ基準はステップ34において決定され、これがもしもユーザからの応答で同定されるならば、これはこのクエリー・ツリーを進めるために宛先ノード(クエリー・ノード若しくは情報ノード)を更に同定する。
図7,図8及び図9は、クエリー・ツリーを働かせるための方法40の1つの実施例のフローチャートを示す。ステップ42において、例えばコンピュータ・システムは、ユーザがクエリー・ツリーへのアクセスを試みているかを監視し、そしてステップ44において、ユーザがこのクエリー・ツリーのユーザ・セッションを開始することを許可する。ステップ46は、クエリー・ツリーを初期クエリー・ノードにセットし、ここで、初期クエリー・ノードとは、代表的にはこのクエリー・ツリーの最も高い位置にあるノードであるが、以前のユーザ・セッションからこのクエリー・ツリーを辿った進行状態を追跡し且つ記憶しているユーザ・アカウントを有するユーザが最後に訪れたノードであってもよい。次いで本方法は、ステップ48において現クエリー・ノードに関連する質問をユーザに提示し(プロンプトし)、ステップ50において、このプロンプトに対するユーザの応答を受けとり、ステップ52においてユーザの応答に含まれるブランチ基準を同定し、ステップ54において現ノードに対する同定されたブランチ基準に関連する宛先ノードをルックアップし(調べ)、そしてステップ56において宛先ノードに関連するキーワードをルックアップする(調べる)。
ステップ58において、ユーザの応答が何らかのキーワードを含んでいるか否かを調べる。もしもユーザの応答がキーワードを含んでいるならば、ステップ60(図8)に進み、ここでユーザの応答から得られたキーワードがいずれかのクエリー・ノードに関連づけされているキーワードと一致するか否かが調べられる(判定される)。もしも一致が検出されなければ、ステップ62において、キーワードが無関係であると見なされる。もしも一致するキーワードがあるならば、ステップ64において、ユーザの応答内から得られたキーワードが宛先ノードに関連づけられているキーワードと一致するか否かが調べられる。もしも一致するキーワードがブランチ基準により同定された宛先ノードに関連づけされているならば、ステップ66において、このキーワードは宛先ノードへの進行を正当化する。しかしながら、もしも一致するキーワードが宛先ノードに関連づけられていないならば(即ち、これがクエリー・ツリーのより高いノードだけに関連づけられているならば)、ステップ68において、このキーワードは、クエリー・ツリーの正しくない進行を示す。ステップ70において、ユーザの応答内に他のキーワードが含まれているならば、このキーワードは、ステップ60乃至68に従って分析される。ユーザの応答内の全てのキーワードが分析され終えると、本方法は、ステップ72に進む。
ステップ72において、宛先ノードへの進行を正当化したキーワードよりも正しくない進行を示したキーワードのほうが多いか否かが調べられる。もしもステップ72の答えがイエスであるならば、次いでステップ74において、本方法は、可能性のある正しくない可能性がある進行を処理するために1つ以上のステップを行う。これらのステップはユーザに対して警告メッセージを与え、そして(1)再び質問(プロンプト)する、(2)更に詳細又は代替の質問をする、若しくは(3)正しくない進行を示すキーワードに関連するクエリー・ノードに到達するまでクエリー・ツリー内の上方に進行する。これの代わりに、本方法は、第1回目の繰り返しの間にオプション即ちステップ(1)を行い、第2回目の繰り返しの間にオプション即ちステップ(2)を行い、そして第3回目の繰り返しの間にオプション即ちステップ(3)を行う。ステップ74におけるこれらのオプションのいずれかに続いて、本方法はステップ48に戻ってユーザにプロンプトを提示する。
正しくない可能性がある進行を同定するためにステップ72において使用され得る基準の種々な変形がある。例えば、代替的な実施例は、正しくない進行を示すキーワードがあるか否かを調べる。本発明の範囲内の他の基準は、本発明を理解した当業者により明らかであろう。更に、本発明は、進行を正当化するキーワードが完全に無視され、正しくない進行を示す若しくは正しくない進行を示すキーワードよりも高い重要性を示すオフセット・キーワードに適用される。同様に、正しくない進行を示すキーワードは、正しくない進行を同定する単独のもの、若しくは正しくない進行を同定する単なる1つの要因であり得る。更に、どのようなキーワードの使用をも全く要求することなくユーザにクエリー・ツリーを下方に辿らせるのはブランチ基準である。
しかしながら、本発明の実施例を更に説明すると、ステップ72において、宛先ノードへの進行を正当化したキーワードよりも正しくない進行を示したキーワードが多くないならば、又は、ステップ58においてユーザの応答がキーワードを含んでいないと判定されたならば、本方法はステップ76(図9)に進み、そして宛先ノードへ進行する。ステップ78において、もしも宛先ノードが情報ノードであると判定されると、ステップ80においてユーザに情報が与えられる。もしも宛先ノードが情報ノードでないならば、本発明の方法は、先に同定された宛先ノードに関連するプロンプトであるプロンプトを更にユーザに提示するためにステップ48に戻る。しかしながら、本発明の方法40のフローチャートを通る次のパス(動作)の間、先に同定された宛先ノードは、今や現ノードとして選定される。
ステップ80において、ユーザに情報を与えた後、ステップ82において、ユーザが更に他の情報を取得するためのオプションがユーザに提示される。もしもユーザが更に他の情報を取得することを望むならば、動作はステップ46に戻り、ユーザは最初のクエリー・ノードにおいて、クエリー・ツリーの進行を開始する。もしもユーザ型の情報を必要としないならば、ユーザ・セッションはステップ84で終了する。
当業者ならば、本発明はシステム、方法若しくはコンピュータ・プログラム製品として実施化され得ることを理解されるであろう。従って、本発明は、本明細書でそれぞれ“回路”、“モジュール”又は“システム”と呼ぶ、全体的にハードウエアの実施例、全体的にソフトウエアの実施例(ファームウエア、常駐ソフトウエア、マイクロコード等を含む)、又はソフトウエア態様及びハードウエア態様の組み合わせである実施例の形を取ることができる。更に、本発明は、記録媒体にコンピュータ使用可能なプログラム・コードが記録されているコンピュータ・プログラム製品の形を取り得る。
コンピュータ使用可能な媒体若しくはコンピュータ読み取り可能媒体のいずれか若しくはこれらの組み合わせが使用され得る。コンピュータ使用可能な媒体若しくはコンピュータ読み取り可能な媒体は例えば、電子システム、装置若しくはデバイス、磁気システム、装置若しくはデバイス、光学的システム、装置若しくはデバイス、電磁気システム、装置若しくはデバイス、赤外線システム、装置若しくはデバイス又は半導体システム、装置若しくはデバイスである。コンピュータ読み取り可能な媒体の具体的な例は次を含むがこれらに限定されない。即ち、1つ以上のワイヤを含む電気的接続、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM),読み取り専用メモリ(ROM)、消去可能で且つプログラム可能な読み取り専用メモリ(EPROM若しくはフラッシュ・メモリ)、光ファイバ、ポータブル・コンパクト・ディスク読み取り専用メモリ(CD−ROM)光学的記憶装置、インターネット若しくはイントラネットをサポートするような伝送媒体、又は磁気記憶デバイスである。コンピュータ使用可能な媒体若しくはコンピュータ読み取り可能な媒体は、プログラムが印刷されている紙若しくは他の適切な媒体でもよい。このプログラムは、紙若しくは他の媒体を例えば光学的に走査することにより電子的に捕捉され、次いで、コンパイルされ、翻訳され、若しくは必要ならば適切な方法で処理され、次いでコンピュータ・メモリに記憶される。本明細書においては、コンピュータ使用可能な媒体若しくはコンピュータ読み取り可能な媒体は、命令実効システム、装置若しくはデバイスにより若しくはこれらに関連する使用のためにプログラムを記憶若しくは含むことができる媒体を意味する。コンピュータ使用可能なプログラム・コードは、無線、有線、光学ファイバ、RF等を含む適切な媒体を使用して伝送され得る。
本発明の動作を実行するコンピュータ・プログラム・コードは、例えばJava,Smalltalk,C++等のようなオブジェクト指向のプログラミング言語、及び例えば“C”プログラミング言語若しくは他の同様なプログラミング言語のような標準的な処理プログラミング言語を含む1つ以上のプログラミング言語の組み合わせで記述されることができる。プログラム・コードは、ユーザのコンピュータ上で全体的に、ユーザのコンピュータ上でスタンド・アロン・ソフトウエア・パッケージとして部分的に、ユーザのコンピュータ上で部分的に、遠隔コンピュータ上で部分的に、そして遠隔コンピュータ若しくはサーバ上で全体的に実行する。後者の場合、遠隔コンピュータは、ローカル・エリア・ネットワーク(LAN)若しくはワイド・エリア・ネットワーク(WAN)を含む任意の型のメットワークを介してユーザのコンピュータに接続され、又接続は(例えばインターネット・サービス・プロバイダを使用するインターネットを介して)外部コンピュータになされ得る。
本発明を、本発明の実施例に従う方法、装置(システム)及びコンピュータ・プログラム製品についてのフローチャート、ブロック図を参照して説明した。フローチャートの各ブロック又はブロック図あるいはその両方及びフローチャートの各ブロック及びブロック図の組み合わせは、コンピュータ・プログラム命令によりインプリメントされることができる。これらのコンピュータ・プログラム命令は、汎用コンピュータ、特殊目的コンピュータ若しくは他のプログラム可能なデータ処理装置のプロセッサに与えられ、その結果コンピュータ若しくは他のプログラム可能なデータ処理装置のプロセッサを介して実行する命令は、フローチャート若しくはブロック図内で指定される機能を実現する手段を生成する。
特定な態様で機能させるようにコンピュータ若しくは他のプログラム可能なデータ処理装置を指揮するこれらのコンピュータプログラム命令は、コンピュータ読み取り可能な媒体内に記憶されることができ、その結果コンピュータ読み取り可能な媒体に記憶された命令は、フォローチャート若しくはブロック図で指定された機能/動作をインプリメントする命令手段を含む製造体を生じる。
コンピュータ・プログラム命令は又、コンピュータ若しくは他のプログラム可能なデータ処理装置にロードされて、このコンピュータ若しくは他のプログラム可能なデータ処理装置において一連の動作ステップを実行させて、コンピュータ・インプリメントされたプロセスを生じ、その結果コンピュータ若しくは他のプログラム可能なデータ処理装置上で実行する命令は、フローチャート若しくはブロック図で指定された機能/動作を実現するプロセスを与える。
フローチャート及びブロック図は、本発明の種々は実施例に従うシステム、方法及びコンピュータ・プログラム製品のアーキテクチャ、機能及び動作を示す。これに関して、フローチャート若しくはブロック図の各ブロックは、指定された論理機能をインプリメントする1つ以上の実行可能な命令を構成するモジュール、セグメント若しくはコードの一部を表す。幾つかの代替的な実施例において、ブロック内に記載されて機能は図示の順序以外の順序で行われ得る。例えば、連続して示されている2つのブロックは、行われる機能に依存して、同時に行われてもよく又は逆の順序で行われ得る。ブロック図又はフローチャートあるいはその両方の各ブロック、並びにブロック図及びフローチャートの組み合わせの各ブロックは、指定された機能を行う特殊目的のハードウエア・ベースのシステム又は特殊目的ハードウエア及びコンピュータ命令の組み合わせによりインプリメントされることができる。
本発明について説明するために種々な実施例を説明したが、本発明はこれらに限定されるものではない。本発明の精神から逸脱することなく多くの変更及び修正が可能であることが当業者により理解されるであろう。説明した実施例は、本発明の原理を最もよく説明するように且つ当業者に本発明を理解させるためのものであって、これ以外の種々な変形及び修正が可能出ることが明らかである。

Claims (23)

  1. プロンプトをユーザに伝えるステップであって、前記プロンプトはクエリー・ツリーの現クエリー・ノードにより提示され、前記クエリー・ツリーは複数のクエリー・ノード、複数のブランチ及び複数の情報ノードを含み、前記ブランチのそれぞれは特定なクエリー・ノードに関連づけられたブランチ基準に対応しそして関連するクエリー・ノードから他のクエリー・ノード若しくは情報ノードの1つへの進行を指示し、各クエリー・ノードはプロンプトを提示しそして各情報ノードは前記ユーザにとって役に立つ情報を与え、前記クエリー・ノードのそれぞれは1つ以上のキーワードに関連づけられている、前記ステップと、
    前記プロンプトに対するユーザの応答を受けとるステップと、
    現クエリー・ノードからこれと異なる他のクエリー・ノード若しくは情報ノードの1つへ導く複数のブランチのうちの1つに対応するブランチ基準を同定するために前記ユーザの応答を分析するステップと、
    前記ユーザの応答からの1つ以上のキーワードを同定するために前記ユーザの応答を分析するステップと、
    前記ユーザの応答からのブランチ基準と前記ユーザの応答からの1つ以上のキーワード及び前記情報ノードに関連づけされているキーワードの比較とに基づいて前記クエリー・ツリー内の他のノードへ進めるステップとを含む、クエリー・ツリーを動作させる方法。
  2. 更に、前記ユーザの応答が前記クエリー・ノードから出るブランチに対応するブランチ基準を含むという判定に応答して、前記クエリー・ツリー内を現クエリー・ノードから宛先ノードへ進めるステップを含む、請求項1に記載の方法。
  3. 前記ユーザの応答からの1つ以上のキーワードが宛先ノードに関連づけられているキーワードに関連性があるという判断に応答して、前記宛先ノードへの進行を容認するステップを含む、請求項2に記載の方法。
  4. 前記ユーザの応答からの1つ以上のキーワードが前記宛先ノードに近接するクエリー・ノードに関連づけられているキーワードに関連性がないという判断に応答して前記宛先ノードへの進行を容認するステップを含む、請求項2に記載の方法。
  5. 更に、1つのセッションの間に各プロンプトに関連して受けとられた前記ユーザの応答を記憶するステップと、
    現プロンプトに対するユーザの応答が現クエリー・ノードよりも以前に辿ったクエリー・ノードに関連性があるキーワードを含むという判定に応答して前記以前に辿ったクエリー・ノードへ戻すステップとを含む、請求項1に記載の方法。
  6. 更に、前記宛先ノードに関連づけられたどのキーワードにも関連性がない1つ以上のキーワードを含むユーザの応答を受けとったことに応答して、現クエリー・ノードからのプロンプトを反復するステップを含む、請求項1に記載の方法。
  7. 現クエリー・ノードに関連づけられているキーワードよりも前記ユーザの応答内の1つ以上のキーワードに対してより関連性があると判定されたキーワードに関連づけられたクエリー・ノードへ進めるステップを含む、請求項1に記載の方法。
  8. 質問及び応答は、電話システム若しくはコンピュータ回路網を介して伝えられる、請求項1に記載の方法。
  9. 前記クエリー・ノードのそれぞれは、3つ以上にブランチするためのブランチ基準を含む、請求項1に記載の方法。
  10. それぞれが問い合わせ、ブランチ基準及び予定のキーワードを含む複数のクエリー・ノードを有するクエリー・ツリーを準備するステップと、
    複数のクエリー・ノードのうち第1番目のクエリー・ノードからの問い合わせに対してユーザが応答するようにプロンプトするステップと、
    前記問い合わせに対する前記ユーザの応答を受けとるステップと、
    ブランチ基準及びユーザからの1つ以上のキーワードを同定するために前記ユーザの応答を分析するステップと、
    前記ユーザからの1つ以上のキーワードを1つ以上のクエリー・ノードからの予定のキーワードに比較するステップとを含む、クエリー・ツリーを動作させる方法。
  11. 前記ユーザからの1つ以上のキーワードを1つ以上のクエリー・ノードからの予定のキーワードに比較するステップは、前記ユーザからの1つ以上のキーワードを、ブランチ基準により同定されたくエリー・ノードからの予定のキーワードに比較することを含む、請求項10に記載の方法。
  12. 更に、前記ユーザからの1つ以上のキーワードが前記ブランチ基準により同定されたクエリー・ノードからの前記予定のキーワードと一致することに応答して、前記複数のクエリー・ノードのうちの前記第1番目のクエリー・ノードから前記ブランチ基準により同定されたクエリー・ノードへ進めるステップを含む、請求項11に記載の方法。
  13. 更に、前記ユーザからの1つ以上のキーワードが前記クエリー・ツリーの少なくとも1つのクエリー・ノードからの予定のキーワードに一致し、そして前記ユーザからの1つ以上のキーワードが前記ブランチ基準により同定されたクエリー・ノードからの予定のキーワードに一致しないことに応答して、前記クエリー・ツリー内の前記複数のクエリー・ノードのうちの前記第1番目のクエリー・ノードから前記クエリー・ツリー内の他のクエリー・ノードへ進めるステップを含む、請求項10に記載の方法。
  14. クエリー・ツリーを動作させるプログラムであって、
    コンピュータに、
    クエリー・ツリーを設立する手順であって、前記クエリー・ツリーは、複数のクエリー・ノード、複数のブランチ及び複数の情報ノードを含み、前記ブランチのそれぞれは、特定なクエリー・ノードに関連づけられているブランチ基準に対応しそして関連するクエリー・ノードから他のクエリー・ノード若しくは情報ノードの1つへ導き、前記クエリー・ノードのそれぞれはプロンプトを提示しそして前記情報ノードのそれぞれは前記ユーザにとって役に立つ情報を与える、前記手順と、
    前記クエリー・ノードのそれぞれに1つ以上のキーワードを関連づけするステップとを実行させるためのプログラム。
  15. 更に、ユーザにプロンプトを伝える手順と、
    前記プロンプトに対する前記ユーザの応答を受けとる手順と、
    現クエリー・ノードから他の1つのクエリー・ノード若しくは情報ノードの1つへ導く複数のブランチのうちの1つに対応するブランチ基準を同定するために、前記ユーザの応答を分析する手順と、
    前記受けとられたユーザの応答内にある1つ以上のキーワードを同定するために前記ユーザの応答を分析する手順とを含む、請求項14に記載のプログラム。
  16. 更に、前記ユーザの応答からのブランチ基準と前記受けとられたユーザの応答内の1つ以上のキーワードを前記クエリー・ノードに関連づけられている1つ以上のキーワードとの比較に基づいて、前記クエリー・ツリー内の他のノードへ進める手順を含む、請求項15に記載のプログラム。
  17. 更に、前記ユーザの応答からの1つ以上のキーワードが宛先ノードに関連づけられているキーワードに対して関連性があるという判定に応答して、前記ブランチ基準に関連づけられている宛先ノードへ進める手順を含む、請求項16に記載のプログラム。
  18. 更に、前記ユーザの応答からの1つ以上のキーワードが前記宛先ノードに近接するクエリー・ノードに関連づけられているキーワードに対して関連性がないという判定に応答して、前記宛先ノードへの進行を許容する手順を含む、請求項16に記載のプログラム。
  19. 更に、ユーザ・セッションの間に各質問に関連して受けとられたユーザの応答のそれぞれを記憶する手順と、
    現プロンプトに対するユーザの応答が現クエリー・ノードよりも以前に辿ったクエリー・ノードに対して更に関連性があるキーワードを含むという判定に応答して、前記以前に辿ったクエリー・ノードに戻す手順とを含む、請求項16に記載のプログラム。
  20. 更に、前記クエリー・ノードに関連づけられているいずれのキーワードにも関連性がないキーワードを含むユーザの応答を受けとったことに応答して、現クエリー・ノードからのプロンプトを反復する手順を含む、請求項15に記載のプログラム。
  21. 更に、現クエリー・ノードに関連づけられているキーワードよりも前記ユーザの応答内の1つ以上のキーワードに対して更に関連性があると判定されたキーワードに関連づけられているクエリー・ノードへ進める手順を含む、請求項14に記載のプログラム。
  22. 前記プロンプトのそれぞれ及び前記応答のそれぞれは、電話システム、コンピュータ回路網若しくはこれらの組み合わせを介して伝えられる、請求項15に記載のプログラム。
  23. 前記クエリー・ノードの少なくとも1つは、3つ以上にブランチするためのブランチ基準を含む、請求項15に記載のプログラム。
JP2010118819A 2009-06-12 2010-05-24 クエリー・ツリーの動作を制御する方法及びプログラム Pending JP2010287224A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/483,620 US9286345B2 (en) 2009-06-12 2009-06-12 Query tree navigation

Publications (1)

Publication Number Publication Date
JP2010287224A true JP2010287224A (ja) 2010-12-24

Family

ID=43307250

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010118819A Pending JP2010287224A (ja) 2009-06-12 2010-05-24 クエリー・ツリーの動作を制御する方法及びプログラム

Country Status (4)

Country Link
US (2) US9286345B2 (ja)
JP (1) JP2010287224A (ja)
CN (1) CN101923565A (ja)
TW (1) TW201112023A (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9286345B2 (en) * 2009-06-12 2016-03-15 International Business Machines Corporation Query tree navigation
US8644854B2 (en) * 2009-12-03 2014-02-04 Osocad Remote Limited Liability Company System and method for processing enhanced data exchanged with an enhanced mobile station via a wireless connection
US20110179390A1 (en) * 2010-01-18 2011-07-21 Robert Paul Morris Methods, systems, and computer program products for traversing nodes in path on a display device
US9659063B2 (en) * 2010-12-17 2017-05-23 Software Ag Systems and/or methods for event stream deviation detection
EP2959405A4 (en) * 2013-02-19 2016-10-12 Google Inc RESEARCH BASED ON TREATMENT OF NATURAL LANGUAGE
CN103354044B (zh) * 2013-05-23 2017-04-12 深圳市有伴科技有限公司 用于电子终端的语音应用app中的互动方法及其产品
WO2015112066A1 (en) * 2014-01-24 2015-07-30 Telefonaktiebolaget L M Ericsson (Publ) Method and service center for assisting a customer to navigate a service
WO2015184186A1 (en) 2014-05-30 2015-12-03 Apple Inc. Multi-command single utterance input method
CN104836721A (zh) * 2015-03-27 2015-08-12 小米科技有限责任公司 群组会话消息提醒方法及装置
US20170169007A1 (en) * 2015-12-15 2017-06-15 Quixey, Inc. Graphical User Interface for Generating Structured Search Queries
US9792259B2 (en) 2015-12-17 2017-10-17 Software Ag Systems and/or methods for interactive exploration of dependencies in streaming data
US10437832B2 (en) * 2016-05-19 2019-10-08 Microsoft Technology Licensing, Llc Reconciling foreign key references and table security policies
US10437884B2 (en) * 2017-01-18 2019-10-08 Microsoft Technology Licensing, Llc Navigation of computer-navigable physical feature graph
JP6974073B2 (ja) * 2017-08-29 2021-12-01 京セラ株式会社 電子機器、充電台、コミュニケーションシステム、方法、およびプログラム
US11216431B2 (en) 2017-09-12 2022-01-04 Apple Inc. Providing a compact representation of tree structures
CN110019647B (zh) * 2017-10-25 2023-12-15 华为技术有限公司 一种关键词搜索方法、装置和搜索引擎
WO2019161229A1 (en) 2018-02-15 2019-08-22 DMAI, Inc. System and method for reconstructing unoccupied 3d space
WO2019161200A1 (en) * 2018-02-15 2019-08-22 DMAI, Inc. System and method for conversational agent via adaptive caching of dialogue tree
WO2020103136A1 (en) * 2018-11-23 2020-05-28 Guangxi Liugong Machinery Co., Ltd. Planetary gear module for swing drive
WO2021227059A1 (zh) * 2020-05-15 2021-11-18 深圳市世强元件网络有限公司 一种基于多叉树的搜索词推荐方法及系统
CN112905871B (zh) * 2021-03-29 2023-05-30 中国平安人寿保险股份有限公司 热点关键词推荐方法、装置、终端及存储介质
CN114186571B (zh) * 2021-11-08 2023-06-09 南京信息工程大学 一种基于特征组的查询树多标签并发识别方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04321133A (ja) * 1991-04-22 1992-11-11 Mitsubishi Electric Corp 故障診断装置
JP2000267853A (ja) * 1999-03-16 2000-09-29 Mitsubishi Electric Corp 事例検索方法および事例検索装置
JP2004310692A (ja) * 2003-04-10 2004-11-04 Mitsubishi Electric Corp 障害解決支援装置
JP2008293275A (ja) * 2007-05-24 2008-12-04 Toshiba Corp 優先質問出力装置およびプログラム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5301314A (en) * 1991-08-05 1994-04-05 Answer Computer, Inc. Computer-aided customer support system with bubble-up
JPH05324726A (ja) * 1992-05-25 1993-12-07 Fujitsu Ltd 文書データ分類装置及び文書分類機能構築装置
US5737393A (en) * 1995-07-31 1998-04-07 Ast Research, Inc. Script-based interactive voice mail and voice response system
US7609829B2 (en) * 2001-07-03 2009-10-27 Apptera, Inc. Multi-platform capable inference engine and universal grammar language adapter for intelligent voice application execution
US20030115289A1 (en) * 2001-12-14 2003-06-19 Garry Chinn Navigation in a voice recognition system
CN1359227A (zh) * 2002-01-17 2002-07-17 阮闯 一种全球旅游信息终端导航方法
US7062504B2 (en) * 2002-04-25 2006-06-13 The Regents Of The University Of California Creating ensembles of oblique decision trees with evolutionary algorithms and sampling
US6999958B2 (en) * 2002-06-07 2006-02-14 International Business Machines Corporation Runtime query optimization for dynamically selecting from multiple plans in a query based upon runtime-evaluated performance criterion
US7231379B2 (en) * 2002-11-19 2007-06-12 Noema, Inc. Navigation in a hierarchical structured transaction processing system
US7130391B2 (en) * 2004-01-07 2006-10-31 International Business Machines Corporation Automated method and system for interacting with telephone call trees
US7289985B2 (en) * 2004-04-15 2007-10-30 Microsoft Corporation Enhanced document retrieval
US7346609B2 (en) * 2004-11-16 2008-03-18 International Business Machines Corporation Streaming XPath algorithm for XPath value index key generation
US8433711B2 (en) * 2005-09-09 2013-04-30 Kang Jo Mgmt. Limited Liability Company System and method for networked decision making support
US20090097634A1 (en) * 2007-10-16 2009-04-16 Ullas Balan Nambiar Method and System for Call Processing
US9286345B2 (en) * 2009-06-12 2016-03-15 International Business Machines Corporation Query tree navigation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04321133A (ja) * 1991-04-22 1992-11-11 Mitsubishi Electric Corp 故障診断装置
JP2000267853A (ja) * 1999-03-16 2000-09-29 Mitsubishi Electric Corp 事例検索方法および事例検索装置
JP2004310692A (ja) * 2003-04-10 2004-11-04 Mitsubishi Electric Corp 障害解決支援装置
JP2008293275A (ja) * 2007-05-24 2008-12-04 Toshiba Corp 優先質問出力装置およびプログラム

Also Published As

Publication number Publication date
US10031983B2 (en) 2018-07-24
TW201112023A (en) 2011-04-01
US9286345B2 (en) 2016-03-15
US20100318536A1 (en) 2010-12-16
CN101923565A (zh) 2010-12-22
US20170024489A1 (en) 2017-01-26

Similar Documents

Publication Publication Date Title
JP2010287224A (ja) クエリー・ツリーの動作を制御する方法及びプログラム
US7231379B2 (en) Navigation in a hierarchical structured transaction processing system
Vivacqua et al. Agents to assist in finding help
US20070292833A1 (en) System and Method for Creating, Executing and Searching through a form of Active Web-Based Content
CN108509591B (zh) 信息问答交互方法及系统、存储介质、终端、智能知识库
CN102144228A (zh) 根据输入字符序列的资源定位符建议
EP1994476A1 (en) Adaptive semantic platform architecture
KR102484565B1 (ko) 상담원 지원 방법 및 그 연산 장치
Martens et al. Extracting and analyzing context information in user-support conversations on twitter
Shahzad et al. Factors affecting the adoption of integrated semantic digital libraries (SDLs): a systematic review
JP2006268690A (ja) Faq提示・改善方法、faq提示・改善装置およびfaq提示・改善プログラム
US7769777B2 (en) Apparatus and method for identifying unknown word based on a definition
CN113190692B (zh) 一种知识图谱的自适应检索方法、系统及装置
JP2017015874A (ja) 文章読解支援装置、並びに、注釈データ作成装置、注釈データ作成方法及び注釈データ作成プログラム
JP2020123371A (ja) 質問応答システム、質問受付回答システム、第1次回答システム、及びそれらを用いた質問応答方法
JP2005346229A (ja) 学習項目提案方法及び学習項目提案装置
JP2006023968A (ja) 固有表現抽出方法および装置並びにそれらに用いるプログラム
JP7188879B2 (ja) 提供装置、提供方法及び提供プログラム
Lucarelli et al. Florence–Washington Round Trip: Ways and Intersections between Semantic Indexing Tools in Different Languages
Ceaparu et al. Finding governmental statistical data on the Web: A study of categorically organized links for the FedStats topics page
Thomason Continually improving grounded natural language understanding through human-robot dialog
JP2006065651A (ja) 商標称呼検索プログラム、商標称呼検索装置及び商標称呼検索方法
JP2005134691A (ja) ネットワークを経由した教育システムの自動採点装置
JP2022126499A (ja) 提供装置、提供方法および提供プログラム
JP2011008538A (ja) データ出力装置、表示装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131112

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140204

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140207

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140513