JPH1040109A - 自動アシスタントの信頼性を向上させる方法 - Google Patents

自動アシスタントの信頼性を向上させる方法

Info

Publication number
JPH1040109A
JPH1040109A JP9045161A JP4516197A JPH1040109A JP H1040109 A JPH1040109 A JP H1040109A JP 9045161 A JP9045161 A JP 9045161A JP 4516197 A JP4516197 A JP 4516197A JP H1040109 A JPH1040109 A JP H1040109A
Authority
JP
Japan
Prior art keywords
behavior
situation
activity
calculated
generalization
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
JP9045161A
Other languages
English (en)
Inventor
Robert J Hall
ジェイ.ホール ロバート
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.)
Nokia of America Corp
Original Assignee
Lucent Technologies Inc
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 Lucent Technologies Inc filed Critical Lucent Technologies Inc
Publication of JPH1040109A publication Critical patent/JPH1040109A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/009Trust

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Software Systems (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Abstract

(57)【要約】 【課題】 自動アシスタントの信頼性を増加し、信頼さ
れてないあるいは部分的にしか信頼されないビヘービア
の自主的実行の確認技術を提供する。 【解決手段】 本発明によれば、信頼できないあるいは
部分的にしか信頼できないビヘービアは、監視実行モー
ドで自動アシスタントにより実行される。このビヘービ
アの実行は、一般的信頼状況/行為対に従って自主的に
行われる。信頼された状況/行為対の組は、トラストラ
イブラリに蓄積され、アシスタントによりアクセスされ
る。信頼されない状況に遭遇すると、所定の臨時のビヘ
ービアあるいは所定の応答が実行され、例えばビヘービ
アを安全に中止するか、あるいはビヘービアに取られる
次の活動が受け入れ可能か否かをユーザに問い合わせ
る。さらに信頼されない状況に遭遇すると、その状況の
記録が取られ、確実シナリオ一般化が形成され、状況オ
ンに対し一般的状況/活動対が規定される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、自動アシスタント
に関し、特にこのような自動アシスタントのユーザによ
り規定された目標(ゴール)と優先度に適合して実行す
る際に、この自動アシスタントの信頼性を認証する方法
に関する。
【0002】
【従来の技術】技術的進歩により、以前は人間のみが実
行していたタスクを実行するソフトウェアツールの開発
が発展してきた。このようなソフトウェアツールの目的
は、人間に低レベルの些細なことを実行させないことに
よりタスクを効率よく実行することである。ますます個
人のビジネスおよび/または個人的活動は、コンピュー
タネットワークの情報環境下で実行されつつある。この
ような環境により、人間の代わりにコンピュータにより
多くのタスクを任せる機会が増えてきている。
【0003】通常多くの市販のソフトウェアツールは、
新たな機能を提供することができるが、それらのユーザ
に対し、細かな活動をさせないようにすることはできな
い。それどころかユーザは、しばしば数百もの機能を有
する様々なソフトウェアパッケージを用いてタスクを実
行する必要がある。さらにまたユーザは、これらのソフ
トウェアパッケージの特徴を手動で集積して所望のタス
ク、例えばファイルのセービング,カッティングとペー
スト,マシン間でのファイルの転送等の所望のタスクを
実行しなければならない。この作業の複雑さおよび人間
の介在を必要とすることにより、効率の一部失われるこ
とは、コンピュータ化が増大することにより引き起こさ
れたものである。
【0004】人間の介在を避けるために、コンピュータ
環境は低レベルで複雑な作業をユーザにさせないように
しながら、世俗的で様々な考え方の混合したタスクを自
動化するために、特別なインタフェースを有するように
設計されてきた。このようなインタフェースは、自動ア
シスタント「automated assistants」として知られてい
る。
【0005】人間のアシスタントの代わりをするため
に、自動アシスタントは、最低でも以下のことを処理で
きなければならない。(1)自動化−ユーザがほとんど
あるいは全く介在することなしにユーザのタスクを実行
する能力、(2)信頼性即ち認証−ユーザの目標と優先
度に適合するような方法でタスクを実行する能力、
(3)拡張性−アシスタントが新たな考え方の混合した
タスクをいかに実行するかを見いだす際にその負荷の一
部を担当しながら新たな考え方の混合したタスクを任せ
ることのできる能力。
【0006】自動アシスタントが所定のタスクを実行で
きるような知識あるいはプログラムコードは、ビヘービ
ア「behavior(行為)」として知られている。これまで
にも沢山の作業がタスクの自動化と自動アシスタントの
拡張的特性を実行するのに費やされてきた。しかし、ア
シスタントの信頼性を増加させること、特に所定のタス
クに対してアシスタントのビヘービアの信頼性を増加さ
せる技術の開発には余り注意は向けられていなかった。
その理由は、自動アシスタントのビヘービアは、発行さ
れた仕様と問題を報告するユーザの大きなツールを有す
る市販のソフトウェアパッケージとは異なり、通常様々
な考えが混在し、そしてサポートされていないからであ
る。
【0007】エンドユーザ環境下で用いられる従来の技
術は、自動アシスタントの拡張性について取り組んでい
る。この技術によれば、タスクドメインは形式化され、
その結果所望のプログラムは、ドメイン関連のビルディ
ングブロックの単純な組み合わせで表現することができ
る。このようなエンドユーザのプログラミング環境は、
Eisenberg et al.著の「Programmable Design Environm
ents: Integrating End-User Programming With Domain
-Oriented Assistance, in Proc. 1994 ACM Conf. on H
uman Factors in Computing Systems (1994)」と、Smit
h et al.著の「KIDSIM: Programming Agents Without A
Programming Language, Comm. ACM, 37(7), (1994)」
に記載されている。
【0008】この「タスクの形式化」のアプローチにお
いては、環境の形成者は、タスクドメインを形式化して
これが有効化する、そしてその結果信頼することが比較
的容易なプログラムをクリアすることになる。しかし、
このアプローチが成功するためには、ビルディングブロ
ックの完全性と正確さと組立易さが必要となる。さらに
このような環境は、大きな開発努力を必要として、狭い
ドメインに力を集中しなければならない。このためタス
クドメインの形式化は、信頼性を提供することはできる
が、一般的なアシスタント様のインタフェースの拡張性
を制限してしまい、このため大きな開発努力を必要とす
る。
【0009】自動アシスタントの拡張性に向けられた別
の技術は、プログラミングバイデモンストレーション
「programming by demonstration」である。このような
技術は、A. Cypher 著の「EAGER: Programming Repetit
ive Tasks By Example, in Proc. 1991 ACM Conf. on H
uman Factors in Computing Systems, (1991)」 に記載
されている。このプログラミングバイデモンストレーシ
ョンの手法においては、タスク用のプログラムは特定の
例示入力上でタスクを実行する際に、ユーザの動作を観
測し、その動作から直接一般化することによりアシスタ
ントにより構成される。このためユーザは、同一(ある
いはほぼ類似)の入力の組が与えられたときに正確に行
動するためにアシスタントを信頼することができる。し
かし、この認識可能な入力の組に含まれないどの様ない
かなる入力も、これにエラーを引き起こす潜在的なソー
ス(源)を表すことになる。
【0010】プログラミングバイデモンストレーション
への関連アプローチは、ラーニングインタフェースエー
ジェント「learning interface agents」 技術であり、
これは Maes 著の「Agents That Reduce Work and Info
rmation Overload, Comm. ACM, 37(7) (1994)」 (以下
「Maes」と称する)と、Mitchell et al. 著の「Experi
ence With a Learning Personal Assistant, Comm. AC
M, 37(7), (1994)」 に記載されている。このラーニン
グインタフェースエージェント技術によれば、自動アシ
スタントは、ユーザの動作を監視することにより、タス
クの発見的学習法(task heuristics) を一般化する。
しかし、プログラミングバイデモンストレーションの技
法と同様に、この技法には、前述したような「有効でな
い一般化」という潜在的問題がある。
【0011】前述の技術は、タスクをいかに実行するか
の知識をアシスタントが得る方法を取り扱っている。し
かし、信頼性と、ユーザの目標と優先度に適合して得ら
れた知識を用いるためにアシスタントの信頼性と能力の
問題を解決しなければならない。この信頼性の問題に対
する一つのアプローチは、非形式的テストベースの技術
を採用することである。このような技術は、前述の Mae
s の論文に記載されており、同論文においては、実際の
タスクあるいはシミュレーションのいずれかにおいて、
自動アシスタントの作業をユーザが長い間観測すると
(Cohen et al.著の「An open agent architecture, AA
AI Spring Symposium on Software Agents, p.1-8,199
4」を参照のこと)、ユーザはアシスタントのビヘービ
アをよりよく予測できるようになるとしている。
【0012】しかし、ユーザは、まだ見ぬケースに対し
アシスタントのビヘービアを予測するような確固たるベ
ースを持ってはいない。この技術の信頼性の成長は、ア
シスタントのビヘービアの特殊例から人間のユーザが一
般化する能力に基づいている。このアプローチの一つの
欠点は、知識がアシスタントに付加されるにつれて、新
たな能力(例、 Maes のメモリーベースのアーキテクチ
ャ)を確保すること、あるいは既存のビヘービア/知識
内のエラーを修正することにより、そのビヘービアは変
化してしまうことである。この様なビヘービアの変化
は、インフォーマルな過去の経験に基づくいかなる信頼
性に疑問を投げかけることになる。
【0013】この信頼性の問題に取り組む別の技術は、
Weld & Etzioni(D. Weld & O. Etzioni, The first la
w of softbotics, In Proc. 12th Natl. Conf. on AI,
1994, AAAI Press) により開発されたAI−プラニン
グアプローチである。このAI−プラニングアプローチ
においては、タスクは、宣誓的に特定され(通常一次オ
ーダのロジックで)、そしてプラナー(計画者)は自動
理由付け(automatedreasoning) により自明ドメイン
知識を用いてプランを構成する。
【0014】このようなプラナーの使用は、宣言された
タスク使用に関しては、プランの実行の正確さを補償す
る。しかし、実行中に発生する予測しえない全ての状況
を説明するような充分な詳細事項を含む完全かつ正確な
正式仕様を規定することが困難なために問題が発生す
る。さらにまた、このアプローチを使用すると、規定さ
れたタスク仕様を正確に実行するが、ユーザのある最優
先(規定されていない)と目標を損なう様な好ましくな
い計画を取り除くことが困難である。
【0015】
【発明が解決しようとする課題】拡張性を犠牲にするこ
となく、あるいは「有効でない一般化」により潜在的な
エラーを示すような自動アシスタントの信頼性を増加さ
せる技術を改良することが望ましい。
【0016】
【課題を解決するための手段】本発明よれば、自動アシ
スタントの信頼性を増加し、信頼されてないあるいは部
分的にしか信頼されない(以下、まとめて「信頼性のな
い」と称する)ビヘービアの自主的実行の確認技術を提
供できる。
【0017】本発明によれば、信頼性のないビヘービア
は、監視実行モードで自動アシスタントにより実行され
る。このビヘービアの実行は、一般的信頼状況/行為対
に従って自主的に行われる。信頼状況/行為対の組は、
トラストライブラリ(信頼性図書館)に蓄積され、アシ
スタントによりアクセスされる。信頼されていない状況
に遭遇すると、所定の臨時のビヘービアあるいは所定の
応答が実行され、例えば(a)ビヘービアを安全に中止
するか、あるいは(b)ビヘービアに取られる次の活動
が受け入れ可能か否かをユーザに問い合わせる。
【0018】さらにまた信頼できない状況に遭遇する
と、その状況の記録が取られ、本発明の一実施例によれ
ば、確実シナリオ一般化が形成され、状況オンに対し一
般的状況/活動対(即ち、状況/計算活動対)が規定さ
れる。この状況/計算活動対が蓄積され、この対がアシ
スタントにより採られた応答を規定するか否かの決定が
なされる(即ち、一般化がユーザの目標と優先度に従
う)。
【0019】この計算された一般化がユーザに受け入れ
られるものであるならば、その一般化は公式生成として
トラストライブラリに付加され、それにより信頼された
状況/活動対の組を拡張することにより、アシスタント
の信頼性を増加する。さらに本発明の利点として、トラ
ストライブラリのエントリの数が増加するにつれて、ア
シスタントが遭遇するより多くの状況は、その自主的実
行を許可することにより信頼されることになる。
【0020】本発明の他の実施例においては、トラスト
ライブラリ内に含まれる知識をベースとして用いて、以
前に誤ったビヘービアとして認識されデバッグ(修正)
されたビヘービア用の新たなトラストライブラリを構成
できる。そしてビヘービアが誤ったものとして、認識さ
れた(即ち、ユーザの目標と優先度を正確に表していな
い)場合、ビヘービアそのものがデバッグ(修正)され
る。しかし、この新たなビヘービアが、従来のビヘービ
アのトラストライブラリとは適合しない場合がある。か
くして本発明によれば、古いトラストライブラリを修正
されたビヘービアを確認するために用いる、新たなトラ
ストライブラリの生成のベースとして用いる技術が提供
できる。これにより新たなライブラリを全く新しく構成
する必要がなくなる。
【0021】
【発明の実施の形態】本発明はユーザタスクを実行する
ために用いられるビヘービアを実行し、その信頼性を増
加させるために、自動アシスタントにより用いられる技
術である。本発明の詳細を説明する前に、本発明の簡単
な概観について述べる。
【0022】概観 図1は、本発明のトラスト構成技術を用いた自動アシス
タントの一実施例を表すブロック図である。同図におい
て、自動アシスタントは、ビヘービア獲得モジュール1
00と保護実行モードモジュール200とトラストライ
ブラリモジュール305と増分とラスト成長モジュール
300と標準実行モードモジュール150とトラスト再
使用モジュール400とを有する。各モジュールの詳細
な説明は、後述する。様々なモジュールが個々のユニッ
トとして記載されているが、これらのモジュールの機能
は、一つあるいは複数の機能ユニットとしてまとめるこ
ともできる。
【0023】ビヘービア獲得モジュール100は、自動
アシスタントにより実行されるべき新たなタスクに対応
するビヘービアを規定する。様々な従来技術は、ビヘー
ビアを規定したり、あるいは獲得したりするためにビヘ
ービア獲得モジュール100により用いられる。このよ
うな技術は、例えば「AI−プラニング」と「プログラ
ミングバイデモンストレーション」を含む。
【0024】別の例としては、既存のビヘービアは、他
のユーザあるいは中央ソース(例、ライブラリ)から得
ることもできる。本明細書で用いられる「ビヘービア」
は、ユーザの目標,優先度,タスクパラメータに従っ
て、タスクを実行するために自動アシスタントにより用
いられる知識(knowledge) を意味する。ビヘービア
は、アシスタントの状態変数と、ビヘービアを実行する
際に自動アシスタントが遭遇する様々なイベント(事
象)を考慮に入れている。
【0025】自動アシスタントにより遭遇する個々の状
況は、「具体的状況」と称する。各状況においては、ビ
ヘービアはアシスタントにより取られるべき潜在的活動
を計算する。この状況と関連活動とは一体となって、状
況/計算活動対を規定する。さらに所定の状況に対する
計算された活動は、信頼性があるか信頼性がないかのい
ずれかである。信頼性のある個々の状況/活動対は、ユ
ーザの目標,優先度,タスクパラメータに適合するもの
である。さらに信頼された状況/活動対は、以前に有効
とされた対である。
【0026】信頼されていない個々の状況/活動対は、
アシスタントの活動がユーザの目標と優先度に適合し
て、活動するものとは認められない状況を意味する。こ
のビヘービアそのものは、これら個々の状況(信頼性が
ある場合とない場合の両方)に応答して、自動アシスタ
ントがいかに動作するかを規定する。かくして各個々の
状況は、所定の状況を解決するために、アシスタントに
より取られるべき1つあるいは複数の活動に関連してい
る。当然のことながら、ビヘービアはある状況では何の
活動も規定しないこともある。
【0027】ビヘービアの獲得後、自動アシスタント
は、ビヘービアの実行中に発生したどの状況/活動対が
信頼されているか(信頼性があるか)を規定しなければ
ならない。本発明によれば、保護実行モードモジュール
200とトラストライブラリモジュール305と増分と
ラスト成長モジュール300とトラスト再使用モジュー
ル400の相互作用を必要とする増分認証アプローチ
(incremental validationapproach)を用いる。増分認
証を開始するために、自動アシスタントは、保護実行モ
ードモジュール200を用いてビヘービアを実行する。
具体的状況に自動アシスタントが遭遇する毎に、自動ア
シスタントは、計算された活動(即ち応答)がトラスト
ライブラリモジュール305内に登録された1組のエン
トリと応答を比較することにより、その計算された応答
が信頼性があるか否かをチェックする。
【0028】トラストライブラリモジュール305内の
エントリは、信頼された状況/活動対のクラスの公式表
示である。この遭遇した状況/活動対が信頼性がある場
合には、自動アシスタントはそのビヘービアに特定され
た状況に関連する活動を実行する。一方、状況が信頼さ
れた状況/活動対の外にある場合(即ち信頼性のない具
体的事象の場合)には、自動アシスタントは本発明の一
実施例によれば、所定の臨時ビヘービア(contingency
behavior)を実行する。
【0029】この所定の臨時ビヘービアは、そのビヘー
ビアを実行する前にユーザにより規定されるいかなるビ
ヘービアでも良い。例えばこの臨時ビヘービアは、相互
作用モードで動作するよう自動アシスタントを切り換え
る。このモードは、ユーザに対しビヘービアにより実行
される活動の有効性を明白に確認したり、あるいは否定
したりすることを要求する。この活動が有効の場合に
は、状況/計算活動対は信頼される、即ち、ユーザのタ
スクパラメータに適合する。しかし、ユーザは、自動ア
シスタントへのリアルタイムの入力を与えるために、常
時動けるものではない。このような場合、臨時ビヘービ
アは、所定の方法でビヘービアを中断するよう規定して
もよい。
【0030】信頼されていない(信頼性のない)具体的
状況に自動アシスタントが遭遇した場合には、この臨時
ビヘービアを実行することに加えて、増分とラスト成長
モジュール300が状況の記録をとる。その後この信頼
性のない具体的状況は、増分とラスト成長モジュール3
00により一般化される。本発明の実施例によれば、信
頼性のない具体的状況/計算活動対の一般化は、堅実な
シナリオ生成技術(sound scenario generalization te
chniques)を用いて抽出される。この堅実なシナリオ生
成技術は、Hall著の「Systematic Incremental Validat
ion of Reactive Systems Via Sound Scenario General
ization, J. Automated Software Engineering 2(2),
p.131-161, (1995)」に記載されている。
【0031】この実施例によれば、ユーザは、記録され
た信頼性のない具体的状況を並べ換え(sequences thro
ugh)、 各信頼性のない状況に対し行われた「計算され
た一般化」を再検討する。個々の「計算された一般化」
がユーザにとって受け入れられるものであるならば、こ
の一般化された状況/活動対は、トラストライブラリに
入力される。さらにこの信頼性のない具体的状況は、一
般化計算(generalization computation)に導かれ、そ
れは次に信頼性あるものとなりそして増分とラスト成長
モジュール300に追加される。より多くの信頼性のな
い状況に遭遇するにつれて、より多くの一般化された状
況/行動対はユーザに確認された後、トラストライブラ
リモジュール305に付加される。このようにしてビヘ
ービアは、自動アシスタントに徐々にあるいは増分しな
がら(incrementally) 認証される。
【0032】一旦ビヘービアが、完全に認証されてしま
うと、あるいは少なくともユーザにとって満足すべきも
のとなると、ビヘービアは標準実行モードモジュール1
50により実行される。標準実行モードモジュール15
0は、この認証されたビヘービアを自立的(自主的)に
最後まで実行する。以上のことを理解した上で、本発明
を以下に詳述する。
【0033】ビヘービアの獲得 本発明の一実施例によれば、ビヘービアの動作要件は、
反応システム(reactive system) 内にカプセル化され
る。この反応システムは、状態マシーン(有限あるいは
無限)で外部励起(入力)に応じて内部状態を変化さ
せ、そして各状態は、固定した組の読み出し(出力)に
関連している。
【0034】反応システムにおいては、ビヘービアの機
能要件は、シナリオの形態で表現するのが有益である。
本明細書において「シナリオ」とは、反応システムでの
インタリーブされた励起のシーケンスと読み出し観測で
ある。前述したように、状況とはビヘービアの現在の状
態(例、励起の前の定常状態)と特定の入力イベントと
の組み合わせに関連している。遭遇した各励起(入力)
に応答して、この反応システムは、新たな状態に遷移
し、それぞれの観測読み出しを出力する。この読み出し
は、自動アシスタントの動作を直接制御する。
【0035】ビヘービアを表す反応システムは、従来公
知の様々なソフトウェア言語を用いて実現できる。この
ような言語は、例えばC言語とBL.2言語を含む。本
発明の一実施例では、この反応システムは、BL.2言
語を用いて実現される。そしてこのBL.2言語は、今
のところアシスタントライクバリアブリオペレーティッ
ドインタフェースデザイン(Assistant-Like Variably-
Operated Interface Design(ALVOID))システ
ムで用いられる研究用プロトタイププログラミング言語
である。このALVOIDシステムは、Hall著の「Agen
ts Helping Agents: Issues in Sharing How-To Knowle
dge; in Proc. 1995 AAAI Spring Symposium on Inform
ation Gathering from Heterogeneous, Distributed En
vironments, p 65-68」に記載されている。
【0036】このBL.2プログラミング言語は、同時
のオブジェクト指向の言語で、アシスタントのビヘービ
アの理解と信頼性と共有性を容易にするために、数個の
構成要素を含むビヘービアを表すためのものである。以
下は、選択されたBL.2プログラミング構成要素の簡
単なサマリーであり、これ以降の本明細書を通して用い
られる。このBL.2の(GOAL<comment>.<bod
y>) のステートメントは、構造化コメントと制御構成
要素の両方である。制御は、(WIN)ステートメント
あるいは(LOSE)ステートメントを介してボディ
(body)をリーブする。
【0037】このような場合、アシスタントは、タスク
のサブゴールが成功したか、あるいは失敗したかを決定
することができ、その結果自動アシスタントによる自動
監視再生報告を容易にする。この(INITIATE<
variable><behavior invocation>) ステートメント
は、新たなスレッド<thread>中にチャイルドビヘービ
アを生み出し、<variable>を新たなスレッド用にハン
ドルに結合させ、その結果ペアレント(親)ビヘービア
は、イベントを新たに生み出されたビヘービアに送る。
【0038】この(MONITOR<thread>(IF−
TERMINATES<term-body>)<body>)ステ
ートメントは、<body>を実行するが、この<body>を
実行する前に<thread>が終了する場合には、制御は<
term-body>に即時に転送される。例えばMONITO
Rステートメントを用いて、ビヘービア(即ち、ペアレ
ント)により用いられるチャイルドビヘービアをモニタ
し、このチャイルドビヘービアの早期終了の結果故障が
発生する場合には、ユーザに通知することができる。
【0039】本発明の議論をさらに容易にするために、
例えばコンサートチケットの購入に関連するビヘービア
を用いる(以下「BUYTIX」と称する)。このよう
なビヘービアは、通常ユーザにとって考えが混合(idio
syncratic)したものであり、ここで用いられるチケッ
トを購入するビヘービアは、実施例であり、本発明の範
囲を制限するものではない。例えば、BUYTIXは、
BL.2の言語を用いると以下のように表すことができ
る。
【0040】
【表1】
【表2】 (上記のプログラミングコードの例は、明瞭にするため
および簡潔にするため修正が施してある。)
【0041】ここで示したように、BUYTIXは、電
話をチケットエージェンシーに掛けて、適当な枚数のグ
ランドティアチケット(grand tier tickets)が得られ
るか否かを問い合わせる。もし得られると、BUYTI
Xは、全チケットのコストが100ドル以下か否かを決
定する。条件にあった場合には、アシスタントは注文を
発行する。条件に合わなかった場合には、アシスタント
は、オーケストラチケットが入手可能か否か、そしてコ
ストが50ドル以下か否かを問い合わせ、そして条件に
あった場合には注文を発行する。上記のBUYTIXビ
ヘービアは、本発明の議論を容易にするために本明細書
の全体を通して用いるものとする。
【0042】保護された実行 前述したようにこの保護実行モジュールは、ビヘービア
を実行しそれを自動的に新たな状態に移し、この移動が
アシスタントにより信頼すべきものである場合にのみ動
作を実行する。この目的を達成するために、読み出しイ
ベントと状態変化が待ち行列に入り、新たな状態が全部
に計算された時に実行される。本発明の実施例によれ
ば、ビヘービアは、(BL.2で実行され)、自動的に
ルールベースの反応システムに変換される。このルール
ベースのシステムは、イベントベースの形式主義(even
t based formalism(EBF)) と称する。
【0043】このEBF表示は、後で実行するために状
態変化とイベントの待ち行列化を容易にする。さらにト
ラスト述部は、保護実行モジュールにより採用される。
本発明の一実施例によれば、このトラスト述部は、ホー
ム(Trusted?<event><old-state><computed actio
n>) の形態を有する。具体的状況(即ち、<oldstate
>,<event>)と計算された行動(即ち、<computed
action>)が、トラストライブラリ内で信頼性のある状
況/活動対を形成する場合にのみトラスト述部は真に戻
る。
【0044】このトラスト述部の実行は、後述する。こ
の遷移が信頼性がない場合には、保護実行モジュール
は、所定の臨時ビヘービアを実行する。例えば、この臨
時ビヘービアは(Contingency<event><state><com
puted action>)の形式を有する。この臨時ビヘービア
が成功裏に実行される(即ち、WINs)と、元のビヘ
ービアが再開される、そして臨時ビヘービアが失敗する
と(即ち、LOSEs)の場合には、元のビヘービアは
LOSEする。
【0045】次に図2に、保護実行モードモジュール2
00の一実施例を表すフローチャト図を示す。ステップ
210において、入力がビヘービア205で受領され、
このビヘービア205がビヘービアの初期状態を規定す
る。この入力は例えば状態情報,トラストライブラリ,
臨時ビヘービアを含む。ビヘービアの実行が行われる
と、保護実行モードモジュール200は次の具体的状況
に遭遇するまで、即ちステップ220で入力事象が発生
するまで待機する。具体的状況に遭遇すると、ビヘービ
アの潜在的な次の動作がステップ230でビヘービアの
知識に従って計算される。
【0046】この実施例においては、次の動作は、ルー
ルベースの推論を用いて計算される。ビヘービアそのも
のは、パターン動作ルール(例、“when<event>if cu
rrent state satisfies<condition>then take<actio
n(s)>“(現在の状態が<コンディション>を満足す
ると<アクション>をとる時))を有する。このルール
はビヘービアの現在の状態と状況の現在の入力イベント
を入力として用い、相互作用形式で次の潜在的動作(即
ち、応答)を計算するために採用される。ステップ24
0において、状況/計算動作対がトラストライブラリモ
ジュール305内のエントリと比較され、それが信頼す
べきか否かを決定する。
【0047】次の動作が信頼できる場合には、次の動作
はステップ270で保護実行モジュールにより実行され
る。次の動作が信頼できない場合には、臨時ビヘービア
がステップ250で実行される。臨時ビヘービアの実行
の成功は、動作をとることおよび状態を変化させること
に関連するものであるが、ビヘービアの実行を進めるた
めに保護実行モジュールが、ビヘービアの実行を進める
ようにさせる(即ち、ステップ280に戻る)。臨時モ
ジュールの実行の不成功により、アシスタントは所定の
方法によりビヘービア(265)を中断する。最後にこ
のビヘービアが実行を完了したか否かの決定がステップ
280で行われる。完了しない場合には、ビヘービアは
ステップ220に戻り、アシスタントが遭遇する次の状
況を待つ。
【0048】本発明の一実施例によれば、上記の臨時ビ
ヘービアは、ビヘービアの実行を開始したときにユーザ
により規定される。例えば、ビヘービアが実行されたと
きにユーザがアベーラブル(動作可能)の時には、臨時
ビヘービアはユーザに対し、進行の許可を求める問い合
わせをするために規定される。このような問い合わせ
は、例えば現在の状態と、入力イベントと、提案された
出力動作の説明を含む。以下の議論のためにこの問い合
わせは、「オーケー問い合わせ“okay query”」(O
Q)と称する。BUYTIXビヘービアのOQの例を次
に示す。
【表3】
【0049】上記のOQの実施例は、グランドティア
(grand tier)チケットが入手可能であるか否か問われ
たときに、「1」でもって被呼者が応答したときに発生
する。ユーザが遷移を了解したときに、臨時ビヘービア
がその後継続する。ユーザが遷移を了解しない場合に
は、ユーザは取り引きを手動で引き継ぐか(例、受話器
を取り上げ彼自身でチケットの取り引きを完了する
か)、あるいは例えばアナウンスを放送して受話器をお
いて、所定の中断ステップをとるかのいずれかである。
いずれの場合にもユーザは、全ての変数(例えばSAY
INGのような直接観測可能なものだけでなく)の全て
の新たな値を承認し、読み出しを行う。
【0050】別法として、この臨時ビヘービアは、たと
え保守的でも安全で自動的な操作をどのような信頼性の
ない遷移も操作の安全な中止になるようにすることによ
り提供できる。例えば、BUYTIXが信頼性のない状
況に遭遇すると、単に取り引きを中止し電話を切る。こ
のような動作は、安全な中断と称する。
【0051】各信頼性のないビヘービアに対し、手動で
もって臨時ビヘービアを形成することが可能である。一
般的にはこの章に記載した2種類の臨時ビヘービアは、
多くのアプリケーションによって、充分満足できるもの
である。実際に臨時ビヘービアは、信頼性がなければな
らないために、自動アシスタント用の標準的臨時ビヘー
ビアが一般的となっている。
【0052】トラストライブラリ トラストライブラリモジュール305は、具体的状況が
信頼すべきか否かを決定するために保護実行モジュール
により用いられる信頼性のある状況/活動対の組の記述
からなるエントリを含む。本発明によれば各エントリ
は、トラストライブラリ内に(s,e,v,x)のチュ
ープルとして蓄積される。ここで、「s」は状況の状態
記述、「e」は状況のイベント概要、「v」は状態に関
連する変数、「x」は「v」の新たな値の表示である。
エントリの解釈は、状況が発生しその状態が「s」を満
足し、そしてそのイベントが「e」を満足した時に、状
態変数「v」は次の状態の表現「x」の値をとる(状態
で評価される)といったようなものである。
【0053】本発明によれば、活動は選択された状態変
数に対する変化として符号化される。このトラスト述部
は、信頼し得るか?(<event><oldstate><newstat
e>) として実行され、その結果<newstate>中で規定
されたあらゆる状態変数「v」に対して、トラストライ
ブラリ内に「t」が見いだされた場合にのみそれは真に
戻る。 1)<event>は、「t」のイベントパターン「e」を
満足する、 2)<oldstate>は、「t」の状態条件「s」を満足す
る、 3)<newstate>中で、「v」は表現値「x」を得る。
【0054】本発明の一実施例によりトラストライブラ
リ中のエントリを確実シナリオ一般化技術を用いて抽出
される。この確実シナリオ一般化技術は、一般化された
部分としてトラストライブラリ内の各エントリを表示す
る。この一般化された部分は、具体的部分の生成を意味
する。この実施例のBUYTIXとともに用いられる一
般化部分(generalized fragment)の例を以下に示す。
【表4】
【0055】上記の一般化部分において、オーケストラ
チケットのコストが50ドル以下であるかを決定するこ
とが目標である状態においては、50ドル以下の応答が
受領されたときには、いつでも次の言語による出力(sa
ying)を実際にチケットを発行するために適切である場
合にはユーザはYESと回答する。確実シナリオ一般化
技術は、トラストルールはそれらを承認しなけばならな
いユーザにとってより意義深いものであるため利点があ
る。さらにまた確実シナリオ一般化技術は多くの状態を
符号化し、符号的に遷移するので確実シナリオ一般化
は、メモリに蓄積されたビヘービアの記述のサイズを減
少させることになる。
【0056】トラスト成長 トラスト成長モジュールは、新たなエントリをトラスト
ライブラリに追加することにより、ビヘービアのトラス
トカバレッジを増加させる。かくして、以前にはカバー
されていない状況が信頼されるようになる。エントリが
信頼されるようになることを確実にするために、エント
リをトラストライブラリ内に配置するために、ユーザに
よりエントリが認証される。
【0057】図3には増分とラスト成長モジュール30
0のフローチャートが示してある。前述したように信頼
性のない具体的状況/活動対(即ち、状況と関連計算活
動)は、保護実行モードモジュール200に遭遇すると
状況/活動対の記録が形成される。例えばこの記録(状
態とイベントと信頼性のない新たな変数(とその値))
は、具体的シナリオ部分として蓄積される。その後ユー
ザは、例えば、ステップ310で信頼されていない具体
的部分を介して、シーケンスへの相互作用セッションを
求めるよう増分とラスト成長モジュール300に望む。
この実施例によれば、相互作用セッションは、確実シナ
リオ一般化技術(例えば、Hallの論文に議論した通り)
を用いて具体的な信頼性のない部分の確実シナリオ一般
化320を計算する。
【0058】この計算された一般化部分は、ステップ3
30でトラストライブラリモジュール305内に含まれ
る既存の一般化と比較される。同一の一般化がトラスト
ライブラリモジュール305内に既に存在する場合に
は、増分とラスト成長モジュール300は次の記録され
た信頼性のない具体的状況へ進む(即ち、ステップ31
0へ戻る)。比較すべき一般化が存在しない場合には、
この計算された一般化部分は、ステップ340で再検討
するためにユーザにより検討される。その後ユーザに
は、ステップ350で計算された一般化部分の受け入れ
可能性について問い合わせが行われる。受け入れ可能な
場合には、この計算された一般化部分は、ステップ36
0で新たな一般化としてトラストライブラリモジュール
305内に入力される。
【0059】その後このモジュールは、次の信頼性のな
い具体的状況/活動対を解析する。別法としてユーザが
計算された一般化部分は、受け入れられないとして応答
した場合には、これはビヘービア中にエラーが存在する
ことを意味する。このようなエラーによりビヘービア
は、ステップ370でデバッグされる。デバッギングス
テップ370の出力は、新たなビヘービアの表示で、こ
の表示はその後トラスト再使用モジュール400への入
力として用いられる。
【0060】上記の実施例においては、トラストライブ
ラリモジュール305は計算された一般化を有効にする
ために用いるトラスト成長プロセスのスタート時に既存
の一般化を含んでいる。しかし、ある種の例において
は、占有されたトラストライブラリを有するために特定
のビヘービアを実行する前には充分なトラスト成長の機
会がない場合がある。例えば、ある種のビヘービアは、
単一の例に対してのみ実行されなければならないか、あ
るいは最初の実行に基づいて信頼性良く機能(即ち成
功)しなければならない。
【0061】このため本発明の別の実施例においては、
ユーザに対しては、シミュレートされたビヘービア環境
下で、実行される初期トラストライブラリ成長フェーズ
用の機会をユーザに対し与えなければならない。この実
施例においては、問題となっている特定のビヘービア
は、シミュレートされた環境下で実行され、そこでは全
ての計算された活動は、実際のエンティティではなく、
シミュレートされたエンティティに影響を及ぼす。保護
された実行とトラスト成長は、前述したように全ての計
算された活動が、実世界の影響者ではなくシミュレート
されたビヘービア環境内で適用されるという例外をもち
ながら発生する。
【0062】ユーザがシミュレートされたビヘービア環
境内でトラストライブラリを満足裏に発展させた後、そ
の後ビヘービアは、トラスト成長を開始するためにこの
トラストライブラリを用いて実世界環境内の保護された
実行モジュールを介して実行される。シミュレートされ
たビヘービア環境を用いて展開されたトラストライブラ
リでトラスト成長プロセスを初期化することは、初期の
トラスト成長が含まれるこの実世界ケースでビヘービア
が成功する確率を増加させる。
【0063】トラストの再使用 増分とラスト成長モジュール300で説明したように、
ユーザは、特定の計算された一般化部分が受け入れ可能
であるか否か(図3のステップ350を参照のこと)に
関し問い合わせを受ける。このユーザが計算された一般
化部分が所望のビヘービアを表さないとして応答した場
合にはこのことはビヘービア中のエラーを意味し、これ
によりビヘービアはデバッグされることになる(図3の
ステップ370を参照のこと)。デバッグされたビヘー
ビア中にトラストをすばやく形成することを容易にする
ために、新たなトラストライブラリを形成するために、
このトラストライブラリ内にエントリを持つ(即ちデバ
ッグする前のトラストライブラリ)トラスト転送プロセ
ジャーが採用される。
【0064】図4ではトラスト再使用モジュール400
はエラーのあるビヘービアに遭遇したときに用いられ
る。このモジュールは、ステップ410で信頼性のない
具体的部分をとり、次にステップ420で新たな(デバ
ックされた)ビヘービアに関し、それらを一般化し、そ
して計算された一般化が既存のトラストライブラリモジ
ュール305(即ち、ビヘービアをデバッグする前に存
在したトラストライブラリ)内のエントリに等しいか否
かをステップ430で決定する。等価の一般化が発見さ
れると、新たな一般化された部分がステップ440で新
たなトラストライブラリ450に自動的に入力される。
この際にユーザは以前から承認を有していたので、ユー
ザの認証は必要ない。
【0065】等価の一般化が見いだされない場合には、
信頼性のない具体的部分はステップ460で増分とラス
ト成長モジュール300に送られ、そこで新たなトラス
トライブラリ内に認証と事象として含められる。この認
証は前述した方法で実行されるが、全ての認証のために
デバッグされたビヘービアと新たなトラストライブラリ
を用いる。そのためトラストの再使用は、新たなトラス
トライブラリ450を形成するためにトラストライブラ
リモジュール305内の信頼されたフラグメントを有
し、それによりビヘービアを完全に新たなものとして認
証する必要はない。
【0066】本発明の様々な実施例を含む自動アシスタ
ントの例を、BUYTIXビヘービアを用いて以下に議
論する。以下の例ではユーザは、チケット購入タスクを
自動アシスタントに委任する。BUYTIXは、初期に
空のトラストライブラリを有する保護実行モジュールで
もって実行される。このトラストライブラリは、空なの
でユーザは、標準の双方的臨時ビヘービアを用いる。以
下の説明は、例示した相互作用の記述からの抜粋であ
る。アシスタントにより電話に入力される音声出力は、
イタリックを用いて示してあり、遠隔地にいる被呼者か
ら受信したタッチトーン応答は、ゴチックで示し、<O
Q?Yes>は、OQを受け入れることを意味する。
【表5】
【0067】先行する相互作用は、6の遷移のうち6個
がOQを必要とすることを意味する。このユーザは、第
1のトラスト成長フェーズを入力する。この実施例では
自動アシスタントは先行する相互作用の具体的部分から
計算された26個の一般化部分を表している。最初の1
8個の一般化部分がユーザにより受け入れられるものと
すると19番目の一般化部分は、ユーザにより拒否さ
れ、それを以下に示す。
【0068】
【表6】 ここに示されたように、ビヘービアは、法外なサービス
チャージのチェックがないように見える、このサービス
チャージは、チケットプライスに含まれ得る。自動アシ
スタントのユーザは、チケットに対し無制限の金額を払
う積もりはない。このためビヘービアそのものは、一般
的なエラーを有していることになる。
【0069】他の2つの一般化部分は、このエラーの兆
候(即ち、価格の上限の欠落)を示し、そしてそれら
は、確信することができない。この時点でシステムは、
保護実行モジュールにより実行された場合には正確に動
作するが、トラスト成長モジュールは、一般的エラーの
存在を明らかにする。例えば20個の一般的部分が確認
されると、3個は確認されず、3個は余分なものである
(即ち、他の一般化部分によりカバーされる)。
【0070】このエラーのあるビヘービアを修正するた
めにユーザは、この例に対して以下のプログラムを追加
する。
【表7】
【0071】この修正が新たなビヘービアを生成し、そ
れはユーザの目的と優先度(即ち、タスクパラメータ)
に今度は適合している。しかし、古いビヘービアととと
もに以前に用いられたトラストライブラリは、この新た
なビヘービアに対してはもはや有効ではない。それ故に
このユーザは、トラスト転送プロセジャーを新たな(空
の)トラストライブラリ内を満たすために、古いトラス
トライブラリ内の部分を用いて適用する。これはデバッ
グされたビヘービアに関して各古い具体的部分を一般化
することを必要とし、そしてその結果は古いトラストラ
イブラリ(即ち、デバッグする前の)内の一般化部分に
等価であるかをチェックする。
【0072】上記の修正は簡単なために、全ての20個
の一般化部分は、自動的に新たなトラストライブラリに
転送される。さらにまた3個の不用な一般化となる具体
的部分(即ち、GEN−FRAG−19から21)が一
般化され、そしてユーザはその一般化(デバッグされた
ビヘービア中の一般化)を好ましいものとして確認す
る。以下のプログラムは、4個の遷移は空のトラストラ
イブラリを必要とするが、4個の遷移の内の1個のみが
OQを必要とするのでトラストが成長する状態を示す。
【表8】
【0073】ここに示すようにユーザは、トラスト成長
がその後に続く数ラウンドに亘る保護モード実行に対し
トラストを形成し続ける。OQの周期が消滅するとある
時点でユーザは、ビヘービアは完全に信頼されているか
否かを決定し、信頼されていない場合は、そのケースは
チェックされる。本発明によればトラストを公式に表示
することの利点は、ノンカバレッジレポート(トラスト
ライブラリにより現在はカバーされていない状況を宣言
的に記述している)がいつでも計算できることである。
【0074】このノンカバレッジレポートを有すること
によりユーザは、依然として信頼されていないケースを
識別し、この状況を実行するためにシナリオを構成す
る。かくしてユーザは、トラストカバレッジが完了した
時を決定し、そしてビヘービアが保護モードで実行され
る必要はないことを決定する。本実施例のノンカバレッ
ジレポートの例を以下に示す。
【表9】
【0075】上記したようにこのノンカバレッジレポー
トは、イベントと観測(即ち各シグネチャー)の各組合
わせに対し、依然として信頼されていない状態の組を記
述する。特に各RESPONSE!イベントの後の適切
な音声をSAYするために、ただし(a)被呼者がオー
ケストラプライスは、50ドル以上であることをいう、
あるいは(b)被呼者がオーケストラの充分なシートは
入手できないことのいずれかの場合を除いてビヘービア
は信頼されていることを示している。このカバーされて
いないDISCONNECT!シグネチャーは、被呼者
は、途中で電話を中断しないことを意味する。ユーザ
は、保護実行モードは依然として必要であり、どの入力
ケースがトラストカバレッジを完了するために構成する
か正確に示すことができる。
【0076】本発明は、自動アシスタントによるビヘー
ビアの実行に際し、トラストを形成する方法の観点から
説明した。ある応用例においては、本発明はコンピュー
タシステムで実現できる。例えば図5において、コンピ
ュータシステム500は中央演算処理ユニット(CP
U)510と自動アシスタント520とRAM530と
I/O540を有する。そして例えば自動アシスタント
520は、自動アシスタントを実行するプログラムコー
ドとビヘービア獲得モジュール100と増分とラスト成
長モジュール300とトラストライブラリモジュール3
05とトラスト再使用モジュール400と標準実行モー
ドモジュール150とその他様々なアプリケーションプ
ログラムとを含んでいる。
【0077】図において、自動アシスタントは、CPU
510により実行され、このCPU510により様々な
モジュール(例えば、ビヘービアの獲得,トラスト成長
等)が実行用にRAM530にロードされる。この自動
アシスタントは、様々な外部周辺装置あるいは他のコン
ピュータシステムとインタフェースする。このインタフ
ェースは、CPU510によりI/O540を介して実
行される。
【0078】
【発明の効果】以上のように本発明は、自動アシスタン
トの信頼性を増加し、信頼されていないあるいは部分的
にしか信頼されていないビヘービアの自主的実行の確認
技術を提供するものである。
【図面の簡単な説明】
【図1】本発明の信頼性を増加させる技術を用いた自動
アシスタントの一実施例を表すブロック図
【図2】図1の保護実行モジュールの一実施例を表すフ
ローチャート図
【図3】図1のトラスト成長モジュールの一実施例を表
すフローチャート図
【図4】図1のトラスト再使用モジュールの一実施例を
表すフローチャート図
【図5】本発明を用いたコンピュータシステムの一実施
例を表すブロック図
【符号の説明】
100 ビヘービア獲得モジュール 150 標準実行モードモジュール 200 保護実行モードモジュール 300 増分トラスト成長モジュール 305 トラストライブラリモジュール 320 確実シナリオ一般化 400 トラスト再使用モジュール 500 コンピュータシステム 510 中央演算処理ユニット(CPU) 520 自動アシスタント 他のアプリケーションプログラム 530 RAM 540 I/O 図2 205 ビヘービア 210 状態の初期化 220 現在の状況において次の入力イベントを待機す
る 230 次の活動を完了する 240 活動に信頼性があるか? 250 臨時ビヘービアを実行する 260 臨時ビヘービアは成功したか? 265 中止 270 活動を実行する 280 ビヘービアは完了したか? 305 トラストライブラリ 図3 305 トラストライブラリ 310,410 信頼性のない具体的状況か? 320,420 一般化を計算する 330 トラストライブラリ内に一般化があるか? 340 ユーザに一般化を記述する 350 一般化がユーザに受け入れられるか? 360,440 一般化をトラストライブラリに追加 370 ビヘービアをデバッグする 400 トラスト再使用 図4 305 トラストライブラリ 430 従来のトラストライブラリ内に一般化があるか
? 450 新たなトラストライブラリ 460 トラスト成長が使用するために信頼性のない具
体的状況を記憶する(図3を参照) 表1 ”チケットの購入” ”チケットエージェンシーに電話をする” ”記録失敗で喪失” ”席のクラスを選択” ”グランドティアを選択?” ”グランドティアが入手可能か?” ”あなたは持っているか?””グランドティアを”) ”グランドティアの価格 ”グランドティアのチケットはいくらするか?”) ”グランドティア”) 表2 ”オーケストラを選択?” ”オーケストラは入手可能か?”) ”あなたは持っているか”?”オーケストラ”) ”オーケストラの価格 ”オーケストラのチケットはいくらするか?”) ”故障”) ”失敗と電話の中止をアナウンスする” ”注文を発行する” ”確認番号を得る” ”支払いを認可する” 表3 前の状態: ”グランドティアが入手可能か?” ”グランドティアを選択する?” ”席のクラスを選択する” ”チケットを購入”) ”1個のグランドティアのチケットは得られるか? yesならば1を押す,noならば0を押す” 次の状態: ”グランドティアの価格 ”グランドティアを選択する? ”席のクラスを選択する” ”チケットを購入”) ”グランドティアのチケットはいくらか?ドルを入力す
る”*** このアクションでオーケーか?*** 表4 イベント: 状態変数: 新たな値: ”オーケストラの価格 ”オーケストラを選択する? ”席のクラスを選択する” ”チケットを購入”))) オーケストラチケットを望む。全額を入力する**** これは望ましいか? 表5 Iのグランドティアのチケットは入手可能か? yes
ならば1 グランドティアのチケットはいくらか? ドルを入力す
る Iのオーケストラチケットは入手可能か? yesなら
ば1 オーケストラチケットはいくらか? ドルを入力する Iのオーケストラチケットを望む。全額を入力する 確認番号を入力する オールボイド,600 マウンテン アヴェニュー,マ
レー ヒル,NJに送る43ドルの支払いが講座番号1
111に確認された(電話終了) 表6 イベント: ’(”注文場所””チケットを購入”)) ”確認番号を得る””チケットを購入”) これは望ましいか? NO 表8 2枚のグランドティアチケットが入手可能か? yes
ならば1 グランドティアのチケットはいくらか? ドルを入力す
る 2枚のグランドティアのチケットを望む。全額を入力す
る 確認番号を入力する オールボイド,600 マウンテン アヴェニュー,マ
レー ヒル,NJに送る200ドルの支払いが講座番号
1111に確認された(電話終了) 表9 ノンカバレッジレポート ”オーケストラの価格 ”オーケストラを選択する? ”席のクラスを選択する” ”チケットを購入”)) ”オーケストラが入手可能か?” ”オーケストラを選択する? ”席のクラスを選択する” ”チケットを購入”)) 18のシグネチャーの内6個が完全にカバーされた 18のシグネチャーの内6個が完全にカバーされていな
フロントページの続き (71)出願人 596077259 600 Mountain Avenue, Murray Hill, New Je rsey 07974−0636U.S.A.

Claims (31)

    【特許請求の範囲】
  1. 【請求項1】 コンピュータシステム上でタスクを実行
    する自動アシスタントの信頼性を向上する方法におい
    て、 (A)信頼性ある応答の組を含むトラストライブラリを
    用いるモードでビヘービアを実行するステップと、 (B)前記ビヘービアの実行中に入力イベントを受領す
    るステップと (C)前記入力イベントを満足させる前記ビヘービアの
    応答を計算するステップと、 (D)前記計算された応答と、前記信頼性ある応答の組
    とが一致するか否かを決定するためにそれらを比較する
    ステップと、 からなり、前記ステップ(D)で、 (a)一致する場合には、前記計算された応答を実行
    し、 (b)一致しない場合には、前記トラストライブラリ中
    に含めるために前記計算された応答の信頼性を認証する
    ことを特徴とする自動アシスタントの信頼性を向上させ
    る方法。
  2. 【請求項2】 前記認証は、前記計算された応答の一般
    化を計算することにより行われることを特徴とする請求
    項1の方法。
  3. 【請求項3】 前記信頼性ある応答の組の各信頼性ある
    応答は、信頼性ある状況/活動対として表されることを
    特徴とする請求項1の方法。
  4. 【請求項4】 コンピュータシステム上で実行する自動
    アシスタントにより用いられる方法において、 前記自動アシスタントは、ユーザタスクを実行するため
    に前記自動アシスタントにより使用される知識を表すビ
    ヘービアを採用することにより、前記ユーザタスクを実
    行し、 (A)信頼性ある状況/活動対を含むトラストライブラ
    リを用いるモードでビヘービアを実行するステップと、 (B)前記ビヘービアの実行中に入力イベントを受領す
    るステップと、前記入力事象と前記ビヘービアの現在の
    状態とは、共に前記ビヘービアにより処理されるべき状
    況を規定し、 (C)前記状況を満足する前記ビヘービアにより実行さ
    れる活動を計算するステップと、 (D)前記状況と前記計算された活動により表された状
    況/計算活動対と、前記信頼された状況/活動対の組と
    を比較するステップと、 からなり、前記ステップ(D)で、 (a)一致する場合には、前記計算された活動を実行
    し、 (b)一致しない場合には、所定の応答と下記のステッ
    プを実行する、(i) 前記状況/計算活動対の一般化を
    計算するステップと、(ii)前記計算された一般化の許
    容可能性を決定するステップと、(iii) 前記決定ステ
    ップで許容可能と見いだされた場合には、前記計算され
    た一般化を前記トラストライブラリに追加するステップ
    とことを特徴とするコンピュータシステム上で実行する
    自動アシスタントにより用いられる方法。
  5. 【請求項5】 前記一般化は、確実シナリオ一般化を用
    いて計算されることを特徴とする請求項4の方法。
  6. 【請求項6】 前記ビヘービアは、反応システムとして
    表されることを特徴とする請求項4の方法。
  7. 【請求項7】 前記(ii)の決定ステップは、前記計算
    された一般化の受け入れ可能性に関し、ユーザに問い合
    わせることを特徴とする請求項4の方法。
  8. 【請求項8】 前記トラストライブラリの前記信頼され
    た状況/活動対の最初の組は、前記ビヘービアの実行前
    にシミュレートしたビヘービア環境を用いて生成される
    ことを特徴とする請求項4の方法。
  9. 【請求項9】 前記反応システムは、BL.2プログラ
    ミング言語を用いて実行されることを特徴とする請求項
    6の方法。
  10. 【請求項10】 前記ビヘービアは、プログラミングバ
    イデモンストレーション(programming by demonstrati
    on)を用いて規定されることを特徴とする請求項4の方
    法。
  11. 【請求項11】 前記信頼された状況/活動対の組のサ
    ブセットは、前記トラストライブラリ内にチュープルと
    して蓄積され、 前記チュープルは、(s,e,v,x)の形式をとり、 ここで「s」は、前記信頼された状況の状態記述であ
    り、 [e」は、前記信頼された状況のイベント概況であり、 「v」は、前記状態記述に関連する状態変数であり、 「x」は「v」の値であることを特徴とする請求項5の
    方法。
  12. 【請求項12】 (E)前記(ii)の決定ステップの結
    果が、前記計算された一般化が受け入れ不可能なもので
    ある場合に、前記ビヘービアをデバッグするステップを
    さらに有することを特徴とする請求項4の方法。
  13. 【請求項13】 (F)前記状況/計算活動対の第2の
    一般化を、前記デバッグされたビヘービアの関数として
    計算するステップと、 (G)前記第2の一般化が前記トラストライブラリ内に
    含まれるか否かを決定するステップとをさらに有し、含
    まれる場合には、前記第2の一般化を前記デバッグされ
    たビヘービアが使用できるように第2のトラストライブ
    ラリ内に追加することを特徴とする請求項12の方法。
  14. 【請求項14】 コンピュータシステム上で実行する自
    動アシスタントにより用いられる方法において、 前記自動アシスタントは、ユーザタスクパラメータに適
    合しながら前記タスクを実行するために前記自動アシス
    タントにより使用される知識を表すビヘービアを採用す
    ることにより、前記ユーザタスクを実行し、 (A)信頼性ある状況/活動対を含むトラストライブラ
    リを用いるモードでビヘービアを実行するステップと、 前記の信頼された状況/活動対は、前記ユーザのタスク
    パラメータに適合すべきものとして知られている前記ビ
    ヘービア用の活動を規定し、 (B)前記ビヘービアの実行中に複数の入力イベントを
    受領するステップと、 前記入力事象と前記ビヘービアの現在の状態とは、共に
    前記ビヘービアにより処理されるべき状況を規定し、前
    記(B)ステップは、 (a)前記状況を満足する前記ビヘービアにより実行さ
    れる活動を計算するステップと、 (b)前記状況と前記計算された活動により表された状
    況/計算活動対と、前記信頼された状況/活動対の組と
    を比較するステップと、 からなり、 (1)一致する場合には、前記計算された活動を実行
    し、 (2)一致しない場合には、所定の臨時ビヘービアと下
    記のステップを実行し、(i) 前記状況/計算活動対の
    一般化を計算するステップと、(ii)前記計算された一
    般化の許容可能性を決定するステップと、(iii) 前記
    決定ステップで許容可能と見いだされた場合には、前記
    計算された一般化を前記トラストライブラリに追加する
    ステップと、 (C)前記ビヘービアの実行中に受領された前記複数の
    入力イベントの各入力イベントに応答して相互作用的に
    ステップ(a)と(b)を実行するステップとからなる
    ことを特徴とするコンピュータシステム上で実行する自
    動アシスタントにより用いられる方法。
  15. 【請求項15】 (D)前記ビヘービアの実行中に前記
    トラストライブラリ内の状況/活動対によりカバーされ
    ない状況の記述を含むレポートを生成するステップをさ
    らに有することを特徴とする請求項4または14記載の
    方法。
  16. 【請求項16】 コンピュータシステム上で実行する自
    動アシスタントにより用いられる方法において、 前記自動アシスタントは、ユーザタスクを実行するため
    に前記自動アシスタントにより使用される知識を表すビ
    ヘービアを採用することにより、前記ユーザタスクを実
    行し、 (A)信頼性ある状況/活動対を含むトラストライブラ
    リを用いるモードでビヘービアを実行するステップと、 (B)前記ビヘービアの実行中に入力イベントを受領す
    るステップと、 前記入力事象と前記ビヘービアの現在の状態とは、共に
    前記ビヘービアにより処理されるべき状況を規定し、 (C)前記状況を満足する前記ビヘービアにより実行さ
    れる活動を計算するステップと、 (D)前記状況と前記計算された活動により表された状
    況/計算活動対と、前記信頼された状況/活動対の組と
    を比較するステップと、からなり、 (a)一致する場合には、前記計算された活動を実行
    し、 (b)一致しない場合には、所定の臨時ビヘービアと下
    記のステップを実行する、(i) 前記状況/計算活動対
    の一般化を計算するステップと、(ii)前記計算された
    一般化の許容可能性を決定するステップと、(iii) 前
    記決定ステップで許容可能と見いだされた場合には、前
    記計算された一般化を前記トラストライブラリに追加す
    るステップことを特徴とするコンピュータシステム上で
    実行する自動アシスタントにより用いられる方法。
  17. 【請求項17】 前記所定の臨時ビヘービアは、前記ビ
    ヘービアの実行を中断することを特徴とする請求項16
    の方法。
  18. 【請求項18】 前記所定の臨時ビヘービアは、前記状
    況/計算された活動対の受付可能性を決定するためにユ
    ーザに問い合わせることを特徴とする請求項16の方
    法。
  19. 【請求項19】 コンピュータシステム上で実行する自
    動アシスタントにより用いられる方法において、 前記自動アシスタントは、ユーザタスクパラメータに適
    合しながら前記タスクを実行するために前記自動アシス
    タントにより使用される知識を表すビヘービアを採用す
    ることにより、前記ユーザタスクを実行し、 (A)信頼性ある状況/活動対を含むトラストライブラ
    リを用いるモードでビヘービアを実行するステップと、 前記の信頼された状況/活動対は、前記ユーザのタスク
    パラメータに適合すべきものとして知られている前記ビ
    ヘービア用の活動を規定し、 (B)前記ビヘービアの実行中に複数の入力イベントを
    受領するステップと、 前記入力事象と前記ビヘービアの現在の状態とは、共に
    前記ビヘービアにより処理されるべき状況を規定し、前
    記(B)ステップは、 (a)前記状況を満足する前記ビヘービアにより実行さ
    れる活動を計算するステップと、 (b)前記状況と前記計算された活動により表された状
    況/計算活動対と、前記信頼された状況/活動対の組と
    を比較するステップと、を有し、 (1)一致する場合には、前記計算された活動を実行
    し、 (2)一致しない場合には、所定の応答と下記のステッ
    プを実行し、(i) 前記状況/計算活動対の一般化を計
    算するステップと、(ii)前記計算された一般化の許容
    可能性を決定するステップと、(iii) 前記決定ステッ
    プで許容可能と見いだされた場合には、前記計算された
    一般化を前記トラストライブラリに追加するステップ
    と、 (C)前記ビヘービアの実行中に受領された前記複数の
    入力イベントの各入力イベントに応答して相互作用的に
    ステップ(a)と(b)を実行するステップとからなる
    ことを特徴とするコンピュータシステム上で実行する自
    動アシスタントにより用いられる方法。
  20. 【請求項20】 コンピュータシステム上で実行する自
    動アシスタントにより用いられる装置において、 前記自動アシスタントは、ユーザタスクを実行するため
    に前記自動アシスタントにより使用される知識を表すビ
    ヘービアを採用することにより、前記ユーザタスクを実
    行し、 (A)信頼性ある状況/活動対を含むトラストライブラ
    リを用いるモードでビヘービアを実行する手段と、 (B)前記ビヘービアの実行中に入力イベントを受領す
    る手段と、 前記入力事象と前記ビヘービアの現在の状態とは、共に
    前記ビヘービアにより処理されるべき状況を規定し、 (C)前記状況を満足する前記ビヘービアにより実行さ
    れる活動を計算する手段と、 (D)前記状況と前記計算された活動により表された状
    況/計算活動対と、前記信頼された状況/活動対の組と
    を比較する手段と、 からなり、 (a)一致する場合には、前記計算された活動を実行
    し、 (b)一致しない場合には、(i) 前記状況/計算活動
    対の一般化を計算し、(ii)前記計算された一般化の許
    容可能性を決定し、(iii) 前記計算された一般化を前
    記トラストライブラリに追加するを有することを特徴と
    するコンピュータシステム上で実行する自動アシスタン
    トにより用いられる装置。
  21. 【請求項21】 (E)前記計算された一般化が受け入
    れ不可能な場合には、前記ビヘービアをデバッグする手
    段をさらに含むことを特徴とする請求項20の装置。
  22. 【請求項22】 (F)前記状況/計算活動対の第2の
    一般化を、前記デバッグされたビヘービアの関数として
    計算する手段と、 (G)前記第2の一般化が前記トラストライブラリ内に
    含まれるか否かを決定する手段とをさらに有し、 含まれる場合には、前記第2の一般化を前記デバッグさ
    れたビヘービアが使用できるように第2のトラストライ
    ブラリ内に追加することを特徴とする請求項21の装
    置。
  23. 【請求項23】 コンピュータシステム上でタスクを実
    行する自動アシスタントの信頼性を向上する方法におい
    て、 (A)信頼性ある応答の組を含むトラストライブラリを
    用いるモードでビヘービアを実行するステップと、 (B)前記ビヘービアの実行中に入力イベントを受領す
    るステップと (C)前記入力イベントを満足させる前記ビヘービアに
    より実行されるべき応答を計算するステップと、 (D)前記計算された応答と、前記信頼性ある応答の組
    とが一致するか否かを決定するためにそれらを比較する
    ステップと、 からなり(a)一致する場合には、前記計算された応答
    を実行し、 (b)一致しない場合には、信頼されない応答の組の信
    頼性を認証するステップで、前記信頼されない応答の組
    は、前記計算された応答を含むことを特徴とする自動ア
    シスタントの信頼性を向上させる方法。
  24. 【請求項24】 前記認証するステップは、前記信頼さ
    れない応答の組の信頼性を認証するために確実シナリオ
    一般化を用いることを特徴とする請求項23の方法。
  25. 【請求項25】 前記信頼される応答の組は、信頼され
    る状況/活動対であることを特徴とする請求項23の方
    法。
  26. 【請求項26】 (E)前記ビヘービアをデバッグする
    ステップと、 (F)前記デバッグされたビヘービアの関数として第2
    の応答を計算するステップと、 (G)前記第2の応答が、前記トラストライブラリ内に
    含まれるか否かを決定するステップとを含み、 含まれる場合には、前記デバッグされたビヘービアによ
    り使用されるために、第2トラストライブラリに対し、
    前記第2の応答を付加することを特徴とする請求項23
    の方法。
  27. 【請求項27】 前記信頼された応答の初期の組は、前
    記ビヘービアの実行前にシミュレートされたビヘービア
    環境を用いて生成されることを特徴とする請求項23の
    方法。
  28. 【請求項28】 前記自動アシスタントは、前記ビヘー
    ビアを中央ソースから選択することを特徴とする請求項
    23の方法。
  29. 【請求項29】 (H)前記計算された応答が前記信頼
    された応答内に見いだされない場合には、所定の応答を
    実行するステップをさらに有することを特徴とする請求
    項23の方法。
  30. 【請求項30】 前記所定の応答は、前記ビヘービアの
    実行を中止することを特徴とする請求項29の方法。
  31. 【請求項31】 前記所定の応答は、前記計算された応
    答の受け入れ可能性を決定するために問い合わせを行う
    ことを特徴とする請求項29の方法。
JP9045161A 1996-02-28 1997-02-28 自動アシスタントの信頼性を向上させる方法 Pending JPH1040109A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US608228 1990-11-02
US08/608,228 US5758029A (en) 1996-02-28 1996-02-28 Formal trust building in the execution of partially trusted behaviors

Publications (1)

Publication Number Publication Date
JPH1040109A true JPH1040109A (ja) 1998-02-13

Family

ID=24435594

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9045161A Pending JPH1040109A (ja) 1996-02-28 1997-02-28 自動アシスタントの信頼性を向上させる方法

Country Status (3)

Country Link
US (1) US5758029A (ja)
EP (1) EP0793162A2 (ja)
JP (1) JPH1040109A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022168425A (ja) * 2021-04-26 2022-11-08 セイコーエプソン株式会社 インクジェットインク組成物、及び記録方法

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7555458B1 (en) 1996-06-05 2009-06-30 Fraud Control System.Com Corporation Method of billing a purchase made over a computer network
US20030195848A1 (en) 1996-06-05 2003-10-16 David Felger Method of billing a purchase made over a computer network
US8229844B2 (en) 1996-06-05 2012-07-24 Fraud Control Systems.Com Corporation Method of billing a purchase made over a computer network
US6657643B1 (en) * 1999-04-20 2003-12-02 Microsoft Corporation Modulating the behavior of an animated character to reflect beliefs inferred about a user's desire for automated services
US7505817B2 (en) * 2000-03-06 2009-03-17 Siemens Technology-To-Business Center, Llc Programming automation by demonstration
US8214461B1 (en) * 2004-11-23 2012-07-03 Hewlett-Packard Development Company, L.P. Method of processing request by server computer system
US8365200B1 (en) 2006-06-30 2013-01-29 Sap Ag Using cancellation status models in a computer system
US8200715B1 (en) 2006-06-30 2012-06-12 Sap Ag Using status models with adaptable process steps in a computer system
US8706776B1 (en) 2006-06-30 2014-04-22 Sap Ag Extending status models in a computer system
US8522261B2 (en) * 2006-06-30 2013-08-27 Sap Ag Using status models with state guards in a computer system
US8219650B2 (en) * 2006-12-28 2012-07-10 Sap Ag Communicating with a status management component in a computer system
US8504980B1 (en) 2008-04-14 2013-08-06 Sap Ag Constraining data changes during transaction processing by a computer system
US8270963B1 (en) * 2010-10-01 2012-09-18 Viasat, Inc. Cross domain notification
US9113499B2 (en) 2010-10-01 2015-08-18 Viasat, Inc. Multiple domain smartphone
US8996472B2 (en) 2012-04-16 2015-03-31 Sap Se Verification of status schemas based on business goal definitions
US8996473B2 (en) 2012-08-06 2015-03-31 Sap Se Checking compatibility of extended and core SAM schemas based on complex goals
US10417594B2 (en) 2013-05-02 2019-09-17 Sap Se Validation of functional correctness of SAM schemas including action chains

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5170464A (en) * 1990-01-26 1992-12-08 International Business Machines Corporation Method for rolling back an expert system
US5363473A (en) * 1991-05-28 1994-11-08 The Trustees Of Columbia University In The City Of New York Incremental update process and apparatus for an inference system
US5283856A (en) * 1991-10-04 1994-02-01 Beyond, Inc. Event-driven rule-based messaging system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022168425A (ja) * 2021-04-26 2022-11-08 セイコーエプソン株式会社 インクジェットインク組成物、及び記録方法

Also Published As

Publication number Publication date
US5758029A (en) 1998-05-26
EP0793162A2 (en) 1997-09-03

Similar Documents

Publication Publication Date Title
JPH1040109A (ja) 自動アシスタントの信頼性を向上させる方法
US7257835B2 (en) Securely authorizing the performance of actions
Schlingloff et al. Modeling and model checking web services
CN111475795A (zh) 一种面向多应用进行统一认证授权的方法及装置
CN110310205A (zh) 一种区块链数据监控方法、装置、设备和介质
US7240247B2 (en) Providing a chain of tokenized error and state information for a call stack
CN111492355B (zh) 用于控制和/或监控装置的方法和控制系统
CN110650216B (zh) 云服务请求方法和装置
US6980989B2 (en) System and method for transaction access control
CN110995703A (zh) 业务处理请求的处理方法、装置、电子设备
KR20170101921A (ko) 요청 송신 방법 및 장치
CN113282499A (zh) 创建测试数据的方法、系统、设备及介质
CN109634865B (zh) 一种代码转测方法、装置及转测终端
Hall Trusting your assistant
Alıcı et al. Openai chatgpt for smart contract security testing: Discussion and future directions
CN112583890B (zh) 基于企业办公系统的消息推送方法、装置和计算机设备
CN115051810A (zh) 基于远程证明的接口型数字对象真实性验证方法及装置
CN119861925A (zh) 一种基于电商SaaS化ERP系统的接口对接取数方法
US20020095656A1 (en) Extensible software development using asynchronous messaging
CN117333127B (zh) 一种基于rpa的业务自动处理方法
CN117155985A (zh) 业务处理方法、装置、电子设备及存储介质
CN115758313A (zh) 基于license的应用授权管控方法及装置
CN111680279B (zh) 登录验证方法、装置及系统
CN117196615A (zh) 跨区块链的交易方法、装置、设备及存储介质
CN116562872A (zh) 跨链交易方法、系统及计算机可读介质