(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-08-29
(54)【発明の名称】ユーザー制約付きプロセスマイニング
(51)【国際特許分類】
G06Q 10/0633 20230101AFI20240822BHJP
【FI】
G06Q10/0633
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2021572651
(86)(22)【出願日】2021-11-01
(85)【翻訳文提出日】2022-02-14
(86)【国際出願番号】 US2021072162
(87)【国際公開番号】W WO2023027760
(87)【国際公開日】2023-03-02
(32)【優先日】2021-08-21
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】520262319
【氏名又は名称】ユーアイパス,インコーポレイテッド
【氏名又は名称原語表記】UiPath,Inc.
【住所又は居所原語表記】1 Vanderbilt Avenue, 60th Floor, New York, NY 10017, United States of America
(74)【代理人】
【識別番号】100180781
【氏名又は名称】安達 友和
(74)【代理人】
【識別番号】100182903
【氏名又は名称】福田 武慶
(72)【発明者】
【氏名】ブロンズ,デニス
(72)【発明者】
【氏名】スチープンス,ローランド ヨハナス
【テーマコード(参考)】
5L010
【Fターム(参考)】
5L010AA07
(57)【要約】
プロセスのプロセスツリーを生成するためのシステム及び方法が提供される。プロセスの遂行のイベントログが受信される。プロセスの1つ以上のアクティビティに対するユーザー制約がユーザーから受信される。プロセスツリーが、ユーザー制約に基づいてイベントログから生成される。プロセスツリーが出力される。
【特許請求の範囲】
【請求項1】
プロセスの遂行のイベントログの受信するステップと、
前記プロセスの1つ以上のアクティビティに対するユーザー制約をユーザーから受信するステップと、
前記ユーザー制約に基づいて前記イベントログからプロセスツリーを生成するステップと、
前記プロセスツリーを出力するステップと、
を含むコンピュータ実装方法。
【請求項2】
前記ユーザー制約に基づいて前記イベントログからプロセスツリーを生成する前記ステップは、
前記ユーザー制約に基づいてグラフを構築するステップと、
前記グラフに基づいて分割されてはならないアクティビティのクラスタを定義するステップと、
前記アクティビティのクラスタに基づいて前記プロセスのイベントログを分割するステップと、を含む、請求項1に記載のコンピュータ実装方法。
【請求項3】
前記ユーザー制約は、アクティビティ間のシーケンス関係を定義するユーザー制約を含み、前記ユーザー制約に基づいて前記イベントログからプロセスツリーを生成する前記ステップは、
1)有向グラフにおける最も高い順方向接続性を有するアクティビティと、2)前記アクティビティのクラスタにおける最も高い順方向接続性を有する前記アクティビティとクラスタ化されるアクティビティとに基づいて前記イベントログを分割するステップを含む、請求項2に記載のコンピュータ実装方法。
【請求項4】
前記ユーザー制約は、アクティビティ間のループ関係を定義するユーザー制約を含み、前記ユーザー制約に基づいて前記イベントログからプロセスツリーを生成する前記ステップは、
前記ループ関係の本体及び前記ループ関係の再加工部に対応する前記プロセスのアクティビティを識別するステップと、
前記ループ関係を定義する前記ユーザー制約における前記アクティビティのうちの2つ以上が前記本体に対応するように識別されると決定することに応じて、前記ループ関係を定義する前記ユーザー制約における前記アクティビティのうちの1つを前記本体に配置するとともに、前記ループ関係を定義する前記ユーザー制約における残りのアクティビティを前記再加工部に配置するステップと、
各それぞれのクラスタのアクティビティが前記本体と前記再加工部との間で分割されないと決定することに応じて、前記それぞれのクラスタの全てのアクティビティを前記同じ本体又は再加工部に配置するステップと、
を含む、請求項2に記載のコンピュータ実装方法。
【請求項5】
特定のクラスタのアクティビティが前記本体又は前記再加工部に割り当てられなかったと決定することに応じて、前記本体及び前記再加工部における前記特定のクラスタの前記アクティビティの発生頻度に基づいて、前記特定のクラスタの前記アクティビティを前記本体又は前記再加工部に配置するステップを更に含む、請求項4に記載のコンピュータ実装方法。
【請求項6】
前記ユーザー制約は、前記プロセスの2つ以上のアクティビティ間の関係を定義する二項制約、及び、前記プロセスの単一のアクティビティ又は前記プロセスのアクティビティの単一のセットの挙動を定義する単項制約のうちの1つ以上を含む、請求項1に記載のコンピュータ実装方法。
【請求項7】
前記関係は、シーケンス関係、排他的選択関係、並列関係、又は、ループ関係のうちの少なくとも1つを含む、請求項6に記載のコンピュータ実装方法。
【請求項8】
前記単項制約は、前記単一のアクティビティ又は前記アクティビティの単一のセットが随意的であるか又は必須であるかどうか、或いは、前記単一のアクティビティ又は前記アクティビティの単一のセットがそれ自体繰り返すことができなければならないか又はそれ自体繰り返すことができてはならないかどうか、のうちの少なくとも1つを定義する、請求項6に記載のコンピュータ実装方法。
【請求項9】
前記プロセスがRPA(ロボティックプロセスオートメーション)プロセスである、請求項1に記載のコンピュータ実装方法。
【請求項10】
コンピュータ命令を記憶するメモリと、
前記コンピュータ命令を遂行するように構成される少なくとも1つのプロセッサであって、前記コンピュータ命令が、前記少なくとも1つのプロセッサに、
プロセスの遂行のイベントログの受信する操作と、
前記プロセスの1つ以上のアクティビティに対するユーザー制約をユーザーから受信する操作と、
前記ユーザー制約に基づいて前記イベントログからプロセスツリーを生成する操作と、
前記プロセスツリーを出力する操作と、
を実行させるように構成される、少なくとも1つのプロセッサと、
を備える装置。
【請求項11】
前記ユーザー制約に基づいて前記イベントログからプロセスツリーを生成する前記操作は、
前記ユーザー制約に基づいてグラフを構築する操作と、
前記グラフに基づいて分割されてはならないアクティビティのクラスタを定義する操作と、
前記アクティビティのクラスタに基づいて前記プロセスのイベントログを分割する操作と、を含む、請求項10に記載の装置。
【請求項12】
前記ユーザー制約は、アクティビティ間のシーケンス関係を定義するユーザー制約を含み、前記ユーザー制約に基づいて前記イベントログからプロセスツリーを生成する前記操作は、
1)有向グラフにおける最も高い順方向接続性を有するアクティビティと、2)前記アクティビティのクラスタにおける最も高い順方向接続性を有する前記アクティビティとクラスタ化されるアクティビティとに基づいて前記イベントログを分割する操作を含む、請求項11に記載の装置。
【請求項13】
前記ユーザー制約は、アクティビティ間のループ関係を定義するユーザー制約を含み、前記ユーザー制約に基づいて前記イベントログからプロセスツリーを生成する前記操作は、
前記ループ関係の本体及び前記ループ関係の再加工部に対応する前記プロセスのアクティビティを識別する操作と、
前記ループ関係を定義する前記ユーザー制約における前記アクティビティのうちの2つ以上が前記本体に対応するように識別されると決定することに応じて、前記ループ関係を定義する前記ユーザー制約における前記アクティビティのうちの1つを前記本体に配置するとともに、前記ループ関係を定義する前記ユーザー制約における残りのアクティビティを前記再加工部に配置する操作と、
各それぞれのクラスタのアクティビティが前記本体と前記再加工部との間で分割されないと決定することに応じて、前記それぞれのクラスタの全てのアクティビティを前記同じ本体又は再加工部に配置する操作と、
を含む、請求項11に記載の装置。
【請求項14】
前記操作は、
特定のクラスタのアクティビティが前記本体又は前記再加工部に割り当てられなかったと決定することに応じて、前記本体及び前記再加工部における前記特定のクラスタの前記アクティビティの発生頻度に基づいて、前記特定のクラスタの前記アクティビティを前記本体又は前記再加工部に配置する操作を更に含む、請求項13に記載の装置。
【請求項15】
前記プロセスがRPA(ロボティックプロセスオートメーション)プロセスである、請求項10に記載の装置。
【請求項16】
コンピュータプログラム命令を記憶する非一時的コンピュータ可読媒体であって、前記コンピュータプログラム命令は、少なくとも1つのプロセッサ上で実行されると、前記少なくとも1つのプロセッサに、
プロセスの遂行のイベントログの受信する操作と、
前記プロセスの1つ以上のアクティビティに対するユーザー制約をユーザーから受信する操作と、
前記ユーザー制約に基づいて前記イベントログからプロセスツリーを生成する操作と、
前記プロセスツリーを出力する操作と、
を含む操作を実行させる、非一時的コンピュータ可読媒体。
【請求項17】
前記ユーザー制約は、前記プロセスの2つ以上のアクティビティ間の関係を定義する二項制約、及び、前記プロセスの単一のアクティビティ又は前記プロセスのアクティビティの単一のセットの挙動を定義する単項制約のうちの1つ以上を含む、請求項16に記載の非一時的コンピュータ可読媒体。
【請求項18】
前記関係は、シーケンス関係、排他的選択関係、並列関係、又は、ループ関係のうちの少なくとも1つを含む、請求項17に記載の非一時的コンピュータ可読媒体。
【請求項19】
前記単項制約は、前記単一のアクティビティ又は前記アクティビティの単一のセットが随意的であるか又は必須であるかどうか、或いは、前記単一のアクティビティ又は前記アクティビティの単一のセットがそれ自体繰り返すことができなければならないか又はそれ自体繰り返すことができてはならないかどうか、のうちの少なくとも1つを定義する、請求項17に記載の非一時的コンピュータ可読媒体。
【請求項20】
前記プロセスがRPA(ロボティックプロセスオートメーション)プロセスである、請求項16に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般に、プロセスマイニングに関し、より詳細には、ユーザー制約付きプロセスマイニングに関する。
【背景技術】
【0002】
プロセスは、様々なサービスを提供するために1つ以上のコンピュータによって遂行されるアクティビティのシーケンスである。プロセスマイニングでは、効率を改善してプロセスのより良い理解を得るために、傾向、パターン、及び、他のプロセス分析指標を識別するべくプロセスが分析される。プロセスマイニングのための従来の手法は、プロセスのイベントログを解釈してそれらのプロセスのプロセスツリーを生成することによって実行される。しかしながら、プロセスマイニングのためのそのような従来の手法は、基礎となるプロセスの知識を利用しない。これにより、プロセスマイニング中のプロセスの解釈を表わすプロセスツリーの視覚的なアライメントと、基礎となるプロセスとの間に差が生じ得る。
【発明の概要】
【0003】
1つ以上の実施形態によれば、プロセスのプロセスツリーを生成するためのシステム及び方法が提供される。プロセスの遂行のイベントログが受信される。プロセスの1つ以上のアクティビティに対するユーザー制約がユーザーから受信される。プロセスツリーが、ユーザー制約に基づいてイベントログから生成される。プロセスツリーが出力される。一実施形態において、プロセスは、RPA(ロボティックプロセスオートメーション)プロセスであってもよい。
【0004】
一実施形態において、プロセスツリーは、ユーザー制約に基づいてグラフを構築し、グラフに基づいて分割されてはならないアクティビティのクラスタを定義し、アクティビティのクラスタに基づいてプロセスのイベントログを分割することによって生成される。
【0005】
一実施形態において、ユーザー制約は、アクティビティ間のシーケンス関係を定義するユーザー制約を含む。イベントログは、1)有向グラフにおける最も高い順方向接続性を有するアクティビティと、2)アクティビティのクラスタにおける最も高い順方向接続性を有する前記アクティビティとクラスタ化されるアクティビティとに基づいて分割される。
【0006】
一実施形態において、ユーザー制約は、アクティビティ間のループ関係を定義するユーザー制約を含む。ループ関係の本体とループ関係の再加工部とに対応するプロセスのアクティビティが識別される。ループ関係を定義するユーザー制約における2つ以上のアクティビティが本体に対応するように識別されると決定することに応じて、ループ関係を定義するユーザー制約におけるアクティビティのうちの1つが本体に配置され、ループ関係を定義するユーザー制約における残りのアクティビティが再加工部に配置される。各それぞれのクラスタのアクティビティが本体と再加工部との間で分割されないと決定することに応じて、それぞれのクラスタの全てのアクティビティは、同じ本体又は再加工部に配置される。特定のクラスタのアクティビティが本体又は再加工部に割り当てられなかったと決定することに応じて、本体及び再加工部における特定のクラスタのアクティビティの発生頻度に基づいて、特定のクラスタのアクティビティが本体又は再加工部に配置される。
【0007】
一実施形態において、ユーザー制約は、プロセスの2つ以上のアクティビティ間の関係を定義する二項制約、及び、プロセスの単一のアクティビティ又はプロセスのアクティビティの単一のセットの挙動を定義する単項制約のうちの1つ以上を含む。関係は、シーケンス関係、排他的選択関係、並列関係、又は、ループ関係のうちの少なくとも1つを含んでもよい。単項制約は、単一のアクティビティ又はアクティビティの単一のセットが随意的であるか又は必須であるかどうか、或いは、単一のアクティビティ又はアクティビティの単一のセットがそれ自体繰り返すことができなければならないか又はそれ自体繰り返すことができてはならないかどうか、のうちの少なくとも1つを定義してもよい。
【0008】
本発明のこれら及び他の利点は、以下の詳細な説明及び添付の図面を参照することによって当業者には明らかになる。
【図面の簡単な説明】
【0009】
【0010】
【
図2】1つ以上の実施形態に係る、ユーザー制約に基づいてプロセスツリーを生成するための方法を示す。
【0011】
【
図3】
図1のプロセスの典型的なイベントログを示す。
【0012】
【
図4】1つ以上の実施形態に係る、制約、グラフ、及び、クラスタを示すテーブルを示す。
【0013】
【
図5A】制約のない確率論的帰納マイナーを使用して生成される特定のプロセスのプロセスツリーを示す。
【0014】
【
図5B】1つ以上の実施形態に係る制約付き確率論的帰納マイナーを使用して生成される特定のプロセスのプロセスツリーを示す。
【0015】
【
図6】本発明の一実施形態に係るコンピューティングシステムのブロック図である。
【発明を実施するための形態】
【0016】
プロセスは、例えば、管理アプリケーション(例えば、新しい従業員の新人研修)、支払い手続アプリケーション(例えば、購入、請求書管理、及び、支払いの円滑化)、及び、情報技術アプリケーション(例えば、発券システム)などの幾つかの異なるアプリケーションにサービスを提供するために、1つ以上のコンピュータによって遂行されてもよい。一実施形態において、プロセスは、1つ以上のRPAロボットによって自動的に遂行されるRPA(ロボティックプロセスオートメーション)プロセスであってもよい。
【0017】
図1は、例示的なプロセス100を示す。プロセス100は、プロセス100におけるステップの所定のシーケンスを表わすアクティビティA102、アクティビティB104、アクティビティC106、及び、アクティビティD108を含む。プロセス100の遂行は、イベントログの形式で記録される。
【0018】
プロセス100の遂行のユーザー理解を容易にするために、プロセスマイニングを実行して、そのイベントログに基づいてプロセス100のプロセスツリーを生成することができる。プロセスツリーは、プロセス100の遂行の視覚的表示である。プロセスツリーは有向グラフとしてモデル化され、この場合、プロセスの各アクティビティがノードとして表わされ、ソースアクティビティから宛先アクティビティまでのプロセスの遂行が、ソースアクティビティ及び宛先アクティビティを表わすノードを接続するエッジとして表わされる。プロセスツリー内の各エッジは、そのエッジの遂行頻度を表わす番号と関連付けられる。
【0019】
従来、プロセスマイニングは、基礎となるプロセスの知識を利用することなく、プロセスのイベントログに基づいてプロセスのプロセスツリーを生成するように実行される。プロセスツリーは、基礎となるプロセスの知識を利用せずに生成されるため、プロセスツリーの視覚的アライメントは、基礎となるプロセスとは異なり得る。
【0020】
本明細書中に記載の実施形態は、ユーザー制約付きプロセスマイニングを提供する。そのようなユーザー制約付きプロセスマイニングにより、ユーザーは、プロセスのプロセスマイニングに対する制約を定義し、それにより、プロセスマイニングにおけるプロセスのユーザーの知識を組み入れることができる。好適には、そのようなユーザー制約付きプロセスマイニングは、プロセスのより正確なプロセスツリーを生成し、それにより、プロセスの適合性チェックを可能にする。
【0021】
図2は、1つ以上の実施形態に係る、ユーザー制約に基づいてプロセスツリーを生成するための方法200を示す。方法200のステップは、例えば
図10のコンピューティングシステム1000などの、任意の適切なコンピューティングデバイスによって実行することができる。
【0022】
ステップ202では、プロセスの遂行のイベントログが受信される。イベントログは、プロセスの遂行の1つ以上のインスタンス中に発生するイベントを記録することによって、プロセスの遂行の1つ以上のインスタンス中に維持され得る。イベントは、特定の時間における特定の事例に関するアクティビティの遂行を指す。事例は、プロセスの遂行の特定のインスタンスに対応し、事例識別子(ID)によって識別される。トレースが、事例に関して遂行されるアクティビティの順序付けられたシーケンスを指す。変形が、特定のトレースの発生頻度を指す。
【0023】
図3は、1つ以上の実施形態に係る、
図1のプロセス100の典型的なイベントログ300を示す。イベントログ300は、イベントログ300内の事例ID1~事例ID6に対応する、プロセス100の遂行の6つのインスタンス中に発生するイベントを記録する。
図3に示されるように、イベントログ300は、それぞれがイベントに対応する行302と、行302及び列304が交差するセルにおいてヘッダ行306で識別されるイベントの属性をそれぞれが識別する列304とを有するテーブルとしてフォーマットされる。特に、各行302は、アクティビティ102~108の遂行を表わすイベント(列304~Bで識別される)、アクティビティ102~108の遂行のタイムスタンプ(列304~Cで識別される)、及び、遂行されたアクティビティ102~108の遂行のインスタンスを識別する事例ID(列304~Aで識別される)と関連付けられる。一実施形態において、列304-Cで識別されるアクティビティ102-108の遂行のタイムスタンプは、アクティビティ102-108の遂行が完了した時間を指すが、もう1つの方法として、アクティビティ104-108の遂行が始まった時間を指してもよい。イベントログ300は、任意の適切なフォーマットであってもよく、イベントの他の属性を識別する更なる列304を含んでもよいことが理解されるべきである。
【0024】
ステップ204では、プロセスの1つ以上のアクティビティに対するユーザー制約がユーザーから受信される。ユーザー制約は、プロセスのプロセスツリーの構造を決定し、プロセスのユーザーの知識を表わす。ユーザー制約は、プロセスの1つ以上のアクティビティに対する任意の適切な制約であってもよい。一実施形態において、ユーザー制約は、例えば、二項制約及び/又は単項制約であってもよい。
【0025】
【0026】
【0027】
【0028】
図2のステップ206では、ユーザー制約に基づいてイベントログからプロセスツリーが生成される。プロセスツリーは、任意の適切な手法を使用して生成することができる。
【0029】
一実施形態において、プロセスツリーは、ユーザー制約を確率論的帰納マイナーに組み入れることによって生成される。一般に、確率論的帰納マイナーは、プロセスのイベントログを受信する。基本事例がイベントログに適用されるかどうかが決定され、基本事例がイベントログに適用されると決定することに応じて、1つ以上のノードがプロセスツリーに追加される。基本事例がイベントログに適用されないと決定することに応じて、イベントログがサブイベントログに分割され、1つ以上のノードがプロセスツリーに追加される。イベントログに基本事例が適用されると決定されるまで、イベントログとしてそれぞれのサブイベントログを用いて、各それぞれのサブイベントログごとに、基本事例が適用されるかどうかを決定してイベントログを分割するステップが繰り返し実行される。確率論的帰納マイナーは、当技術分野において知られており、2020年9月6日に出願された米国特許出願第17/013,624号に更に記載されており、その開示内容は参照によりその全体が本願に組み入れられる
【0030】
確率論的帰納マイナーがどのように動作するかに起因して、プロセスツリーは、ユーザー制約にしたがってイベントログを分割することによって生成される。例えば、ユーザー制約A→Bが与えられると、イベントログ(又はサブイベントログ)は、最終的に、アクティビティA及びBを分割するためにシーケンスカットによって分割又は切断される。アクティビティA及びBの非シーケンスカットが実行される場合、その後にアクティビティA及びBのシーケンスカットを実行することはできない。したがって、制約A→Bがシーケンス関係に対する制約であっても、その制約は、これが順序カットによって行われなければならないため、アクティビティAとアクティビティBとを分離しないように他の全ての関係に対する制約でもある。
【0031】
二項制約の場合、誤った関係演算子によるカットを防止するために、分割されてはならないアクティビティの制約クラスタがユーザー制約に基づいて定義される。クラスタを定義するために、ユーザー制約に基づいてグラフが最初に構築される。グラフは、イベントログ内の全てのアクティビティのためのノードを含むとともに、全ての二項制約に関して、制約におけるアクティビティノード間のエッジを含む。エッジには制約タイプが注釈付けされる。分割されてはならないアクティビティのクラスタは、その後、グラフから定義される。例えば、排他的選択関係を定義する制約の場合、制約は、排他的選択以外の制約を介して接続されるアクティビティを分割することができないことを示す。したがって、排他的選択の場合、クラスタは、排他的選択以外の演算子で注釈付けされるエッジを介して接続されるエッジを介して接続されるグラフの成分である。
図4は、1つ以上の実施形態に係る、第1列の制約、第2列における結果として生じる制約グラフ、及び、第3列において分割されてはならないアクティビティのクラスタを示すテーブル400を示す。テーブル400におけるクラスタは、そのグラフに関してオペレータごとに示される。その後、イベントログ(又はサブイベントログ)は、アクティビティのクラスタに基づいて分割される。
【0032】
アクティビティ間の排他的選択関係及び並列関係を定義する制約の場合、確率論的帰納マイナーは、イベントログを分割するためにクラスタリングの形態を既に使用している。確率論的帰納マイナーは、排他的選択関係及び並列関係におけるカットを決定するために平均最小カットアルゴリズムを適用する。平均最小カットアルゴリズムは、イベントログ内の全てのアクティビティがそれ自体のクラスタであることから始まる。そこから、アルゴリズムは、全てのクラスタのマージを繰り返し開始し、クラスタ間のどのカットが最良の選択肢であったかを追跡する。平均最小カットアルゴリズムは、既にそれら自体のクラスタ内の全てのアクティビティから始まるため、(それぞれ1つのアクティビティの)クラスタは、分割されてはならないアクティビティのクラスタと置き換えられる。したがって、アクティビティのクラスタは、確率論的帰納マイナーの平均最小カットアルゴリズムに対して入力として直接に与えられ得る。
【0033】
アクティビティ間のシーケンス関係を定義する制約の場合、確率論的マイナーは、有向グラフを構築することによってイベントログを分割し、この場合、ノードはイベントログのアクティビティであり、エッジはアクティビティ間の有向順序スコアである。確率論的帰納的マイナーは、次に考慮されるべき最良のアクティビティ、すなわち、まだ訪問されていない他のアクティビティに対するグラフ内の最も高い順方向接続性を有するアクティビティを繰り返し計算する。アクティビティのクラスタ内で最良のアクティビティとクラスタ化されるアクティビティも含まれる。単一のエッジを介して全てのアクティビティに到達できるアクティビティのセットがある場合、シーケンスクラスタは終了する。そこから、次のクラスタの第1のアクティビティは、まだ訪問されていない他のアクティビティに対するグラフ内の最も高い順方向接続性を有するアクティビティを選択することによって選択される。正しい順序を確保するためのステップも行われる。例えば、制約A→Bが与えられるが、アクティビティBがアクティビティAの前に考慮されている。A→Bの順序が違反されないようにするために、シーケンスクラスタは、アクティビティが正しい順序で分割されるようにアクティビティBの前にアクティビティAで定義される。
【0034】
アクティビティ間のループ関係を定義する制約の場合、第1のステップは、どのアクティビティがループの本体及び再加工部の両方の開始部分及び終了部分を形成するかを識別することである。再加工部は、ループが反復の終了時のアクティビティから次の反復の開始時のアクティビティまで繰り返すループの部分に対応する。次に、ループ制約が成立するかどうかが決定される。ループ制約が持続しない単一のシナリオが存在する。すなわち、これは、ループ制約における2つ以上のアクティビティがループ本体内にあると識別される場合である。これは、アクティビティが分割されておらず、ループ制約と矛盾していることを意味する。これに対処するために、ループ制約におけるアクティビティのうちの2つ以上がループ本体内で識別されたとの決定に応じて、1つのアクティビティがその本体に最も適していると決定され、残りのアクティビティがループの再加工部に配置される。
【0035】
次に、(非ループ制約を介して)一緒にクラスタ化されたアクティビティが本体と再加工部との間で分割されているかどうかがチェックされる。クラスタ化されたアクティビティが本体と再加工部との間で分割される場合、制約に違反しないループ構造を発見することは不可能であるため、この時点でループカットは不可能であると結論付けられる。クラスタ化されたアクティビティが本体と再加工部との間で分割されない場合、クラスタ化されたアクティビティが本体又は再加工部にあるかどうかがチェックされ、クラスタリングされた全てのアクティビティをその同じ本体又は再加工部に配置する。
【0036】
最後に、本体又は再加工部に割り当てられていないクラスタがある場合、本体開始/終了アクティビティ又は再加工開始/終了アクティビティの間にクラスタのアクティビティがより頻繁に発生するかどうかがチェックされる。各クラスタのアクティビティは、それらがより頻繁に発生する本体又は再加工部に配置される(ループカット検出でこれがどのように実行されるかと同様)。シーケンシャル制約アクティビティを分割するループカットは有効であると考えられる。ループ構造のために、シーケンス制約に違反しないアクティビティの厳密な順序が定義される。
【0037】
ステップ208において、プロセスツリーが出力される。一実施形態において、プロセスツリーは、例えば、プロセスツリーをコンピュータシステムの表示デバイスに表示すること、プロセスツリーをコンピュータシステムのメモリ又はストレージに記憶すること、又は、プロセスツリーをリモートコンピュータシステムに送信することによって出力することができる。一実施形態において、プロセスツリーは、出力プロセスツリーに基づいてプロセスの適合性チェックを実行するために適合性チェックシステムに出力される。
【0038】
幾つかの実施形態において、プロセスツリーは、例えば既知の技術を使用してプロセスモデルに変換することができる。プロセスモデルは、例えば、BPMN(ビジネスプロセスモデリング表記法)モデル又はBPMN様モデルであってもよい。
【0039】
図5Aは、従来の制約のない確率論的帰納マイナーを使用して生成された特定のプロセスのプロセスツリー500を示し、
図5Bは、1つ以上の実施形態に係る、制約付き確率論的帰納マイナーを使用して生成された同じ特定のプロセスのプロセスツリー510を示す。
図5Bのプロセスツリー510は、
図2の方法200にしたがって生成することができる。プロセスツリー510を生成するために使用される制約付き確率論的帰納マイナーは、以下のユーザー制約を有するユーザーによって制約される。
・県への審判請求→県からの審判結果の受領→審判結果の違反者への通知
・上訴→支払い
・ペナルティの追加→支払い
・県へ審判請求→支払い
・審判結果の違反者への通知→支払い
・県からの審判結果を受領→支払い
図5Bのプロセスツリー510は、
図5Aのプロセスツリー500と比較して、特定のプロセスの遂行のより正確な表示である。
【0040】
図6は、本発明の一実施形態に係る、
図2を含む、本明細書中に記載の方法、ワークフロー、及び、プロセスを遂行するように構成されるコンピューティングシステム600を示すブロック図である。幾つかの実施形態において、コンピューティングシステム600は、図示された及び/又は本明細書中に記載されたコンピューティングシステムのうちの1つ以上であってもよい。コンピューティングシステム600は、情報を通信するためのバス602又は他の通信機構と、情報を処理するためにバス602に結合されたプロセッサ604とを含む。プロセッサ604は、中央処理装置(CPU)、特定用途集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、グラフィックスプロセッシングユニット(GPU)、それらの複数のインスタンス、及び/又は、それらの任意の組み合わせを含む、任意のタイプの汎用又は専用プロセッサであってもよい。また、プロセッサ604は、複数の処理コアを有してもよく、また、コアの少なくとも幾つかは、特定の機能を実行するように構成されてもよい。幾つかの実施形態では、複数並列処理を使用することができる。
【0041】
コンピューティングシステム600は、プロセッサ604によって遂行される情報及び命令を記憶するためのメモリ606を更に含む。メモリ606は、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、フラッシュメモリ、キャッシュ、磁気もしくは光ディスクなどの静的ストレージ、又は、任意の他のタイプの非一時的コンピュータ可読媒体、又は、それらの組み合わせの任意の組み合わせから構成することができる。非一時的コンピュータ可読媒体は、プロセッサ604によってアクセス可能な任意の利用可能な媒体であってもよく、揮発性媒体、不揮発性媒体、又はその両方を含んでもよい。また、媒体は、取り外し可能、取り外し不能、又は、その両方であってもよい。
【0042】
更に、コンピューティングシステム600は、任意の現在存在する又は将来実施される通信規格及び/又はプロトコルに従って、無線及び/又は有線接続を介して通信ネットワークへのアクセスを提供するためのトランシーバなどの通信デバイス608を含む。
【0043】
プロセッサ604は、バス602を介して、ユーザーに情報を表示するのに適したディスプレイ610に更に結合される。ディスプレイ610は、タッチディスプレイ及び/又は任意の適切な触覚I/Oデバイスとして構成されてもよい。
【0044】
キーボード612及びコンピュータマウス、タッチパッドなどのカーソル制御デバイス614は、ユーザーがコンピューティングシステムとインターフェースすることを可能にするためにバス602に更に結合される。しかしながら、特定の実施形態では、物理的なキーボード及びマウスが存在しなくてもよく、ユーザーは、ディスプレイ610及び/又はタッチパッド(図示せず)のみを介してデバイスと対話することができる。入力デバイスの任意のタイプ及び組み合わせを、設計上の選択事項として使用することができる。特定の実施形態では、物理的入力デバイス及び/又はディスプレイは存在しない。例えば、ユーザーは、それと通信する別のコンピューティングシステムを介してコンピューティングシステム600と遠隔的に対話することができ、又はコンピューティングシステム600は自律的に動作することができる。
【0045】
メモリ606は、プロセッサ604によって遂行されると機能を与えるソフトウェアモジュールを記憶する。モジュールは、コンピューティングシステム600のためのオペレーティングシステム616と、本明細書に記載のプロセス又はその派生物の全部又は一部を実行するように構成された1つ以上の更なる機能モジュール618とを含む。
【0046】
当業者であれば分かるように、「システム」は、本発明の範囲から逸脱することなく、サーバ、組込みコンピューティングシステム、パーソナルコンピュータ、コンソール、パーソナルデジタルアシスタント(PDA)、携帯電話、タブレットコンピューティングデバイス、量子コンピューティングシステム、もしくは、任意の他の適切なコンピューティングデバイス、又は、デバイスの組み合わせとして具現化され得る。上記の機能を「システム」によって実行されるものとして提示することは、本発明の範囲を決して限定することを意図するものではなく、本発明の多くの実施形態の一例を提供することを意図している。実際に、本明細書中に開示される方法、システム、及び、装置は、クラウドコンピューティングシステムを含むコンピューティング技術と一致する局所化された形態及び分散された形態で実装され得る。
【0047】
本明細書中に記載されたシステム特徴の幾つかは、それらの実装の独立性をより具体的に強調するために、モジュールとして提示されていることに留意すべきである。例えば、モジュールは、カスタムの超大規模集積(VLSI)回路又はゲートアレイ、ロジックチップ、トランジスタ、又は、他のディスクリートコンポーネントなどの既製の半コンダクタを含むハードウェア回路として実装されてもよい。また、モジュールは、フィールドプログラマブルゲートアレイ、プログラマブルアレイロジック、プログラマブルロジックデバイス、グラフィックスプロセッシングユニットなどのプログラマブルハードウェアデバイスに実装されてもよい。また、モジュールは、様々なタイプのプロセッサによって遂行するためのソフトウェアに少なくとも部分的に実装されてもよい。遂行可能コードの識別されたユニットは、例えば、オブジェクト、手順、又は、機能として編成することができるコンピュータ命令の1つ以上の物理ブロック又は論理ブロックを含むことができる。それにもかかわらず、識別されたモジュールの遂行可能ファイルは、物理的に一緒に配置される必要はないが、論理的に一緒に結合されたときにモジュールを含み、モジュールの記載された目的を達成する異なる場所に記憶された異なる命令を含むことができる。更に、モジュールは、例えば、ハードディスクドライブ、フラッシュデバイス、RAM、テープ、及び/又は、本発明の範囲から逸脱することなくデータを記憶するために使用される任意の他のそのような非一時的コンピュータ可読媒体であってもよいコンピュータ可読媒体に記憶されてもよい。実際に、遂行可能コードのモジュールは、単一の命令、又は、多くの命令であってもよく、幾つかの異なるコードセグメント、異なるプログラム、及び、幾つかのメモリデバイスに分散されてもよい。同様に、操作データは、モジュール内で識別され及び本明細書中に例示されてもよく、任意の適切な形態で具体化され、任意の適切なタイプのデータ構造内に編成されてもよい。操作データは、単一のデータセットとして収集されてもよく、又は、異なるストレージデバイスを含む異なる場所に分散されてもよく、少なくとも部分的に、システム又はネットワーク上の電子信号としてのみ存在してもよい。
【0048】
以上は本開示の原理を単に例示するにすぎない。したがって、本明細書中に明示的に記載され又は示されないが、本開示の原理を具現化するとともに本開示の思想及び範囲内に含まれる様々な構成を当業者が考え出すことができるのが分かる。更に、本明細書中に列挙される全ての例及び条件付き言語は、主に、本開示の原理と本技術を進展させるために本発明者によって寄与される概念とを読者が理解するのを助けるための教育目的のためのものにすぎず、そのような具体的に列挙された例及び条件に限定しないように解釈されるべきである。更に、本開示の原理、態様、及び、実施形態、並びに、その特定の例を列挙する本明細書中の全ての記述は、その構造的及び機能的な均等物の両方を包含しようとするものである。更に、そのような均等物が現在知られている均等物及び将来開発される均等物の両方を含むことが意図される。
【国際調査報告】