JP2022508527A - ロボティックプロセスオートメーション設計のためのコンテキストベースの勧告 - Google Patents

ロボティックプロセスオートメーション設計のためのコンテキストベースの勧告 Download PDF

Info

Publication number
JP2022508527A
JP2022508527A JP2021542234A JP2021542234A JP2022508527A JP 2022508527 A JP2022508527 A JP 2022508527A JP 2021542234 A JP2021542234 A JP 2021542234A JP 2021542234 A JP2021542234 A JP 2021542234A JP 2022508527 A JP2022508527 A JP 2022508527A
Authority
JP
Japan
Prior art keywords
action
actions
current state
software
module
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.)
Granted
Application number
JP2021542234A
Other languages
English (en)
Other versions
JP7257528B2 (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.)
ServiceNow Canada Inc
Original Assignee
Element AI 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 Element AI Inc filed Critical Element AI Inc
Publication of JP2022508527A publication Critical patent/JP2022508527A/ja
Application granted granted Critical
Publication of JP7257528B2 publication Critical patent/JP7257528B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/33Intelligent editors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven
    • G06F8/355Round-trip engineering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Stored Programmes (AREA)

Abstract

プロセスアクションをロボティックソフトウェアプロセスの設計に追加するためのシステムおよび方法である。コンテキスト認識モジュールが、設計中のプロセスの現在の状態を認識し、その現在の状態に関する情報を勧告モジュールに渡す。勧告モジュールは、現在の状態を評価し、その現在の状態に応答して、勧めるべき少なくとも1つの好適なプロセスアクションを識別する。勧告モジュールは次に、少なくとも1つのプロセスアクションを人間の設計者に勧める。設計者が勧告を受け入れる場合、設計モジュールがプロセスアクションをプロセス設計に追加する。勧告モジュールはまた、好適なプロセスアクションを識別する際に、プロセスおよび他のプロセスにおける以前のアクションについての情報を使用してもよい。コンテキスト認識モジュールおよび勧告モジュールは各々、少なくとも1つの機械学習モジュールを含んでいてもよく、それは、ニューラルネットワークに基づいていてもいなくてもよい。

Description

本発明は、ロボティックプロセスオートメーションに関する。より具体的には、本発明は、ロボティックプロセスオートメーションの設計の単純化に関する。
背景
定型業務タスクを自動化するためのロボティックプロセスオートメーション、すなわち「RPA(Robotic Process Automation)」の使用は、急速により普及しつつある。ソフトウェア「ロボット」(1つのプロセスのために構成されたソフトウェアモジュール)は、データを操作し、電子メール応答を生成し、多くの他のタスクを行なうことができる。これらのタスクの多く、たとえば、大量のデータをあるシステムから別のシステムにコピーアンドペーストすることは、人間にとってうんざりするものであり、多くの場合、エラーが起こりがちである。RPAロボット(「ボット(bot)」または「ロボティックエージェント」としても公知)を使用することは、人間のオペレータおよび監督者が自分たちの努力をより重大なタスクに集中させることを可能にする。
しかしながら、ソフトウェアロボットは依然として、人間によって設計される。これらを設計することは、難しく、時間のかかるタスクであり得る。なぜなら、設計者は、オートメーションに含まれるべきプロセスステップのシーケンスを正確に特定するよう要求されるためである。とりわけ、自動ロボティックエージェントを設計する場合、人間の設計者は、ステップの最も効率的なシーケンスを判定することを目指す。しかしながら、この最も効率的なシーケンスは必ずしも、伝統的な方法であるとは限らないかもしれない。また、現在の設計方法は極度に粒度が細かい。たとえば、「データKをシステムYにコピーする」と言うようにRPAワークフロー経路を設計するのではなく、人間はしばしば、「システムXを開く;システムXでKを探す;見つかった場合、Kをデバイスストレージにコピーする;システムYを開く;システムYにおけるデータK用のフィールドを判定する;KをデバイスストレージからシステムYにおけるそのフィールドにコピーする」と設計しなければならない。見て分かるように、単純な反復プロセスを自動化することでさえ、間違いの確率が高い、細かくてうんざりする作業であり得る。
このため、RPAボットまたはロボティックエージェントの設計に関連するタスクを単純化するシステムおよび方法が明らかに必要である。好ましくは、これらのシステムおよび方法は、コンテキストベースの設計勧告を設計者に提供できるであろう。
概要
本発明は、プロセスアクションをロボティックソフトウェアプロセスの設計に追加するためのシステムおよび方法を提供する。コンテキスト認識モジュールが、設計中のプロセスの現在の状態を認識し、その現在の状態に関する情報を勧告モジュールに渡す。勧告モジュールは、現在の状態を評価し、その現在の状態に応答して、勧めるべき少なくとも1つの好適なプロセスアクションを識別する。勧告モジュールは次に、少なくとも1つのプロセスアクションを人間の設計者に勧める。設計者が勧告を受け入れる場合、設計モジュールがプロセスアクションをプロセス設計に追加する。勧告モジュールはまた、好適なプロセスアクションを識別する際に、プロセスおよび他のプロセスにおける以前のアクションについての情報を使用してもよい。コンテキスト認識モジュールおよび勧告モジュールは各々、少なくとも1つの機械学習モジュールを含んでいてもよく、それは、ニューラルネットワークに基づいていてもいなくてもよい。
第1の局面では、本発明は、少なくとも1つのプロセスアクションをソフトウェアプロセスの設計に追加するための方法であって、方法は、
(a)前記ソフトウェアプロセスにおける現在の状態を認識するステップと、
(b)前記現在の状態に基づいて、前記ソフトウェアプロセスの設計者に、前記少なくとも1つのプロセスアクションの勧告を行なうステップと、
(c)前記設計者から前記勧告に対する応答を受信するステップと、
(d)前記応答が前記少なくとも1つのプロセスアクションの受け入れである場合、前記少なくとも1つのプロセスアクションを前記設計に追加するステップとを含み、
ステップ(b)で前記勧告を行なう際に、機械学習手法が使用される、方法を提供する。
第2の局面では、本発明は、少なくとも1つのプロセスアクションをソフトウェアプロセスの設計に追加するためのシステムであって、システムは、
- 前記ソフトウェアプロセスの現在の状態を認識するためのコンテキスト認識モジュールと、
- 勧告モジュールとを含み、勧告モジュールは、
- 前記現在の状態の評価を行ない、
- 前記評価に基づいて、勧めるべき前記少なくとも1つのプロセスアクションを判定し、
- 前記ソフトウェアプロセスの設計者に、前記少なくとも1つのプロセスアクションの勧告を行ない、
- 前記設計者から前記勧告に対する応答を受信するためのものであり、前記システムはさらに、
- 前記応答が前記プロセスアクションの受け入れである場合、前記少なくとも1つのプロセスアクションを前記設計に追加するための設計モジュールを含む、システムを提供する。
第3の局面では、本発明は、実行されると、少なくとも1つのプロセスアクションをソフトウェアプロセスの設計に追加するための方法を実施するコンピュータ読取可能およびコンピュータ実行可能命令が符号化された、非一時的コンピュータ読取可能媒体であって、方法は、
(a)前記ソフトウェアプロセスにおける現在の状態を認識するステップと、
(b)前記現在の状態に基づいて、前記ソフトウェアプロセスの設計者に、前記少なくとも1つのプロセスアクションの勧告を行なうステップと、
(c)前記設計者から前記勧告に対する応答を受信するステップと、
(d)前記応答が前記少なくとも1つのプロセスアクションの受け入れである場合、前記少なくとも1つのプロセスアクションを前記設計に追加するステップとを含み、
ステップ(b)で前記勧告を行なう際に、機械学習手法が使用される、非一時的コンピュータ読取可能媒体を提供する。
図面の簡単な説明
以下に、本発明を、以下の図を参照して説明する。図中、同じ参照番号は、同じ要素を示す。
この発明のある局面に従ったシステムのブロック図である。 図1のシステムの別の実施形態のブロック図である。 この発明のある局面に従った方法を詳述するフローチャートである。
詳細な説明
本発明は、ロボティックプロセスオートメーションの設計に追加されるべきプロセスアクションを勧める。勧告はコンテキストに即したものであり、設計中のプロセスの現在の状態に依存する。すなわち、あるプロセスの初めに勧められるアクションは必ずしも、そのプロセスの終わり近くに勧められるアクションと同じとは限らないであろう(もちろん、いくつかのアクションは絶えず勧められ得る。たとえば、「保存する」というアクションは一貫して提案され得る)。しかしながら、一般に、勧められるアクションは、各プロセスおよび各完了したプロセスステップによって変わるであろう。
一例として、設計者は、電子メールを開き、電子メールの添付ファイルにおける文書を開き、文書のいくつかのフィールドをスプレッドシートにコピーし、文書を閉じ、第2の文書を保存するプロセスオートメーションロボットを作りたい場合がある。このプロセスオートメーションロボットの設計中、本発明は、(「電子メールを開く」ステップの後に)電子メールに添付ファイルがあることを認識し、プロセスにおける次のステップが「添付された文書を開いて保存する」であるべきであることを自動的に提案できるであろう。次に、本発明は、ユーザがデータをそこから選択する関連フィールドのリストを提案できるであろう。(以下により詳細に説明されるような)好ましい一実現化例では、本発明は、これらの勧告を行なう際に機械学習手法を使用する。具体的には、この場合、システムは、これらのフィールドを提案するであろう。なぜなら、添付ファイルを有する電子メールの受信の後に、他の場所にコピーされるべき内容の抽出が続くことが多いということを、システムにおける機械学習モジュールが履歴プロセスデータを使用して「学習した」ためである。
ここで図1を参照して、ブロック図は、この発明のある局面に従ったシステムを示す。システム10では、コンテキスト認識モジュール20が、設計中のプロセスの現在の状態を認識し、その現在の状態の詳細を勧告モジュール30に送信する。勧告モジュール30は次に、プロセスの現在の状態を評価する。その評価に基づいて、勧告モジュール30は次に、(もしあれば)どのプロセスアクションが提示されるべきかを判定し、当該プロセスアクションを設計者に勧める。設計者は、勧告を受け入れることによって、または勧告を拒否することによって、勧告に応答する。設計者が勧告を受け入れる場合、設計モジュール40が、勧められたプロセスアクションをプロセス設計に追加する。一方、設計者が勧められたプロセスアクションを拒否する場合、勧告モジュール30は、異なるプロセスアクションを勧めてもよく、または、新しい状態情報を待ってもよい。以下により詳細に下に説明されるように、システムは、現在の状態に関連する情報および勧められたあらゆるプロセスアクションに関連する情報だけでなく、それらのアクションが設計者によって受け入れられたかまたは拒否されたかに関連する情報も収集し、格納してもよい。このデータは、勧告モジュール30によって生成された勧告を絶えず改良するために使用されてもよい。
一例として、あるプロセスは、電子メールアプリケーションを開くことを伴い得る。プロセスの「現在の状態」はその場合、「その電子メールアプリケーションは今開いている」となるであろう。コンテキスト認識モジュール20はその状態を識別し、状態に関連する情報を勧告モジュール30に渡すであろう。勧告モジュール30は状態を評価し、勧めるべき可能なプロセスアクションを判定するであろう。そのような1つのプロセスアクションは、「新しい電子メールウィンドウを開ける」であり得る。別のプロセスアクションは、「特定の電子メールテンプレートを開く」であり得る。別のプロセスアクションは、特定の送信人からのすべての電子メールに「高優先順位」としてフラグを立てる」であり得る。以下に説明されるように、これらのアクションは、現在の状態の情報または追加情報のみに基づいて判定されてもよい。勧告モジュール30は次に、勧められたプロセスアクションを設計者に提示するであろう。設計者が勧告を受け入れる場合、関連付けられたプロセスアクションが、プロセスの設計に追加されるであろう。
なお、「プロセスの設計」は、多くのやり方で(たとえば、RPA設計環境において設計者が構築するフローチャートとして)表わされてもよい。しかしながら、典型的には、どんな表面的な表現が使用されても、各プロセスは、設計者がより多くのステップを追加するにつれて拡大するソフトウェアファイルに対応するであろう。各プロセスアクションも同様に、ソフトウェアコードの区分に対応するであろう。設計者が勧告を受け入れる場合、ソフトウェアコードの関連付けられた区分が、プロセスのソフトウェアファイルに適切な場所で追加されるであろう。
明らかであるはずであるように、複数のプロセスアクションが、プロセスの任意の所与の状態のために勧められてもよい。すなわち、複数の異なるプロセスアクションが、プロセスにおける特定の点を適度に追従してもよい。勧告は、同時にまたは順次提示されてもよい。すなわち、いくつかの実現化例では、設計者は、プロセスの同じ特定の状態を各々追従し得る、勧められる複数のプロセスアクションの同時リストから選ぶことを許可されてもよい。他の実現化例では、単一の特定の状態に関連する複数の勧告が、相次いで提示されてもよい。これらの勧告は、設計者が1つのアクションを選択するまで、または、設計者が提示されたアクションのすべてを拒否するまで、提示されるであろう。フラストレーションを最小限にするために、「すべてを拒否する」というオプションを早い時期に設計者に提示することが好ましいかもしれない。これは、勧告が設計者のデバイスの通常動作に干渉するように構成された場合に特に好ましいであろう。また、そのような場合には、プロセスアクションを、現在のプロセスに対するそれらの適性の順にランク付けすることが好ましいであろう。いったんランク付けされると、勧告は、「最もお勧めの」アクションが最初に提示され、「2番目にお勧めの」アクションが次に提示されるなどのように、設計者に提示され得る。
勧告モジュール30が、どのプロセスアクションを勧めるべきかを判定することができない、または、プロセスアクションが勧められるべきであると判定することができないシナリオもあるかもしれない。そのようなシナリオでは、勧告モジュール30は、新しい現在の状態が受信されるまで待つように構成され得る。それに代えて、勧告モジュール30は、デフォルトアクションのリストを提示し得る。そのようなデフォルトアクションは、「保存する」または「新しいウィンドウを開く」などの所与のコンテキストの予測可能なアクションを含み得る。
プロセスアクションは、「ストレージから現在の値を削除する」といった、スタンドアロンの単純なアクションであってもよい。しかしながら、それに代えて、プロセスアクションは複雑であってもよい。単一のプロセスアクションが、多くのより小さいプロセスアクションを含んでいてもよい。たとえば、上に概説された多段階コピーシーケンス(「システムXを開く」など)ではなく、本発明は、ユーザが「KをシステムYにコピーする」を選択することを勧め得る。この単一の「より高いレベルの」プロセスアクションは、典型的に必要とされる多段階プロセスよりも、人間のユーザにとってより分かりやすく、また、人的エラーの影響を受けにくい。
加えて、単一の勧告が、複数の「より高いレベルの」プロセスアクションを含んでいてもよい。たとえば、プロセスにおけるどこかの点で、勧告モジュール30は、あるファイルが「保存される」ことを勧めるかもしれない。その勧告がいったん受け入れられると、次の勧告は「ファイルを閉じる」であるかもしれない。次の勧告は「新しいファイルを開く」であるかもしれない。他のシナリオでは、これらのプロセスアクションはすべて、一度に勧められてもよい。すなわち、設計者には、「ファイルを保存する-ファイルを閉じる-新しいファイルを開く」という勧告が提示されるであろう。
当業者には明らかであるように、RPA設計者は、GUIベースの環境またはテキストベースの環境を含むもののそれらに限定されないあらゆる種類の設計環境を使用してもよい。いくつかの実現化例では、さらに、設計者は、自分または他者が自動化されるべきプロセスを行なっていることを「記録」してもよい。そのような実現化例では、RPAプロセスの設計は、どの特定の環境でも起こらないであろう。このため、本発明はその勧告を、所与の環境にとって好適な任意の形式で提示するように構成され得る。たとえば、GUIベースの設計環境では、勧められるプロセスアクションは、ドロップダウンメニューに、またはドラッグアンドドロップアイコンとして出現してもよい。一方、テキストベースの設計環境では、勧められるプロセスアクションは、半分タイプされた単語を「完成される」「影付き文字」として出現してもよい(もちろん、ここでも実現化例に依存して、テキストベースの環境もドロップダウンを使用してもよく、逆もまた同様である)。別の例として、勧められるプロセスアクションは、設計者のディスプレイデバイス上に「ポップアップ」または通知として出現してもよい。
勧告モジュール30によって勧められるプロセスアクションは、あらゆる種類の好適なアクションであってもよい。それらは、コピー、ペースト、削除などのデータ操作アクション;あるアプリケーションから別のアプリケーションにデータを移動させるなどの、システム間の相互作用に関連するアクション;電子メールを送信すること、または「チャットボット」タイプのプロセスのために個別の応答を配信することなどの通信関連アクション;および、ファイルを保存するなどのストレージ関連アクションを含んでいてもよいが、それらに限定されない。
いくつかの実現化例では、コンテキスト認識モジュール20および勧告モジュール30は、ルールベースのモジュールを含む。しかしながら、これらのモジュールが受信する可能性があるデータ量、および、それらがそのデータを受信し得る多くの異なるシナリオに起因して、各状況をカバーするルールを開発することは難しいかもしれない。このため、これらのモジュールが各々、ニューラルネットワークに基づいていてもいなくてもよい、訓練された機械学習サブモジュールを含むことが好ましい。コンテキスト認識モジュール20の場合、機械学習サブモジュールは、システム情報に基づいて多くの可能なプロセス状態を識別するように訓練され得る。
勧告モジュール30の場合、機械学習サブモジュールは、現在のプロセス状態を評価し、それに応答して好適なプロセスアクションを識別するように訓練され得る。実現化例に依存して、さらに、設計中のプロセスに依存して、勧告モジュール30は、複数のニューラルネットワークを含んでいてもよい。たとえば、あるニューラルネットワークは、コンテキスト情報を単一の数値表現に符号化することを担ってもよく、一方、別の機械学習サブモジュールは、その表現を使用して、符号化されたコンテキストに基づいてアクションを勧めてもよい。関連するニューラルネットワークアプリケーションの一例は、言語ベースの(通信関連)アクションを識別するために、周知の自然言語処理手法を使用することであろう。勧告モジュール30は、任意の所与のプロセス状態に対する所与のアクションの適性を評価するためのニューラルネットワークを含んでいてもよい(適性はまた、「勧告強度」、または、設計者が勧告アクションを受け入れる確率と呼ばれてもよい)。いったん訓練されると、機械学習ベースの勧告モジュール30は、現在の状態の符号化、すなわち、標準表現フォーマットで符号化され、言語ベースの情報または視覚情報であり得る、プロセス状態に関連するコンテキスト情報を、入力として受信するであろう。機械学習ベースの勧告モジュール30は次に、潜在的プロセスアクションのリストと、各アクションが設計者によって受け入れられる確率とを判定してもよい。しかしながら、当業者には明らかであるように、コンテキスト認識モジュール20および勧告モジュール30は、ルールベースの要素とニューラルネットワークベースの要素とのあらゆる組合せを含んでいてもよい。
図2は、図1におけるシステムの別の実施形態を示すブロック図である。図2に示すシステムは、図1におけるシステムに非常に類似しており、コンテキスト認識モジュール20が、プロセスの現在の状態についての情報を勧告モジュール30に送信する。勧告モジュール30は、好適なプロセスアクションを識別し、それらのプロセスアクションを設計者に勧める。設計者が勧告を受け入れる場合、設計モジュール40が、そのプロセスアクションをソフトウェアプロセスの全体的設計に追加する。しかしながら、この実施形態では、勧告モジュール30は、履歴モジュール50からも情報を受信する。
履歴モジュール50は、現在設計中のプロセスに関連する情報を格納する。加えて、履歴モジュール50は、現在の設計者によって以前に設計されたプロセスおよび/または他者によって設計されたプロセスに関連する情報を格納してもよい。勧告モジュール30は、所与のプロセス状態に対する好適な応答を判定する際に、そのような情報を使用することができる。履歴モジュール50はまた、プロセスの各状態に関連するコンテキスト情報だけでなく、その状態に応答して勧められたプロセスアクションに関連する情報、および、設計者によって受け入れられた勧められたプロセスアクションに関連する情報も格納してもよい。同様に、履歴モジュール50は、勧められたどのプロセスアクションが設計者によって受け入れられなかったかに関連するデータを格納してもよい。この情報は次に、機械学習ベースの勧告モジュール30のための訓練の次の段階で使用され得る。これに代えて、主としてルールベースのモジュールが使用される場合、この情報は、後で新しいルールを確立する際に使用されてもよい。このため、この情報は、将来の勧告を改良し、それらの将来の勧告が設計者によって受け入れられる可能性を高めるために使用され得る。一例として、履歴モジュール50からの情報を使用して、勧告モジュール30は、「現在の状態X」において行なわれた最も一般的なアクションが「アクションA」であると判定するかもしれない。勧告モジュール30はその場合、アクションAが設計者に勧められるべきであると判定してもよい。別の例として、勧告モジュール30は主として履歴モジュール50からの情報に依存してもよく、たとえば、「現在の状態X」は目立たないかまたは平凡なものであってもよい。たとえば、現在の状態は、ソフトウェアアプリケーションがアクティブではない、プロセスにおける切替点を反映していてもよい。そのような点では、勧告モジュール30は、多数の可能なプロセスアクションを識別することができるものの、それらを見分ける方法をあまり有さないであろう。そのような場合、プロセスにおける以前のアクションが指針を提供するかもしれない。すなわち、勧告モジュール30は、次のステップを勧めるために、現在のプロセスにおける以前のアクションについての履歴モジュール50からの情報を使用してもよい。同様に、他の同様のプロセスに関連する情報が、どのプロセスアクションが勧められるべきを判定するために勧告モジュール30によって使用されてもよい。
図3は、本発明のある局面に従った方法を詳述するフローチャートである。ステップ100で、プロセス設計が、いくつかの新しい現在の状態に達する。これは、メッセージを受信すること、アプリケーションを開くこと、または、任意の他のイベントまたは変更を含んでいてもよい。ステップ110で、新しい現在の状態が認識される。次にステップ120で、現在の状態に応答する少なくとも1つの好適なプロセスアクションが識別される。次にステップ130で、この少なくとも1つのプロセスアクションが設計者に勧められる。
決定140で、方法は、設計者が勧告を受け入れたかまたは拒否したかを判定する。設計者が勧告を受け入れた場合、ステップ150で、少なくとも1つのプロセスアクションはプロセス設計に追加される。この点で、方法は終了してもよく、または、新しい現在の状態について繰り返してもよい(すなわち、方法は終了するかまたはステップ100に戻ってもよい)。
一方、設計者が勧告を拒否した場合、決定160は、プロセスの現在の状態のために任意の他のプロセスアクションが勧められ得るかどうか尋ねる。他のプロセスアクションが勧められ得る場合、方法はステップ130に戻り、それらの他のプロセスアクションが設計者に勧められる。しかしながら、他のプロセスアクションを勧めることができない場合、方法は、設計が新しい現在の状態に達するのを待つ(すなわち、ステップ100に戻る)。明らかであるように、設計が決定160からその新しい現在の状態に達するために、設計者は助けなしで設計を続けたであろう。なぜなら、その状態のために勧告がそれ以上行なわれないためである。
本発明のさまざまな局面は、ソフトウェアシステム全体におけるソフトウェアモジュールとして実現されてもよいということが明らかであるはずである。そのため、本発明は、実行されると予め定義された関数を用いてさまざまなソフトウェアモジュールを実現するコンピュータ実行可能命令の形をとってもよい。
加えて、特に指定のない限り、ここでの「画像」へのいかなる言及も、画素を含むデジタル画像を指すということが明らかであるはずである。同様に、「音声ファイル」へのいかなる言及も、特に指定のない限り、デジタル音声ファイルを指す。「ビデオ」、「ビデオファイル」、「データオブジェクト」、「データファイル」、および他のすべてのそのような用語は、特に指定のない限り、デジタルファイルおよび/またはデータオブジェクトを意味すると解釈されるべきである。
この発明の実施形態は、方法ステップの態様でプログラムされたデータプロセッサまたは同様のデバイスによって実行されてもよく、または、これらのステップを実行するための手段が設けられた電子システムによって実行されてもよい。同様に、電子メモリは、コンピュータディスケット、CD-ROM、ランダムアクセスメモリ(Random Access Memory:RAM)、読出専用メモリ(Read Only Memory:ROM)、または当該技術において公知の同様のコンピュータソフトウェア記憶媒体などを意味し、そのような方法ステップを実行するようにプログラムされてもよい。また、これらの方法ステップを表わす電子信号が、通信ネットワークを介して伝送されてもよい。
この発明の実施形態は、任意の従来のコンピュータプログラミング言語で実現されてもよい。たとえば、好ましい実施形態は、手続き型プログラミング言語(たとえば「C」または「Go」)、もしくはオブジェクト指向言語(たとえば「C++」、「java(登録商標)」、「PHP」、「PYTHON」、または「C#」)で実現されてもよい。この発明の代替的な実施形態は、予めプログラムされたハードウェア要素、他の関連する構成要素として、または、ハードウェア構成要素とソフトウェア構成要素との組合せとして実現されれてもよい。
実施形態は、コンピュータシステムでの使用のためのコンピュータプログラム製品として実現され得る。そのような実現化例は、一連のコンピュータ命令を含んでいてもよく、当該コンピュータ命令は、コンピュータ読取可能媒体(たとえばディスケット、CD-ROM、ROM、または固定ディスク)などの有形的媒体上に固定されるか、もしくは、モデムまたは他のインターフェイスデバイス、たとえば、媒体を通してネットワークに接続された通信アダプタを介して、コンピュータシステムに伝送可能である。媒体は、有形的媒体(たとえば光学または電気通信線)であるか、もしくは、無線手法で実現された媒体(たとえばマイクロ波、赤外線または他の伝送手法)であってもよい。一連のコンピュータ命令は、ここに前述された機能性のすべてまたは一部を具現化する。当業者であれば、そのようなコンピュータ命令が、多くのコンピュータアーキテクチャまたはオペレーティングシステムとともに使用するための多くのプログラミング言語で書かれ得るということを理解するはずである。さらに、そのような命令は、半導体、磁気、光学または他のメモリデバイスなどの任意のメモリデバイスに格納されてもよく、光学、赤外線、マイクロ波または他の伝送技術などの任意の通信技術を使用して伝送されてもよい。そのようなコンピュータプログラム製品は、印刷されたドキュメントまたは電子ドキュメントを伴うリムーバブル媒体(たとえば市販ソフトウェア)として配布されてもよく、コンピュータシステムに(たとえばシステムROMまたは固定ディスク上に)予め搭載されてもよく、または、サーバからネットワーク(たとえばインターネットまたはワールドワイドウェブ)を通して配布されてもよい、ということが予期される。もちろん、この発明のいくつかの実施形態は、ソフトウェア(たとえばコンピュータプログラム製品)とハードウェアとの組合せとして実現されてもよい。この発明のさらに他の実施形態は、完全にハードウェア、または完全にソフトウェア(たとえばコンピュータプログラム製品)として実現されてもよい。
この発明を理解する人間はここで、上述のものの代替的構造および実施形態または変形に想到し得る。それらはすべて、請求項で定義されるようなこの発明の範囲内に入るよう意図される。

Claims (21)

  1. 少なくとも1つのプロセスアクションをソフトウェアプロセスの設計に追加するための方法であって、前記方法は、
    (a)前記ソフトウェアプロセスにおける現在の状態を認識するステップと、
    (b)前記現在の状態に基づいて、前記ソフトウェアプロセスの設計者に、前記少なくとも1つのプロセスアクションの勧告を行なうステップと、
    (c)前記設計者から前記勧告に対する応答を受信するステップと、
    (d)前記応答が前記少なくとも1つのプロセスアクションの受け入れである場合、前記少なくとも1つのプロセスアクションを前記設計に追加するステップとを含み、
    ステップ(b)で前記勧告を行なう際に、機械学習が使用される、方法。
  2. 前記現在の状態は、外部ソフトウェアアプリケーションに関連する、請求項1に記載の方法。
  3. 複数のプロセスアクションをさらに含み、前記複数のプロセスアクションのすべてが同時にユーザに勧められる、請求項1に記載の方法。
  4. 複数のプロセスアクションをさらに含み、前記複数のプロセスアクションの各々が順次、ユーザに勧められる、請求項1に記載の方法。
  5. 前記少なくとも1つのプロセスアクションは、複数のサブアクションを含む、請求項1に記載の方法。
  6. 前記現在の状態は、前記ソフトウェアプロセスにおける現在のアクションに関連する、請求項1に記載の方法。
  7. ステップ(b)における前記勧告はさらに、前記ソフトウェアプロセスにおける少なくとも1つの以前のアクションに基づいている、請求項1に記載の方法。
  8. ステップ(b)における前記勧告はさらに、他のソフトウェアプロセスに基づいている、請求項1に記載の方法。
  9. 前記少なくとも1つのプロセスアクションは、
    - データ操作アクション、
    - システム間の相互作用に関連するアクション、
    - 通信関連アクション、および、
    - ストレージ関連アクション、
    のうちの少なくとも1つである、請求項1に記載の方法。
  10. (e)前記現在の状態、前記少なくとも1つのプロセスアクション、および前記応答に関連するデータを収集するステップと、
    (f)将来の勧告を改良するために、前記データを用いた機械学習を使用するステップとをさらに含む、請求項1に記載の方法。
  11. 少なくとも1つのプロセスアクションをソフトウェアプロセスの設計に追加するためのシステムであって、前記システムは、
    - 前記ソフトウェアプロセスの現在の状態を認識するためのコンテキスト認識モジュールと、
    - 機械学習対応勧告モジュールとを含み、前記機械学習対応勧告モジュールは、
    - 前記現在の状態の評価を行ない、
    - 前記評価に基づいて、勧めるべき前記少なくとも1つのプロセスアクションを判定し、
    - 前記ソフトウェアプロセスの設計者に、前記少なくとも1つのプロセスアクションの勧告を行ない、
    - 前記設計者から前記勧告に対する応答を受信するためのものであり、前記システムはさらに、
    - 前記応答が前記プロセスアクションの受け入れである場合、前記少なくとも1つのプロセスアクションを前記設計に追加するための設計モジュールを含む、システム。
  12. 前記現在の状態は、外部ソフトウェアアプリケーションに関連する、請求項11に記載のシステム。
  13. 複数のプロセスアクションをさらに含み、前記複数のプロセスアクションのすべてが同時にユーザに勧められる、請求項11に記載のシステム。
  14. 複数のプロセスアクションをさらに含み、前記複数のプロセスアクションの各々が順次、ユーザに勧められる、請求項11に記載のシステム。
  15. 前記少なくとも1つのプロセスアクションは、複数のプロセスアクションを含む、請求項11に記載のシステム。
  16. 前記現在の状態は、前記ソフトウェアプロセスにおける現在のアクションに関連する、請求項11に記載のシステム。
  17. 前記ソフトウェアプロセスにおける以前のアクションに関連する情報を格納するための履歴モジュールをさらに含み、前記勧告モジュールは、勧めるべき前記少なくとも1つのプロセスアクションを判定する際に前記情報を使用する、請求項11に記載のシステム。
  18. 前記履歴モジュールはさらに、他のソフトウェアプロセスに関連する他の情報を格納し、前記他の情報も、勧めるべき前記少なくとも1つのプロセスアクションを判定する際に前記勧告モジュールによって使用される、請求項17に記載のシステム。
  19. 前記少なくとも1つのプロセスアクションは、
    - データ操作アクション、
    - システム間の相互作用に関連するアクション、
    - 通信関連アクション、および、
    - ストレージ関連アクション、
    のうちの少なくとも1つである、請求項11に記載のシステム。
  20. 前記履歴モジュールはさらに、前記現在の状態、前記少なくとも1つのプロセスアクション、および前記応答に関連するデータを格納し、前記勧告モジュールは、将来の勧告を改良するために前記データを使用する、請求項17に記載のシステム。
  21. 実行されると、少なくとも1つのプロセスアクションをソフトウェアプロセスの設計に追加するための方法を実施するコンピュータ読取可能およびコンピュータ実行可能命令が符号化された、非一時的コンピュータ読取可能媒体であって、前記方法は、
    (a)前記ソフトウェアプロセスにおける現在の状態を認識するステップと、
    (b)前記現在の状態に基づいて、前記ソフトウェアプロセスの設計者に、前記少なくとも1つのプロセスアクションの勧告を行なうステップと、
    (c)前記設計者から前記勧告に対する応答を受信するステップと、
    (d)前記応答が前記少なくとも1つのプロセスアクションの受け入れである場合、前記少なくとも1つのプロセスアクションを前記設計に追加するステップとを含み、
    ステップ(b)で前記勧告を行なう際に、機械学習手法が使用される、非一時的コンピュータ読取可能媒体。
JP2021542234A 2018-09-28 2019-09-26 ロボティックプロセスオートメーション設計のためのコンテキストベースの勧告 Active JP7257528B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862738044P 2018-09-28 2018-09-28
US62/738,044 2018-09-28
PCT/CA2019/051373 WO2020061697A1 (en) 2018-09-28 2019-09-26 Context-based recommendations for robotic process automation design

Publications (2)

Publication Number Publication Date
JP2022508527A true JP2022508527A (ja) 2022-01-19
JP7257528B2 JP7257528B2 (ja) 2023-04-13

Family

ID=69949461

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021542234A Active JP7257528B2 (ja) 2018-09-28 2019-09-26 ロボティックプロセスオートメーション設計のためのコンテキストベースの勧告

Country Status (8)

Country Link
US (1) US20210342124A1 (ja)
EP (1) EP3857354A4 (ja)
JP (1) JP7257528B2 (ja)
KR (1) KR102594389B1 (ja)
CN (1) CN113227964A (ja)
AU (1) AU2019348060B2 (ja)
CA (1) CA3114419A1 (ja)
WO (1) WO2020061697A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10970064B1 (en) 2020-07-28 2021-04-06 Bank Of America Corporation Dynamically updating a software program to resolve errors
US11592804B2 (en) * 2020-10-14 2023-02-28 UiPath, Inc. Task automation by support robots for robotic process automation (RPA)
US11682293B2 (en) * 2021-09-13 2023-06-20 Motorola Solutions, Inc. Security ecosystem
CN114488879B (zh) * 2021-12-30 2024-05-31 深圳鹏行智能研究有限公司 一种机器人控制方法以及机器人

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010049397A (ja) * 2008-08-20 2010-03-04 Nippon Telegr & Teleph Corp <Ntt> コンポーネント連携シナリオ統合開発環境提供システム、シナリオ作成支援方法、及び、プログラム
US20140026113A1 (en) * 2012-07-19 2014-01-23 Arshad Farooqi Mobile Application Creation System
US20140173555A1 (en) * 2012-12-13 2014-06-19 Microsoft Corporation Social-based information recommendation system
EP3206170A1 (en) * 2016-02-09 2017-08-16 Wipro Limited System and methods for creating on-demand robotic process automation
WO2017208135A1 (en) * 2016-05-29 2017-12-07 Wix.Com Ltd. Creation and update of hierarchical websites based on collected business knowledge

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8396815B2 (en) * 2010-04-29 2013-03-12 International Business Machines Corporation Adaptive business process automation
US10607165B2 (en) * 2013-11-14 2020-03-31 Salesforce.Com, Inc. Systems and methods for automatic suggestions in a relationship management system
CN106462399B (zh) * 2014-06-30 2019-10-18 微软技术许可有限责任公司 代码推荐
US20160299977A1 (en) * 2015-04-13 2016-10-13 Quixey, Inc. Action-Based App Recommendation Engine
EP3112965A1 (en) * 2015-07-02 2017-01-04 Accenture Global Services Limited Robotic process automation
IN2015CH04995A (ja) * 2015-09-18 2015-10-09 Wipro Ltd
US11886957B2 (en) * 2016-06-10 2024-01-30 Apple Inc. Artificial intelligence controller that procedurally tailors itself to an application
EP3312722A1 (en) * 2016-10-21 2018-04-25 Fujitsu Limited Data processing apparatus, method, and program
US11062225B2 (en) * 2016-12-09 2021-07-13 Adobe Inc. Techniques for providing sequential recommendations to users
US11157855B2 (en) * 2017-01-09 2021-10-26 Sutherland Global Services Inc. Robotics process automation platform
US9817967B1 (en) * 2017-01-13 2017-11-14 Accenture Global Solutions Limited Integrated robotics and access management for target systems
US11138539B2 (en) * 2017-08-25 2021-10-05 Target Brands, Inc. Robtic business process automation system utilizing reusable task-based microbots
US10766136B1 (en) * 2017-11-03 2020-09-08 Amazon Technologies, Inc. Artificial intelligence system for modeling and evaluating robotic success at task performance
US11967422B2 (en) * 2018-03-05 2024-04-23 Medtech S.A. Robotically-assisted surgical procedure feedback techniques

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010049397A (ja) * 2008-08-20 2010-03-04 Nippon Telegr & Teleph Corp <Ntt> コンポーネント連携シナリオ統合開発環境提供システム、シナリオ作成支援方法、及び、プログラム
US20140026113A1 (en) * 2012-07-19 2014-01-23 Arshad Farooqi Mobile Application Creation System
US20140173555A1 (en) * 2012-12-13 2014-06-19 Microsoft Corporation Social-based information recommendation system
EP3206170A1 (en) * 2016-02-09 2017-08-16 Wipro Limited System and methods for creating on-demand robotic process automation
WO2017208135A1 (en) * 2016-05-29 2017-12-07 Wix.Com Ltd. Creation and update of hierarchical websites based on collected business knowledge

Also Published As

Publication number Publication date
KR20210095126A (ko) 2021-07-30
US20210342124A1 (en) 2021-11-04
AU2019348060B2 (en) 2023-03-02
EP3857354A1 (en) 2021-08-04
WO2020061697A1 (en) 2020-04-02
CN113227964A (zh) 2021-08-06
CA3114419A1 (en) 2020-04-02
AU2019348060A1 (en) 2021-05-27
JP7257528B2 (ja) 2023-04-13
KR102594389B1 (ko) 2023-10-26
EP3857354A4 (en) 2021-11-24

Similar Documents

Publication Publication Date Title
JP7257528B2 (ja) ロボティックプロセスオートメーション設計のためのコンテキストベースの勧告
US11394667B2 (en) Chatbot skills systems and methods
US11983746B2 (en) User interface and process flow for providing an intent suggestion to a user in a text-based conversational experience with user feedback
US11036523B2 (en) Systems and methods for adaptive user interfaces
CN112106022A (zh) 用于更新会话机器人的图形用户界面特征
US7774349B2 (en) Statistical models and methods to support the personalization of applications and services via consideration of preference encodings of a community of users
US11163617B2 (en) Proactive notification of relevant feature suggestions based on contextual analysis
US11972331B2 (en) Visualization of training dialogs for a conversational bot
JP2024502400A (ja) グラフ・ニューラル・ネットワークを用いたポータブル・ドキュメント・フォーマットの表形式データの自動描写及び抽出
US11604563B1 (en) Predictive answers based on context modeling
US20220284319A1 (en) Intelligent guidance using machine learning for user navigation of multiple web pages
US20230004360A1 (en) Methods for managing process application development and integration with bots and devices thereof
US11989395B1 (en) Interface modification systems and methods
CN112579587B (zh) 数据清洗方法及装置、设备和存储介质
US20240202662A1 (en) Automated Personalized Electronic Communication Assistant
CN117289893A (zh) 基于大语言模型的用户与智能终端语音交互方法和装置
CN112884166A (zh) 机器学习流程图的生成方法及装置、设备
FI20195352A1 (en) Data-driven optimization
CN115310521A (zh) 训练算法的选取方法、装置以及存储介质和电子设备

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210526

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210526

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220525

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220614

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220805

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20220805

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20220912

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221111

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: 20230307

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230403

R150 Certificate of patent or registration of utility model

Ref document number: 7257528

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150