(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024147537
(43)【公開日】2024-10-16
(54)【発明の名称】人工知能/機械学習を用いたICSフローのオートコンプリートのためのシステムおよび方法
(51)【国際特許分類】
G06F 16/908 20190101AFI20241008BHJP
【FI】
G06F16/908
【審査請求】有
【請求項の数】15
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2024091362
(22)【出願日】2024-06-05
(62)【分割の表示】P 2021521187の分割
【原出願日】2019-10-15
(31)【優先権主張番号】201841039490
(32)【優先日】2018-10-18
(33)【優先権主張国・地域又は機関】IN
(31)【優先権主張番号】16/566,490
(32)【優先日】2019-09-10
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/566,504
(32)【優先日】2019-09-10
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/566,511
(32)【優先日】2019-09-10
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】502303739
【氏名又は名称】オラクル・インターナショナル・コーポレイション
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】アンドラビ,サイード・ナジーブ
(72)【発明者】
【氏名】モディ,ラジャン
(72)【発明者】
【氏名】モハンラム,ベンカテッシュ
(72)【発明者】
【氏名】パラニサミー,ムスクマール
(72)【発明者】
【氏名】ファン,マイケル
(57)【要約】 (修正有)
【課題】人工知能(AI)/機械学習(ML)を用いたICS(統合クラウドサービス)フローのオートコンプリートのためのシステムおよび方法を提供する。
【解決手段】ユーザがフローを素早くモデル化するのを支援するサービスで用いるICSウェブアプリケーションにおいて、開発インターフェイスは、ユーザが既存の接続のライブラリから異なる接続をドラッグ&ドロップすること412、413のいずれかを可能にすることと、ユーザインターフェイスを介して選択することができる任意の接続415、416のポピュレートされたグリッドを提示することと、コンテキストをソース接続413に関連付けることと、ができる。ソース接続は、ソースアプリケーションに接続するために必要な情報を含む。ICSは、ソース接続を、ソースアプリケーションから要求を受信するために使用する。
【選択図】
図4
【特許請求の範囲】
【請求項1】
人工知能/機械学習を用いたICS(統合クラウドサービス)フローのオートコンプリートをサポートするためのシステムであって、前記システムは、
1つ以上のマイクロプロセッサを含むコンピュータを備え、
前記コンピュータは、
統合フローマップを開始するステップと、
ユーザコンテキストを収集するステップと、
前記収集したユーザコンテキストに基づいて複数のフロー予測を提供するステップとを実行するように構成されている、システム。
【請求項2】
ユーザコンテキストは、組織、系列組織、部門、サブ部門、およびユーザ情報を考慮する、請求項1に記載のシステム。
【請求項3】
プロセスモデルの不変パターン認識の階層クラスタリングモデルが、前記複数のフロー予測の提供において利用される、請求項1または2に記載のシステム。
【請求項4】
前記階層クラスタリングモデルは、格納されている、プロセス設計の機械学習知識を、クラスタの階層として利用する、請求項3に記載のシステム。
【請求項5】
前記階層クラスタリングモデルはさらに、前記収集したユーザコンテキストに基づいて機械学習モデルを利用する、請求項4に記載のシステム。
【請求項6】
前記複数のフロー予測の提供においてランキング生成器が使用される、先行する請求項のいずれか1項に記載のシステム。
【請求項7】
前記ランキング生成器は、入力パターンを利用して、前記入力パターンとマッチングされた複数の出力パターンをランク付けし、前記ランク付けは1つ以上の入力を利用し、
前記入力パターンは、一部が、前記収集したユーザコンテキストから作成される、請求項6に記載のシステム。
【請求項8】
人工知能/機械学習を用いたICS(統合クラウドサービス)フローのオートコンプリートをサポートするための方法であって、前記方法は、
1つ以上のマイクロプロセッサを含むコンピュータを提供するステップと、
統合フローマップを開始するステップと、
ユーザコンテキストを収集するステップと、
前記収集したユーザコンテキストに基づいて複数のフロー予測を提供するステップとを含む、方法。
【請求項9】
ユーザコンテキストは、組織、系列組織、部門、サブ部門、およびユーザ情報を考慮する、請求項8に記載の方法。
【請求項10】
プロセスモデルの不変パターン認識の階層クラスタリングモデルが、次回アクション予測の提供において利用される、請求項8または9に記載の方法。
【請求項11】
前記階層クラスタリングモデルは、格納されている、プロセス設計の機械学習知識を、クラスタの階層として利用する、請求項10に記載の方法。
【請求項12】
前記階層クラスタリングモデルはさらに、前記収集したユーザコンテキストに基づいて機械学習モデルを利用する、請求項11に記載の方法。
【請求項13】
次回アクションの予測の提供においてランキング生成器が使用される、請求項8~12のいずれか1項に記載の方法。
【請求項14】
前記ランキング生成器は、入力パターンを利用して、前記入力パターンとマッチングされた複数の出力パターンをランク付けし、前記ランク付けは1つ以上の入力を利用し、
前記入力パターンは、一部が、前記収集したユーザコンテキストから作成される、請求項13に記載の方法。
【請求項15】
人工知能/機械学習を用いたICS(統合クラウドサービス)フローのオートコンプリートをサポートするための命令が格納された非一時的なコンピュータ読取可能記憶媒体であって、前記命令は、1つ以上のコンピュータによって読み出されて実行されると、前記1つ以上のコンピュータに、
1つ以上のマイクロプロセッサを含むコンピュータを提供するステップと、
統合フローマップを開始するステップと、
ユーザコンテキストを収集するステップと、
前記収集したユーザコンテキストに基づいて複数のフロー予測を提供するステップとを含むステップを実行させる、非一時的なコンピュータ読取可能記憶媒体。
【請求項16】
ユーザコンテキストは、組織、系列組織、部門、サブ部門、およびユーザ情報を考慮する、請求項15に記載の非一時的なコンピュータ読取可能記憶媒体。
【請求項17】
プロセスモデルの不変パターン認識の階層クラスタリングモデルが、次回アクションの予測の提供において利用される、請求項15または16に記載の非一時的なコンピュータ読取可能記憶媒体。
【請求項18】
前記階層クラスタリングモデルは、格納されている、プロセス設計の機械学習知識を、クラスタの階層として利用する、請求項17に記載の非一時的なコンピュータ読取可能記憶媒体。
【請求項19】
前記階層クラスタリングモデルはさらに、前記収集したユーザコンテキストに基づいて機械学習モデルを利用する、請求項18に記載の非一時的なコンピュータ読取可能記憶媒体。
【請求項20】
次回アクション予測の提供においてランキング生成器が使用され、
前記ランキング生成器は、入力パターンを利用して、前記入力パターンとマッチングされた複数の出力パターンをランク付けし、前記ランク付けは1つ以上の入力を利用し、
前記入力パターンは、一部が、前記収集したユーザコンテキストから作成される、請求項15~19のいずれか1項に記載の非一時的なコンピュータ読取可能記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
著作権に関する注意
本特許文献の開示の一部には、著作権保護の対象となるものが含まれている。著作権者は、この特許文献または特許開示の何者かによる複製が、特許商標庁の特許ファイルまたは記録にある限り、それに対して異議を唱えないが、そうでなければ、いかなる場合もすべての著作権を留保する。
【0002】
優先権の主張
本願は、2019年9月10日に出願され「SYSTEM AND METHOD FOR AUTO-COMPLETION OF ICS FLOW USING ARTIFICIAL INTELLIGENCE/MACHINE LEARNING」と題された米国特許出願第16/566,490号、2019年9月10日に出願され「SYSTEM AND METHOD FOR NEXT STEP PREDICTION FOR ICS FLOW USING ARTIFICIAL INTELLIGENCE/MACHINE LEARNING」と題された米国特許出願第16/566,504号、2019年9月10日に出願され「SYSTEM AND METHOD FOR NEXT OBJECT PREDICTION FOR ICS FLOW USING ARTIFICIAL INTELLIGENCE/MACHINE LEARNING」と題された米国特許出願第16/566,511号、および、2018年10月18日に出願され「SYSTEM AND METHOD FOR AUTO-COMPLETION OF
ICS FLOW USING ARTIFICIAL INTELLIGENCE/MACHINE LEARNING」と題されたインド特許出願第201841039490号に基づく優先権を主張し、これらの出願を本明細書に引用により援用する。
【0003】
発明の分野
本発明の実施形態は、概して統合クラウドサービスに関し、特に人工知能および/または機械学習を用いた統合クラウドサービスにおけるフローのオートコンプリートに関する。
【背景技術】
【0004】
背景
統合クラウドサービス(ICS:Integration cloud service)(たとえばオラクル(
登録商標)統合クラウドサービス)は、サービスとしてのソフトウェア(SaaS:Software as a Service)およびオンプレミスアプリケーションのような製品の利用を支援す
る、クラウドにおける単純で強力な統合プラットフォームである。ICSは、サービスとしての統合プラットフォーム(iPaas:integration platform as a service)とし
て提供することが可能であり、アプリケーション間のポイント・アンド・クリック統合のためのウェブベースの統合デザイナーを含むことが可能であり、トランザクションに対するリアルタイムの洞察を提供するリッチなモニタリングダッシュボードである。
【発明の概要】
【課題を解決するための手段】
【0005】
概要
ある実施形態に従い、本明細書において、人工知能/機械学習を用いたICSフローのオートコンプリートのためのシステムおよび方法を説明する。次回アクション予測は、ユーザが追加を考えている可能性がある次のアクションセットを予測し示唆することにより、ユーザがフローを素早くモデル化するのを支援するサービスである。また、このサービスは、ユーザが統合フローの作成中にベストプラクティスのうちのいくつかに従うことを支援する。
【図面の簡単な説明】
【0006】
【
図1】ある実施形態に係る統合クラウドサービスを示す図である。
【
図2】ある実施形態に係る統合クラウドサービスを示す図である。
【
図3】ある実施形態に係るICS設計時期を示す図である。
【
図4】ある実施形態に係るAI/MLを用いたICSフローのオートコンプリートをサポートするためのシステムを示す図である。
【
図5】ある実施形態に係る具体例としてのフローチャートデシジョンツリーを示す図である。
【
図6】ある実施形態に係る、AI/MLを用いたICSフローのシステムオートコンプリートのサポートにおいて使用する階層ツリー構造を示す図である。
【
図7】ある実施形態に係る統合フローへのコンテキストのマッピングを示す図である。
【
図8】ある実施形態に係る統合フローへのコンテキストのマッピングを示す図である。
【
図9】ある実施形態に係る具体例としてのランキングシミュレータを示す図である。
【
図10】人工知能/機械学習を用いたICS(統合クラウドサービス)フローのオートコンプリートをサポートする方法のフローチャートを示す図である。
【
図11】ある実施形態に係る具体例としてのフローチャートデシジョンツリーを示す図である。
【
図12】人工知能/機械学習を用いたICS(統合クラウドサービス)フローのための次回ステップ予測のための具体例としての方法のフローチャートを示す図である。
【
図13】ある実施形態に係る具体例としてのフローチャートデシジョンツリーを示す図である。
【
図14】人工知能/機械学習を用いたICS(統合クラウドサービス)フローの次回オブジェクト予測のための具体例としての方法のフローチャートを示す図である。
【発明を実施するための形態】
【0007】
詳細な説明
先に述べたことは、その他の特徴とともに、添付の明細書、請求項、および図面を参照すると明らかになるであろう。具体的な詳細事項は、各種実施形態の理解のために提供される。しかしながら、各種実施形態はこれらの具体的な詳細事項なしで実施し得ることは明らかであろう。添付の明細書および図面は限定を意図したものではない。
【0008】
サービスとしての統合プラットフォーム、たとえばオラクル統合クラウドサービス(ICS)は、クラウドまたはオンプレミスに存在するアプリケーション同士を接続する統合フローを構築しデプロイするためのクラウドベースのプラットフォームを提供することができる。
【0009】
統合クラウドサービス
図1は、ある実施形態に係るICS統合フローを設計し実行するためのICSプラットフォームを示す。
【0010】
図1に示されるように、ICSプラットフォームは、設計時環境120とランタイム環境163とを含み得る。各環境は、1つ以上のプロセッサを含むコンピュータ、たとえばコンピュータ101または106上で実行することができる。
【0011】
ある実施形態に従うと、設計時環境は、統合フロー開発者がクライアントインターフェイス103を用いて統合を構築できるようにするブラウザベースのデザイナーを提供する、ICSウェブコンソール122を含む。
【0012】
ある実施形態に従うと、ICS設計時環境は、各種SaaSアプリケーションまたはその他のアプリケーションに対する接続を予めロードすることができ、ソースコンポーネント124とターゲットコンポーネント126とを含み得る。ソースコンポーネントは、1つ以上のソースアプリケーション/オブジェクトの定義および構成を提供することができ、ターゲットコンポーネントは、1つ以上のターゲットアプリケーション/オブジェクトの定義および構成を提供することができる。これらの定義および構成を用いることにより、アプリケーション/オブジェクトのアプリケーションタイプ、エンドポイント、統合オブジェクトおよびその他の詳細を特定することができる。
【0013】
さらに
図1に示されるように、設計時環境は、入力メッセージの内容を出力メッセージにマッピング(関連付け)するためのマッピング/変換コンポーネント128と、メッセージの内容またはヘッダ情報に基づいてどのメッセージをどのターゲットにルーティングするかを制御するためのメッセージルーティングコンポーネント130とを含み得る。加えて、設計時環境は、メッセージのメッセージ内容またはヘッダ情報に基づいてどのメッセージをルーティングするかを制御するためのメッセージフィルタリングコンポーネント132と、関連しているが順序が間違っているメッセージのストリームをユーザが指定した順序に戻すように並べ替えるためのメッセージシーケンシングコンポーネント134とを含み得る。
【0014】
ある実施形態に従うと、上記コンポーネントの各々は、ソースおよびターゲットコンポーネントと同様に、フロー定義/構成の一部として持続可能な設計時設定を含み得る。
【0015】
ある実施形態に従うと、フロー定義は、ICS統合フローの詳細を指定し、統合フローの静的構造(たとえばメッセージルータ)と、設定可能な側面(たとえばルーティングルール)との双方を包含する。完全に設定されたフロー定義およびその他の必要なアーティファクト(たとえばjcaおよびwsdlファイル)の組み合わせを、ICSプロジェク
トと呼んでもよい。ICSプロジェクトは、統合フローを完全に定義することができ、かつ、基礎をなす実装レイヤによって実装することができる。
【0016】
ある実施形態に従うと、ポリシーコンポーネント136は、ICS環境の挙動を管理する複数のポリシーを含み得る。たとえば、ポーリングポリシーを、ソースアプリケーションのソース-プルメッセージングのやり取り(すなわちクエリスタイル統合)のために構成することにより、時間ベースのポーリングを介してソースアプリケーションに対するアウトバウンドコールを呼び出すことができる。
【0017】
ある実施形態に従い、メッセージをターゲットアプリケーションにルーティングする際のセキュリティ特権のため、モニタリングコンソールを介した後の解析のフロー実行中にメッセージペイロードおよびヘッダフィールドをロギングするため、ならびに、要求に対応するためにエンタープライズサービスバス(ESB:enterprise service bus)サービスが生成できるインスタンスの数を定めるために使用されるメッセージスロットリングのために、その他のポリシーを指定することができる。加えて、フローレベルで統合フローをモニタリング/トラッキングするため、および、周知のスキーマに対しICSプラットフォームが処理しているメッセージの妥当性を確認するために、ポリシーを指定することができる。
【0018】
ある実施形態に従うと、統合開発者は、統合フローの設計に使用する、開発キャンバス133上のコンポーネントを、編集および構成のためにドラッグ&ドロップすることができる。
【0019】
さらに示されているように、ランタイム環境は、アプリケーションサーバ162と、ICSランタイムエンジン166と、エンタープライズサービスバスコンポーネント172の上のストレージサービス168およびメッセージングサービス170とを含み得る。ユーザインターフェイスコンソール164を使用することにより、ランタイム環境のパフォーマンスをモニタリングおよびトラッキングすることができる。
【0020】
図2は、ある実施形態に係る統合クラウドサービスを示す。
図2に示されるように、ICS207は、ICS統合フローを設計し、実行し、管理するためのクラウドベースの統合サービスを提供することができる。ICSは、エンタープライズクラウド環境(たとえばオラクルパブリッククラウド)201においてアプリケーションサーバ217上で実行されるウェブアプリケーション209およびICSランタイム215を含み得る。ウェブアプリケーションは、ユーザがICS統合フローを設計、起動、管理、およびモニタリングするための、複数のユーザインターフェイスをエクスポーズする設計時期を提供することができる。起動されたICS統合フローは、ICSランタイム上でデプロイおよび実行することができる。
【0021】
ある実施形態に従うと、複数のアプリケーションアダプタ213を提供し、複数のアプリケーションに対する接続を構成するというタスクを、これらのアプリケーションの接続の根元的な複雑さを処理することにより、単純化することができる。アプリケーションは、ICSベンダ205のエンタープライズクラウドアプリケーション、第三者クラウドアプリケーション(たとえばセールスフォース)103、およびオンプレミスアプリケーション219を含み得る。ICSは、これらのアプリケーションとの通信に使用するために、シンプル・オブジェクト・アクセス・プロトコル(SOAP:simple object access protocol)およびレプリゼンテーショナル・ステート・トランスファー(REST:representational state transfer)エンドポイントを、これらのアプリケーションにエクスポーズすることができる。
【0022】
ある実施形態に従うと、ICS統合フロー(またはICS統合)は、ソース接続と、ターゲット接続と、これら2つの接続間のフィールドマッピングとを含み得る。各接続は、アプリケーションアダプタに基づいていてもよく、アプリケーションの特定のインスタンスと通信するためにアプリケーションアダプタが必要とする追加情報を含み得る。
【0023】
ある実施形態に従うと、ICS統合フローおよび複数のその他必要なアーティファクト(たとえばJCAおよびWSDLファイル)をコンパイルしてICSプロジェクトにすることができ、これをICSランタイムにおいてデプロイおよび実行することができる。データマッピング統合フロー、パブリッシュ統合フローおよびサブスクライブ統合フローを含む、異なる複数種類の統合フローパターンを、ウェブUIアプリケーションを用いて作成することができる。データマッピング統合フローを作成するために、ICSユーザは、アプリケーションアダプタまたはアプリケーション接続を用いることにより、開発インターフェイスにおけるソースアプリケーションおよびターゲットアプリケーションを定義することができ、かつ、ソースおよびターゲットアプリケーション間のルーティング経路およびデータマッピングを定義することができる。パブリッシュ統合フローにおいて、ソースアプリケーションまたはサービスを、予め定められたメッセージングサービスを通してメッセージをICSにパブリッシュするように構成することができる。サブスクライブ統合フローにおいて、ターゲットアプリケーションまたはサービスを、メッセージングサービスを通してICSからメッセージをサブスクライブするように構成することができる。
【0024】
図3は、ある実施形態に係るICS設計時期を示す。
ある実施形態に従うと、ユーザ320がウェブUIアプリケーションにおける開発インターフェイス(たとえば開発キャンバス)310を使用し、既存の複数の接続301、た
とえば接続A303、接続B305および接続N307を用いることで、ICS統合フローを作成することができる。
【0025】
図3に示されるように、特定の接続(たとえば接続A)をソース接続313としての開発インターフェイスにドラッグ&ドロップし(311)、接続Nをターゲット接続315としての開発インターフェイスにドラッグ&ドロップする(309)ことができる。ソース接続は、ソースアプリケーションへの接続に必要な情報を含み得るものであり、ICSはこのソース接続をソースアプリケーションからの要求を受けるために使用することができる。ターゲット接続は、ターゲットアプリケーション(たとえばセールスフォースクラウドアプリケーション)への接続に必要な情報を含み得るものであり、ICSはこのターゲット接続をターゲットアプリケーションに要求を送るために使用することができる。
【0026】
ある実施形態に従うと、ソース接続およびターゲット接続を、さらに、追加情報を含むように構成することができる。たとえば、追加情報は、要求に関連付けられたデータに対して実行されるべきオペレーションのタイプと、これらのオペレーションに対するオブジェクトおよびフィールドを含み得る。
【0027】
ある実施形態に従うと、ソース接続およびターゲット接続が構成されると、これら2つの接続間のマッパーが有効にされ、マッパーを開くために使用するマッパーアイコン(たとえばマッパーアイコンA317およびマッパーアイコンB318)を表示することで、ユーザは、要求および応答メッセージの双方についてソースおよびターゲットデータオブジェクト間で如何にして情報を転送するかを定めることができる。
【0028】
ある実施形態に従うと、マッパーは、ソースアイテムをターゲットアイテム上にドラッグすることにより、ソースおよびターゲットアプリケーション間でアイテム(たとえばフィールド、属性、および要素)をユーザがマッピングするための、グラフィカルユーザインターフェイスを提供することができる。ICS統合フローにおける要求または応答メッセージのためのマッパーが開かれると、ソースおよびターゲットデータオブジェクトを、ソースおよびターゲット接続を用いて自動的にロードすることができる。
【0029】
ある実施形態に従うと、ルックアップを提供することで、マッピングの作成を容易にすることができる。本明細書で使用されるルックアップは、アプリケーションにおいて同一アイテムを記述するために使用される異なるコードおよび用語のための再使用可能なマッピングである。たとえば、あるアプリケーションは特定のコードセットを用いて国を記述し、別のアプリケーションは異なるコードセットを用いて同一の国を記述する。ルックアップを使用することにより、これらの異なるコードを異なるアプリケーションにわたってマッピングすることができる。
【0030】
先に述べたように、統合フローの開発は、統合フローを首尾よくデプロイおよび実行できるようになる前にさまざまなコンポーネントを定義する必要がある複雑な作業となり得る。統合フロー内のいくつかのコンポーネントは定義する必要があり、その他は任意である。この開発プロセスをさらに複雑にしているのは、任意のコンポーネントを定義すると必要なコンポーネントが追加される可能性があること、および、開発作業中のどの時点においても、必要なコンポーネントは、統合コンポーネントが定義された順序に応じて異なる可能性があることである。
【0031】
AI/MLを用いたICSフローのオートコンプリート
ある実施形態に従うと、次回アクション予測は、ユーザが追加を考えている可能性がある次のアクションセットを予測し示唆することにより、クライアントがフローを素早くモデル化するのを支援するサービスである。また、このサービスは、ユーザが統合フローの
作成中にベストプラクティスのうちのいくつかに従うことを支援する。
【0032】
ある実施形態に従うと、本明細書で提供されるシステムおよび方法は、ICSシステムのユーザが直面する問題に対する解決法を含む。たとえば、ユーザが「クレジットカードアプリケーション処理」フローを作成しようと試みているとする。熟練ユーザにとって、どのアプリケーション処理フローも、住所および個人の詳細情報の検証などのような基本的な前処理ステップを有するものであろう。熟練ユーザにとって、これは、同一のフローセットを自身で行う必要があるので単調な仕事に思われる。初心者であるユーザにとって、そのようなフローの作成は、苦心してフローを最初から作成し始めるという点で難しいことであり、統合フローを作成する間に必須のステップを見落とす可能性がある。そうすると、フローを作成する際にベストプラクティスを学ぶために同僚に相談し、インターネットなどでビジネスフローに関して読む/知る必要があり、一層の多くの時間を要する可能性がある。
【0033】
ある実施形態に従うと、本明細書に記載のシステムおよび方法は、AI/MLを利用して、顧客が最小の労力で解決策を設計することを可能にすることにより、統合フローを改善することができる。これは、ユーザがユーザコンテキストのみに基づいて構築する可能性が最も高い統合フローと、ユーザおよびプロセスコンテキストとを予測する能力を有するICSフローデザイナーの使用を可能にする。たとえば、銀行の融資担当者は、住宅ローン承認フローを設計するためにログインし、融資担当者に対しては、住宅ローン承認フローを既に実現した、作成するに値するICSフローのリストを提示することができる。予測データ(作業フローおよび機能フローを含む)は、アクセス可能な場所に格納することができる。
【0034】
ある実施形態に従うと、本明細書に記載のシステムおよび方法は、現在フローをモデル化しているユーザにリアルタイムの手掛かりを提供することにより、フローを生成するのに必要な時間の量を短縮することができる。加えて、本明細書に記載のシステムおよび方法は、フローに関するエラー率の減少、フローのパフォーマンスの上昇、および既存のメカニズムに勝るICS内のフローの全体的な最適化を可能にすることもできる。
【0035】
図4は、ある実施形態に係るAI/MLを用いたICSフローのオートコンプリートをサポートするためのシステムを示す。
【0036】
ある実施形態に従うと、ユーザは、ウェブUIアプリケーション内の開発インターフェイス(たとえば開発キャンバス)410を用い、複数の接続401、たとえば接続A403、接続B405、および接続N407を用いることで、ICS統合フローを作成することができる。
【0037】
図4に示されるように、特定の接続(たとえば接続A)を、ソース接続413としての開発インターフェイスにドラッグ&ドロップすることができる(411)。これに代えて、クライアントインターフェイス420からのコンテキストに応じて、ソース接続413を、推奨し(411)、接続ライブラリ431に関連付けられた/接続ライブラリ431と通信するオートコンプリートエンジン430とのやり取りに基づいてポピュレートすることができる。
【0038】
ある実施形態に従うと、クライアントインターフェイスから受信したコンテキストに応じて、開発インターフェイスは、ユーザが既存の接続のライブラリから異なる接続をドラッグ&ドロップすること(412、413)のいずれかを可能にすることができる、または、開発インターフェイスは、ユーザインターフェイスを介して選択することができる任意の接続415、416のポピュレートされたグリッドを提示することができる。ある実
施形態に従うと、コンテキストをソース接続に関連付けることができ、ソース接続は、ソースアプリケーションに接続するために必要な情報を含み得るものであり、ICSは、ソース接続を、ソースアプリケーションから要求を受信するために使用することができる。
【0039】
ある実施形態に従うと、ソース接続およびターゲット接続を、さらに、追加情報を含むように構成することができる。たとえば、追加情報は、要求に対応付けられたデータに対して実行すべきオペレーションのタイプと、これらのオペレーションに対するオブジェクトおよびフィールドとを含み得る。
【0040】
ある実施形態に従うと、クライアントインターフェイスを介して表示される推奨される接続を、クライアントインターフェイスから受信した選択に基づいてリアルタイムで更新することができる。加えて、推奨される接続を、モデル化されているフローのコンテキストに基づいて提供することができる。フローが成長すると、フローに関連付けられたコンテキストも成長する。コンテキストに基づいて、リアルタイムの提案を、より細分化された正確なものに変えることができる。
【0041】
ある実施形態に従うと、リアルタイムの推奨接続のうちの1つが選択されると、本明細書に記載のシステムおよび方法は、フローの選択部分を自動的に構成することができる。そのような自動構成は、必要に応じてオーバーライドすることができる。加えて、その後の推奨接続の選択に基づいて、ICSフローのさらに推奨される選択の、変更、更新、再構成、削除、または追加などが可能である。
【0042】
ある実施形態に従うと、統合フローを作成するプロセスを、記載されているオートコンプリートは基本ステップを集約できるという点で、簡略化することができ、そうすると、ユーザは、よりセンシティブな、フローの他の部分に集中することができる。加えて、コンテキストが成長すると、記載されているシステムおよび方法は、フローのコンテキストに基づいて、所望のまたは必要なステップをフローに追加することができる。
【0043】
ある実施形態に従うと、ICSデザイナーは、ユーザコンテキストに基づいて推奨されるICSフローを提示することができる。ユーザコンテキストは、組織、適用可能であれば系列組織、部門、適用可能であればサブ部門、およびユーザ情報を考慮して、コンテキストを生成し、このコンテキストの最も重要な部分は、ユーザの職務に関する記述である。デザイナーは、プレビュー可能な1つの仮想プロジェクトとして、すべての従属ファイルおよびコネクタを含むICSフローを提示することができる。推奨されるICSフローがユーザ要件を満たす場合、ICSフローを選択することができ、仮想プロジェクトが作成され、ユーザは、そのテストを含む、プレビューを実行することができる。次に、このプロジェクトを、条件を満たす場合(たとえばフローが証明され機能的である場合)、物理的エンティティに保存することができる。
【0044】
本明細書に記載の実施形態において、フローファイルを、JSONまたはJSONファイルと呼ぶことができる。当業者は、本明細書に記載のシステムおよび方法が異なるまたは代替のファイルフォーマットを利用し同一または同様の結果を達成できることを、容易に理解するであろう。
【0045】
パターン/フロー予測のための類似度スコア
ある実施形態に従うと、本明細書のシステムおよび方法は、ICSフローのようなアプリケーションフローを予測するために、JSONモデルのためのパターン認識モデルメカニズムを利用することができる。このモデルにおいて、類似度スコアを生成することにより、入力/ソースJSONが、保存されているJSONパターンと、どれだけ密接に一致しているかを示すことができる。
【0046】
ある実施形態に従うと、方法/モデルは、入力/ソースフローファイルに基づいて、構造的および意味論的に類似するフローファイルパターンを認識することができる。構造的および意味論的類似度は、2つ以上のフローファイル(たとえば2つ以上のJSON)を比較して、ファイルの各フィールドがどれほど類似しているかを判断することにより、求めることができる。フローファイル内のストリングフィールドの場合、自然言語処理を用いることにより、ある単語または文がどれほど類似しているかを判断することができる。数値および日付フィールドの場合、システムおよび方法は、どれだけ互いからずれているかを判断することができる。類似度スコアは各フィールドごとに生成することができる。
【0047】
ある実施形態に従うと、JSONファイルのようなフローファイルは、オブジェクト、アレイ、ならびにストリング、数値およびブールタイプのプリミティブフィールドで構成することができる。JSONパターン認識メカニズムは、各フィールドごとの類似度スコアの生成に基づくものであり、これは、オブジェクトおよびアレイの複合類似度スコアになるように集約され、最終的にルートJSONオブジェクトまたはアレイの類似度スコアになるように集約される。
【0048】
ある実施形態に従うと、キーと値との双方を用いて、各ソースJSONプリミティブフィールドをターゲットJSONフィールドと比較することができる。キーは、自然言語処理(NLP:natural language processing)を用いて比較することができ、値は、その
タイプに基づいて比較する。すなわち、たとえば、ストリングフィールドNLPが使用され、数値フィールド距離が計算される。フィールド比較は、結果として類似度スコアの生成をもたらす。たとえば、以下に示すような発注書のためのターゲットJSONを考える。
【0049】
【0050】
ある実施形態に従うと、本明細書に記載のシステムおよび方法は、JSON発注書から第1のストリングを取り出し、類似度スコアを求めるために入力JSONパターンに対する比較を実行することができる。たとえば、入力JSONパターンは以下のスニペットを
含み得る。
【0051】
【0052】
ある実施形態に従うと、次に、この方法/モデルは、2つのJSONファイルの比較に基づいて、構造的および意味論的に類似するフローファイルパターンを認識することができる。上記状況において、この方法/モデルは、ターゲットファイルからの「name」フィールドが入力/ソースファイルの「name」フィールドと完全に一致しているので、完全類似度スコア(たとえば類似度スコア「1.0」)を生成することができる。同様に、入力/ソースファイルが「name」フィールドの代わりに「title」フィールドを含むが「John Smith」の値が同一である場合、この方法/モデルは、高い類似度スコアを生成するが、
「title」というフィールドは「name」の同義語なので、完全スコアではない(たとえば
スコア「0.9」)。
【0053】
ある実施形態に従うと、フィールド(たとえばJSONフィールド)の類似度スコアは以下を用いて生成することができる。
【0054】
【0055】
ある実施形態に従うと、数値フィールドの類似度スコアは、ターゲット値からの距離のパーセンテージを見出すことによって発見できる。たとえば、上記ソースJSONファイルに注目した場合、入力/ソースJSONスニペットが「price :23.95」を含む場合、自然言語一致が完全一致であるだけでなく値も完全一致なので、類似度スコアは完全な1.0であろう。しかしながら、入力JSONフィールドのスニペットが「price :22.95」を含む場合、この方法/モデルは、類似度スコア「0.9791」を生成するであろう。これは以下の式を用いて見出される。
【0056】
【0057】
ある実施形態に従うと、入力/ソーススニペットが「price :22.95」を含む場合、自然言語処理が完全一致なので、上記「キーの式」はスコア1.0となる。しかしながら、値式はスコア0.9582となり、このことは、フィールド全体の類似度スコアが(1+0.9582)/2であり結果として類似度スコアが0.9791であることを意味する。
【0058】
ある実施形態に従うと、本明細書に記載のモデル/方法は、フィールドオブジェクトタイプパターン認識(たとえばJSONフィールドオブジェクトタイプパターン認識)をサポートすることができる。JSONオブジェクトタイプパターン認識は、個々のフィールドの類似度スコアから総平均類似度スコアを生成することに基づく、たとえば、入力フロー(たとえばJSONフロー)パターンは以下のスニペットを含み得る。
【0059】
【0060】
ある実施形態に従うと、上記例の生成された類似度スコアは、「name」フィールドの類似度スコアとフィールド式スコアの双方が完全な1.0なので、完全な1.0であろう。
【0061】
ある実施形態に従うと、類似度スコアは、たとえば入力フロー(たとえばJSONフロー)のスニペットが自然言語プロセスについて完全一致ではないがたとえば同義語である場合、減じられる可能性がある。たとえば、入力フローからのスニペットが以下を含むと想定する。
【0062】
【0063】
ある実施形態に従うと、この場合、類似度スコアは、入力フローの2つのセグメントのうちの1つだけが、自然言語処理(すなわち「キー類似度スコア」フィールド)と、値(すなわち「price」フィールドおよび値)とのの双方について完全一致なので、1.0か
ら減じられるであろう。他方の値は「name」の代わりに「title」を含む。しかしながら
、「title」はターゲットフローの同義語なので、類似度スコアが激減されることはない
。上記例の場合、このスニペットの総類似度スコアは0.975となり得る。これは以下から導出できる。
【0064】
【0065】
ある実施形態に従うと、「title」にキー類似度スコア0.9が与えられる場合、上記
スニペットの総類似度スコアは次のように計算することができる。
【0066】
【0067】
ある実施形態に従うと、類似度スコアは、たとえば入力フロー(たとえばJSONフロ
ー)のスニペットが自然言語プロセスについて完全一致ではないがたとえば同義語である場合、減じられる可能性がある。一例として入力フローからのスニペットが以下を含むと想定する。
【0068】
【0069】
ある実施形態に従うと、そうすると類似度スコアは、入力フローのセグメントの双方が自然言語処理(すなわち「キー類似度スコア」フィールド)について正確に一致していないので、1.0から減じられる可能性がある。キーフィールドの双方がターゲットフローの同義語である。「title」がターゲットフローの同義語であり「cost」がターゲットフ
ローの同義語なので、類似度スコアが激減されることはない。上記例の場合、このスニペットの総類似度スコアは0.95の可能性がある。
【0070】
ある実施形態に従うと「title」および「cost」が類似度スコア0.9を与えられた場
合、上記スニペットの総類似度スコアは次のように計算することができる。
【0071】
【0072】
類似度スコアのフィールドアレイタイプパターン認識
ある実施形態に従うと、本明細書に記載の方法/モデルは、フィールドアレイタイプパターン認識を利用することができる。このようなアレイタイプパターン認識(たとえばJSONアレイタイプパターン認識)は、アレイ内のオフセットを考慮して個々のフィールドの類似度スコアから総平均類似度スコアを生成することに基づく。一例として以下が入力ソースアレイパターンを含むものとする。
【0073】
【0074】
加えて、ターゲットアレイパターンが完全一致を含む、すなわち以下の通りであるとする。
【0075】
【0076】
ある実施形態に従うと、この場合、アレイの類似度スコアは完全1.0となるであろう。
【0077】
ある実施形態に従うと、アレイ内のフィールドのフィールド類似度スコアを求めるために以下の式を使用することができる。
【0078】
【0079】
ある実施形態に従うと、フィールドのアレイの類似度スコアを求めるために以下の式を使用することができる。
【0080】
【0081】
ある実施形態に従うと、たとえば、上記と同一の入力ソースアレイパターンが以下に示すターゲットアレイパターンと一致する場合、アレイ類似度スコアは0.8であろう。
【0082】
【0083】
図5は、ある実施形態に係る具体例としてのフローチャートデシジョンツリーを示す。
ある実施形態に従うと、ユーザは、フローデザイナー500のシェーディングされていない部分501に示されている、統合フローの第1の部分を選択することができる。システムおよび方法は、統合フローのこの最初から、ユーザのコンテキストに応じて、各種選択対象としてのいくつかのオプション503~507を、ユーザに提示することができる。図面に示されているように、現在、オプション505がウィンドウ502(現在の選択ウィンドウ)に表示されている。その他のフロー推奨を、選択可能なカードレイアウトとして提供することができる。特定のフローが選択されると、ICSデザイナーはそのフロー全体を表示する。ボタンナビゲーションを提供することもできる。
【0084】
ある実施形態に従うと、フローの推奨プロセスが選択されない場合がある(たとえば推奨が正しい推奨ではない場合)。このシナリオでは、図面のシェーディングされた領域のフローと同様に示される「予測プレーン」内に、その他のプロセス推奨を、予測として常に提示することができる。そうすることで、個々のタスクまたはフロー全体を選択するというオプションを提供する。システムおよび方法は、フローを完成するために、可能なすべての推奨についてフリックすることができるカードレイアウトを提示することもできる。そうすると、ナビゲーションは、予測された各ICSフローがどのように見えるか、および、それがどのように挙動するかを見ることができる。フローは、各オプションが選択されたときにリアルタイムでテストすることができる。このテストは、フローの最終選択の前に、機能およびパフォーマンスのプロファイルを提供することができる。
【0085】
ある実施形態に従うと、502のフローは、いくつかの異なるやり方で表示することができる。フローは、図面に示されるように完成した(テストされ合格した)フローとして表示することができる。これに代えて、オプションのフローを重ねて(たとえば点線の輪郭で)提示することができ、この場合、次の設定数フローステップのみが、提示されたオプションのうちの1つを選択することを求める命令を受けるまで、ユーザに対して表示される。これに代えて、オプションのフローを、重ねるやり方ではあるが完成したフローとして表示することで、ユーザが、完成したフローのさまざまな部分を選択し、選択可能な異なる分岐オプションを見ることを可能にしてもよい。
【0086】
プロセスモデル予測
ある実施形態に従うと、システムおよび方法は、本明細書において、プロセスモデルの不変パターン認識の階層クラスタリングモデルを提供する。このモデルにおいて、プロセスの設計方法についての知識が、学習され、ユーザおよびプロセスコンテキストに基づいてプロセスモデルのクラスタの階層としてカプセル化され、最も正確なクラスタはクラスタツリーのリーフである。知識は、ユーザおよびプロセスコンテキストに基づいてクエリ
することができるツリー構造で符号化される。
【0087】
ある実施形態に従うと、プロセスモデルを再編成することは、複雑で時間がかかる仕事である。システムおよび方法は、パターンを、より大きな既存パターンの小さなスニペットをマッチングすることにより、認識することができる。システムおよび方法は、プロセスモデルを、ユーザおよびプロセスコンテキストに基づいて、プロセスモデルの階層クラスタリングにより、予測することができる。プロセスコンテキストのクラスタリングは、XML/JSONパターンの認識に基づき得る。
【0088】
図6は、ある実施形態に係る、AI/MLを用いたICSフローのシステムオートコンプリートのサポートにおいて使用する階層ツリー構造を示す。より具体的には、
図6は、ある実施形態に係るセルフデザインエンタープライズシステムを示す。
【0089】
ある実施形態に従うと、学習およびパターン認識アルゴリズムはこの階層構造を利用する。これらのノードは、コンテキストに基づいてクラスタリング領域をモデル化する。1つのノードはいくつかの子と親とを持つことができる。入力モデルは、コンテキストに基づいてすべてのレベルのノードに進む。各レベルで、ノードは、親のコンテキスト階層に基づいた類似するモデルのクラスタである子を有する。ノードの階層はコンテキストに基づいており、トップレベルはルートコンテキストであり、次は従属会社を持つことができる企業タイプコンテキストであり、次は部門タイプおよびサブ部門であり、次はユーザコンテキストであり、最後は職務タイプコンテキストである。これらのツリーノードの各々にインデックスが付けられる。
【0090】
一例として、構造は、いくつかのモデルクラスタ601~603に関連付けることができるルートコンテキスト600を含み得る。ルートコンテキストの下は、いくつかのモデルクラスタ611~613に関連付けることができる企業タイプコンテキスト610とすることができる。企業タイプコンテキストの下は、いくつかのモデルクラスタ621~623に関連付けることができる部門タイプ620とすることができる。部門タイプの下は、いくつかのモデルクラスタ631~633に関連付けることができる職務タイプ630とすることができる。
【0091】
ある実施形態に従うと、各モデルクラスタを、評価され認証された複数の統合フローで予めポピュレートすることができる。これらの統合フローの各々は、たとえばオートコンプリートエンジンに関連付けられたストレージに保存することができる。たとえば、モデルクラスタ631がポイントオブセールス統合フローを扱うと想定する。そうすると、職務タイプ630に分類されるユーザは、ログインすることができ、ポイントオブセールスフローが示され、モデルクラスタ631からの複数の統合フローが提示される。
【0092】
ある実施形態に従うと、モデルクラスタ621を、評価され認証された複数の統合フローに関連付けることもできる。ユーザがモデルクラスタ631からの複数の統合フローのうちのいずれかを選択することを辞退した場合、このツリーは、部門タイプ620(これもコンテキストからのユーザに関連付けられる)に戻り、モデルクラスタ621からの複数のフローをユーザに提示することができる。この反復状況は、提示されたフローのうちのいずれかを選択することをユーザが辞退し続ける限り、続く可能性がある。
【0093】
ある実施形態に従うと、複数のフローのうちの各フローは、完全なフローとしてユーザに提示することができる、または、段階的にユーザに提示することができ、この場合、次の選択ごとに、システムおよび方法は、正しいモデルクラスタ631から選択されたいくつかのオプションを提示する。
【0094】
ある実施形態に従うと、自己学習アルゴリズムが、
図6に示される階層データ構造に対して機能することができる。階層データ構造は、既に収集されたデータで初期化され、このデータは、既に生成されておりしたがってデータの品質を保証するモデルからなる。このアルゴリズムは、変更/追加が導入されると、階層内のモデルクラスタを自動的に再構築することができる。そうすると、特定のコンテキストについて新たなモデルが生成される。自己学習アルゴリズムは、最初に、モデルを、ルートモデルクラスタのうちの1つに、その構文および意味論的類似度に基づいて投入する。次に、企業、部門、職務、およびユーザコンテキストに基づいて、残りの階層モデルクラスタを更新する。
【0095】
ある実施形態に従うと、パターン認識アルゴリズムは、送信された入力パターンを、コンテキスト情報に注目し現在の(送信された)コンテキスト内の類似するモデルを識別するために使用できるキーを生成することで、認識することに、基づき得る。モデルパターンは、企業、部門、職務およびユーザコンテキストが、予め計算されたモデルクラスタにどれだけ密接に一致しているかに基づいて、正確度が高いものから低いものへとランク付けされ、認識される。さらに、推奨が、企業、部門、職務およびユーザコンテキストの組み合わせについて正確度が最大のものから最低のものへとランク付けされる、すなわち、企業、部門、職務およびユーザコンテキストの次に、企業、部門および職務コンテキストが続き、その次に企業および部門および企業コンテキストが続く。
【0096】
ある実施形態に従うと、システムおよび方法は一般的に、正確度が低い推奨をユーザに提示しない。しかしながら、ユーザがより正確なモデルを選ばない場合、アルゴリズムは、所望のモデルがより一般的であると判断することができる。たとえば、量子力学を扱った物理学の書籍しか購入しない物理学者の場合、システムは量子力学に関する書籍を推奨する可能性が最も高い。しかしながら、この物理学者が哲学に関する読書をしたい気分でありしたがって量子力学に関する書籍の推奨を拒絶する場合を考える。この場合、推奨システムは、ユーザコンテキストから、物理学者が哲学に興味があることがわかるので、次の推奨は、この主題に対するユーザの興味に基づいた哲学の書籍である可能性がある。よって、システムは、最初に、パターンそのものに純粋に基づいた推奨を行い、ユーザが量子力学に関連しない書籍を購入したことがなくこの推奨を拒絶した場合、次にこのユーザに提示する推奨は、ユーザが好む主題、この場合は哲学に基づく。次回同じユーザがログインすると、何冊かの哲学書を含む推奨を与えるであろう。
【0097】
ある実施形態に従うと、システムおよび方法は、ユーザコンテキストと、それに加えて、モデルの構造および意味論の双方を考慮するモデルパターンとに基づいて、推奨を提供することができる。
図7に示される、設計されているモデルについて考える。ユーザは、第1のアクティビティを受信アクティビティとして作成することができ、生成される推奨は、ユーザコンテキスト701と、それに加えて、設計されているプロセスの構造および意味論とに基づくものとなる。システムおよび方法は、受信アクティビティで始まる類似コンテキストおよびモデルを有しかつプロセスおよび受信アクティビティの名称、ドキュメンテーションなどについて意味論的類似性を有するすべてのクラスタ705に対してマッチングすることができる。図示の通り、3つのクラスタ702~704のみが示されているが、より多くのクラスタをシステム内に含めてユーザインターフェイスを介して提示することができる。
【0098】
ある実施形態に従うと、
図7のモデルを
図8に示されるように拡張することができる。
図7のモデルを拡張することにより、受信および呼出タスクを有するモデルについての推奨は、クラスタ805に基づくことになり、このクラスタは、類似するコンテキスト801を有し、それに加えて、受信および呼出アクティビティ(構造)を有するとともに、類似するリソースについて類似するメッセージを受信し類似する入力、出力およびフォールトパターンを有する類似するリソース方法を呼び出す、類似するセマンティクスを有する
。図示の通り、3つのクラスタ802~804のみが示されているが、より多くのクラスタをシステム内に含めてユーザインターフェイスを介して提示することができる。
【0099】
図9は、ある実施形態に係る具体例としてのランキングシミュレータを示す。
ある実施形態に従うと、JSON入力パターン901を受信することができる。類似度に基づくパターン認識902を、JSON入力パターンに対し、JSON入力パターンからの入力(たとえば「swagger」、「info.version」、および「info.title」)を用いて
実行することにより、JSON入力パターンとマッチングさせたいくつかの出力JSONパターン903~905をランク付けすることができる。
【0100】
図10は、人工知能/機械学習を用いたICS(統合クラウドサービス)フローのオートコンプリートをサポートする方法のフローチャートを示す。
【0101】
ステップ1010で、この方法は1つ以上のマイクロプロセッサを含むコンピュータを提供することができる。
【0102】
ステップ1020で、この方法は統合フローマップを開始することができる。
ステップ1030で、この方法はユーザコンテキストを収集することができる。
【0103】
ステップ1040で、この方法は収集したユーザコンテキストに基づいて複数のフロー予測を提供することができる。
【0104】
パターン認識に基づく次回アクティビティ予測
ある実施形態に従うと、本明細書に記載のシステムおよび方法は、JSONファイル等のファイルフォーマットのICSフロー等のフロー内のパターン認識に基づく次回アクティビティ予測を提供することができる。これは、パターン認識(たとえばJSONパターン内)に基づく次回アクティビティ予測として説明することができる。次回アクティビティ予測は、コンテキストそのものまたはコンテキストの一部に基づいて、複数のコンテキスト内で行うことができる。次のタスクを過去のすべてのタスクに基づいて予測することができる、または、予測を、あるスコープ内で利用できるタスクの頻度を考慮する包括コンテキストに基づいて行うことができる。
【0105】
ある実施形態に従うと、パターン認識が実行され(たとえばICS JSONパターン認識)パターンが認識された後に、次回ステップ予測エンジンは、完全または部分一致(すなわち先行するすべてのタスクが完全にまたは部分的に一致)に基づいて、可能性がある(たとえば「最も」可能性が高い)次回ステップシーケンスを計算することができる。また、システムおよび方法は、エンクロージングスコープに基づいて、次回タスクシーケンス(すなわち先行するタスクに依拠しない、特定のスコープについて最も確率が高い次回スコープ)を計算することもできる。
【0106】
ある実施形態に従うと、フローパターン認識(たとえばICSフローJSONパターン認識)は、結果として、設計されたフローに最も密接に一致するモデルのサブセットをもたらすことができる。このサブセットに基づいて、次回アクティビティシーケンスを、完全/部分一致として、かつスコープ予測として、予測することができる。
【0107】
完全/部分一致
ある実施形態に従うと、本明細書に記載の方法およびシステムが、次回アクティビティを予測するために完全または部分一致を実行する場合、システムおよび方法は、既存のフローのパターン認識を用い、発生頻度に基づいて、可能性のある、タスクの次回シーケンスの、ランク付けを実行することができる。たとえば、「Sales Account Creation」フロ
ーを含む以下のフローにおいて、ユーザがこのフローの設計の真最中でありアカウントビジネスオブジェクトをセールスクラウドアカウントビジネスオブジェクトにマッピングする割当ステップに到達したと想定する。この入力に基づいて、パターン認識システムは、この入力パターン(すなわち設計されているフロー)に密接に一致する最大25の既存フローを認識する。
【0108】
【0109】
ある実施形態に従うと、本明細書のシステムおよび方法は、次回アクティビティ予測に使用できるいくつかのターゲットモデルに対するアクセスを含むまたは有することができる。簡潔にするために、次回アクティビティ予測方法/モデルに使用される以下の3つのターゲットモデルがあると想定する。
【0110】
モデル1
【0111】
【0112】
モデル2
【0113】
【0114】
モデル3
【0115】
【0116】
ある実施形態に従うと、パターン認識は、3つのプロセスすべてをマッチングさせることができ、一致に基づいて、次のタスクの最も可能性が高いランク付けを生成することができる。次にこれをユーザ/開発者に提供することができる。このようなマッチングの結果の一例を以下に示す。
【0117】
【0118】
ある実施形態に従うと、システムおよび方法は、可能性のある次のタスクを、可能性が最も高いものから低いものへという順序でランク付けし、「invoke」タスクの次が「if」であり、その理由は、シーケンスアクティビティのインデックス3における発生頻度がより高いからである。
【0119】
ある実施形態に従うと、方法は、パターン認識に基づいて、フロー全体の予測に加えて「次回ステップ」を予測できるメカニズムを生成することができる。そうすると、これは
既にマッチングされたモデルに基づく。統計的方法を用いて、どの「次回ステップ」がマッチングされたフローにおいて最も使用されるかを、第1の予測から求める。たとえば、ユーザが「Router」タスクを入力した場合、最大インデックス(インデックス0)において、次回ステップの最高確率は、restのターゲットを有する「Transformer」の可能性が
最も高く、次に可能性が高いのは、「rest」invokeであり、次に最も可能性が高いのはtransform restである。そうすると、システムは、次回ステップであるインデック1に進むことができる。各インデックスまたはシーケンス番号において、どのアクティビティの可能性が最も高いかを示す確率を生成する。
【0120】
図11は、ある実施形態に係る、具体例としてのフローチャートデシジョンツリーを示す。
【0121】
ある実施形態に従うと、ユーザは、フローデザイナー1100のシェーディングされていない部分1101に示されている、統合フローの第1の部分を選択することができる。システムおよび方法は、統合フローのこの最初から、ユーザのコンテキストに応じて、各種選択対象としてのいくつかの次回タスクオプション1103~1107を、ユーザに提示することができる。図面に示されているように、現在、予測された次回タスクオプション1105がウィンドウ1102(現在の選択ウィンドウ)に表示されている。その他の次回タスク推奨を、選択可能なカードレイアウトとして提供することができる。特定の推奨/予測された次のタスクが選択されると、ICSデザイナーは追加の予測された次回タスクを(次のインデックスに)表示することができる。
【0122】
ある実施形態に従うと、フローの2つの連続インデックスとして示されているだけであるが、本明細書に記載のシステムおよび方法は、予測されたタスクの2つ以上の次のインデックスレベルを表示することができ、次回タスク予測は2つ以上のタスクインデックスに基づき得る。
【0123】
ある実施形態に従うと、このフローについて、推奨される次回タスクが選択されていない場合がある(たとえば推奨が正しい推奨ではない場合)。このシナリオでは、図面のシェーディングされた領域のフローと同様に示される「予測プレーン」内に、その他の次回タスク推奨を、予測として常に提示することができる。そうすることで、個々のタスクまたはフロー全体を選択するというオプションを提供する。システムおよび方法は、フローを完成するために、可能なすべての推奨についてフリックすることができるカードレイアウトを提示することもできる。そうすると、ナビゲーションは、予測された各ICSフローがどのように見えるか、および、それがどのように挙動するかを見ることができる。フローは、各オプションが選択されたときにリアルタイムでテストすることができる。このテストは、フローの最終選択の前に、機能およびパフォーマンスのプロファイルを提供することができる。
【0124】
図12は、人工知能/機械学習を用いたICS(統合クラウドサービス)フローのための次回ステップ予測のための具体例としての方法のフローチャートを示す。
【0125】
ステップ1210で、この方法は1つ以上のマイクロプロセッサを含むコンピュータを提供することができる。
【0126】
ステップ1220で、この方法は統合フローマップを開始することができる。
ステップ1230で、この方法はユーザコンテキストを収集することができる。
【0127】
ステップ1240で、この方法は、収集したユーザコンテキストに基づいて、統合フローマップ内の複数の次回ステップ予測を提供することができる。
【0128】
ステップ1250で、この方法は、複数の次回ステップ予測のうちの選択次回ステップ予測の選択を受信することができる。
【0129】
パターン認識に基づくアクティビティのアプリケーション、オペレーション、およびビジネスオブジェクトの予測
ある実施形態に従うと、本明細書に記載のシステムおよび方法は、パターン認識(たとえばJSONパターン認識)に基づいて、アクティビティによって参照される、アプリケーション、オペレーション、およびビジネスオブジェクトをランク付けするためのメカニズムを提供することができる。アクティビティが参照するアプリケーション、オペレーション、およびビジネスオブジェクトのランク付けは、複数のコンテキストで計算することができる。たとえば、これらのコンテキストは、完全/部分コンテキストに基づき得る(すなわちランク付けは過去のすべてのタスクに基づいて計算される)。ある実施形態に従うと、予測は、これに加えてまたはこれに代えて、特定のタスクが参照するアプリケーション、オペレーション、およびビジネスオブジェクトの頻度を考慮する包括コンテキストに基づくものであってもよい。
【0130】
ある実施形態に従うと、入力モデル(設計されているプロセスのモデル)に基づいてパターン(たとえばICS JSONパターン)が認識された後に、ランキングエンジンは、完全/部分一致に基づいてモデルランク付けを計算することができる。これは、たとえば、先行するすべてのタスクの一致に基づいて行うことができる。ある実施形態に従うと、システムは、エンクロージングスコープに純粋に基づいてモデルランク付けを計算することもできる(すなわち、特定のタスクについて最も可能性が高いアプリケーション、オペレーション、およびビジネスオブジェクト)。
【0131】
ある実施形態に従うと、フローパターン(たとえばICS JSONフロー)認識は、結果として、設計されたフロー(入力)に最も密接に一致するモデルのサブセットをもたらす。この一致したICSモデルのサブセットに基づいて、アプリケーション、オペレーション、およびビジネスオブジェクトのランク付けが決定される。
【0132】
完全/部分一致
ある実施形態に従うと、システムおよび方法は、特定のタスクが参照するアプリケーション、オペレーション、およびビジネスオブジェクトを、既存のフローのパターン認識(たとえばICSフローのJSONパターン)に基づく、その発生頻度に基づいて、ランク付けすることができる。これを説明するために、たとえば以下の「Sales Account Creation」というICSフローを取り上げる。このような例において、ユーザがこのICSフローの設計の真最中でありセールスアカウントビジネスオブジェクトをセールスクラウドアカウントビジネスオブジェクトにマッピングする割当ステップに到達したと想定する。この入力に基づいて、パターン認識システムは、この入力パターン(設計されているICSフロー)に密接に一致するいくつかの既存フローを認識する。具体例としての入力フローを以下に示す。
【0133】
【0134】
ある実施形態に従うと、この例を簡潔にするために、既存の3つのフローを、既存のデータベースからのこの入力フローにマッチングさせるものとする。これらの3つのマッチングされたフローは以下の通りである。
【0135】
モデル1
【0136】
【0137】
モデル2
【0138】
【0139】
モデル3
【0140】
【0141】
ある実施形態に従うと、パターン認識システムおよび方法(たとえばJSONパターン認識システムおよび方法)は、上記3つのモデルのすべてをマッチングさせることができ、一致に基づいて、アプリケーション、オペレーション、およびビジネスオブジェクトのランク付けを計算する。
【0142】
【0143】
ある実施形態に従うと、ランキングシステムは、invokeタスクについて、「cloud sales cloud」アプリケーションを、「someother cloud sales Cloud」アプリケーションよりも高くランク付けする。このようにして、ユーザが新たな「invoke」タスクを作成した場合、システムは、主要な/好ましい/第1のオプションとして「cloud sales cloud」を
選択するという選択肢をユーザに提示することができる。なぜなら、これは、システムがsalesからのcreate account eventによってトリガされるので、より可能性が高いからで
ある。すなわち、訓練データは、「sales」の受信で始まり次に割当が続き、最後に「cloud sales cloud」を呼び出す、より多くのフローを含む。
【0144】
ある実施形態に従うと、システムおよび方法は、特定のタスクが参照するアプリケーション、オペレーション、およびビジネスオブジェクトを、位置とは関係なく、ランク付けすることができる。たとえば、以下に示す「HR Account Creation」というICSフロー
を取り上げる。ここで、ユーザは、ICSフローの設計の真最中であり、「workable HR account」ビジネスオブジェクトをクラウドHRクラウドアカウントビジネスオブジェク
トにマッピングする割当ステップに到達している。この入力に基づいて、パターン認識システムは、たとえば、この入力パターン(設計されているICSフロー)に密接に一致する訓練データベース内の既存のいくつかのフローを認識する。入力フローの例は次の通りである。
【0145】
【0146】
ある実施形態に従うと、既存のフローに「workable HR account」ビジネスオブジェク
トはないが、システムおよび方法は、入力フローを、訓練データベース内のいくつかの類似する既存フローとマッチングさせることができる。このような場合、workable create accountで始まるプロセスについて完全一致はない。なぜなら、システムは、これを、一
般化された予測を行う前に確認していないからであり、第3のタスクがinvokeであった場合、システムの一般化された予測に基づいて、ユーザはsales accountを作成する可能性
があり、これは、他のユーザがアクティビティを呼び出すときに通常行うことである。これは以下のマッチングされたフローから理解することができる。
【0147】
【0148】
図13は、ある実施形態に係る、具体例としてのフローチャートデシジョンツリーを示す。
【0149】
ある実施形態に従うと、ユーザは、フローデザイナー1300のシェーディングされていない部分1301に示されている、統合フローの第1のアクションを選択することがで
きる。システムおよび方法は、統合フローのこの最初から、訓練データベースに既に保存されているいくつかのフローを予測することができる。たとえば、予測された次のアクションは、1302~1307等の各種ウィンドウに提示することができる。しかしながら、ユーザが、次のアプリケーション、オペレーション、またはビジネスオブジェクトを求める要求を選択するまたは示すと、システムは、たとえばウィンドウ1305内に、オプションA~D等のいくつかのオプションを提示することができる。これらのオプションは、たとえば、予測された次のアプリケーション、オペレーション、またはビジネスオブジェクトを含み得る。そうすると、ユーザは、必要に応じて、提示されたオプションのうちの1つを選択することができ、提示されたオプションは、入力フローと保存されている完成したフローとの間の一致に基づいて、最も可能性が高いものから可能性が低いものへという順序で示すことができる。
【0150】
図14は、人工知能/機械学習を用いたICS(統合クラウドサービス)フローの次回オブジェクト予測のための具体例としての方法のフローチャートを示す。
【0151】
ステップ1410で、この方法は1つ以上のマイクロプロセッサを含むコンピュータを提供することができる。
【0152】
ステップ1420で、この方法は統合フローマップを開始することができる。
ステップ1430で、この方法はユーザコンテキストを収集することができる。
【0153】
ステップ1440で、この方法は、収集したユーザコンテキストに基づいて、統合フローマップ内の複数の次回オブジェクト予測を提供することができ、複数の次回オブジェクト予測の各々は、アプリケーション、オペレーション、およびビジネスオブジェクトのうちの1つを含む。
【0154】
ステップ1450で、この方法は、複数の次回ステップ予測のうちの選択次回オブジェクト予測の選択を受けることができる。
【0155】
以上、本発明のさまざまな実施形態について説明したが、これらは例として提示したものであり限定するものではないことを理解されたい。実施形態は、本発明の原理およびその実際の用途を説明するために選択し説明したものである。実施形態は、新規のおよび/または改善された特徴を提供することにより、および/またはリソース利用の低減、容量の増大、効率の向上、および待ち時間の低減といった利益を提供することにより、システムおよび方法の性能を改善するために本発明が使用されるシステムおよび方法を例示する。
【0156】
いくつかの実施形態において、本発明の特徴は、全体的にまたは一部が、プロセッサと、メモリ等の記憶媒体と、他のコンピュータと通信するためのネットワークカードとを含むコンピュータにおいて実現される。いくつかの実施形態において、本発明の特徴は、ローカルエリアネットワーク(LAN)、スイッチファブリックネットワーク(たとえばInfiniBand)、またはワイドエリアネットワーク(WAN)等のネットワークによってコンピュータの1つ以上のクラスタが接続される分散コンピューティング環境において実現される。分散コンピューティング環境は、単一の場所にすべてのコンピュータを有することができる、またはWANによって接続された異なる遠隔の地理的場所にコンピュータのクラスタを有することができる。
【0157】
いくつかの実施形態において、本発明の特徴は、全体的にまたは一部が、ウェブ技術を使用しセルフサービスのメータリング方式でユーザに配信される共有エラスティックリソースに基づくクラウドコンピューティングシステムの一部としてまたはそのサービスとし
てのクラウド内に実現される。(アメリカ国立標準技術研究所によって定義された)5つのクラウドの特徴があり、それらは、オンデマンドセルフサービス、広範なネットワークアクセス、リソースプーリング、迅速な弾力性、およびサービスの測定である。クラウドデプロイモデルは、パブリック、プライベート、およびハイブリッドを含む。クラウドサービスモデルは、サービスとしてのソフトウェア(SaaS)、サービスとしてのプラットフォーム(PaaS)、サービスとしてのデータベース(DBaaS)、およびサービスとしてのインフラストラクチャ(IaaS)を含む。本明細書で使用されるクラウドは、共有エラスティックリソースをセルフサービスのメータリング方式でユーザに配信する、ハードウェア、ソフトウェア、ネットワーク、およびウェブ技術の組み合わせである。特に明記しない限り、本明細書で使用されるクラウドは、パブリッククラウド、プライベートクラウド、およびハイブリッドクラウドの実施形態、ならびに、クラウドSaaS、クラウドDBaaS、クラウドPaaS、およびクラウドlaaSを含むがこれらに限定されないすべてのクラウドデプロイモデルを包含する。
【0158】
いくつかの実施形態において、本発明の特徴は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの組み合わせを使用して、またはそれらに支援されて実現される。いくつかの実施形態において、本発明の特徴は、本発明の1つ以上の機能を実行するように構成またはプログラムされたプロセッサを使用して実現される。プロセッサは、いくつかの実施形態において、シングルまたはマルチチッププロセッサ、デジタル信号プロセッサ(DSP)、システムオンチップ(SOC)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、または、本明細書に記載の機能を実行するように設計された、その他のプログラマブルロジックデバイス、ステートマシン、離散ゲートもしくはトランジスタロジック、離散ハードウェアコンポーネント、もしくはそれらの任意の組み合わせである。いくつかの実装形態において、本発明の特徴は、所与の機能に固有の回路によって実現されてもよい。他の実装形態において、特徴は、たとえば、コンピュータ読取可能記憶媒体に格納された命令を使用して特定の機能を実行するように構成されたプロセッサにおいて実現されてもよい。
【0159】
いくつかの実施形態において、本発明の特徴は、処理および/またはネットワーキングシステムのハードウェアを制御するため、かつ、プロセッサおよび/またはネットワークが本発明の特徴を利用する他のシステムとやり取りすることを可能にするための、ソフトウェアおよび/またはファームウェアに組み込まれる。そのようなソフトウェアまたはファームウェアは、アプリケーションコード、デバイスドライバ、オペレーティングシステム、仮想マシン、ハイパーバイザ、アプリケーションプログラミングインターフェイス、プログラミング言語、および実行環境/コンテナを含み得るが、これらに限定されない。ソフトウェア技術の当業者には明らかなように、適切なソフトウェアコーディングは、熟練プログラマが本開示の教示に基づいて容易に作成できるものである。
【0160】
いくつかの実施形態において、本発明は、命令がその上/中に格納された記憶媒体またはコンピュータ読取可能媒体(複数の媒体)であるコンピュータプログラムプロダクトを含み、その命令は、コンピュータのようなシステムを、本発明のプロセスまたは機能のいずれかを実行するようにプログラムするかまたはそうでなければ構成するために使用することができる。記憶媒体またはコンピュータ読取可能媒体は、フロッピー(登録商標)ディスク、光ディスク、DVD、CD-ROM、マイクロドライブ、および光磁気ディスクを含む任意のタイプのディスク、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、フラッシュメモリデバイス、磁気もしくは光カード、ナノシステム(分子メモリICを含む)、または、命令および/またはデータを格納するのに適した任意のタイプの媒体もしくはデバイスを含み得るが、これらに限定されない。特定の実施形態において、記憶媒体またはコンピュータ読取可能媒体は、非一時的な記憶媒体または非一時的なコンピュータ読取可能媒体である。
【0161】
これまでの説明は、網羅すること、または本発明を開示された形態そのものに限定することを意図していない。加えて、本発明の実施形態が特定の一連のトランザクションおよびステップを用いて記載された場合、本発明の範囲は記載された一連のトランザクションおよびステップに限定されないことが、当業者には明らかあろう。さらに、本発明の実施形態がハードウェアとソフトウェアの特定の組み合わせを用いて記載された場合、ハードウェアとソフトウェアのその他の組み合わせも本発明の範囲に含まれることを理解されたい。さらに、各種実施形態は本発明の特徴の特定の組み合わせを説明しているが、本発明の範囲に含まれる特徴の異なる組み合わせは関連技術の当業者には明らかであり、ある実施形態の特徴を別の実施形態に取り入れることが可能であることを、理解されたい。加えて、形態、詳細、実装、および用途における、各種追加、差し引き、削除、変形、ならびにその他の修正および変更を、本発明の精神および範囲から逸脱することなくなし得ることが、当業者には明らかであろう。本発明のより広い精神および範囲は以下の特許請求の範囲およびその均等物によって定められることが意図されている。
【手続補正書】
【提出日】2024-07-03
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
人工知能/機械学習を用いたICS(統合クラウドサービス)フローのオートコンプリートをサポートするためのシステムであって、前記システムは、
1つ以上のマイクロプロセッサを含むコンピュータを備え、
前記コンピュータは、複数のオブジェクトを含むライブラリを格納したストレージにアクセス可能であり、前記ライブラリの各前記複数のオブジェクトは統合フロー内で使用され、
前記コンピュータは、
統合フローマップを開始するステップと、
前記統合フロー内で使用される第1のオブジェクトの選択を、GUI(グラフィカルユーザインターフェイス)を介して受付けるステップと、を実行するように構成され、
前記第1のオブジェクトは前記複数のオブジェクトを含む前記ライブラリから選択され、前記第1のオブジェクトは、当該第1のオブジェクトに関連付けられたソースコンポーネントによって提供される定義および構成に関連付けられ、
前記コンピュータは、さらに、
ユーザコンテキストを収集するステップと、
前記収集したユーザコンテキストと前記統合フロー内で使用される前記第1のオブジェクトとに基づいて複数のフローを予測するステップと、
予測された前記複数のフローを、前記GUIを介して視覚可能に提供するステップと、を実行するように構成され、
予測された各前記複数のフローは、前記第1のオブジェクトと当該第1のオブジェクトに続く複数のオブジェクト予測候補からなるツリー構造を含む、システム。
【請求項2】
ユーザコンテキストは、組織、系列組織、部門、サブ部門、およびユーザ情報を考慮する、請求項1に記載のシステム。
【請求項3】
プロセスモデルの不変パターン認識の階層クラスタリングモデルが、前記複数のフローの予測において利用される、請求項1または2に記載のシステム。
【請求項4】
前記階層クラスタリングモデルは、格納されている、プロセス設計の機械学習知識を、クラスタの階層として利用する、請求項3に記載のシステム。
【請求項5】
前記階層クラスタリングモデルはさらに、前記収集したユーザコンテキストに基づいて機械学習モデルを利用する、請求項4に記載のシステム。
【請求項6】
前記複数のフローの予測においてランキング生成器が使用される、請求項1~5のいずれか1項に記載のシステム。
【請求項7】
前記ランキング生成器は、入力パターンを利用して、前記入力パターンとマッチングされた複数の出力パターンをランク付けし、前記ランク付けは1つ以上の入力を利用し、
前記入力パターンは、一部が、前記収集したユーザコンテキストから作成される、請求項6に記載のシステム。
【請求項8】
人工知能/機械学習を用いたICS(統合クラウドサービス)フローのオートコンプリートをサポートするために、コンピュータが実施する方法であって、
前記コンピュータは、複数のオブジェクトを含むライブラリを格納したストレージにアクセス可能であり、前記ライブラリの各前記複数のオブジェクトは統合フロー内で使用され、
前記方法は、
前記コンピュータが、統合フローマップを開始するステップと、
前記コンピュータが、前記統合フロー内で使用される第1のオブジェクトの選択を、GUI(グラフィカルユーザインターフェイス)を介して受付けるステップと、を含み、
前記第1のオブジェクトは前記複数のオブジェクトを含む前記ライブラリから選択され、前記第1のオブジェクトは、当該第1のオブジェクトに関連付けられたソースコンポーネントによって提供される定義および構成に関連付けられ、
前記コンピュータが、ユーザコンテキストを収集するステップと、
前記コンピュータが、前記収集したユーザコンテキストと前記統合フロー内で使用される前記第1のオブジェクトとに基づいた複数のフローを予測するステップと、
前記コンピュータが、予測された前記複数のフローを、前記GUIを介して視覚可能に提供するステップと、を含み、
予測された各前記複数のフローは、前記第1のオブジェクトと当該第1のオブジェクトに続く複数のオブジェクト予測候補からなるツリー構造を含む、方法。
【請求項9】
ユーザコンテキストは、組織、系列組織、部門、サブ部門、およびユーザ情報を考慮する、請求項8に記載の方法。
【請求項10】
プロセスモデルの不変パターン認識の階層クラスタリングモデルが、前記複数のフローの予測において利用される、請求項8または9に記載の方法。
【請求項11】
前記階層クラスタリングモデルは、格納されている、プロセス設計の機械学習知識を、クラスタの階層として利用する、請求項10に記載の方法。
【請求項12】
前記階層クラスタリングモデルはさらに、前記収集したユーザコンテキストに基づいて機械学習モデルを利用する、請求項11に記載の方法。
【請求項13】
前記複数のフローの予測においてランキング生成器が使用される、請求項8~12のいずれか1項に記載の方法。
【請求項14】
前記ランキング生成器は、入力パターンを利用して、前記入力パターンとマッチングされた複数の出力パターンをランク付けし、前記ランク付けは1つ以上の入力を利用し、
前記入力パターンは、一部が、前記収集したユーザコンテキストから作成される、請求項13に記載の方法。
【請求項15】
請求項8~14のいずれか1項に記載の方法を1つ以上のコンピュータに実行させるためのプログラム。
【外国語明細書】