(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022137598
(43)【公開日】2022-09-22
(54)【発明の名称】情報処理装置、情報処理方法、サービス提供システム
(51)【国際特許分類】
G06N 5/02 20060101AFI20220914BHJP
G16Y 10/75 20200101ALI20220914BHJP
G16Y 20/10 20200101ALI20220914BHJP
G16Y 40/10 20200101ALI20220914BHJP
G16Y 40/35 20200101ALI20220914BHJP
【FI】
G06N5/02
G16Y10/75
G16Y20/10
G16Y40/10
G16Y40/35
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2021037146
(22)【出願日】2021-03-09
(71)【出願人】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(71)【出願人】
【識別番号】301063496
【氏名又は名称】東芝デジタルソリューションズ株式会社
(74)【代理人】
【識別番号】110001737
【氏名又は名称】特許業務法人スズエ国際特許事務所
(72)【発明者】
【氏名】吉本 武弘
(72)【発明者】
【氏名】千葉 恭平
(72)【発明者】
【氏名】齊川 水輝
(72)【発明者】
【氏名】村上 瑛
(57)【要約】
【課題】本実施形態では、複数のデバイスやサービス(いわゆるモジュール)による連携状態を検出し、検出結果をユーザへ通知することで、複数のモジュールの連携状態を分かり易くし、複数のデバイスやサービス活用を容易にし得る情報処理装置、情報処理方法、サービス提供システムを提供する。
【解決手段】実施形態の情報処理装置は、先行要素と後行要素の機能を紐づけて連携させるルールセットのデータからなるルールを複数管理する。複数の前記ルールのデータ内のルール属性情報の相互間の関係をチェックすることにより、異なる前記ルールセットのデータの全部若しくは一部の重複を検出するルール管理及び制御部と、前記ルールセットのデータの全部若しくは前記一部の重複が検出された前記ルール属性情報に対応する前記先行要素と前記後行要素との表示用データを出力する表示制御部と、を備える。
【選択図】
図13
【特許請求の範囲】
【請求項1】
それぞれが、少なくとも1つのIF-THENルールを記述したルールセット記述を含む複数個のルールセットを管理する情報処理装置において、
前記IF-THENルールのルールセット記述は、先行アクションを行う先行要素の少なくとも先行要素識別情報を含む第1の属性情報と、前記先行アクションに連携して後行アクションを実行する後行要素の後行要素識別情報を含む第2の属性情報とを含み、
異なる前記ルールセットの間の前記先行要素識別情報が重複していること及び又は前記後行要素識別情報が重複していることを検出するルール管理及び制御部と、
前記重複していることが検出された場合、前記重複している関係にある前記ルールセットの前記先行要素と前記後行要素との表示用データを出力する表示制御部と、
を備える情報処理装置。
【請求項2】
前記複数個の前記ルールセットは、
複数のオリジナルルールセットと複数のカスタマイズドルールセットとがあり、前記ルール管理及び制御部は、
前記オリジナルルールセットを第1の格納部へ格納しており、
前記オリジナルルールセットの一部の定義を調整し、前記カスタマイズドルールセットとして第2格納部へ格納する処理部を備える、
請求項1記載の情報処理装置。
【請求項3】
さらに前記ルール管理及び制御部は、
前記異なる前記ルールセットの間の前記先行要素識別情報が重複していること及び又は前記後行要素識別情報が重複していることを検出するために、
前記複数個の前記ルールセットの間での競合をチェックするチェック処理部と、
前記競合する複数ルールセットを表示用データに変換して出力する表示用データ出力処理部を有する、
請求項1記載の情報処理装置。
【請求項4】
さらに前記ルール管理及び制御部は、
前記表示用データ出力機能は、前記競合する複数の前記ルールセットの画像に付随してルール間の優先度を設定するための優先度設定画像を表示するためのデータを前記表示用データに含める処理部を有する、
請求項3記載の情報処理装置。
【請求項5】
さらに前記ルール管理及び制御部は、
前記競合する前記複数ルールセットの表示用データが表示部に表示された状態で、
前記競合する前記複数ルールセットの前記後行要素およびまたは前記先行要素の動作に関して動作の制約条件情報を入力可能としている、請求項3記載の情報処理装置。
【請求項6】
さらに前記ルール管理及び制御部は、
複数ルールセットの表示用データを表示部に表示する処理部と、
前記表示部の操作機能を介して前記複数のルールセットの有効期限を変更する処理部を備える、
請求項1記載の情報処理装置。
【請求項7】
さらに前記ルール管理及び制御部は、
複数ルールセットの表示用データを表示部に表示する処理部と、
前記表示部の操作機能を介して前記複数ルールセットの個別又は全部の停止を設定可能とする処理部を備える、
請求項1記載の情報処理装置。
【請求項8】
さらに前記ルール管理及び制御部は、
第1の前記ルールセットの前記後行要素のアクションに関連する記述をしている第1の属性情報と、第2の前記ルールセットの前記先行要素の検出機能に関連する記述をしている第2の属性情報との内容を比較判断することで、
前記第1の前記ルールセットの実行が、前記第2の前記ルールセットの実行に繋がることを検出する処理部と、
前記第1の前記ルールセットと前記第2の前記ルールセットの繋がり状態を示す表示用データを表示部に出力する処理部と、
を備える請求項1記載の情報処理装置。
【請求項9】
それぞれが、少なくとも1つのIF-THENルールを記述したルールセット記述を含む複数個のルールセットを処理する情報処理方法において、
前記IF-THENルールのルールセット記述は、先行提供を行う先行要素の少なくとも先行要素識別情報を含む第1の属性情報と、前記先行提供に連携して後行提供を実行する後行要素の後行要素識別情報を含む第2の属性情報とを含み、
異なる前記ルールセットの間の前記先行要素識別情報が重複していること及び又は前記後行要素識別情報が重複していることを検出すること、
前記重複していることが検出された場合、前記重複している関係にある前記ルールセットの前記先行要素と前記後行要素との表示用データを出力すること、を備える情報処理方法。
【請求項10】
それぞれが、少なくとも1つのIF-THENルールを記述したルールセット記述を含む複数個のルールセットを管理するサービス提供システムにおいて、
前記IF-THENルールのルールセット記述は、先行提供を行う先行要素(IFサービス)の少なくとも先行要素識別情報を含む第1の属性情報と、前記先行提供に連携して後行提供を実行する後行要素の後行要素識別情報を含む第2の属性情報とを含み、
異なる前記ルールセットの間の前記先行要素識別情報が重複していること及び又は前記後行要素識別情報が重複していることを検出するルール管理及び制御部と、
前記重複していることが検出された場合、前記重複している関係にある前記ルールセットの前記先行要素と前記後行要素との表示用データを出力する表示制御部と、
備えるサービス提供システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、情報処理装置、情報処理方法、サービス提供システムに関する。
【背景技術】
【0002】
インターネットを経由して実空間上の物体(デバイス)の動作を連携させるIoT(Internet of Thing)技術が多く提案されている。デバイスを連携させるためのルールに関しては、多くのメーカがそれぞれ独自にルールを決めている。このために、連携可能な個々のデバイスの活用の拡大が停滞している。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2019-117587号公報
【特許文献2】特開2020-024742号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
そこで本実施形態では、複数のデバイスやサービス(いわゆるモジュール)による連携状態を分かり易くし、複数のデバイスやサービス活用を容易にするために好都合な情報処理装置、情報処理方法、サービス提供システムを提供することを目的とする。
【課題を解決するための手段】
【0005】
本実施形態では、少なくとも1つのIF-THENルールを記述したルールセットの複数個を管理する情報処理装置において、
前記IF-THENルールの前記ルールセットは、先行アクションを実行する先行要素(IFデバイス、IFサービス等の先行モジュール)の少なくとも先行要素識別情報を含む第1の属性情報と、前記先行アクションに連携して後行アクションを実行する後行要素(THENデバイス、THENサービス等の後行モジュール)の後行要素識別情報を含む第2の属性情報とを含み、
異なる前記ルールセットの間の前記先行要素識別情報が重複していること及び又は前記後行要素識別情報が重複していることを検出するルール管理及び制御部と、
前記重複していることが検出された場合、前記重複している関係にある前記ルールセットの前記先行要素と前記後行要素との表示用データを出力する表示制御部と、
を備える情報処理装置が提供される。
【図面の簡単な説明】
【0006】
【
図1A】
図1Aは本実施形態に係るシステムの基本概念を示す説明図である。
【
図2】
図2はエッジコンピュータにおいて、IFデバイスとTHENデバイスとを連携させる機能の一例を示す説明図である。
【
図3】
図3はIFデバイスとTHENデバイスの各種と、これらを連携させるIF-THENルールとの関係を概略的に示す説明図である。
【
図4】
図4はIF-THENルールのルールセットの構成例を示す説明図である。
【
図5】
図5はIF-THENエンジンが読み取り可能なIF-THENルールの記述例を示す説明図である。
【
図6】
図6はアンドロイド(登録商標)ベースのスマートフォン(エッジコンピュータの一例)で使用されるプログラム構成例を示す説明図である。
【
図7】
図7はIF-THENルールを扱うエッジコンピュータ内の概略構成とこのエッジコンピュータ、クラウドサーバ、IFデバイス及びTHENデバイスとの関連を示す図である。
【
図8】
図8はIF-THENエンジン内のさらなる各種機能の一覧を示す説明図である。
【
図9A】
図9AはIF-THENルールの1例をロジック的に示す図である。
【
図9B】
図9BはIF-THENルールの他の例をロジック的に示す図である。
【
図9C】
図9CはIF-THENルールのさらに他の例をロジック的に示す図である。
【
図9D】
図9DはIF-THENルールのまた他の例をロジック的に示す図である。
【
図10A】
図10AはIF-THENルールのさらにまた他の例をロジック的に示す図である。
【
図10B】
図10BはIF-THENルールのまた他の例をロジック的に示す図である。
【
図11】
図11はIF-THENルールのまた他の例をロジック的に示す図である。
【
図12】
図12はルールセットの競合を検出する方法の例を示すフローチャートである。
【
図13】
図13はルールセットの競合を可視化し、その競合調整を説明する表示部の例を示す図である。
【
図14】
図14はルールセットの競合を可視化し、その競合調整方法を示し、
図13の続きを説明する表示部の例を示す図である。
【
図15A】
図15Aはルールセットの競合を可視化し、その競合調整方法を説明する表示部の例を示す図である。
【
図16】
図16は複数のIF-THENルールの有効期限の調整を行うときの表示例を示す説明図である。
【
図17】
図17は複数のルールセットの個別停止、全停止を行うときの表示部の表示例を示す説明図である。
【
図18A】
図18Aは複数のルールセットの循環型を検出した場合の表示例を示す説明図である。
【
図18B】
図18Bは複数のルールセットの直列型を検出した場合の表示例を示す説明図である。
【
図19】
図19は循環型を形成するルールセットを検出するための例を示すフローチャートである。
【発明を実施するための形態】
【0007】
図1A、
図1Bを用いて本実施形態のシステムの基本概念を説明する。
図1Aと
図1Bは、クラウドサーバ2とエッジコンピュータ600の関係を示している。
図1Aは、クラウドサーバ2内部を具体的に示している。
図1Bは、1つのエッジコンピュータ600を代表してその内部を具体的に示している。
クラウドサーバ2内部、エッジコンピュータ600内部は、物理的には制御デバイス、メモリ、これらの接続バスなどで構成されるが、説明を容易にするために機能ブロックを示している。クラウドサーバ2とエッジコンピュータ600とは、ネットワーク(図示せず)を介して互いに通信可能な構成となっている。
【0008】
<クラウドサーバ・・・
図1A>
図1Aは、クラウドサーバ2内の各種機能を簡略化して示し、各エッジコンピュータとの関係を示している。クラウドサーバ2は、ifLink(登録商標)プラットフォームとも称される。
【0009】
エッジコンピュータ600(6A-6F)の設置場所は、トラック、列車、船舶、航空機などの輸送装置、また、病院、工場、アパートメント、個人住宅、等が含まれる。その他、各種の施設として、農業施設、漁業施設、林業施設、学校、公園、なども含まれる。
【0010】
エッジコンピュータ600(6A-6F)としては、例えば、ルータタイプ、スマホタイプ、パーソナルコンピュータタイプ、製品組み込みタイプ、ICチップ組み込みタイプ、が存在する。車両、航空機、携帯デバイスでは、IC組み込みタイプが好ましい。またマイクロサービスにおける各種デバイスやサービスと、エッジコンピュータとのインターフェースとしては、Windows(登録商標)、Linux(登録商標)、Android(登録商標)、iOS、などが採用される。
【0011】
クラウドサーバ2は、データ部250を有する。データ部250は、ifLinkシステムで利用されている各種のデータを保存する。例えば、各エッジコンピュータ600(6A-6F)に接続されているセンサデバイス及び処理デバイス(以下単にデバイスと称する場合がある)、サービスシステムに関連したデータが保存されている。従って、ここではデバイスやサービスの識別情報を含めたいわゆる属性情報(構成、特性、設定情報などを含む)が、当該デバイスやサービス毎に整理されて登録されている。設定情報としては、デバイスの動作期間、各種制限情報、利用期間、などの情報があり、追加や変更も可能である。
【0012】
またデータ部250には、ルール又はルールセットを記述したルールデータも格納される。ルール及び又はルールセットは、デバイス間の関連付けを行うために、IFデバイスからの検知信号を認識したとき、その検知信号を判断するためのモニタ(或は条件)データと、条件を満足するモニタデータに応答して制御コマンドを発行させるための実行(JOB制御)データも含まれる。
【0013】
ルール及び又はルールセットは、ルールの下にある複数のデバイスの属性情報を所定の記述子の中に含むことで互いに複数のデバイス同士を関連付けている。ルールは、デバイスの動作形態、或はサービスの利用形態等を指示するルールであるから、デバイス動作(オン、オフ、出力、待ち時間、受付、抽出等)やサービス内容(情報の伝送、表示、入力、消去など)を指示(特定)している。またルールには例えばデバイスの応答速度、使用制限情報、交換時期目安、寿命情報、有効期限情報などの属性情報も含まれる場合がある。
さらにデータ部250には、レシピ(後述するルール利用状況)の情報、デバイスやサービスに対応した画像データも記憶されていてもよい。
【0014】
クラウドサーバ2は、さらに、上記具体的データを管理するマネージャが設けられている。ルールマネージャ241、デバイスマネージャ242、アカウントマネージャ243が設けられている。
【0015】
ルールマネージャ241は、ifLinkシステムにおける各種のルール及び又はルールセット(具体的動作や制御内容を示す情報)のリストを管理したり、ルール及び又はルールセットの配布や格納先などを管理し、またルールの追加変更などがあった場合、その追加変更処理を実行して変更後のルール及び又はルールセットを管理する。したがって、ルールマネージャ241は、データ部250内のルール及び又はルールセットを指定したり、或は呼び出してルールを形成しているデータに修正をかけたり変更することが可能である。
【0016】
デバイスマネージャ242は、データ部250内のデバイスのデータを監視し、ifLinkシステムのIF-THENルールを実現する実働デバイスを把握している。またifLinkシステムで用いられているセンサやデバイスは勿論、その他、新しいデバイスの登録などの受け付け処理、またデバイスの取り外し等のチェックや管理を行う。また各デバイスのリスト、各デバイスの識別データや属性などのチェックや管理を行うことができる。
【0017】
アカウントマネージャ243は、ifLinkシステムを利用するユーザのアカウントを管理する。
【0018】
IF-THENエンジン244は、IFデバイス、THENデバイスを連携させるルール及び又はルールセットのデータを記述した記述子を指定することができる。そしてIF-THENエンジン244は、記述子に基づいてルール及び又はルールセットを具体的に実行する単一或は複数のデバイスを制御するための指令機能を構築することができる。記述子は、データ部250に記録されているデバイスやその属性等を指定している。
【0019】
なお、ルール及び又はルールセットに基づくルール実行(具体的な動作)は、実際には後述するエッジコンピュータ600(6A-6F)のIF-THENエンジンにおいて実行される。したがって、クラウド上でのIF-THENエンジン244の実行動作は、シミュレーションで確認するために利用されてもよい。
【0020】
マイクロサービスリポジトリ245は、各エッジコンピュータに接続されているセンサ、デバイス、サービスなどを制御する際にインターフェースとして機能するソフトウエアの保存部(登録部)である。ソフトウエアは、例えばAPI(アプリケーションプログラムインターフェース)を含む。
【0021】
さらにクラウドサーバ2は、アプリケーション基盤5010を備える。アプリケーション基盤5010は、データ部250のデータを利用して、各種の解析、データの可視化、ルール利用状況の監視、追跡などを行うなどの各種のアプリケーションを設定できる基盤である。したがって、アプリケーション基盤5010では、必要に応じて新しいアプリケーションが追加されたり、使用しないアプリケーションが消去されたりする。
【0022】
アプリケーション基盤5010は、ルールを形成しているデータ、ルールの利用状況(レシピ)、JOBのログ情報を用いて、連携状態の可視化処理、機械学習、AI(artificial Intelligence)学習、最適制御の解析、その他各種の解析を行うことも可能である。また、IFデバイス及び又はTHENデバイスの選択に関する相談や問い合わせの受付、新たなルールセットのデータの構築等を行うアプリケーションを有する。相談や問い合わせに対する解決案受付、IF-THEN関係にあるモジュールの閲覧を行えるアプリケーションを含む。またエッジコンピュータや、IF-THEN関係にあるモジュールなどの位置をGPSを利用して検出するアプリケーションも備える。
【0023】
<エッジコンピュータ600・・・
図1B>
エッジコンピュータ(例えばスマートフォン)600は、それぞれが設置されている場所で使用するルールセットをクラウドサーバ2からダウンロードして保存している。ルールセットは、複数でもよいし、1つでもよい。ルールセットは、ユーザが作成したものでもよいし、専門の業者が販売、或はレンタルするルールセットでもよい。専門の業者は、ルールセットをクラウドサーバ2を介して有料で貸し出すことも可能である。利用料金は、月単位或は年単位で設定されることができる。
【0024】
ルールセットは、エッジコンピュータ600の設置場所周辺で使用されるデバイス、サービス等の要素(モジュールと称してもよい)を、ルールに従って制御できるように記述されている。この場合、ルールの方へ吸い上げられる(読み取られる)データや、ルールに基づいて出力されるデータは、マイクロサービス(アプリケーションプログラムインターフェース(API)を含む)を介して読み取り或は出力される。
【0025】
ルールセットには、各デバイスやサービスの属性情報(デバイスやサービスの識別情報を含む)が一体に記述されており、設置されている各デバイスやサービスを制御できるように構築されている。またエッジコンピュータ600内の全体を統括しているアプリケーションも存在し、ifLinkアプリ1000と称される。
【0026】
上記ルールセットをエッジコンピュータ600(エッジコンピュータがスマートフォンではなく例えばルータに組み込まれていた場合)に設定する場合、いくつかの方法が可能である。例えば、ユーザは、例えばスマートフォン(以下スマホと称する)或はパーソナルコンピュータ(以下PCと称する)に一旦、クラウドサーバ2からダウンロードすることができる。スマホ或はPCに格納されたルールセットを、ユーザは、無線或は有線を介して、エッジコンピュータ600にインストールすることが可能である。例えば、スマホとエッジコンピュータ600とは、Bluetooth(登録商標)或はWi-Fi(登録商標)などの通信システムを利用して接続することができる。
【0027】
また別の方法として、ユーザは、スマホを介してエッジコンピュータ600をリモート制御することができる。そしてユーザは、エッジコンピュータ600が例えばURL(uniform resource locator)を利用しクラウドサーバ2に接続された状態を得ることができる。この状態でエッジコンピュータ600に対して所望のルールセットをクラウドサーバ2からダウンロードさせることができる。
【0028】
エッジコンピュータ600の外部には、センサ802、ビーコン804、家電806、スマートフォンやタブレットなどの携帯端末808、HMD(head mounted display)810、IoT機器820などの各種デバイス8が接続される。エッジコンピュータ600は、これら各種デバイス8を制御することができ、本システムは、ユーザに各種サービスを提供できる。これら各種デバイスが、例えば温度センサ、圧力センサ、ジャイロなどの場合は、このエッジコンピュータ600内に内蔵されてもよい。またこれら各種デバイス全体又はその一部はこのエッジコンピュータ600の外に配置され、通信で制御されてもよい。また本システムは、エッジコンピュータ600から他のエッジコンピュータ(図示せず)に対して、THENデバイス起動用の制御信号を転送し委託することも可能である。
【0029】
エッジコンピュータ600は、各種ソフトウエア(クラウドサーバ2から事前にインストールされるifLinkアプリ、ルールセットなど)をインストールされることで、制御部とメモリが相まって、各種の特徴的な機能構成を実現する。以下では機能構成を示して説明する。
【0030】
エッジコンピュータ600は、IF-THENエンジン900を含む。IF-THENエンジン900は、ルール格納部700に予め格納されているルール(記述子として記述されている)に従い、IFデバイスのアクションに反応(応答)し、そしてTHENデバイスを制御する。IF-THENエンジン900は、基本的な機能は、クラウドサーバ2のIF-THENエンジン244と同じ構成をとる。IF-THENエンジン900は、少なくともこのエッジコンピュータ600に関係している情報を処理する。
【0031】
エッジコンピュータ600内には、センサ802やビーコン804、家電806、スマートフォンやタブレットなどの携帯端末808、HMD(head mounted display)810、IoT機器820などの各種デバイス8を個々に制御するマイクロサービス80A~80F(専用ソフトウエア)が、組み込まれている。IF-THENエンジン900は、これらのマイクロサービス80A~80Fを操作して、IFデバイスとTHENデバイス間の連携動作を実行させる。この時、IF-THENエンジン900から操作したいマイクロサービス80A~80Fに対してAPI(application program interface)コマンドが発行される。
【0032】
また、エッジコンピュータ600は、IoTサービスサーバ220を制御するIoTサーバマイクロサービス80G、GPS衛星230から得られたGPS位置情報を取得するGPSマイクロサービス80H、Webサービスサーバ210をアクセスしてWebサービスを得るためのWebマイクロサービス80Iなどを所有してもよい。またGPSの機能部は、さらに計測精度の高いRTK-GNSSとの通信機能を含んでもよい。
【0033】
Webマイクロサービス80Iの具体的制御例として、HTML(Hyper Text Mark-Up Language)内に指定されたフォーム要素(Form Element)の枠内に必要な情報を自動で書き込む制御や、Webページ間の遷移制御などが行われてもよい。このようにエッジコンピュータ600内にWebマイクロサービス80Iの活動領域を設置することで、Webサービスのような高度なサービスをユーザが享受できる。
【0034】
さらに、図示してないがサイバ空間上で利用可能なあらゆるサービスに個々にアクセスできるマイクロサービスを、Webマイクロサービス80I等と同列に配置してもよい。例えばサイバ空間上のサービス例として、証券(特定銘柄の株)の自動売買や特定商品の発注と受け取った商品代金の自動振り込み(課金処理)、映画や音楽の鑑賞券の購入申し込みや所定旅行などの予約申し込みなどのユーザサービスを行ってもよい。
【0035】
このようにサイバ空間上の各種サービスに個々にアクセスできるマイクロサービスをエッジコンピュータ600内に配置可能にすると、サイバ空間上の異なるサービス間をつなげた豊富な連携サービスをユーザが享受できる。
【0036】
各種デバイス8(802-820)を制御するマイクロサービス80(80A~80F)が、上記Webマイクロサービス80Iと同列に配置されることで、各種デバイス8を利用した実空間上あるいは物理空間上のサービス(有体物によるサービス)とサイバ空間上のサービス(無体物によるサービス)をシームレスに違和感なく跨った高度な連携サービスをユーザに提供可能となる。この高度な連携サービスを提供するための“各種サービス間の組み合わせ方法”は、ルール格納部700のルールで規定されることが可能である。なお無体物のサービスとしては、治療方法、計算方法、情報取得方法、予約情報、教育情報、おすすめ情報などがある。したがって、この後説明する情報処理方法は、各種サービスを提供するサービス提供システムにおいても容易に適用可能である。
【0037】
上記エッジコンピュータ600がルール格納部700のルールに従ってユーザにサービスを提供する時に得られる各種データ(ログデータなど)は、クラウドサーバ2内でデータ管理/蓄積され、データ部250内に適宜保存される。ログデータは、その後、種々の解析用(今後の連携開発、故障、不具合動作などの解析など)に用いることが可能である。
【0038】
上記エッジコンピュータ600からデータがアップされるクラウドサーバ2においては、
収集によりデータ部250内に保存された各種データを用いて、各種のアプリケーションサービスが実行可能である。例えば、具体的サービス内容として、
〇収集したデータの可視化
〇収集したデータの管理
〇収集したデータを用いたエッジコンピュータ600の状態と各種モジュール(デバイス等)状態に関する状態監視とリンクや動作の異常対応
〇収集したデータの分析
〇ifLinkアプリを用いたユーザへのサービス最適化およびモジュール設定条件の最適化
〇データの分析の結果得られた情報を用いた情報サービス
○種々のエッジコンピュータ間の関連性の分析
などがある。
【0039】
図2は、例えばエッジコンピュータ600におけるIFデバイスとTHENデバイスの関係(IF-THEN連携構体)とその機能の一例を示している。ここでは、簡単な一例としてIFデバイスとして、温度センサ6031、人感センサ6032、THENデバイスとして、エアコン6033、メール作成機能(パソコン或はスマホが利用される)6034が存在するシステムを想定している。温度センサ6031の動作状態(条件)の判断に関しては、温度マイクロサービス6035が例えば1分間に1回データ取得を行うようにルールとして設定されている。人感センサ6032の動作状態(条件)の判断に関しては、人感マイクロサービス6036が例えば1秒間に1回データ取得を行うようにルールとして設定されている。また各センサとの連携関係もルールとして設定されている。
【0040】
そしてIF-THENエンジン6040内においては、複数のルールを監視しつつ、例えば温度が30度を超えて、部屋に人が居たら、エアコン6033をオンしてメール作成機能6034でメールを作成し送信するように決められている。
【0041】
この時の動作では、実行タスク数が2である。実行タスク数は、例えば、クラウドサーバ2のデータ部250へ送信され、利用状況(レシピとも言う)などの参照データとなる。このエッジコンピュータ600に関連する新しいセンサや機器が導入された場合も、その情報がログとしてデータ部250へ送信される。また新しいセンサや機器に関するルールも追加されてデータ部250へ送信可能である。
【0042】
上記の温度センサ6031、人感センサ6032などからデータ取得するサイクル時間などの設定は、各デバイスに対して例えばIF-THENルールの属性情報として設定することができる。この設定のための機能は、例えばIF-THENエンジンの機能の一部として組み込まれている。
【0043】
図3は、ルール6040に基づき検出及び制御対象となるIFデバイス(IFサービスも含む)、THENデバイス(THENサービス)の例を示している。センサの種類としては、照度センサ8a31、温度センサ8a32、湿度センサ8a33、ガスセンサ8a34、臭気センサ8a35、ジャイロ8a36、高度センサ8a37、GPS8a38、気圧センサ8a39、圧力センサ8a40、水漏れセンサ8a41、粉塵検出センサ8a42、データ解析情報部8a43を示しているが、これに限定されるものではない。またTHENデバイス(サービス)としては、家電製品8b31、ビル設備8b32、工場設備8b33、運搬車、作業者、乗用車、飛行機などの自動制御装置及びアシスト装置8b34、クリーニングロボット8b35、各種データサービス8a36を示しているが、これらに限定されるものではない。
【0044】
図4は、ルールセットの基本的な考え方を説明するためにその一例としての構成例を示している。例えばルールセット6s41は、4つのルール1からルール4を有するものとする。図においては、IFデバイスは、IF1,IF2,IF3・・・・のようにデバイスを区別して示し、THENデバイスは、THEN1、THEN2、THEN3、・・・・のようにデバイスを区別して示す。
ルール1は、IFデバイスIF1とTHENデバイスTHEN1とを連携させており、IFデバイスIF1の条件が満たされるとTHENデバイスTHEN1が発動するルールである、
ルール2は、IFデバイスIF2とIF3デバイスIF3の条件が同時に満たされると、THENデバイスTHEN2が発動するルールである、
ルール3は、IFデバイスIF4の条件が満たされると、THENデバイスTHEN3とTHENデバイスTHEN4が発動するルールである、
ルール4は、IFデバイスIF5とIFデバイスIF6の条件が同時に満たされると、THENデバイスTHEN5とTHENデバイスTHEN6が発動するルールである。
【0045】
ここでルールセットの全体属性情報6s51としては、ルールセットの概要(文字による記述可)、ルールセット識別データ、ルールセット名称(文字による記述可)が存在する。この場合さらに、このルールセットに対応するマイクロサービスの情報(識別データ)が存在してもよい。つまり、全体属性情報によりルールセットのルールを外部のデバイスに反映するために用意されているマイクロサービスが特定されていてもよい。
またルールセット優先順位情報、ルールセット有効無効設定情報、ルールセット利用環境情報が存在してもよい。
【0046】
ルールセット優先順位情報は、他のルールセットが競合するような場合、その優先順位を決める情報であり、競合相手となる他のルールセット識別データとともに記述されていてもよい。ルールセット有効無効設定情報は、本ルールセットが機能すべきか否かを設定する情報である。したがって期間情報と合わせることで、ルールセットの有効期間や無効期間を設定することもできる。さらにルールセット利用環境情報があってもよい、この情報は例えばこのルールセットが採用されるための所定の条件(環境条件)を記述した情報である。例えば、天気が晴れの場合、あるいは特別の施設の中で使用されている場合などである。環境条件は、ルールセットを記憶する例えばエッジコンピュータによって自動的に記述されてもよい。さらに、施設、利用者、課題、GPS情報などの特定の利用環境の属性情報が記述されてもよい。この利用環境の属性情報も、当該ルールセットを記憶するエッジコンピュータにより自動的に記述されてもよいし、エッジコンピュータを有するユーザがエッジコンピュータの外部から記述してもよい。
【0047】
個別のルール6s52(ルール1、2、3、・・・)の属性情報としては、ルール名称(文字による記述可)、ルール識別データが存在する。この属性情報にも、ルール優先順位情報、ルール有効無効設定情報が存在してもよい。またルールセット利用環境情報と同様に、ルール毎の独自のルール使用環境情報が存在してもよい。この場合は、ルール使用環境情報は、ルールセット利用環境情報の下位概念を規定することになる。
【0048】
さらに個別のIFデバイス6s53(IF1-IF6)の属性情報としては、IFデバイス名(センサ名或はサービス名でもよい)(文字記述可)、IFデバイスのシリアル番号、IFデバイスの概要(文字による記述可)、条件などが存在する。条件としては、IFデバイスの動作状態(検知)の範囲、閾値、抑止時間、個別パラメータなどが設定可能である。
【0049】
動作状態(検知の)範囲とは、例えば温度センサであれば20度から25度の範囲を検知した場合に検知出力を送信する、閾値とは、例えば30度以上を検出した場合に検知出力を送信する、抑止時間とは、検知した時点から何秒後に検知出力を送信するか、などを決める情報である。このような属性情報により、同じIFデバイスからの検知出力であっても、この検知出力が異なる値(値の範囲や値の閾値において異なる値)の場合、それぞれの値の範囲や値の閾値に応じて異なるTHENデバイスを指定することも実現可能である。また、同じTHENデバイスであってもIFデバイスから入力するそれぞれの異なる値に応じて、この同じTHENデバイスに異なる制御命令を発動させることも実現可能である。
【0050】
上記のIFデバイスは、基本的には先にアクションを生じる先行要素であり、少なくともセンサ名、シリアル番号などの先行要素識別情報を含む属性情報を有する。
【0051】
また個別のTHENデバイスの属性情報6s54としては、THENデバイス名(センサ名或はサービス名でもよい)(文字による記述可)、THENデバイスのシリアル番号、THENデバイスの概要(文字による記述可)、条件などが存在する。
【0052】
条件としては、THENデバイスの抑止時間、センサ名、制御対象、個別パラメータなどが設定可能である。
抑止時間とは、IFデバイスからの検出通知があった時点から何秒後に応答を開始するか、或は他のTHENデバイス(或は他のIFデバイス)の動作環境が整っているかどうかを判定するための待ち時間などを決める情報である。
センサ名(或はifparamとも称される)は、対応する先行要素としてのIFデバイスの名称や番号などであり、対応IFデバイスと確実にリンクさせることができる情報である。
制御対象は、THENデバイスの中でもさらに、指定したい部位やスイッチなど指す。制御対象が記述されていると、THENデバイスの例えば単純な電源のオンオフ制御ではなく、電源オン状態において、さらに電流や電圧を制御対象としたい場合に有効である。
【0053】
個別パラメータは、具体的な制御情報を発生するための情報である。例えば、動作範囲を設定する具体的な情報(例えばドローン制御であればその高さを制限する情報)がある。
上記の属性情報にも、外部のデバイスに向けてコマンドを出力するマイクロサービスを特定するデータが記述されることが好ましい。これにより、このエッジコンピュータ600が、不用意に他のエリアなどのデバイスを制御するようなことが防止される。つまり、マイクロサービスは、自身で管轄すべきIFデバイスとTHENデバイスを特定できるので、他のマイクロサービスの管轄のIFデバイスやTHENデバイスに応答したり制御したりすることがない。
【0054】
上記のTHENデバイスは、基本的には先の先行アクションに連携して後行アクションを実行する後行要素であり、少なくともデバイス名、シリアル番号などの後行要素識別情報を含む属性情報を有する。
【0055】
さらに、属性情報としては「イベント関連情報」が記述されていてもよい。イベント関連情報は、例えばこのTHENデバイスが動作したときに、この動作が他のIFデバイスに影響を与えるような場合、そのIFデバイスのデバイス名とかシリアル番号、或は概要などを記述する欄である。またどのような影響を与えるかを概要として文字列により記述できるようにしてもよい。たとえば、THENデバイスが特定の音を発するようなデバイスであると、本来関係ない音センサとしてのIFデバイスに影響を与えることがある。またTHENデバイスが、光を出力するようなデバイスであると、光センサとしてのIFデバイスに影響を与える場合がある。このようなケースが事前にわかると、利用者は、THENデバイス或はIFデバイスを他のセンサに交換することを考慮することができる。イベント関連情報は、ルールセットを例えば販売提供するメーカが予め記述するが、ユーザ自身がエッジコンピュータにおいて、意識的に記述できるようにしてもよい。これによりルールセットの多様な使い方が可能となる。
【0056】
なお、各属性情報には識別用の属性識別情報(ヘッダと称してもよい)が設けられている。ルール実行プログラムは、属性識別情報を読み取り、属性の種類、属性情報の有り無し、を判定できる。ルール実行プログラムは、属性情報が記述されていると判断した場合は、その属性内容を確認しチェックすることが可能であり、属性情報が記述されていないと判断した場合は、属性情報のチェックをスルーする。
【0057】
属性識別情報が無い場合は、ルール実行プログラムは、属性記述記号(例えば、deviceserial=, id=,など)の順に応じて順次、属性情報の内容判断を行う。内容を決めていない属性情報の場合は、属性情報の例えばヘッダや属性記述記号の次の所定のデータ領域に例えば0000が記述される。この場合は、当該属性情報の判定や処理は無視される。
【0058】
上記の属性情報には、さらに、先のルールセット使用環境情報として、ルールセットが使用される空間を示す(或は推奨する)情報(ルールセットが採用されるシーン情報)、ルールセットを使用するユーザ情報、ルールセットに関係するテーマなどの情報が記述されてもよい。また、これらのシーン情報、ユーザ情報、テーマなどの情報は、IFデバイスの属性情報内、THENデバイスの属性情報内に選択的に記述されていてもよい。
【0059】
図5は、例えばルールセット6s42のルール(記述子)の具体的な一例を簡略化して示している、
ルールセットに関しては例えば次のような記述がなされる、
<rule_set description=”概要” id=”ID” name=”ルールセット名”>
<rule name =”ルール名” id=”ID”>
つぎに、ifセットに関する次のような記述がなされる、
<if devicename=”デバイス名” deviceserial=”シリアル番号” dataname=”センサ名” compare=”範囲指定” value=”閾値” description=”概要” suppress=”抑止時間” “個別パラメータ”/>
図の例は2つのifルールが記述された例を示している。例えば
図4に示したルール2に類似したルールである。デバイス名は異なる場合もあるし、同一の場合もある。デバイスが同一の場合は、例えばセンサが温度センサであり、温度の範囲(或は閾値)が異なる場合の温度検出を想定している。
【0060】
次にthenセットに関する次のような記述がなされる、
<then devicename=”デバイス名” deviceserial=”シリアル番号” description=”概要” suppress=”抑止時間” ifparame=”センサ名” control=”制御対象” “個別パラメータ”/>
なお簡単のためにここでは、
図4に示したような詳細な属性情報の記載は省略している。
【0061】
図6は、エッジコンピュータ600の一例を示す外観図と、エッジコンピュータ600の内部に組み込まれているプログラムの概略階層である。エッジコンピュータ600は、例えばアンドロイド(登録商標)ベースのスマートフォンで使用されるプログラムを採用している例である。ifLink(登録商標)ウィジェット(widget)1100内で、ifLinkの状態を表示する。
【0062】
Java(登録商標)言語で記述されたマイクロサービス80A~80Fが、ifLinkアプリ1000の下位領域に設置されている。またifLinkアプリ1000の一部として、IF-THENエンジン900(
図7参照)が動作する。他にルール格納部も、このifLinkアプリ1000の中で使用される。すなわちifLinkアプリ1000が、ifLinkにつながるマイクロサービス80A~80Fやルール格納部700(
図7参照)の管理をおこなう。ifLinkアプリ1000がスマホ画面のタッチ操作部(ifLinkアプリの操作部)が操作されることで起動されると、ifLinkアプリ1000は、次に説明するIF-THENエンジン900及びエッジコンピュータ600内の他の機能の動作準備を確立する。
【0063】
<エッジコンピュータ内の概要>
図7は、ifLinkアプリ1000の管理の下にあるエッジコンピュータ600内を示している。ここではIF-THENエンジン900の概略的なブロック構成を示している。このIF-THENエンジン900内のさらなる各種機能は、
図8に示している。
【0064】
ifLinkアプリ1000は、表示部6106のアイコンが操作されると、IF-THENエンジン900内のアクティベーションを起動し、このアクティベーションが、エッジコンピュータ600内部の各部の接続の確立を行う。ifLinkアプリ1000は、エッジコンピュータ600内の、受信部6101、送信部6102、ルール格納部700、IF-THENエンジン900、マイクロサービス80A、などを統括して制御する。なおマイクロサービス80Aを1つ示しているが、他のマイクロサービス(図示せず)も設けられている。
【0065】
<エッジコンピュータ内で使用されるルールセットの管理例>
エッジコンピュータ600を使用するユーザは、所望のルールセットをクラウドサーバ2からダウンロードすることができる。エッジコンピュータ600は、概念的には情報処理装置と称することができる。エッジコンピュータ600は、複数個のルールセットを管理することができる。
【0066】
ルールセットは、少なくとも1つのIF-THENルールを記述したルールセット記述を含む。
図4、
図5で説明したように、前記IF-THENルールのルールセットの記述は、
先行要素(IFデバイス、IFサービス等の先行モジュール)の少なくとも先行要素識別情報を含む第1の属性情報と、前記先行アクションに連携して後行アクションを実行する後行要素(THENデバイス、THENサービス等の後行モジュール)の後行要素識別情報を含む第2の属性情報とを含み、
異なる前記ルールセットの間の前記先行要素識別情報が重複していること及び又は前記後行要素識別情報が重複していることを検出し、前記重複している関係にある前記ルールセットの前記先行要素と前記後行要素との表示用データを生成するルール管理及び制御部951と、前記表示用データを出力する表示制御部6105と、を含む。
【0067】
上記のようにルール管理及び制御部951は、異なる前記ルールセットの属性情報(例えば先行要素識別情報及び又は後行要素識別情報を用いて)用いてルールセットの重複を検出する、そして、前記重複が検出された場合、対応する前記ルールセット記述の前記先行要素と前記後行要素との表示用データを生成し、表示制御部6105に通知する。表示制御部6105は、表示用データに基づきルール間の重複が生じていることを表示部6101に表示する。
【0068】
これにより、複数のデバイスやサービス(いわゆるモジュール)による連携状態がユーザに分かり易いために、必要に応じてルールのチューニング(調整)などを行うことが可能となり、複数のデバイスやサービス活用を容易にするために好都合となる。
【0069】
<IF-THENルールの取得と、チューニング例の説明>
クラウドサーバ2のデータ部250には、多数のルールセットが格納されている。ユーザは、所望のルールセットをクラウドサーバ2からダウンロードしエッジコンピュータ600に格納することができる。あるいは、ユーザは、クラウドサーバ2の運営者に対して、希望するルールセットの配信を申し込むことができる。申し込みは、電子的なメール或は紙ベースの申し込み用紙でもよい。希望するルールセットは、1つでも複数でもよい。すると、クラウドサーバ2からエッジコンピュータ600に対して希望のルールセットが配信される。配信されたルールセットは、クラウドサーバ2においてルールマネージャ241により管理されており、ルールマネージャ241は、ルールセットの配信日、有効期限、貸出料金などを管理することができる。
【0070】
エッジコンピュータ600は、受信部6101を介して、オリジナルルールセットを、ルール格納部700の第1格納部70Aに格納する。このとき、IF-THENエンジン900内のルール管理及び制御部951は、オリジナルルールセットをチェックする機能を有する。即ち、異なる前記ルールセットの間の先行要素識別情報が重複していること及び又は後行要素識別情報が重複していることを検出し、前記重複している関係にある前記ルールセットの前記先行要素と前記後行要素との表示用データを生成する。すると、表示制御部6105(操作入力部も兼用している)は、表示用データを表示部6106に出力する。ユーザは、表示部6101において、複数のIF-THENルールの中で、互いに競合しているルールセット間の関連性を視覚的に確認可能となる。
【0071】
ルールセットは、書き換え可能或は書き込み可能な属性情報を有し、ユーザはこの属性情報を利用して、任意のルールセットに対して優先順位を付ける、或はルールセットを使用するのか、使用しないのかを意味する(有効・無効)の情報を設定することができる。またその他、属性情報を利用して各種の制約(或は制限)条件(例えば動作時間や動作期間)などの情報を設定することも可能である。この設定情報は、タッチ入力部6106から操作入力部6105を介して、ルール管理及び制御部951に入力される。
【0072】
上記のように調整されたオリジナルルールセットは、カスタマイズドルールセットとして、第2格納部70Bに格納される。以後、このエッジコンピュータ600は、第2格納部70B内のカスタマイズドルールセットを参照して使用する。第2格納部70B内に専用のカスタマイズドルールセットを格納できるので、エッジコンピュータ600は、ユーザが意図するIF-THENルールを正確に実行することが可能であり、制御対象を安全かつ確実に制御することが可能となる。
【0073】
<IF-THENルールを用いた動作例の説明>
次に、エッジコンピュータ600がIF-THENルールを用いて動作する例について説明する。まず、通常はアクティベーションがあったとき、このエッジコンピュータ600で用いる、ルールセットを、第2格納部70Bから読出し、if(条件)条件モニタ952内及びTHEN実行管理部953内に展開し、IF-THENルールを実行するための準備を行う。If_set(
図5参照)は、if(条件)条件モニタ952にセットされ、then_set(
図5参照)は、THEN実行管理部953にセットされる。
【0074】
今、IFデバイス8f1が何かに反応すると、マイクロサービス80Aにセンサ検出信号が入力する。マイクロサービス80Aは、センサ検出信号に対応するマイクロサービス検出データを、if(条件)を監視する条件モニタ952に与える。次にこの条件モニタ952は、マイクロサービス80Aからのマイクロサービス検出データに基づいてIFデバイスを特定する。つまりマイクロサービス検出データが複数のルールセットのうちどのルールセット内のIFデバイスに対応するか、を判定することができる。この判定は、例えばマイクロサービス検出データがどのマイクロサービスから出力されたものであるかによって判定する、或は、例えば、マイクロサービス検出データに含まれる属性情報(例えばIFデバイス名、シリアル番号等)を、複数のルールセットのそれぞれに含まれるIFデバイスの属性情報と比較することで、一致する属性情報を含むルールセットを特定することで判定する。
【0075】
条件モニタ952は、そのことをルール管理及び制御部951及びTHEN実行管理部953に伝達する。これにより、THEN実行管理部953は、IFデバイスに対応するTHENデバイスが動作するための条件(待ち時間や、設定されている制御内容など)をまず判定する。この判定の後、THEN実行管理部953は、JOB制御部954を介して、THENデバイスへの駆動指令(パラメータ)をマイクロサービス80Aに与える。するとマイクロサービス80Aは、先行要素としてのIFデバイスに対応する後行要素であるTHENデバイスに対して制御信号を出力する。なおルールセットに記述されているTHENデバイスの属性情報によっては、他のマイクロサービスが指定される場合もある。このようなテクニックは、例えば、遠隔のTHENデバイスを制御したい場合に利用される。
【0076】
上記の情報処理を実行する場合、THEN実行管理部953は、If_setルールの実行に関しては、ルールに記述されている属性情報(例えば閾値、抑止時間等)の条件を守りながら、また、then_setルールの実行に関しても、ルールに記述されている属性情報(抑止時間、制御対象など)を守りながら、処理を実行する。またTHEN実行管理部953は、JOB制御部954にTHENデバイスを制御するためのパラメータを提供する。この一連の動作が済むと、ルール管理及び制御部951は、ルールの利用状況(レシピ)を、ログ出力部956、送信部6102を介して、ログデータとしてクラウドサーバ2にアップロードすることができる。ログデータは、送り先のサーバID,ルールセットのID,ルールのID,ルールが発火した時刻、端末(エッジコンピュータ600)のIDなどを含む。クラウドサーバ2は、ログデータを蓄積しており、エッジコンピュータ600におけるルールセットの利用状況、利用時間などを分析することが可能となる。
なお上記のタッチ入力部を兼用している表示部6106は、エッジコンピュータ600のタイプによっては、エッジコンピュータ600の外に設けられていてもよい。即ち、
図1Aで説明したように、例えばエッジコンピュータ600がルータタイプ、製品組み込みタイプ、ICチップ組み込みタイプなどの場合、別途設けられている表示部が利用されてもよい。例えば車両、航空機は、表示部を備えるので、この表示部が表示部6106として利用されてもよい。
【0077】
<
図8にIF-THENエンジン900内の各種機能の概要を示す、なお各種機能は、処理部、或は処理プログラムと称してもよい>
・ アクティベーション961・・・・IF-THENエンジン900が所定のサービスから起動された際に、該サービス及びマイクロサービスなどとの接続確立をおこなう機能(表示部6106、ifLinkアプリ1000とIF-THENエンジン900が共同する)、
・ ルール管理制御962・・・IF-THENエンジン900の起動時に予め保持しているルールを読みだし、内部の状態を構築する、ルールチェックも行うことができる機能(ルール管理及び制御部951、ルール格納700が活用される)、
・ ルール実行制御963・・・マイクロサービスから通知されたセンサデータをもとに、内部状態に応じて条件に一致するルールを抽出する機能(マクロサービス80A, if(条件)を監視する条件モニタ952、ルール管理及び制御部951、THEN実行管理部953が関連動作する、すでにルールセットが展開されている状態において機能する)、
・ センサデータ制御964・・・マイクロサービスから通知されたセンサデータを受信し、ルール実行制御状態を起動する機能(マクロサービス80A, if(条件)を監視する条件モニタ952、ルール管理及び制御部951、ルール格納部700、THEN実行管理部953が関連動作する、これからルールセットを展開させる場合の機能)、
・ JOB制御965・・・ルールに基づく必要なJOB情報を、マイクロサービス80Aに通知する、
・ ログ出力966・・・ログレベルに応じてログを出力する機能(THEN実行管理部953、ログ出力部965が関連する)
・ 同一イベント無視時間制御967・・・同様のセンサデータが入力されても、設定された時間の間は、アクション発生を抑制する機能(条件モニタ952による抑止時間の判断に基づく)、
・ 他の端末にまたがるIF-THEN968・・・JOBを別の特定の端末に通知し、その端末でJOBを実行させる機能(THEN実行管理部953、JOB制御部954、携帯端末マイクロサービス80D(
図1B)デバイスが関連する)、
・ ルール有効化・無効化969・・・IF-THENルールで、THENに指定したルールのオン、オフを切り替える機能(ルール管理及び制御部951、ルール格納部700が関係する)、
・ 実行時間制御970・・・特定のTHENの実行タイミングをずらして、設定した一定時間後に、続きのTHENを実行させる機能(THEN実行管理部953、JOB制御部954、携帯端末マイクロサービス80Aが関連する)、
・ 中間データ保持オブジェクト971・・・中間データ保持オブジェクトに、THEN制御データを保持し、他のルールのIFへ入力する機能((THEN実行管理部953、条件モニタ952が関連して機能する)、
・ テキストマッチング972・・・IF-THENルールで、IF入力を、テキスト一致で判定する機能(条件モニタ952の機能、例えばIF入力がデバイス名であった場合、ルールに記述されているデバイス名と比較する)、
・ ルール利用状況収集973・・・IF-THENルールの利用状況(レシピ)を定期的にクラウドへ通知する機能(ルール管理及び制御部951、ログ出力部956が関連する)、
・ IF-THEN間での変数渡し974・・・IFで発火(検出した)したパラメータをTHENに受け渡す機能(パラメータに応じてTHENの制御内容が異なる場合(サービス提供に有効)、条件モニタ952、THEN実行管理部953が関連する)。
【0078】
さらに、
・ ルールセット格納部制御975・・・ルールセットを取得し、ユーザが調整したルール、利用するルールの格納場所を制御する機能、
・ ルール競合チェック976・・・ルールセットの相互関係をチェックし、競合関係を検出する機能、
・ 優先順位設定977・・・複数のルールセット間で、ルールによる動作に優先順位を設定できる機能、
・ ルールセット有効期限表示978・・・ルールセットに使用可能な有効期限がある場合に有効期限の情報を表示する機能、
・ ルールセット機能停止979・・・ルールセットによる機能を一時的に停止させる機能、
・ 循環型ルールセット・チェック980・・・ルールセットにより複数のIFデバイス、THENデバイスが連続して循環動作するのを検出する機能、
・ 直列型ルールセット・チェック981・・・ルールセットにより複数のIFデバイス、THENデバイスが連続して直列動作するのを検出する機能、
・ 活動GPSエリア設定982・・・・ルールセットのルールが採用されるエリアを特定することができる機能。この機能を設けることで、例えば移動体が移動エリア(移動環境)に応じて採用するルールセットを切替えて制御対象の動作モードを変化させることも可能となる。
【0079】
【0080】
図9Aに示すルールセットRSE1は、IFデバイスIF1のオンオフに応じて、THENデバイス1が起動若しくは停止させるルールを持つ例である。この場合ルールセットRSE1は、遅延設定機能DLを持ってもよい。遅延設定機能DLは、ルールセットRSE1の属性情報に動作遅延時間情報を記述することで実現される機能である。
【0081】
図9Bに示すルールセットRSE2は、IFデバイスIF2、IF3の同時オン、同時オフ(或はいずれか一方のオフ)に応じて、THENデバイス2が起動若しくは停止させるルールを持つ例である。この場合もルールセットRSE2は、遅延設定機能DLを持ってもよい。それぞれのIFデバイスIF2、IF3の検出タイミングの時間差をカバーするための遅延設定機能DLを設けることで、複数のIFデバイスの応答特性のばらつきをカバーし、各デバイスの検出タイミングの同時化を得ることができる。これによりTHENデバイス2の動作をより正確にすることができる。
【0082】
図9Cに示すルールセットRSE3は、IFデバイスIF4のオンオフに応じて、2つのTHENデバイス3とTHENデバイス4を起動又は停止させるルールを持つ。この場合も、THENデバイス3とTHENデバイス4を起動又は停止に対して同時化させたい或は時間差(シフト動作)を持たせたい場合に、ルールセットRSE3に遅延設定機能DL(属性情報に動作遅延時間情報を記述する)を設けてもよい。
【0083】
図9Dに示すルールセットRSE4は、IFデバイスIF5、IF6の同時オン、同時オフ(或はいずれか一方のオフ)に応じて、THENデバイス5、THENデバイス6を起動若しくは停止させるルールを持つ例である。この場合も、IFデバイスIF5、IF6の特性の違いなどで検出出力に時間差がある場合、遅延設定機能DLを設けて、THENデバイス5、THENデバイス6の動作を同期させる、或は動作をシフトさせるなどの調整が可能である。
【0084】
図10Aに示すIFデバイスは、オンとオフ、オンからオフまでの途中の変化値をとる、例えば温度計、湿度計、血圧計、脈拍計などアナログ的に変化する検出出力を得るデバイスである。このような場合、ルールセットRSE11では、IFデバイスIF11がオンしてから、その出力が変化を始めると、その変化値に応じて、THENデバイス11が、例えば音量を変化させる、或は明かりを(輝度若しくは色)を変化させるなどの制御を行うことができる。
【0085】
ルールセットRSE11は、IFデバイスの種々の変化を検知するために、if_setの中に複数のif(つまり複数の条件)を設定した複数の「if記述」を備え、またthen_setの中に複数の「if記述」に対応した「then記述」を備える。
【0086】
図10Bは、基本的には先の
図9B示した例と
図10に示した例とを組み合わせたルールセットRSE12である。このルールセットRSE12によると、IFデバイスIF12、IFデバイスIF13が同時動作すると、この同時動作に応じて、THENデバイス12の制御状態が変化する。
【0087】
図11の例は、ルールセットRSE20が、ベースとなるマイクロサービス80Jとは異なるマイクロサービス80Kを通じて、例えばIFデバイスIFKX,又はTHENデバイスTHENXを制御できる例である。このルールセットRSE20は、通常の動作モードでは、IFデバイスIF15からの出力値に応じてTHENデバイスTHEN20が動作するように記述されている。IFデバイスIF15、THENデバイスTHEN20は、マイクロサービス80Jに接続されている。THENデバイスTHEN20は、IFデバイスF15に対してフィードバック情報を与えることができる。例えば機能例としては、THENデバイスTHEN20が出力する光量に応じて、IFデバイスIF15(光検出)の出力レベルが変化する例がある。そして、通常は、THENデバイスTHEN20の出力が、IFデバイスIF15にフィードバックされ、安定状態を維持する。
【0088】
しかし、ルールセットRSE20は、IFデバイスIF15の出力から特定の条件が検出された場合(例えばは特定の値の範囲が検出された場合)、指定されたマイクロサービス80Kを介して、IFデバイスIFKX,又はTHENデバイスTHENKXを制御できるように記述されている。
【0089】
図12は、多数のルールセット間において、競合が生じていないかどうかをチェックする処理ルーチンを示している。エッジコンピュータ600において多数のルールセットが必要な場合、ルールセットは、クラウドサーバ2からダウンロードされ、格納部700の第1格納部70Aに一旦格納される。そして、複数のルールセット間で例えば競合するルールセットがあるか否かをルール管理及び制御部951がチェックし、実際に使用するルールセットがユーザから選ばれて、第1格納部70Bに格納される。
【0090】
図12に示すように、ルール間の競合チェックが開始されると(SA11)、ルール管理及び制御部951は、第1格納部70Aの複数のルールセットを、一時的に作業用メモリに格納する(SA12)。次に、ルールセット総当たり処理により、複数のルールセット間で、IFデバイスの識別情報及びTHENデバイスの識別情報の重複を検出する(SA13)。
【0091】
重複が検出された場合、ルール管理及び制御部951は、重複するルールセットのIFデバイス及びTHENデバイスのための表示用データを出力する。この表示用データは、表示制御部6105を介して表示部6106に表示される(SA14)。
【0092】
この状態で、ユーザは、競合に対する対処を行うことができる。例えば、2つのルールセットが競合した場合、一方のルールセットの取り消しを行う、或は優先順位を設定することが可能である(SA15)。ユーザの操作を容易にするために、音声及び又は表示によるアドバイスが行われてもよい(SA16)。ルールセットの競合に対するユーザの処置が終了すると(ユーザが決定ボタンを操作する)、処理は終了する。
【0093】
競合チェック処理プログラムは、例えば2つのルールセットが、それぞれ同じIFデバイス(例えば温度センサ)を採用しており、異なるTHENデバイス(2つのエアコン)を制御するような場合も検出することができる。例えば、温度に応じて制御する冷房や暖房の設定範囲が異なるような第1のエリアと第2のエリアでの第1のエアコンと第2のエアコンが必要な場合も想定される。
また2つのルールセットが、それぞれ異なるIFデバイス(人感センサと照度センサ)を採用しており、同じTHENデバイス(照明)を制御するような場合も検出することが可能である。
【0094】
図13は、ルールセットの競合状態が、表示部に表示された例を示している。この場合は、ルールセット1,2,3が競合した例を示している。ルールセットはIFデバイスが人感センサであり、THENデバイスがエアコンの例である。
【0095】
各ルールセットは、別々の人により記述され、例えば、設定内容として温度制御範囲(温度設定内容)が異なる場合の例である。
【0096】
ルール管理及び制御部951は、ルールセットの重複が検出されると、重複しているルールセットがユーザに分かるように表示する。図の例は、3つのルールセットが重複した例であり、競合有りが3つであることを示している(表示領域6213)。また音声或はイメージにより、重複した場合のアドバイスをスタートするアドバイスボタンも表示される(表示領域6211)。ユーザがルールセット間で調整を行いたい場合は、調整ボタン(表示領域6211)を操作し次のステップに移行することができる(
図13の(A)から(B))。
【0097】
なおこの段階で、不要なルールセットを取り消す場合は、各ルールセットの表示位置の横の「OFF」ボタン(
図13の(A))を操作することで取り消すことが可能である。
【0098】
調整を行う場合、ユーザは、調整ボタン(表示領域6211)を操作する。すると、優先順位を設定するのか、或は動作時間帯を設定するのかを選ぶモードボタン(表示領域6215、表示領域6216)が現れる(
図13の(B))。また各ルールセット1、2、3の横には、優先順位を設定する場合、或は動作時間帯を設定する場合に選択するための選択ボタン1、2、3が表示される。この選択ボタン1、2、3は、次の
図14で説明するように利用される。
【0099】
図14は、ユーザが優先順位を設定するボタン(表示領域6215)を選択した場合と、動作時間帯を設定するボタン(表示領域6216)を選択した場合の2つのケースを同じ図にまとめて示している。ユーザが、優先順位設定ボタン(表示領域6215)を操作した場合、画像6220が表示される。ユーザは、表示されている各ルールセット1,2,3の右側の表示領域に、1位、2位、3位などの順位文字を選択して設定することができる。例えば、ユーザは、任意のルールセットをその右側の選択ボタンにより選択して、例えば点滅状態とし、次に画像6220内の順位1位、2位、3位のいずれかを選択する。これにより、当該ルールセットの優先順位が決まる。このように、各ルールセットの優先順位が決定される。
また、各ルールセットが動作する動作時間を設定することも可能である。ユーザが、動作時間設定用のボタン(表示領域6216)を選択すると、表示画像6221が表示される。次にユーザは、表示されている各ルールセット1,2,3の右側の表示領域に、動作時間を設定することが可能である。例えば、ユーザは、表示画像6221内で、任意のルールセット1又は2又は3を指定し、指定したルールセットに対応する時間設定領域に動作時間を設定することができる。
【0100】
上記の画像6220、6221は、動作モード(優先順位)或は(動作時間帯)が選択されたときに、例えば表示部6106の下部領域に表示される。
【0101】
図15Aは、IFデバイスが異なるセンサ(例えば人感センサと照度センサ)であり、共通のTHENデバイス(例えば照明器Y1)を制御する2つのルールセットが競合する例を示している。このような場合、ユーザは、ルールセット1は、照明Y1が人感センサに応答するように記述されており、ルールセットは、照明Y1が照度センサに応答するように記述されているものとする。この場合は、ユーザは、先に説明したように、応答する時間帯をルールセット1とルールセット2とで異なる時間帯に設定することも可能である。
または、
図15Bに示すような設定も可能である。ルールセット1は、部屋に人が在籍することを検知した場合、照明をオンし、不在の場合は、「不定」に調整されている。つまり、本システムのルールセットでは、センサの出力に対して「反応せず」という設定も可能としている。一方、ルールセット2では、照度センサが暗いことを検知した場合は、照明をオンするように設定しており、照度センサが明るいことを検知した場合は、照明をオフすることを設定している。そして、優先順位としては、ルールセット1がルールセット2よりも優先度が高く設定された例を示している。
【0102】
このような設定を行うことにより、人感センサが人を検知していないときは、ルールセット2が動作し、周囲が暗いときは照明がオンし、明るいときはオフする制御を行うことになる。つまり、ルールセットの中にも「不定」と言う概念をとりこむことで、幅広い融通性のあるIF-THENルールを実現することが可能となる。なお上記したようなチェック機能全般は、IFデバイスやTHENデバイスが交換されたり、新しいものが追加されたり、ルールセットが追加或は交換された場合に実行されることは勿論のことである。このようなデバイス交換や追加ルールセットの交換や追加があった場合は、ユーザに対して上述したような各種チェックを行うようにメッセージが出力される。
【0103】
図16は、エッジコンピュータ600のメニュー表示状態において、「有効期限ボタン」がタッチ操作されたとき、エッジコンピュータ内で採用しているルールセットの有効期限を表示した例を示している。特にクラウドサーバ2は、ルールセットに関する課金情報、ルールセットのレンタル期限情報(有効期限情報)などを管理することができる。このためにクラウドサーバ2は、エッジコンピュータ600に対して、ルールセットの「有効期限」に関する通知を送信することができる。ユーザがメニュー画面を介して「有効期限ボタン」を操作したときに、IF-THENエンジン900の機能により各ルールセットの有効期限が表示される。
【0104】
表示方法は各種の方法が可能であるが、図の例では、エッジコンピュータ600が管理している複数のルールセットのリストが表示されている。例えばルールセット(A,B)、(C、D)、(E,F)、(G、H)が表示された例を示している。(A,B)、(C、D)、(E,F)、(G、H)は、記号として示しているが、IFデバイスやTHENデバイスのシンボルマークや、画像、或はデバイス名が表示される。そしてルールセットの横に有効期限が表示される。
【0105】
図の例では(A,B)、(C、D)、(E,F)、(G、H)のそれぞれが機能する有効期限として、「2025年12月31日」、「2026年12月31日」、「2023年09月30日」、「2024年03月31日」、が設定されていることを示している。ここで、画面には、有効期限を延長するための延長ボタンが表示される。
【0106】
ユーザがここで、延長ボタンを選択すると、「有効期限を延長できます、延長したいルールセットを選択して、有効期限を変更してください」のように、メッセージが表示される、或は音声でガイドされる。ユーザは、有効期限を変更したいルールセットの表示位置にタッチして選択する。すると、その横の有効期限を修正可能な状態となるので、任意の日付に変更することができる。例えば、期限のカウントアップボタンと、カウントダウンボタンが表示され、ユーザは、ボタンを選択して、数値(年代、月、日付)を編集することができる。編集が終わると、決定ボタンをタッチ操作して、数値を確定させることができる。
【0107】
ルールセットによっては、有料で提供されるものもある。例えば重要な警備のためのデバイスが借用された場合、或は高価な芸術作品のサービス貸し出しに関係する解説データなどが考えられる。有効期間が変更された場合、自動的にルールセットの期限情報、使用期間のログ情報などがクラウドサーバへアップロードされ、ユーザに対する課金情報として利用される。
【0108】
なお上記した有効期限もグループ単位や、ifLinkルールの配信業者単位で調整できるようにしてもよいことは勿論である。
【0109】
図17は、使用しているルールセットによる動作を一時的に停止させる場合に利用される画面の表示例を示している。
【0110】
この表示は、IF-THENエンジン900のルールセット一時停止機能が動作した場合に表示される。ユーザは、エッジコンピュータ600のメニュー表示状態において、「ルールセット一時停止機能」をタッチ操作することができる。すると、例えば、
図17に示すようにエッジコンピュータ600で使用している複数のルールセットが表示される。また、画面をスワイプ或はフリックすることで、他のルールセットをスクロールで表示させることがでる。
【0111】
この場合もIFデバイス、THENデバイスの表示枠の中に、IFデバイスやTHENデバイスのシンボルマークや、画像、或はデバイス名が表示される。そしてルールセットの横に設定ボタンが表示される。ユーザは、設定ボタンにタッチして、対応するルールセットをオンまたはオフに設定することが可能である。
【0112】
例えば特定の基本のルールセット(例えば火災検知などの非常事態警告用、或は電源維持用のIF-THENルール)をオンにした状態で、いくつかの他のルールセットをオフにして、オフ状態のルールセットのデバイスを交換、修理する場合があり得る。勿論、全ルールセットを一時的に停止するための操作ボタンが設けられてもよい。例えば、工場などで、製造ラインを一時的に停止させて、製造ラインを修理点検する場合は有効である。
【0113】
図18A、
図18Bは、複数のルールセットの循環型、直列型を検出した場合の表示例を示す説明図である。
【0114】
図18Aは、ルールセット1は、光センサ(IFデバイス)と照明(THENデバイス)を制御するもので、部屋が暗いと照明をオンすることができる。ルールセット5は、光センサ(IFデバイス)とカーテンを閉めて暗くするモータ(THENデバイス)を制御する。このルールセット5は、部屋が明るくなると、カーテンを閉めて部屋を暗くする。しかし、ルールセット1は、部屋が暗いとの照明をつけて明るくする。このために部屋の明るさ制御状態は循環型となる。
【0115】
このような場合、ユーザはルールセットの繋がりを取り消すような調整を行うことができる。調整方法としては、例えば以下のような方法が可能である。
1a)いずれかのルールセットをオフする、
2a)IFデバイスのタイプを交換する。例えばルールセット1のIFデバイスを人感センサ(光センサではない)に変更するなどである。
【0116】
また、ルールセット4は、玄関のドアを開くとチャイムを鳴らすルールであり、THENデバイスは、チャイム音を出力する。ルールセット7は、音検知センサ(IFデバイス)を有し、チャイム音を検出すると自動的にテレビ電源をオンするようにリモートコントローラ(THENデバイス)を制御する。ここで、ルールセット11は、監視カメラ(IFデバイス)が人影を窓側に検出すると警報装置(THENデバイス)が警報を行うとともにドアをロックする監視システムである。
【0117】
このようなルールセットが存在した場合、例えばテレビの画面の映像が窓ガラスに映るような配置であると、永久的にドアロックが続く可能性がある。
【0118】
このような場合、ユーザはルールセットの繋がりを取り消すような調整を行うことができる。調整方法としては、例えば以下のような方法が可能である。
1b)いずれかのルールセットをオフする、
2b)例えばルールセット7のIFデバイスを音検知センサから、人感センサに変更する、
またテレビの向きを変更或は窓にカーテンを設置するなどである。
【0119】
図18Bは、直列型を検出した場合の例を示している。ルールセット2は、ドアが開くとチャイム音がでるルールであり、ドア開閉センサ(IFデバイス)、チャイム音出力装置(THENデバイス)を用いる。ルールセット6は、チャイム音を検出すると照明をオンするルールであり、チャイム音センサ(IFデバイス)と、照明スイッチ制御装置(THENデバイス)を備える。ルールセット8は、照明が明るくなるとテレビをオンするルールであり、光センサ(IFデバイス)とリモートコントローラ(THENデバイス)を有する。ルールセット10は、音声をピックアップすると音声命令に対応した回答をインテリジェントクラウドサーバから取り寄せるロボットである。
上記の例によると、次々とルールセットが繋がり、直列型のルールとなる。このような場合、ユーザはルールセットの繋がりを取り消すような調整を行うことができる。調整方法としては、例えば以下のような方法が可能である。
1c)いずれかのルールセットをオフする、
2c)例えばルールセット8のIFデバイスを光センサから、人感センサに変更する、そしてロボットは、別部屋に移動させるなどである。
【0120】
図19は、先に説明した循環を形成するルールセットを検出するためのフローチャートの例を示している。ルールセット循環型の検出が開始されると(SB11)、まずルール格納部70Aの複数のルールセットを一時的に作業用メモリに格納する(SB12)。つぎに第1のルールセットのTHENデバイスが実行動作したときに、第2のルールセットのIFデバイスが反応するかどうかのチェックがなされる(SB13)。
【0121】
このチェックでは、例えば、THENデバイスの属性情報として記述されている例えば「概要」などの情報が利用される。「概要」は、THENデバイスの特性が文字情報として記述されている。したがって、ここには、THENデバイスが動作することにより、反応するかもしれないセンサ名やセンサの特性を記述可能である。あるいは、イベント関連情報として、特別に、ルールセットとルールセットを連携させる情報を定義して、ルールセット内のどこかに追加して記述するようにしてもよい。
【0122】
なおルールセット循環型の検出方法は、上記した例に限定されるものではない。例えば複数のルールセットの組み合わせから循環的に存在するノード(IFデバイスやTHENデバイス)を検出する方法でもよい。循環的に存在するノードを検出するために利用できる情報としては、種々の情報がある。例えば、各種のデバイスの性能や機能を示す情報は、デバイスの取り扱い説明などに記載されている。したがって、チェックプログラムが取り扱い説明を予め学習して、TEHNデバイスの動作がIFデバイスの動作を引き起こすパターン情報を蓄積したデータベースを準備していてもよい。なおチェックプログラムは、クラウドサーバに用意されていてもよい。そしてエッジコンピュータが、当該チェックプログラムをダウンロードして使用してもよい。
【0123】
さらにまた循環型の検出方法として、THENデバイスが動作することにより引き起こされる状態(例えば、発音、発光、移動、回転など)を予め定義(例えばルールセットに記述)しておき、この状態がIFデバイスの反応(発火)を引き起こすかどうかを判断(IFデバイスの検出条件に合致しているかどうかを判断)することで、循環型か否かを検出してもよい。
【0124】
ステップSB13において、第1のルールセットと第2のルールセットが連携することが判明した場合、第1のルールセットと第2のルールセットの連携を表す表示用データを作成する(SB14)。第1のルールセットと第2のルールセットが連携しないことが判明した場合、すべてのルールセットの総当たりによるチェックが完了しているか否かの判断がなされる(SB15)。完了していない場合は、ルール格納部70Aの次のルールセットを読み出して、ステップSB13での処理を実行する。
【0125】
すべてのルールセットの総当たりによる上記チェック(ルールセット間の連携の有無のチェック)が完了している場合、連携する複数のルールセットを整理した表示用データを作成する(SB17)。つまり
図18Aに示すようなルールセットの循環がわかるような画像を得られる表示用データを生成する。この表示用データの表示結果の例は、先の
図18A、
図18Bで示したが、このような形や形式に限定されるものではない。また、音声出力による説明がなされてもよい。
【0126】
基本的には循環を形成しているルールセット群の表示用データが表示部に表示される(SB18)。次にユーザはルールセットを調整するので、この調整に応じてルールセットの属性情報の編集が行われる(SB18)。そして、循環を形成しているルールセット群の調整が終了したかが判定され(SB19)、調整が終了していれば処理が終了する。
【0127】
直列型の検出は、上記した循環型と同様な手順により検出が可能である。
【0128】
(1)上記したように情報処理装置は、それぞれが、少なくとも1つのIF-THENルールを記述したルールセット記述を含む複数個のルールセットを管理する情報処理装置である。前記IF-THENルールのルールセット記述は、先行アクションを行う先行要素(IFデバイス、IFサービス等の先行モジュール)の少なくとも先行要素識別情報を含む第1の属性情報と、前記先行アクションに連携して後行アクションを実行する後行要素(THENデバイス、THENサービス等の後行モジュール)の後行要素識別情報を含む第2の属性情報とを含む(
図4、
図5)。そして、異なる前記ルールセットの間の前記先行要素識別情報が重複していること及び又は前記後行要素識別情報が重複していることを検出するルール管理及び制御部<
図7のIF-THENエンジン900内のルール管理及び制御部951>を有する。そして、前記重複していることが検出された場合、前記重複している関係にある前記ルールセットの前記先行要素と前記後行要素との表示用データを出力する表示制御部<
図7の6105>を備える。
(2)また前記複数個のルールセットは、複数のオリジナルルールセットと複数のカスタマイズドルールセットとがあり、前記ルール管理及び制御部951は、
前記オリジナルルールを第1の格納部70Aへ格納しており、
前記オリジナルルールの一部の定義を調整して、前記カスタマイズドルールとして第2格納部70Bへ格納する処理部<
図8の975>を備える。
(3)さらに前記ルール管理及び制御部951は、
図12で説明したように、前記異なる前記ルールセットの間の前記先行要素識別情報が重複していること及び又は前記後行要素識別情報が重複していることを検出するために、前記複数の前記ルールセットの間での競合をチェックするチェック処理部SA13を有する。そして前記競合する複数ルールセットを表示用データに変換して出力する表示用データ出力処理部SA14を有する。競合状態は、例えば
図13のように表示される。
(4)さらに前記ルール管理及び制御部951は、
図14、
図15Aで説明したように、前記表示用データ出力処理部は、前記競合する複数の前記ルールセットの画像に付随してルール間の優先度を設定するための優先度設定画像を表示するためのデータを前記表示用データに含める処理部を有する。
(5)さらに前記ルール管理及び制御部951は、
図14、
図15Bで説明したように、前記競合する複数ルールセットの表示用データが表示部に表示された状態で、前記競合する前記複数ルールセットの前記後行要素およびまた先行要素の動作に関して動作の制約条件情報を入力可能としている。
(6)さらに前記ルール管理及び制御部951は、
図16で説明したように、前記複数ルールセットの表示用データを表示部に表示する処理部と、前記表示部の操作処理部を介して前記複数のルールセットの有効期限を変更する処理部を備える。
(7)さらに前記ルール管理及び制御部951は、
図17で説明したように、前記複数ルールセットの表示用データを表示部に表示する処理部と、前記表示部の操作処理部を介して前記複数のルールセットの個別又は全部の停止を設定可能とする処理部を備える。
(8)さらに前記ルール管理及び制御部951は、
図18A,
図18Bで説明したように、第1の前記ルールセットの後行要素のアクションに関連する記述をしている第1の属性情報と、第2の前記ルールセットの先行要素の検出処理部に関連する記述をしている第2の属性情報との内容を比較判断することで、前記第1の前記ルールセットの実行が、前記第2の前記ルールセットの実行に繋がることを検出する処理部と、前記第1の前記ルールセットと前記第2の前記ルールセットの繋がり状態を示す表示用データを表示部に出力する処理部と、を備える。
(9)上記実施形態の考えかたは、IFデバイスとTHENデバイスのデバイス間だけでなく、IFサービスとTHENサービス間でもよく、またIFデバイスとTHENサービス間でもよく、IFサービスとTHENデバイス間でも採用適用できることは勿論である。
(10)また上記の考え方は情報処理装置として記載したが情報処理方法としても採用できることは勿論である。
(11)上記した実施形態の説明は、有体物の先行要素、後行要素の連携動作に対して馴染みやすい表現であったが、無体物のサービス、例えば、治療方法、計算方法、情報取得方法、予約情報、教育情報、おすすめ情報などが先行要素、後行要素として適用されてもよいことは勿論である。したがって、無体物であるサービスに関して積極的に本実施形態のシステムが利用される場合は、以下のように表現してもよい。即ち、
それぞれが、少なくとも1つのIF-THENルールを記述したルールセット記述を含む複数個のルールセットを管理するシステムにおいて、前記IF-THENルールのルールセット記述は、先行提供を行う先行要素(IFサービス)の少なくとも先行要素識別情報を含む第1の属性情報と、前記先行提供に連携して後行提供を実行する後行要素(THENサービス)の後行要素識別情報を含む第2の属性情報とを含む(
図4、
図5)。そして、異なる前記ルールセットの間の前記先行要素識別情報が重複していること及び又は前記後行要素識別情報が重複していることを検出するルール管理及び制御部<
図7のIF-THENエンジン900内のルール管理及び制御部951>を有する。そして、前記重複していることが検出された場合、前記重複している関係にある前記ルールセットの前記先行要素と前記後行要素との表示用データを出力する表示制御部<
図7の6105>を備える。この考えかたには、前述した2)から8)の考え方が含まれる。
(12)上記実施形態は、情報処理方法及び又は情報処理プログラムとしてしても採用できることは勿論のことである。即ち、
それぞれが、少なくとも1つのIF-THENルールを記述したルールセット記述を含む複数個のルールセットを処理する情報処理方法又は譲歩処理プログラムにおいて、
前記IF-THENルールのルールセット記述は、先行提供を行う先行要素(IFデバイスやIFサービス)の少なくとも先行要素識別情報を含む第1の属性情報と、前記先行提供に連携して後行提供を実行する後行要素(THENデバイスやTHENサービス)の後行要素識別情報を含む第2の属性情報とを含む(
図4、
図5)。そして、異なる前記ルールセットの間の前記先行要素識別情報が重複していること及び又は前記後行要素識別情報が重複していることを検出すること(又は命令)<
図7のIF-THENエンジン900内のルール管理及び制御部951>を備える。そして、前記重複していることが検出された場合、前記重複している関係にある前記ルールセットの前記先行要素と前記後行要素との表示用データを出力すること(又は命令)<
図7の6105>を備える。この考えかたには、前述した2)から8)の考え方が含まれる、
上記の説明は、競合チェックを切り口としが概念を記述したが、その他、本実施形態では、活動エリアにおいて採用するルールセットが切り替わるようにして、この特徴を基軸として概念を記載することも可能であるし、循環型の抽出機能を基軸として概念を記載することも可能である。
【0129】
本発明の実施形態を説明したが、この実施形態は一例として提示したものであり、発明の範囲を限定することは意図していない。この新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。この実施形態やその変形や、実施形態の組み合わせも、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0130】
2・・・クラウドサーバ、8・・・デバイス、600・・・エッジコンピュータ、6105・・・表示制御部/操作入力部、700・・・ルール格納部、900・・・IF-THENエンジン、1000・・・ifLinkアプリ、951・・・ルール管理及び制御部、952・・・条件(if)モニタ、953・・・THEN実行管理部、954・・・JOB制御部。