(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-07
(45)【発行日】2023-11-15
(54)【発明の名称】情報処理システム
(51)【国際特許分類】
G06Q 50/04 20120101AFI20231108BHJP
G06Q 10/04 20230101ALI20231108BHJP
G06N 20/00 20190101ALI20231108BHJP
【FI】
G06Q50/04
G06Q10/04
G06N20/00
(21)【出願番号】P 2021535381
(86)(22)【出願日】2020-07-29
(86)【国際出願番号】 JP2020029030
(87)【国際公開番号】W WO2021020434
(87)【国際公開日】2021-02-04
【審査請求日】2022-01-21
(31)【優先権主張番号】P 2019139989
(32)【優先日】2019-07-30
(33)【優先権主張国・地域又は機関】JP
(31)【優先権主張番号】P 2019140006
(32)【優先日】2019-07-30
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000006633
【氏名又は名称】京セラ株式会社
(74)【代理人】
【識別番号】100088672
【氏名又は名称】吉竹 英俊
(74)【代理人】
【識別番号】100088845
【氏名又は名称】有田 貴弘
(74)【代理人】
【識別番号】100156177
【氏名又は名称】池見 智治
(74)【代理人】
【識別番号】100130166
【氏名又は名称】田中 宏明
(72)【発明者】
【氏名】藤野 智和
【審査官】松田 岳士
(56)【参考文献】
【文献】特表2015-518198(JP,A)
【文献】特開2019-028836(JP,A)
【文献】特開2007-110590(JP,A)
【文献】特開2018-173711(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
G06N 3/00- 3/12
G06N 7/08-99/00
(57)【特許請求の範囲】
【請求項1】
イントラネット内に存在し、機械学習モデル及び統計解析モデルの一方のモデルである第1モデル
と、
前記イントラネット内に存在し、前記イントラネット内の第1情報を取得し、第1の場所に配置され、第1デバイスを有する第1システムと
を備え、
前
記第1情報が前記第1モデルに入力され、前記第1情報が入力されたときに前記第1モデルから出力される第2情報が、前記イントラネット外に存在する、インターネットに接続されたクラウドサーバが備える前記一方のモデルである第2モデルに入力されるという第1処理が実行され、
前記第1システムは、前記第2情報が入力されたときに前記第2モデルから出力される第3情報に基づいて、前記第1デバイスを制御する、情報処理システム。
【請求項2】
請求項1に記載の情報処理システムであって、
前記第1処理では、前記イントラネット内で得られた第4情報が前記第2モデルに入力される、情報処理システム。
【請求項3】
請求項1または請求項2に記載の情報処理システムであって、
前記イントラネット内の第5情報と前記第2モデルから出力される第6情報とが前記第1モデルに入力されるという第2処理が実行され
前記第1システムは第2デバイスを有し、
前記第1システムは前記第5情報を取得し、
前記第1システムは、前記第5及び第6情報が入力されたときに前記第1モデルから出力される第7情報に基づいて、前記第2デバイスを制御する、情報処理システム。
【請求項4】
請求項1から請求項3のいずれか一つに記載の情報処理システムであって、
前記イントラネットは、センサ及びPLC(Programmable Logic Controller)の少なくとも一方を備え、
前記第1情報は、前記センサ及び前記PLCの少なくとも一方から取得された情報を含む、情報処理システム。
【請求項5】
イントラネット内に存在し、機械学習モデル及び統計解析モデルの一方のモデルである第1モデル
と、
前記イントラネット内に存在し、前記イントラネット内の第1情報を取得し、第1の場所に配置され、第1デバイスを有する第1システムと
を備え、
前
記第1情報と、前記イントラネット外に存在する、インターネットに接続されたクラウドサーバが備える前記一方のモデルである第2モデル
が第2情報が入力されたときに出力する第3情報とが、前記第1モデルに入力されるという第1処理が実行され、
前記第1システムは、前記第1及び第
3情報が入力されたときに前記第1モデルから出力される第
4情報に基づいて、前記第1デバイスを制御する、情報処理システム。
【請求項6】
請求項5に記載の情報処理システムであって、
前記第2情報は、前記イントラネット内で得られた情報である、情報処理システム。
【請求項7】
請求項5または請求項6に記載の情報処理システムであって、
前記イントラネット内の第5情報が前記第1モデルに入力され、前記第5情報が入力されたときに前記第1モデルから出力される第6情報が前記第2モデルに入力されるという第2処理が実行され、
前記イントラネット内に存在し、前記第5情報を取得し、第2の場所に配置され、第2デバイスを有する第2システムを備え、
前記第2システムは、前記第6情報が入力されたときに前記第2モデルから出力される第7情報に基づいて、前記第2デバイスを制御する、情報処理システム。
【請求項8】
請求項5から請求項7のいずれか一つに記載の情報処理システムであって、
前記イントラネットは、センサ及びPLC(Programmable Logic Controller)の少なくとも一方を備え、
前記第1情報は、前記センサ及び前記PLCの少なくとも一方から取得された情報を含む、情報処理システム。
【発明の詳細な説明】
【関連出願の相互参照】
【0001】
本出願は、日本国出願2019-139989号(2019年7月30日出願)及び日本国出願2019-140006号(2019年7月30日出願)の優先権を主張するものであり、当該出願の開示全体を、ここに参照のために取り込む。
【技術分野】
【0002】
本開示は、情報処理システムに関する。
【背景技術】
【0003】
特許文献1には、情報処理システムに関する技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【課題を解決するための手段】
【0005】
情報処理システムが開示される。一の実施の形態では、情報処理システムは、特定の組織のイントラネット内の第1システムと、イントラネット外に配された、特定の組織の第2システムと、第2システムとイントラネット外のインターネットで接続されたサーバとを備える。第2システムは、イントラネット外に存在するサーバを通じて、第1システムと通信する。
【0006】
また、一の実施の形態では、情報処理システムは、イントラネット内に存在し、機械学習モデル及び統計解析モデルの一方のモデルである第1モデルを備える。イントラネット内の第1情報が第1モデルに入力され、第1情報が入力されたときに第1モデルから出力される第2情報が、イントラネット外に存在する、インターネットに接続されたクラウドサーバが備える一方のモデルである第2モデルに入力されるという第1処理と、イントラネット内の第3情報と第2モデルから出力される第4情報とが第1モデルに入力されるという第2処理の少なくとも一方の処理が実行される。
【図面の簡単な説明】
【0007】
【
図5】デバイスゲートウェイの構成例を示す図である。
【
図10】情報処理システムの動作例を示す図である。
【
図11】情報処理システムの動作例を示す図である。
【
図16】情報処理システムの動作例を説明するための図である。
【
図17】情報処理システムの動作例を説明するための図である。
【発明を実施するための形態】
【0008】
図1は情報処理システム1の構成例を示すブロック図である。情報処理システム1は、例えば、ある特定組織のイントラネットを含む情報処理システムである。特定組織とは、例えば企業を指す。情報処理システム1は、例えば、複数の工場を備える企業のイントラネットを含む情報処理システムである。情報処理システム1は、IoT(Internet of Things)システムの一種である。情報処理システム1は、工場IoTシステムであると言える。
【0009】
図1に示されるように、情報処理システム1は、ある企業(特定組織)が有するイントラネット2を備える。以後、当該ある企業を特定企業と呼ぶことがある。特定企業は、例えば、互いに異なる場所に設けられた複数の工場A~Dを備える。なお、特定企業が備える工場の数はこの限りではない。
【0010】
イントラネット2内には、情報処理システム3が設けられている。情報処理システム3は、工場Aシステム4aと、工場Bシステム4bと、工場Cシステム4cと、オンプレミスシステム5とを備える。工場Aシステム4aは工場Aが備える情報処理システムである。工場Bシステム4bは工場Bが備える情報処理システムである。工場Cシステム4cは工場Cが備える情報処理システムである。オンプレミスシステム5は、特定企業が有する基幹システムであって、情報処理システムの一種である。
【0011】
工場Aシステム4a、工場Bシステム4b及び工場Cシステム4cは互いに接続されている。工場Aシステム4a、工場Bシステム4b、工場Cシステム4c及びオンプレミスシステム5はシステムI/F20に接続されている。I/Fはインターフェースを意味する。システムI/F20は、イントラネット2内の複数のシステム間を接続する機能と、イントラネット2内のシステムとイントラネット2外の装置とを接続するための機能とを有している。工場Aシステム4a、工場Bシステム4b及び工場Cシステム4cのそれぞれは、システムI/F20を通じてオンプレミスシステム5と通信可能である。
【0012】
情報処理システム1は、イントラネット2以外にも、工場Dシステム4dと、サーバ10,11,12(本実施の形態では、クラウドサーバ10,11,12)と、ファイヤーウォール13,14,15とを備える。工場Dシステム4d、クラウドサーバ10,11,12及びファイヤーウォール13,14,15は、イントラネット2外に存在し、インターネットに接続されている。
【0013】
工場Dシステム4dは、特定企業の工場Dが備える情報処理システムである。工場Dシステム4dは、特定企業が備えるシステムであるものの、イントラネット2外に設けられている。ファイヤーウォール13,14,15のそれぞれは、一種のコンピュータ装置である。クラウドサーバ10,11,12のそれぞれは、一種のコンピュータ装置である。
【0014】
ファイヤーウォール13はイントラネット2とクラウドサーバ10に接続されている。ファイヤーウォール14は工場Dシステム4dとクラウドサーバ10に接続されている。ファイヤーウォール15はクラウドサーバ10とシステムI/F20に接続されている。クラウドサーバ11及び12はシステムI/F20に接続されている。
【0015】
工場Dシステム4dは、ファイヤーウォール14、クラウドサーバ10及びファイヤーウォール13を通じて、イントラネット2内の工場Aシステム4a、工場Bシステム4b及び工場Cシステム4cのそれぞれと通信することが可能である。
【0016】
以後、工場Aシステム4a、工場Bシステム4b、工場Cシステム4c及び工場Dシステム4dを特に区別する必要が無い場合には、それぞれを工場システム4と呼ぶことがある。また、イントラネット2内の工場システム4をイントラ内工場システム4と呼び、イントラネット2外の工場システム4をイントラ外工場システム4と呼ぶことがある。また、工場Dシステム4dを、イントラ外工場システム4dと呼ぶことがある。
【0017】
クラウドサーバ10は、例えば、特定企業以外の企業によって管理及び運営される。クラウドサーバ10は、ファイヤーウォール14を通じて工場Dシステム4dと通信することが可能である。また、クラウドサーバ10は、ファイヤーウォール13を通じてイントラネット2内の工場Aシステム4a、工場Bシステム4b及び工場Cシステム4cのそれぞれと通信することが可能である。また、クラウドサーバ10は、ファイヤーウォール15及びシステムI/F20を通じて、イントラネット2内のオンプレミスシステム5と通信することが可能である。
【0018】
クラウドサーバ10には、クラウドサーバ10が備えるハードウェア及びソフトウェアが協働することによって、少なくとも1種類のサービスを提供するクラウドP/F100が構築される。P/Fはプラットフォームを意味する。クラウドP/F100は、例えば機械学習エンジン101を含む。機械学習エンジン101は、機械学習装置であるとも言える。機械学習エンジン101は、推論結果を出力する機械学習モデルを生成する。つまり、機械学習エンジン101は、入力される情報に基づいて機械学習モデルを学習させて、学習済み機械学習モデルを生成する。そして、機械学習エンジン101は、学習済み機械学習モデルに情報を入力し、学習済み機械学習モデルから出力される情報を推論結果として使用する。以後、機械学習モデルを学習モデルと呼ぶことがある。また、学習済み機械学習モデルを学習済みモデルと呼ぶことがある。学習済みモデルは推論モデルと呼ばれることがある。
【0019】
機械学習エンジン101は、例えば深層学習を用いる。この場合、学習モデルには、ニューラルネットワークが含まれる。機械学習エンジン101は、ニューラルネットワークのパラメータを学習して、学習済みモデルを生成する。ニューラルネットワークのパラメータには、人工ニューロン間の結合の重みを示す重み付け係数が含まれる。機械学習エンジン101は、教師なし学習を行ってもよいし、教師あり学習を行ってもよい。また、機械学習エンジン101は強化学習を行ってもよい。深層学習と強化学習の組み合わせは深層強化学習と呼ばれる。ニューラルネットワークを含む学習モデルは、AI(Artificial Intelligence)モデルと呼ばれることがある。なお、機械学習エンジン101は、機械学習の手法として、深層学習以外の手法を使用してもよい。
【0020】
クラウドサーバ11は、例えば、特定企業以外の企業によって管理及び運営される。クラウドサーバ11は、システムI/F20を通じて、イントラネット2内の各工場システム4及びオンプレミスシステム5と通信することが可能である。クラウドサーバ11には、クラウドサーバ11が備えるハードウェア及びソフトウェアが協働することによって、少なくとも1種類のサービスを提供するクラウドP/F110が構築される。クラウドP/F110は、例えば機械学習エンジン111を含む。機械学習エンジン111の性能は、例えば、機械学習エンジン101の性能と異なっている。
【0021】
機械学習エンジン111は、例えば深層学習を用いる。この場合、機械学習エンジン111は、学習モデルに含まれるニューラルネットワークのパラメータを学習して、学習済みモデルを生成する。機械学習エンジン111は、教師なし学習を行ってもよいし、教師あり学習を行ってもよい。また、機械学習エンジン111は強化学習を行ってもよい。なお、機械学習エンジン111は、深層学習以外の手法を使用してもよい。
【0022】
クラウドサーバ12は、例えば、特定企業以外の企業によって管理及び運営される。クラウドサーバ12は、システムI/F20を通じて、イントラネット2内の各工場システム4及びオンプレミスシステム5と通信することが可能である。クラウドサーバ12には、クラウドサーバ12が備えるハードウェア及びソフトウェアが協働することによって、少なくとも1種類のサービスを提供するクラウドP/F120が構築される。クラウドP/F120は、例えば統計解析エンジン121を含む。統計解析エンジン121は、統計解析装置であるとも言える。統計解析エンジン121は、例えば回帰分析を行うことができる。統計解析エンジン121は、入力される情報に対して統計解析を行って、所定の情報を出力する統計解析モデルを生成する。統計解析モデルは、入力される情報に応じて所定の情報を出力する。
【0023】
なお、クラウドサーバ10,11,12の少なくとも一つは、特定企業によって管理及び運営されてもよい。
【0024】
<工場システムの構成例>
次に工場システム4の構成例について説明する。各工場システム4は、センサ等のデバイスから得られる情報をクラウドサーバ10に送信することが可能である。また、各工場システム4は、クラウドサーバ10からの情報に基づいてデバイスを制御することが可能である。
【0025】
図2は工場システム4の構成例を示すブロック図である。情報処理システム1が備える複数の工場システム4は互いに同様の構成を備えている。
図2では、図面の煩雑化を避けるために、工場Aシステム4aが備える構成を詳細に示している。
【0026】
図2に示されるように、各工場システム4は、サーバ40と、複数のデバイスゲートウェイ41と、複数のデバイス42とを備える。サーバ40及び各デバイスゲートウェイ41は、一種のコンピュータ装置である。サーバ40のコンピュータ性能は、例えば、デバイスゲートウェイ41のコンピュータ性能よりも高くなっている。複数のデバイス42のそれぞれは、複数のデバイスゲートウェイ41のいずれか一つに接続される。以後、デバイスゲートウェイ41をデバイスGW41と呼ぶことがある。
【0027】
本例の情報処理システム1では、フォグコンピューティングが採用されている。フォグコンピューティングとは、例えばネットワーク環境において、端末に近い場所での処理環境を意味する。サーバ40には、サーバ40が備えるハードウェア及びソフトウェアが協働することによって、各デバイスGW41を制御するフォグP/F400が構築される。フォグP/F400は、自身が属する工場システム4を管理する。各イントラ内工場システム4のフォグP/F400は、ファイヤーウォール13を通じて、クラウドP/F100と通信することが可能である。複数のイントラ内工場システム4のサーバ40は互いに接続されている。複数のイントラ内工場システム4のフォグP/F400は互いに通信することが可能である。各イントラ内工場システム4のサーバ40はシステムI/F20に接続されている。各イントラ内工場システム4のフォグP/F400は、システムI/F20を通じて、オンプレミスシステム5、クラウドP/F110及びクラウドP/F120と通信可能である。
【0028】
イントラ外工場システム4dのフォグP/F400は、ファイヤーウォール14を通じてクラウドP/F100と通信可能である。イントラ外工場システム4dのフォグP/F400は、ファイヤーウォール14、クラウドサーバ10及びファイヤーウォール13を通じて、各イントラ内工場システム4のフォグP/F400と通信可能である。イントラ外工場システム4dのフォグP/F400は、ファイヤーウォール14、クラウドサーバ10、ファイヤーウォール13、イントラ内工場システムのフォグP/F400及びシステムI/F20を通じて、オンプレミスシステム5、クラウドP/F110及びクラウドP/F120と通信可能である。なお、イントラ外工場システム4dのフォグP/F400は、ファイヤーウォール14、クラウドサーバ10、ファイヤーウォール15及びシステムI/F20を通じて、オンプレミスシステム5、クラウドP/F110及びクラウドP/F120と通信可能であってもよい。
【0029】
このように、情報処理システム1では、複数の工場システム4のフォグP/F400及びクラウドP/F100は、互いに情報のやり取りを行うことができる。また、各工場システム4のフォグP/F400は、オンプレミスシステム5、クラウドP/F110及びクラウドP/F120のそれぞれと情報のやり取りを行うことができる。フォグP/F400は、例えばルールベースに基づいて動作させてもよい。この場合、フォグP/F400は、予め設定されたルールに従って動作を行う。
【0030】
各デバイスGW41には、少なくとも一つのデバイス42が接続される。デバイスGW41は、それに接続された少なくとも一つのデバイス42から得られる情報420をフォグP/F400に送信する。また、デバイスGW41は、フォグP/F400からの指示に基づいて、それに接続されたデバイス42を制御することがある。
【0031】
一つのデバイスGW41に接続される少なく
とも一つのデバイス42には、例えば、センサ及びPLC(Programmable Logic Controller)の少なくとも一方が含まれる。PLCはシーケンサと呼ばれることがある。以後、デバイス42としてのセンサをセンサ42aと呼び、デバイス42としてのPLCをPLC42bと呼ぶことがある(
図2参照)。
【0032】
センサ42aは、例えば数秒に1回、検出動作を行って検出情報を出力する。工場システム4が備える複数のデバイス42には、温度センサ、湿度センサ、加速度センサ、振動センサ、pHセンサ、照度センサ、位置センサ、気圧センサ、水位センサ、流量センサ、電圧センサ、電流センサ、電気抵抗センサ、マイク及びカメラの少なくとも一つのセンサが含まれてもよい。なお、工場システム4が備えるセンサ42aの種類はこの限りではない。
【0033】
PLC42bは、工場内の少なくとも一つの制御対象装置を制御することが可能である。PLC42bは、スイッチ及びセンサ等の出力に基づいて、少なくとも一つの制御対象装置を制御する。PLC42bが制御する少なくとも一つの制御対象装置には、ランプ、ブザー、モータ、バルブ、ポンプ、センサ及びロボットの少なくとも一つが含まれてもよい。デバイスGW41は、PLC42bから、それに接続されている装置に関する情報を取得することができる。例えば、デバイスGW41は、スイッチのオン/オフ状態、ランプの点灯状態、ブザーが鳴っているか否か、モータの回転数、バルブの開度、ポンプの動作状況、センサの検出情報、センサが出力するアラーム情報、センサのオン/オフ状態あるいはロボットの動作状況などを、PLC42bから取得することができる。なお、PLC42bが制御する装置の種類はこの限りではない。
【0034】
工場システム4が備える複数のデバイスGW41の数は、工場ごとに設定される。したがって、工場システム4が備える複数のデバイスGW41の数は、少なくとも2つの工場システム4の間において異なることがある。また、工場システム4が備える複数のデバイス42の数及び種類は、工場ごとに設定される。したがって、工場システム4が備える複数のデバイス42の数及び種類は、少なくとも2つの工場システム4の間において異なることがある。
【0035】
フォグP/F400は、自身が管理する工場システム4の状態を把握している。フォグP/F400が把握している工場システム4の状態には、例えば、フォグP/F400に対してどのようなデバイスGW41が接続されているか、当該デバイスGW41がどのような動作を行うのかが含まれる。また、フォグP/F400が把握している工場システム4の状態には、フォグP/F400に接続されたデバイスGW41に対してどのようなデバイス42が接続されているか、当該デバイス42がどのような動作を行うのかが含まれる。
【0036】
なお、複数の工場システム4のうち、少なくとも一つの工場システム4では、サーバ40によって制御されないデバイスGW41が設けられてもよい。
図3は、サーバ40によって制御されないデバイスGW41を備える工場システム4の構成例を示す図である。
図3の例では、サーバ40のフォグP/F
400は、複数のデバイスGW41に含まれる一つのデバイスGW41aを制御できないようになっている。デバイスGW41aが、イントラ内工場システム4に設けられる場合には、デバイスGW41aは、ファイヤーウォール13を通じてクラウドサーバ10と通信する。一方で、デバイスGW41aが、イントラ外工場システム4dに設けられる場合には、デバイスGW41aは、ファイヤーウォール14を通じてクラウドサーバ10と通信する。デバイスGW41aは、デバイス42から得られる情報420をクラウドP/F100に送信することが可能である。以後の説明では、例えばイントラネット2外の工場Dシステム4dの構成が、
図3に示される構成であるとする。
【0037】
工場システム4が備える複数のデバイス42に複数のPLC42bが含まれる場合には、当該複数のPLC42bが接続されたマスタPLCとデバイスGW41とが接続されてもよい。この場合、デバイスGW41は、マスタPLCを通じて、PLC42bから得られる情報420を取得することができる。
【0038】
図4はサーバ40の構成例を示すブロック図である。
図5はデバイスGW41の構成例を示すブロック図である。
図4に示されるように、サーバ40は、制御部401と通信部405及び406とを備える。制御部401は、サーバ40の他の構成要素を制御することによって、サーバ40の動作を統括的に管理することが可能である。制御部401は制御装置あるいは制御回路とも言える。制御部401は、以下にさらに詳細に述べられるように、種々の機能を実行するための制御及び処理能力を提供するために、少なくとも1つのプロセッサを含む。
【0039】
種々の実施形態によれば、少なくとも1つのプロセッサは、単一の集積回路(IC)として、又は複数の通信可能に接続された集積回路IC及び/又はディスクリート回路(discrete circuits)として実行されてもよい。少なくとも1つのプロセッサは、種々の既知の技術に従って実行されることが可能である。
【0040】
1つの実施形態において、プロセッサは、例えば、関連するメモリに記憶された指示を実行することによって1以上のデータ計算手続又は処理を実行するように構成された1以上の回路又はユニットを含む。他の実施形態において、プロセッサは、1以上のデータ計算手続き又は処理を実行するように構成されたファームウェア(例えば、ディスクリートロジックコンポーネント)であってもよい。
【0041】
種々の実施形態によれば、プロセッサは、1以上のプロセッサ、コントローラ、マイクロプロセッサ、マイクロコントローラ、特定用途向け集積回路(ASIC)、デジタル信号処理装置、プログラマブルロジックデバイス、フィールドプログラマブルゲートアレイ、又はこれらのデバイス若しくは構成の任意の組み合わせ、又は他の既知のデバイス及び構成の組み合わせを含み、以下に説明される機能を実行してもよい。
【0042】
本例では、制御部401は、CPU(Central Processing Unit)402及び記憶部403を備える。記憶部403は、ROM(Read Only Memory)及びRAM(Random Access Memory)などの、CPU402が読み取り可能な非一時的な記録媒体を含む。記憶部403には、サーバ40を制御するための制御プログラム403a等が記憶されている。サーバ40の各種機能は、CPU402が記憶部403内の制御プログラム403aを実行することによって実現される。サーバ40では、CPU402が制御プログラム403aを実行することによって、機能ブロックとしてのフォグP/F400が構築される。
【0043】
なお、制御部401の構成は上記の例に限られない。例えば、制御部401は、複数のCPU402を備えてもよい。また制御部401は、少なくとも一つのDSP(Digital Signal Processor)を備えてもよい。また、制御部401の全ての機能あるいは制御部401の一部の機能は、その機能の実現にソフトウェアが不要な、ハードウェア回路によって実現されてもよい。また、記憶部403は、ROM及びRAM以外の、コンピュータが読み取り可能な非一時的な記録媒体を備えていてもよい。記憶部403は、例えば、小型のハードディスクドライブ及びSSD(Solid State Drive)などを備えていてもよい。
【0044】
通信部405は、ファイヤーウォールを通じてクラウドサーバ10と通信することが可能である。通信部405は、ファイヤーウォールと、有線接続及び無線接続の少なくとも一方が使用されて接続されてもよい。また、通信部405は、システムI/F20を通じて、オンプレミスシステム5とクラウドサーバ11及び12と通信することが可能である。通信部406は、複数のデバイスGW41と通信することが可能である。通信部406は、複数のデバイスGW41と、有線接続及び無線接続の少なくとも一方が使用されて接続されてもよい。通信部405及び406は通信回路とも言える。
【0045】
サーバ40の構成は上記の例に限られない。例えば、サーバ40は、制御部401によって制御されるディスプレイを備えてもよい。また、サーバ40は、ユーザの操作を受け付ける操作部を備えてもよい。操作部には、マウスが含まれてよいし、キーボードが含まれてもよし、タッチパネルが含まれてもよい。
【0046】
デバイスGW41は、
図5に示されるように、制御部411と、通信部415と、デバイスI/F416とを備える。制御部411は、デバイスGW41の他の構成要素を制御することによって、デバイスGW41の動作を統括的に管理することが可能である。制御部411は、以下にさらに詳細に述べられるように、種々の機能を実行するための制御及び処理能力を提供するために、少なくとも1つのプロセッサを含む。サーバ40の制御部401が備えるプロセッサについての上記の説明は、制御部411が備えるプロセッサについても適用することができる。
【0047】
本例では、制御部411は、CPU412及び記憶部413を備える。記憶部413は、ROM及びRAMなどの、CPU412が読み取り可能な非一時的な記録媒体を含む。記憶部413には、デバイスGW41を制御するための制御プログラム413a等が記憶されている。デバイスGW41の各種機能は、CPU412が記憶部413内の制御プログラム413aを実行することによって実現される。
【0048】
なお、制御部411の構成は上記の例に限られない。例えば、制御部411は、複数のCPU412を備えてもよい。また制御部411は、少なくとも一つのDSPを備えてもよい。また、制御部411の全ての機能あるいは制御部411の一部の機能は、その機能の実現にソフトウェアが不要な、ハードウェア回路によって実現されてもよい。また、記憶部413は、ROM及びRAM以外の、コンピュータが読み取り可能な非一時的な記録媒体を備えていてもよい。
【0049】
通信部415は、サーバ40の通信部406と通信することが可能である。デバイスI/F416には、少なくとも一つのデバイス42が接続される。制御部411は、デバイスI/F416を通じて、デバイス42で得られる情報420を取得することができる。また、制御部411は、デバイスI/F416を通じて、デバイス42を制御することもある。デバイスI/F416は、デバイスI/F回路とも言える。
【0050】
デバイスGW41の構成は上記の例に限られない。例えば、デバイスGW41は、制御部411によって制御されるディスプレイを備えてもよい。また、デバイスGW41は、ユーザの操作を受け付ける操作部を備えてもよい。
【0051】
<クラウドサーバの構成例>
次にクラウドサーバ10,11,12の構成例について説明する。クラウドサーバ10,11,12は、例えば、同様のハードウェア構成を備えている。
図6はクラウドサーバ10,11,12の構成例を示すブロック図である。
【0052】
図6に示されるように、クラウドサーバ10,11,12のそれぞれは、制御部151及び通信部155を備える。制御部151は、クラウドサーバの他の構成要素を制御することによって、クラウドサーバの動作を統括的に管理することが可能である。制御部151は、以下にさらに詳細に述べられるように、種々の機能を実行するための制御及び処理能力を提供するために、少なくとも1つのプロセッサを含む。サーバ40の制御部401が備えるプロセッサについての上記の説明は、制御部151が備えるプロセッサについても適用することができる。
【0053】
本例では、制御部151は、CPU152及び記憶部153を備える。記憶部153の記憶容量は、例えば、工場システム4のサーバ40の記憶部403の記憶容量よりも大きくなっている。記憶部153は、ROM及びRAMなどの、CPU152が読み取り可能な非一時的な記録媒体を含む。記憶部153には、クラウドサーバを制御するための制御プログラム153a等が記憶されている。クラウドサーバの各種機能は、CPU152が記憶部153内の制御プログラム153aを実行することによって実現される。クラウドサーバ10では、CPU152が制御プログラム153aを実行することによって、機能ブロックとしてのクラウドP/F100が構築される。クラウドサーバ11では、CPU152が制御プログラム153aを実行することによってクラウドP/F110が構築される。クラウドサーバ12では、CPU152が制御プログラム153aを実行することによって、クラウドP/F120が構築される。
【0054】
なお、制御部151の構成は上記の例に限られない。例えば、制御部151は、複数のCPU152を備えてもよい。また制御部151は、少なくとも一つのDSPを備えてもよい。また、制御部151の全ての機能あるいは制御部151の一部の機能は、その機能の実現にソフトウェアが不要な、ハードウェア回路によって実現されてもよい。また、記憶部153は、ROM及びRAM以外の、コンピュータが読み取り可能な非一時的な記録媒体を備えていてもよい。
【0055】
通信部155はインターネットに接続されている。通信部155は、インターネットを通じて、各種情報を取得することが可能である。クラウドサーバ10の通信部155は、ファイヤーウォールを通じて、各工場システム4のサーバ40の通信部405及びデバイスGW41の通信部415の少なくとも一方と通信することが可能である。また、クラウドサーバ10の通信部155は、ファイヤーウォール15及びシステムI/F20を通じて、オンプレミスシステム5と通信することが可能である。
【0056】
クラウドサーバ11及び12の通信部155はシステムI/F20に接続されている。クラウドサーバ11及び12の通信部155は、システムI/F20を通じて、各イントラ内工場システム4のサーバ40の通信部405及びオンプレミスシステム5と通信することが可能である。また、クラウドサーバ11及び12の通信部155は、システムI/F20、イントラ内工場システム4のサーバ40、ファイヤーウォール13、クラウドサーバ10及びファイヤーウォール14を通じて、イントラ外工場システム4dのサーバ40の通信部405と通信可能である。なお、クラウドサーバ11及び12の通信部155は、システムI/F20、ファイヤーウォール15、クラウドサーバ10及びファイヤーウォール14を通じて、イントラ外工場システム4dのサーバ40の通信部405と通信可能であってもよい。
【0057】
通信部155は、情報処理システム1に含まれない装置と通信してもよい。例えば、通信部155は、インターネットに接続されている、気象情報を提供するサーバと通信してもよい。この場合、制御部151は通信部155で受信される気象情報を記憶部153に記憶してもよい。通信部155は、インターネットに接続されている、経済情報を提供するサーバと通信してもよい。この場合、制御部151は通信部155で受信される経済情報を記憶部153に記憶してもよい。
【0058】
クラウドサーバ10,11,12の構成は上記の例に限られない。例えば、クラウドサーバ10,11,12の少なくとも一つは、制御部151によって制御されるディスプレイを備えてもよい。また、クラウドサーバ10,11,12の少なくとも一つは、ユーザの操作を受け付ける操作部を備えてもよい。また、クラウドサーバ10,11,12の少なくとも2つは、互いに異なるハードウェア構成を備えてもよい。
【0059】
<オンプレミスシステムの構成例>
次にオンプレミスシステム5の構成例について説明する。
図1に示されるように、オンプレミスシステム5は、例えば、特定企業の事業部ごとに設けられた事業部サーバ50を備える。事業部サーバ50は一種のコンピュータ装置である。事業部サーバ50は、それに対応する事業部での生産管理情報、会計情報及び技術情報を管理している。
【0060】
図7は事業部サーバ50の構成例を示すブロック図である。
図7に示されるように、事業部サーバ50は、例えば制御部501及び通信部505を備える。制御部501は、事業部サーバ50の他の構成要素を制御することによって、事業部サーバ50の動作を統括的に管理することが可能である。制御部501は、以下にさらに詳細に述べられるように、種々の機能を実行するための制御及び処理能力を提供するために、少なくとも1つのプロセッサを含む。サーバ40の制御部401が備えるプロセッサについての上記の説明は、制御部501が備えるプロセッサについても適用することができる。
【0061】
本例では、制御部501は、CPU502及び記憶部503を備える。記憶部503は、ROM及びRAMなどの、CPU502が読み取り可能な非一時的な記録媒体を含む。記憶部503には、事業部サーバ50を制御するための制御プログラム503aが記憶されている。また、記憶部503は、生産管理情報を記憶する生産管理情報DB503bと、会計情報を記憶する会計情報DB503cと、技術情報を記憶する技術情報DB503dとを備える。DBはデータベースを意味する。事業部サーバ50の各種機能は、CPU502が記憶部503内の制御プログラム503aを実行することによって実現される。
【0062】
なお、制御部501の構成は上記の例に限られない。例えば、制御部501は、複数のCPU502を備えてもよい。また制御部501は、少なくとも一つのDSPを備えてもよい。また、制御部501の全ての機能あるいは制御部501の一部の機能は、その機能の実現にソフトウェアが不要な、ハードウェア回路によって実現されてもよい。また、記憶部503は、ROM及びRAM以外の、コンピュータが読み取り可能な非一時的な記録媒体を備えていてもよい。
【0063】
通信部505は、システムI/F20に接続されている。通信部505は、システムI/F20を通じて、クラウドP/F100,110,120と各工場システム4のフォグP/F400と通信することができる。
【0064】
事業部サーバ50の構成は上記の例に限られない。例えば、事業部サーバ50は、制御部501によって制御されるディスプレイを備えてもよい。また、事業部サーバ50は、ユーザの操作を受け付ける操作部を備えてもよい。
【0065】
オンプレミスシステム5は、複数の事業部サーバ50以外にも、機械学習エンジン510を備えるコンピュータ装置51と、統計解析エンジン520を備えるコンピュータ装置52とを備える。コンピュータ装置51及び52は、例えば、事業部サーバ50と同様のハードウェア構成を備えている。コンピュータ装置51では、CPUが記憶部内の制御プログラムを実行することによって、機能ブロックとしての機械学習エンジン510が構築される。機械学習エンジン510の性能は、イントラネット2外の機械学習エンジン101及び111の性能と異なっている。コンピュータ装置52では、CPUが記憶部内の制御プログラムを実行することによって、機能ブロックとしての統計解析エンジン520が構築される。統計解析エンジン520は、例えば回帰分析を行うことができる。統計解析エンジン520の性能は、イントラネット2外の統計解析エンジン121の性能と異なっている。
【0066】
なお、コンピュータ装置51及び52の少なくとも一方は、事業部サーバ50とは異なるハードウェア構成を備えてもよい。また、機械学習エンジン510及び統計解析エンジン520は一つのコンピュータ装置に設けられてもよい。また、
図1の例のように、事業部ごとにサーバが存在するのではなく、複数の事業部の情報を管理する一つのサーバが存在してもよい。また、オンプレミスシステム5では、特定企業が備える全事業部の情報を一括管理する一つのサーバが存在してもよい。
【0067】
以後、機械学習エンジン101,111,510を特に区別する必要がない場合には、それぞれを機械学習エンジンと呼ぶことがある。また、統計解析エンジン121,520を特に区別する必要がない場合には、それぞれを統計解析エンジンと呼ぶことがある。
【0068】
以上のように、本例では、イントラネット2内の情報処理システム3と、イントラネット2外の工場Dシステム4dとが、クラウドサーバ10を通じて互いに通信することが可能である。これにより、工場Dシステム4dをイントラネット2内に取り込む必要がなくなる。よって、情報処理システム3と工場Dシステム4dが通信可能な情報処理システム1をクラウドサーバ10を利用して簡単に構築することができる。
【0069】
<情報処理システムの動作例>
以下に情報処理システム1の様々な動作例について説明する。
【0070】
<工場システムの動作例>
工場システム4では、フォグP/F400は、デバイスGW41がデバイス42から得た情報420を、どのサーバに送るのかを制御することができる。フォグP/F400は、デバイスGW41がデバイス42から得た情報420をデバイスGW41から受信すると、受信した情報420を例えばクラウドサーバ10のクラウドP/F100に送信することができる。また、フォグP/F400は、受信した情報420をクラウドP/F110に送信することができる。また、フォグP/F400は、受信した情報420をクラウドP/F120に送信することができる。クラウドP/F100,110,120のそれぞれは、受信した情報420を記憶部153に記憶する。また、フォグP/F400は、デバイスGW41からの情報420をオンプレミスシステム5に送信することができる。オンプレミスシステム5では、フォグP/F400からの情報420が事業部サーバ50の記憶部503に記憶される。具体的には、ある工場システム4のフォグP/F400からの情報420は、当該ある工場システム4を備える事業部に応じた事業部サーバ50の記憶部503内の技術情報DB503dに記憶される。
【0071】
また、フォグP/F400は、デバイスGW41からの情報420を用いた処理を行うことができる。フォグP/F400は、例えば簡単な計算処理を行うことが可能である。例えば、フォグP/F400は、情報420を用いた四則演算を行うことが可能である。
図8は工場システム4の動作例を示す図である。
【0072】
図8に示されるように、ステップs1において、デバイス42が情報420をデバイスGW41に送信する。次にステップs2において、デバイスGW41がフォグP/F400に情報420を送信する。次にステップs3において、フォグP/F400が情報420を用いた処理を行う。そして、フォグP/F400は、処理の結果に応じて、デバイスGW41に送信する情報を生成する。次にステップs4において、フォグP/F400は、生成した情報をデバイスGW41に送信する。次にステップs5において、デバイスGW41は、受け取った情報に基づいてデバイス42を制御する。ステップs1において情報420を送信するデバイス42と、ステップs5において制御されるデバイス42とは、同じであってもよいし、異なっていてもよい。
【0073】
例えば、ステップs1において情報420を送信するデバイス42が電流センサである場合を考える。この場合、フォグP/F400は、ステップs3において、例えば、電流センサから得られる電流(情報420)が所定時間以上連続的に増加しているか否かを判定する。そして、フォグP/F400は、電流センサから得られる電流が所定時間以上連続的に増加している場合には、デバイスGW41に対して、アラーム出力の実行を指示する指示情報をステップs4において送信する。指示情報を受け取ったデバイスGW41は、ステップs5において、例えば、自身に接続されているブザー(デバイス42)を鳴らしてアラーム出力を行う。このとき、ディスプレイを備えるデバイスGW41は、当該ディスプレイにアラーム情報を表示してもよい。
【0074】
また、情報420とある情報との関係を表す関係式が予め求められており、当該関係式がフォグP/F400に記憶されている場合を考える。この場合、フォグP/F400は、記憶する関係式と入力される情報420に基づいてある情報を求めてもよい。例えば、工場に設けられた排水処理システムが有する処理槽内の汚水の水位に応じて、当該処理槽に流れる汚水の流量を制御する処理が、工場システム4で実行される場合を考える。フォグP/F400では、処理槽内の汚水の水位と、それに応じた汚水の流量の設定値との関係を示す関係式が記憶されているとする。このような場合、フォグP/F400は、ステップs3において、当該関係式と、デバイスGW41がステップs2において送信する、処理槽内の汚水の水位(情報420)とに基づいて、汚水の流量の設定値を求める。そして、フォグP/F400は、ステップs4において、デバイスGW41に対して求めた設定値を通知する。デバイスGW41は、ステップs5において、通知された設定値をPLC42bに設定する。PLC42bには、汚水の流量を検出する流量センサが接続されている。また、PLC42bは、汚水の流量を制御するバルブの開度を制御することが可能である。PLC42bは、流量センサで検出される流量が、設定された設定値になるようにバルブの開度を制御する。
【0075】
他の例として、工場システム4において、産業用のインクジェットプリンタが印字を行う場合を考える。フォグP/F400では、印字箇所のずれ量と、当該ずれ量を補正するための、インクジェットヘッドの位置のオフセット量との関係を示す関係式が記憶されているとする。また、複数のデバイス42には、印字箇所のずれ量を検出するセンサが含まれているとする。このような場合、フォグP/F400は、ステップs3において、当該関係式と、デバイスGW41が送信する印字箇所のずれ量(情報420)とに基づいてオフセット量を求める。そして、フォグP/F400は、ステップs4において、デバイスGW41に対して求めたオフセット量を通知する。デバイスGW41は、ステップs5において、インクジェットプリンタを制御するPLC42bに対して、通知されたオフセット量を設定する。PLC42bは、インクジェットプリンタを制御して、設定されたオフセット量だけインクジェットヘッドの位置をずらす。
【0076】
また、フォグP/F400は、情報420がカメラで得られる撮影画像である場合、当該撮影画像に対して簡単な画像処理を行ってもよい。例えば、フォグP/F400は、撮影画像の画像サイズを小さくしてもよい。
【0077】
このように、フォグP/F400は、情報420を用いたある程度の処理を実行することができる。したがって、クラウドP/F100での処理負担を軽減することができる。また、イントラネット2からクラウドP/F100に送る情報の量を低減することができる。また、デバイス42に近いエッジ側のフォグP/F400が処理を行うことから、処理のリアルタイム性が向上する。
【0078】
また、フォグP/F400は、制御対象のデバイスGW41の制御プログラム413aを記憶してもよい。この場合、フォグP/F400は、故障等によりデバイスGW41が新たなデバイスGW41に交換されると、当該新たなデバイスGW41に対して制御プログラム413aを書き込んでもよい。これにより、新たなデバイスGW41は適切に動作することが可能となる。よって、デバイスGW41の入れ替えが容易となる。
【0079】
<複数のフォグP/F間での情報共有>
本例では、工場Dシステム4dが備えるデバイスGW41aを制御する、フォグP/F400と同様のP/Fが、クラウドP/F100内に構築されている。以後、説明の便宜上、クラウドP/F100内に構築された、フォグP/F400と同様のP/Fを、クラウド側フォグP/F400と呼ぶことがある。
【0080】
クラウド側フォグP/F400は、ファイヤーウォール14を通じて工場Dシステム4dのデバイスGW41aに接続されている。クラウド側フォグP/F400は、工場Dシステム4dのデバイスGW41aと、それに接続されたデバイス42と、クラウド側フォグP/F400とから成るシステムを管理する。クラウド側フォグP/F400は、工場システム4内のフォグP/F400と同様に動作する。例えば、クラウド側フォグP/F400は、デバイスGW41aからの情報420に基づいて、デバイスGW41aに接続されたデバイス42を制御することが可能である。また、クラウド側フォグP/F400は、自身が管理するシステムの状態を把握している。クラウド側フォグP/F400が把握しているシステムの状態には、例えば、クラウド側フォグP/F400に対して、どのようなデバイスGW41が接続されているか、当該デバイスGW41がどのような動作を行うのかが含まれる。また、クラウド側フォグP/F400が把握しているシステムの状態には、クラウド側フォグP/F400に接続されたデバイスGW41に対してどのようなデバイス42が接続されているか、当該デバイス42がどのような動作を行うのかが含まれる。デバイスGW41aを備える工場Dシステム4dでは、フォグP/F400は、当該フォグP/F400と、それに接続されたデバイスGW41と、当該デバイスGW41に接続されたデバイス42とから成るシステムを管理していると言える。以後、特に断らない限り、フォグP/F400という用語には、クラウド側フォグP/F400も含まれるものとする。
【0081】
本例の情報処理システム1では、コンテナ技術が使用されており、複数のフォグP/F400が仮想的には一つのP/Fを構成している。各フォグP/F400は、自身が管理するシステムの状態だけではなく、他のフォグP/F400が管理するシステムの状態も把握している。つまり、各フォグP/F400は、自身が管理するシステムの状態を示すシステム状態情報だけではなく、他のフォグP/F400が管理するシステムの状態を示すシステム状態情報を記憶している。
【0082】
例えば、工場Aシステム4aのフォグP/F400は、工場Aシステム4aの状態を示すシステム状態情報だけではなく、工場Bシステム4bのフォグP/F400が管理しているシステム、つまり工場Bシステム4bの状態を示すシステム状態情報も記憶している。また、工場Aシステム4aのフォグP/F400は、工場Cシステム4cの状態を示すシステム状態情報も記憶している。また、工場Aシステム4aのフォグP/F400は、工場Dシステム4dのフォグP/F400が管理しているシステムの状態を示すシステム状態情報も記憶している。また、工場Aシステム4aのフォグP/F400は、クラウド側フォグP/F400が管理しているシステムの状態を示すシステム状態情報も記憶している。工場Aシステム4aのフォグP/F400以外のフォグP/F400も、同様に、他のフォグP/F400が管理するシステムのシステム状態情報を記憶している。
【0083】
各工場システム4のフォグP/F400は、自身が管理するシステムの状態を、クラウド側フォグP/F400を通じて、他の工場システム4のフォグP/F400に通知することが可能である。具体的には、各工場システム4のフォグP/F400は、自身が管理するシステムの状態に変化が発生した場合、その変化の内容を、例えば、クラウド側フォグP/F400を通じて、他の工場システム4のフォグP/F400に通知することが可能である。また、クラウド側フォグP/F400は、自身が管理するシステムの状態を、各工場システム4のフォグP/F400に通知することが可能である。具体的には、クラウド側フォグP/F400は、自身が管理するシステムの状態に変化が発生した場合、その変化の内容を、各工場システム4のフォグP/F400に通知することが可能である。以下に、フォグP/F400が管理するシステムの状態が他のフォグP/F400に通知される場合の情報処理システム1の動作例について詳細に説明する。
【0084】
各工場システム4のフォグP/F400は、自身が管理するシステムの状態に変化が発生した場合、その変化の内容を示すシステム変化情報をクラウド側フォグP/F400に通知する。例えば、フォグP/F400のルールに新しい内容が追加された場合、当該内容を特定する情報がシステム変化情報に含められる。また、システムに新しいセンサが追加された場合、当該新しいセンサの情報がシステム変化情報に含められる。また、フォグP/F400が管理するシステムに異常が発生した場合、その異常の内容を特定する情報がシステム変化情報に含められる。例えば、センサ42aが故障して動作しなくなった場合、当該センサ42aが動作していないことを示す情報がシステム変化情報に含められる。以後、システム変化情報を送信するフォグP/F400を対象フォグP/F400と呼ぶことがある。
【0085】
クラウド側フォグP/F400は、ある工場システム4の対象フォグP/F400からシステム変化情報を受け取ると、受け取ったシステム変化情報に基づいて、自身が記憶している、対象フォグP/F400が管理するシステムのシステム状態情報を更新する。これにより、クラウド側フォグP/F400は、対象フォグP/F400が管理するシステムの最新の状態を把握することができる。また、クラウド側フォグP/F400は、ある工場システム4の対象フォグP/F400から受け取ったシステム変化情報を、他の工場システム4のフォグP/F400に通知する。他の工場システム4のフォグP/F400は、受け取ったシステム変化情報に基づいて、対象フォグP/F400が管理するシステムのシステム状態情報を更新する。また、クラウド側フォグP/F400は、自身が管理するシステムの状態に変化が発生した場合、その変化の内容を示すシステム変化情報を、各工場システム4のフォグP/F400に通知する。各工場システム4のフォグP/F400は、受け取ったシステム変化情報に基づいて、クラウド側フォグP/F400が管理するシステムのシステム状態情報を更新する。これにより、各工場システム4のフォグP/F400は、他のフォグP/F400が管理するシステムの最新の状態を把握することができる。
【0086】
なお、情報処理システム1が導入される場合には、各フォグP/F400に対して、他のフォグP/F400が管理するシステムの初期状態を示すシステム状態情報が書き込まれる。各フォグP/F400は、システム導入時に書き込まれたシステム状態情報を、上述のようにして適宜更新することによって、他のフォグP/F400が管理するシステムの最新の状態を把握することができる。
【0087】
このように、本例では、フォグP/F400が、他のフォグP/F400が管理するシステムの状態を把握している。これにより、フォグP/F400は、他のフォグP/F400が管理するシステムの状態に応じた処理を行うことができる。
【0088】
例えば、フォグP/F400は、他のフォグP/F400が管理するシステムに異常が発生した場合、その異常に対処する処理を実行することができる。一例として、工場Cが無人の工場であって、工場Bが人が存在する工場である場合を考える。この場合、工場Bシステム4bのフォグP/F400は、工場Cシステム4cのシステム状態情報に基づいて、工場Cシステム4cに異常が発生したと判断した場合、工場Bシステム4bのデバイスGW41を制御して、それに接続されているランプ及びブザーを駆動する。これにより、工場Bに存在する人に対して、無人の工場Cに設けられた工場Cシステム4cでの異常の発生を通知することができる。また、クラウド側フォグP/F400が、工場Cシステム4cのシステム状態情報に基づいて工場Cシステム4cに異常が発生したと判断した場合には、クラウド側フォグP/F400は、特定企業が有する、情報処理システム1を管理する管理サーバに対して、工場Cシステム4cでの異常の発生を通知してもよい。管理サーバは、例えばオンプレミスシステム5内に存在する。
【0089】
また、フォグP/F400は、他のフォグP/F400が管理するシステムの状態を把握していることから、あるフォグP/F400が故障等により停止した場合、他のフォグP/F400が、停止したフォグP/F400の代わりに動作することができる。
【0090】
また、ある工場システム4のサーバ40が新しいサーバ40に入れ替えられた場合、当該新しいサーバ40のフォグP/F400に対して、他の工場システム4のフォグP/F400あるいはクラウド側フォグP/F400が、当該新しいサーバ40のフォグP/F400が管理するシステムの状態を通知することができる。これにより、当該新しいサーバ40のフォグP/F400は適切に動作することができる。よって、工場システム4のサーバ40の入れ替えが容易となる。
【0091】
また、クラウド側フォグP/F400は、工場システム4のシステム状態情報から、当該工場システム4のフォグP/F400のルールを把握することができる。このため、クラウド側フォグP/F400は、工場システム4のフォグP/F400の動作が異常であるか否かを判定することができる。
【0092】
例えば、あるフォグP/F400のルールに、情報420を5分に1回クラウドP/F100に当該あるフォグP/F400が送信するという内容が記載されているとする。この場合、クラウド側フォグP/F400は、当該あるフォグP/F400が10分以上情報420をクラウドP/F100に送信しない場合には、当該あるフォグP/F400が異常であると判定する。クラウド側フォグP/F400は、工場システム4のフォグP/F400が異常であると判定すると、例えば、オンプレミスシステム5内の上述の管理サーバに対して、当該フォグP/F400に異常が発生したことを通知する。管理サーバは、ディスプレイに表示を行うなどして、オペレータに対して、フォグP/F400に異常が発生したことを通知する。なお、クラウド側フォグP/F400が工場システム4のフォグP/F400の異常を判定する方法はこの限りではない。また、クラウド側フォグP/F400が工場システム4のフォグP/F400の異常を特定した場合のクラウド側フォグP/F400の動作はこの限りではない。
【0093】
<機械学習エンジン及び統計解析エンジンの動作例>
クラウドP/F100の機械学習エンジン101は、例えば、クラウドサーバ10の記憶部153内の情報に基づいて学習済みモデルを生成することが可能である。つまり、機械学習エンジン101は、クラウドサーバ10の記憶部153内の情報を学習データとして用いて学習モデルを学習させることが可能である。また、機械学習エンジン101は、学習済みモデルと、クラウドサーバ10の記憶部153内の情報とに基づいて、所定の情報を推論することが可能である。機械学習エンジン101では、学習済みモデルに対して記憶部153内の情報が入力されたときの当該学習済みモデルの出力が推論結果となる。以後、クラウドサーバ10の記憶部153内の情報を第1クラウド側情報と呼ぶことがある。また、機械学習エンジン101で生成される学習済みモデルを、第1クラウド側学習済みモデルと呼ぶことがある。
【0094】
クラウドP/F110の機械学習エンジン111は、例えば、クラウドサーバ11の記憶部153内の情報に基づいて学習済みモデルを生成することが可能である。また、機械学習エンジン111は、学習済みモデルと、クラウドサーバ11の記憶部153内の情報とに基づいて、所定の情報を推論することが可能である。以後、クラウドサーバ11の記憶部153内の情報を第2クラウド側情報と呼ぶことがある。また、機械学習エンジン111で生成される学習済みモデルを、第2クラウド側学習済みモデルと呼ぶことがある。
【0095】
オンプレミスシステム5の機械学習エンジン510は、例えば、事業部サーバ50の記憶部503内の情報に基づいて学習済みモデルを生成することが可能である。つまり、機械学習エンジン510は、記憶部503内の情報を学習データとして用いて学習モデルを学習させることが可能である。また、機械学習エンジン510は、学習済みモデルと、事業部サーバ50の記憶部503内の情報とに基づいて、所定の情報を推論することができる。機械学習エンジン510では、学習済みモデルに対して記憶部503内の情報が入力されたときの当該学習済みモデルの出力が推論結果となる。以後、事業部サーバ50の記憶部503内の情報をオンプレミス側情報と呼ぶことがある。また、機械学習エンジン510で生成される学習済みモデルを、オンプレミス側学習済みモデルと呼ぶことがある。
【0096】
なお、機械学習エンジン101は、第1クラウド側情報が更新されると、更新後の第1クラウド側情報に基づいて第1クラウド側学習済みモデルを再学習させてもよい。同様に、機械学習エンジン111は、第2クラウド側情報が更新されると、更新後の第2クラウド側情報に基づいて第2クラウド側学習済みモデルを再学習させてもよい。また、機械学習エンジン510は、オンプレミス側情報が更新されると、更新後のオンプレミス側情報に基づいてオンプレミス側学習済みモデルを再学習させてもよい。
【0097】
クラウドP/F120の統計解析エンジン121は、例えば、クラウドサーバ12の記憶部153内の情報に対して統計解析を行って、所定の情報を出力する統計解析モデルを生成することが可能である。また、統計解析エンジン121は、生成した統計解析モデルに対してクラウドサーバ12の記憶部153内の情報を入力して、所定の情報を得ることができる。以後、クラウドサーバ12の記憶部153内の情報を第3クラウド側情報と呼ぶことがある。また、統計解析エンジン121で生成される統計解析モデルをクラウド側統計解析モデルと呼ぶことがある。
【0098】
オンプレミスシステム5の統計解析エンジン520は、例えば、オンプレミス側情報に対して統計解析を行って、所定の情報を出力する統計解析モデルを生成することが可能である。また、統計解析エンジン520は、生成した統計解析モデルに対してオンプレミス側情報を入力して、所定の情報を得ることができる。以後、統計解析エンジン520で生成される統計解析モデルをオンプレミス側統計解析モデルと呼ぶことがある。
【0099】
なお、統計解析エンジン121は、第3クラウド側情報が更新されると、更新後の第3クラウド側情報に基づいてクラウド側統計解析モデルを再構築してもよい。同様に、統計解析エンジン520は、オンプレミス側情報が更新されると、更新後のオンプレミス側情報に基づいてオンプレミス側統計解析モデルを再構築してもよい。
【0100】
本例の情報処理システム1では、統計解析によって得ることができる情報は、統計解析エンジンが使用されて生成される。そして、統計解析によって得ることが難しい情報は機械学習エンジンが使用されて生成される。
【0101】
また、本例の情報処理システム1では、機械学習エンジンの性能に応じて、当該機械学習エンジンで推論させる情報が決定されている。また、統計解析エンジンの性能に応じて、当該統計解析エンジンに出力させるべき情報が決定されている。
【0102】
以下に、機械学習エンジン及び統計解析エンジンの動作の具体例について説明する。以下の説明では、工場内の排水処理システムについて機械学習エンジン及び統計解析エンジンが使用される場合を例に挙げる。
【0103】
工場A~Dのそれぞれには、工場で生成される汚水を浄化して排水する排水処理システムが設けられている。排水処理システムは、例えば、汚水のpHを調整する調整槽と、汚水に対して分離処理を行う分離槽とを備えている。なお、排水処理システムには、汚水のpHの調整と汚水に対する分離処理とを行う一つの処理槽が設けられることもある。
【0104】
調整槽にはpHを調整するための調整剤が投入される。分離槽には分離剤が投入される。本例では、例えば、調整剤の投入量が統計解析エンジンが使用されて求められる。また、分離剤の投入量が機械学習エンジンが使用されて推定される。以下では、工場Aの排水処理システムを例に挙げて、調整剤及び分離剤の投入量を求める方法について説明する。以下の説明は、工場B~Dの排水処理システムについても適用することができる。
【0105】
<調整剤の投入量の決定方法の一例>
工場Aシステム4aが備える複数のデバイス42には、調整槽内の汚水のpHを検出するpHセンサが含まれる。pHセンサは、繰り返しpHを検出して出力する。また、工場Aシステム4aが備える複数のデバイス42には、調整槽内の汚水の温度を検出する温度センサが含まれる。温度センサは、繰り返し温度を検出して出力する。また、工場Aシステム4aが備える複数のデバイス42には、調整槽に調整剤を自動で投入する調整剤投入装置を制御するPLCが含まれる。以後、pHセンサで検出されたpHを検出pHと呼ぶことがある。また、温度センサで検出された温度を検出温度と呼ぶことがある。
【0106】
汚水に投入される調整剤の効き目は、汚水の温度によって変化する。例えば、汚水の温度が高くなると、調整剤の効き目が向上する。本例では、統計解析エンジンは、統計モデルの生成段階において、検出pH及び検出温度と、そのときに必要な調整剤の投入量(事前に決定された値)とに対して統計解析を行って、調整剤の適切な投入量を出力する統計解析モデルを生成する。そして、統計解析エンジンは、生成した統計解析モデルを用いて、調整剤の投入量を求める。つまり、統計解析エンジンは、統計解析モデルに対して検出pH及び検出温度を入力したときの当該統計解析モデルの出力情報を、調整剤の投入量とする。調整剤の投入量が決定されると、工場Aシステム4aのフォグP/F400は、調整剤投入装置を制御するPLCが接続されたデバイスGW41に対して、決定された投入量を通知する。デバイスGW41は、調整剤投入装置を制御するPLC42bに対して、通知された投入量を設定する。PLC42bは、設定された投入量だけ調整剤が調整槽に投入されるように、調整剤投入装置を制御する。
【0107】
調整剤の投入量は、オンプレミスシステム5内の統計解析エンジン520で求められてもよい。この場合には、工場Aシステム4aのフォグP/F400は、デバイスGW41から受け取った検出pH及び検出温度をオンプレミスシステム5に送信する。オンプレミスシステム5では、工場Aを備える事業部に対応する事業部サーバ50の技術情報DB503dに検出pH及び検出温度が記憶される。統計解析エンジン520は、統計モデルの生成段階において、技術情報DB503dから検出pH及び検出温度を読み出す。そして、統計解析エンジン520は、読み出した検出pH及び検出温度と、そのときに必要な調整剤の投入量とに対して統計解析を行って、調整剤の適切な投入量を出力する統計解析モデルを生成する。これにより、工場A用の統計解析モデルが生成される。
【0108】
統計解析モデルが生成された後、統計解析エンジン520は、統計解析モデルに対して、技術情報DB503d内の最新の検出pH及び検出温度を入力して、調整剤の投入量を求める。統計解析エンジン520で求められた調整剤の投入量は、工場Aシステム4aのフォグP/F400に通知される。フォグP/F400は、デバイスGW41を通じてPLC42bに調整剤の投入量を設定する。これにより、統計解析エンジン520で決定された投入量だけ調整剤が調整槽に投入される。なお、統計解析エンジン520は、技術情報DB503d内の検出pH及び検出温度に基づいて、統計解析モデルを自動的に再構築してもよい。
【0109】
統計解析エンジン520が、工場A~Dのそれぞれについての調整剤の投入量を求める場合には、統計解析エンジン520には、工場A用の統計解析モデル、工場B用の統計解析モデル、工場C用の統計解析モデル及び工場D用の統計解析モデルが生成される。
【0110】
なお、イントラネット2外の工場Dシステム4dで得られた検出pH及び検出温度は、クラウドサーバ10を通じて、オンプレミスシステム5に入力される。このとき、工場Dシステム4dで得られた検出pH及び検出温度は、ファイヤーウォール14、クラウドサーバ10、ファイヤーウォール15及びシステムI/F20を通じて、オンプレミスシステム5に入力されてもよい。あるいは、工場Dシステム4dで得られた検出pH及び検出温度は、ファイヤーウォール14、クラウドサーバ10、ファイヤーウォール13、イントラ内工場システム4のフォグP/F400及びシステムI/F20を通じて、オンプレミスシステム5に入力されてもよい。また、オンプレミスシステム5の統計解析エンジン520で決定された工場D用の投入量は、システムI/F20、ファイヤーウォール15、クラウドサーバ10及びファイヤーウォール14を通じて、工場Dシステム4dのフォグP/F400に入力されてもよい。あるいは、統計解析エンジン520で決定された工場D用の投入量は、システムI/F20、イントラ内工場システム4のフォグP/F400、ファイヤーウォール13、クラウドサーバ10及びファイヤーウォール14を通じて、工場Dシステム4dのフォグP/F400に入力されてもよい。工場Dシステム4dとオンプレミスシステム5との間の他の情報のやり取りも同様である。
【0111】
図9は、工場D用の調整剤投入量がイントラネット2内の統計解析エンジン520で求められる場合の工場Dシステム4dと統計解析エンジン520との間の情報の流れの概要を示す図である。
図9に示されるように、ステップs51において、工場Dシステム4dのpHセンサ及び温度センサから検出pH及び検出温度がデバイスGW41に出力される。次にステップs52において、デバイスGW41から検出pH及び検出温度がフォグP/F400に出力される。次にステップs53において、フォグP/F400から検出pH及び検出温度がクラウドP/F100に出力される。次にステップs54において、クラウドP/F100は検出pH及び検出温度を出力する。クラウドP/F100から出力された検出pH及び検出温度は、イントラネット2内のオンプレミスシステム5に入力される。オンプレミスシステム5では、検出pH及び検出温度が統計解析エンジン520に入力される。統計解析エンジン520が、統計解析モデルを用いて調整剤の投入量を決定すると、ステップs61において決定した投入量を出力する。統計解析エンジン520から出力された投入量は、クラウドP/F100に入力される。クラウドP/F100はステップs62において投入量を工場Dシステム4dのフォグP/F400に出力する。次にステップ
s63において、フォグP/F400は投入量をデバイスGW41に出力する。次にステップ
s64において、デバイスGW41は、調整剤投入装置を制御するPLC42bに投入量を設定する。
【0112】
調整剤の投入量は、クラウドサーバ12の統計解析エンジン121で求められてもよい。この場合には、工場Aシステム4aのフォグP/F400は、デバイスGW41から受け取った検出pH及び検出温度をクラウドP/F120に送信する。クラウドP/F120は、受け取った検出pH及び検出温度をクラウドサーバ12の記憶部153内に記憶する。クラウドP/F120の統計解析エンジン121は、統計モデルの生成段階において、記憶部153内の検出pH及び検出温度と、そのときに必要な調整剤の投入量とに対して統計解析を行って、調整剤の適切な投入量を出力する統計解析モデルを生成する。統計解析モデルが生成された後、統計解析エンジン121は、統計解析モデルに対して、記憶部153内の最新の検出pH及び検出温度を入力して、調整剤の投入量を求める。統計解析エンジン121で求められた調整剤の投入量は、工場Aシステム4aのフォグP/F400に通知される。フォグP/F400は、デバイスGW41を通じて、調整剤投入装置を制御するPLC42bに調整剤の投入量を設定する。これにより、統計解析エンジン520で決定された投入量だけ調整剤が調整槽に投入される。なお、統計解析エンジン121は、記憶部153内の検出pH及び検出温度に基づいて、統計解析モデルを自動的に再構築してもよい。
【0113】
図10は、工場A用の調整剤投入量が統計解析エンジン121で求められる場合の工場Aシステム4aとクラウドP/F120との間の情報の流れの概要を示す図である。
図10に示されるように、ステップs11において、工場Aシステム4aのpHセンサ及び温度センサから検出pH及び検出温度がデバイスGW41に出力される。次にステップs12において、デバイスGW41から検出pH及び検出温度がフォグP/F400に出力される。次にステップs13において、フォグP/F400から検出pH及び検出温度がクラウドP/F120に出力される。クラウドP/F120は検出pH及び検出温度を記憶する。クラウドP/F120は、統計解析モデルを用いて調整剤の投入量を決定すると、ステップs21において決定した投入量を工場Aシステム4aのフォグP/F400に出力する。次にステップs22において、フォグP/F400は投入量をデバイスGW41に出力する。次にステップs23において、デバイスGW41は、調整剤投入装置を制御するPLC42bに投入量を設定する。
【0114】
なお、工場Dシステム4dで得られた検出pH及び検出温度は、クラウドサーバ10を通じて、クラウドサーバ12に入力される。このとき、工場Dシステム4dで得られた検出pH及び検出温度は、ファイヤーウォール14、クラウドサーバ10、ファイヤーウォール15及びシステムI/F20を通じて、クラウドサーバ12に入力されてもよい。あるいは、工場Dシステム4dで得られた検出pH及び検出温度は、ファイヤーウォール14、クラウドサーバ10、ファイヤーウォール13、イントラ内工場システム4のフォグP/F400及びシステムI/F20を通じて、クラウドサーバ12に入力されてもよい。また、クラウドサーバ12の統計解析エンジン121で決定された工場D用の投入量は、システムI/F20、ファイヤーウォール15、クラウドサーバ10及びファイヤーウォール14を通じて、工場Dシステム4dのフォグP/F400に入力されてもよい。あるいは、統計解析エンジン121で決定された工場D用の投入量は、システムI/F20、イントラ内工場システム4のフォグP/F400、ファイヤーウォール13、クラウドサーバ10及びファイヤーウォール14を通じて、工場Dシステム4dのフォグP/F400に入力されてもよい。工場Dシステム4dとクラウドサーバ12との間の他の情報のやり取りも同様である。また、工場Dシステム4dとクラウドサーバ11との間の情報のやり取りも同様である。
【0115】
図11は、工場D用の調整剤投入量が統計解析エンジン121で求められる場合の工場Dシステム4dとクラウドP/F120との間の情報の流れの概要を示す図である。
図11に示されるように、ステップs31において、工場Dシステム4dのpHセンサ及び温度センサから検出pH及び検出温度がデバイスGW41に出力される。次にステップs32において、デバイスGW41から検出pH及び検出温度がフォグP/F400に出力される。次にステップs33において、フォグP/F400から検出pH及び検出温度がクラウドP/F100に出力される。次にステップs34において、クラウドP/F100は検出pH及び検出温度を出力する。クラウドP/F100から出力された検出pH及び検出温度はクラウドP/F120に入力される。クラウドP/F100は検出pH及び検出温度を記憶する。クラウドP/F120は、統計解析モデルを用いて調整剤の投入量を決定すると、ステップs41において決定した投入量を出力する。クラウドP/F120から出力された投入量はクラウドP/F100に入力される。クラウドP/F100はステップs42において投入量を工場Dシステム4dのフォグP/F400に出力する。次にステップs43において、フォグP/F400は投入量をデバイスGW41に出力する。次にステップs44において、デバイスGW41は、調整剤投入装置を制御するPLC42bに投入量を設定する。
【0116】
<分離剤の投入量の決定方法の一例>
工場Aシステム4aが備える複数のデバイス42には、分離槽内の汚水の様子を撮影するカメラが含まれる。カメラは、繰り返し、汚水の様子を撮影して撮影画像を出力する。また、工場Aシステム4aが備える複数のデバイス42には、分離槽に分離剤を自動で投入する分離剤投入装置を制御するPLCが含まれる。
【0117】
ここで、人が分離剤の投入量を決定する場合を考える。この場合、作業者は、分離槽内の汚水の様子を目で確認した上で、分離剤の投入量を決定する。また、調整剤と同様に、分離剤の効き目は汚水の温度に応じて変化する。そこで、本例では、機械学習エンジンは、学習段階において、カメラで得られる撮影画像及び検出温度を学習データとして学習モデルを学習させて、分離剤の投入量を出力する学習済みモデルを生成する。そして、機械学習エンジンは、推論段階において、生成した学習済みモデルを用いて、分離剤の投入量を推論する。つまり、機械学習エンジンは、学習済みモデルに対して撮影画像及び検知温度を入力したときの当該学習済みモデルの出力情報を、分離剤の投入量とする。分離剤の投入量が決定されると、工場Aシステム4aのフォグP/F400は、分離剤投入装置を制御するPLCが接続されたデバイスGW41に対して、決定された投入量を通知する。デバイスGW41は、分離剤投入装置を制御するPLCに対して、通知された投入量を設定する。PLCは、設定された投入量だけ分離剤が分離槽に投入されるように、分離剤投入装置を制御する。
【0118】
分離剤の投入量は、オンプレミスシステム5内の機械学習エンジン510で推論されてもよい。この場合には、工場Aシステム4aのフォグP/F400は、デバイスGW41から受け取った撮影画像及び検出温度をオンプレミスシステム5に送信する。オンプレミスシステム5では、工場Aを備える事業部に対応する事業部サーバ50の技術情報DB503dに撮影画像及び検出温度が記憶される。機械学習エンジン510は、学習段階において、技術情報DB503d内の撮影画像及び検出温度を学習データとして学習モデルを学習させて、分離剤の投入量を出力する学習済みモデルを生成する。これにより、工場A用の学習済みモデルが生成される。学習済みモデルが生成された後、機械学習エンジン510は、学習済みモデルに対して、技術情報DB503d内の最新の撮影画像及び検出温度を入力して、分離剤の投入量を求める。機械学習エンジン510で求められた分離剤の投入量は、工場Aシステム4aのフォグP/F400に通知される。フォグP/F400は、デバイスGW41を通じて、分離剤投入装置を制御するPLC42bに分離剤の投入量を設定する。これにより、機械学習エンジン510で推論された投入量だけ分離剤が分離槽に投入される。なお、機械学習エンジン510は、技術情報DB503d内の撮影画像及び検出温度に基づいて、学習済みモデルを自動的に再学習させてもよい。
【0119】
機械学習エンジン510が、工場A~Dのそれぞれについての分離剤の投入量を求める場合には、機械学習エンジン510には、工場A用の学習済みモデル、工場B用の学習済みモデル、工場C用の学習済みモデル及び工場D用の学習済みモデルが生成される。
【0120】
また、分離剤の投入量は、クラウドサーバ10の機械学習エンジン101で推論されてもよい。この場合には、工場Aシステム4aのフォグP/F400は、デバイスGW41から受け取った撮影画像及び検出温度をクラウドP/F100に送信する。クラウドP/F100は、受け取った撮影画像及び検出温度をクラウドサーバ10の記憶部153内に記憶する。機械学習エンジン101は、学習段階において、記憶部153内の撮影画像及び検出温度を学習データとして学習モデルを学習させて、分離剤の投入量を出力する学習済みモデルを生成する。学習済みモデルが生成された後、機械学習エンジン101は、学習済みモデルに対して、記憶部153内の最新の撮影画像及び検出温度を入力して、分離剤の投入量を求める。機械学習エンジン101で求められた分離剤の投入量は、クラウドP/F100から工場Aシステム4aのフォグP/F400に通知される。フォグP/F400は、デバイスGW41を通じて、分離剤投入装置を制御するPLC42bに分離剤の投入量を設定する。これにより、機械学習エンジン101で推論された投入量だけ分離剤が分離槽に投入される。なお、機械学習エンジン101は、記憶部153内の撮影画像及び検出温度に基づいて、学習済みモデルを自動的に再学習させてもよい。
【0121】
また、分離剤の投入量は、クラウドサーバ11の機械学習エンジン111で推論されてもよい。この場合には、工場Aシステム4aのフォグP/F400は、デバイスGW41から受け取った撮影画像及び検出温度をクラウドP/F110に送信する。クラウドP/F110は、受け取った撮影画像及び検出温度をクラウドサーバ11の記憶部153内に記憶する。機械学習エンジン111は、学習段階において、記憶部153内の撮影画像及び検出温度を学習データとして学習モデルを学習させて、分離剤の投入量を出力する学習済みモデルを生成する。学習済みモデルが生成された後、機械学習エンジン111は、学習済みモデルに対して、記憶部153内の最新の撮影画像及び検出温度を入力して、分離剤の投入量を求める。機械学習エンジン111で求められた分離剤の投入量は、クラウドP/F110から工場Aシステム4aのフォグP/F400に通知される。フォグP/F400は、デバイスGW41を通じて、分離剤投入装置を制御するPLC42bに分離剤の投入量を設定する。これにより、機械学習エンジン101で推論された投入量だけ分離剤が分離槽に投入される。なお、機械学習エンジン111は、記憶部153内の撮影画像及び検出温度に基づいて、学習済みモデルを自動的に再学習させてもよい。
【0122】
なお、例えば、同じ処理槽に対して調整剤及び分離剤が投入される場合には、機械学習エンジンは、調整剤の投入量と分離剤の投入量を推論する学習済みモデルを生成してもよい。この場合、機械学習エンジンは、学習段階において、検出pH、検出温度及び撮影画像を学習データとして学習モデルを学習させて、調整剤及び分離剤の投入量を出力する学習済みモデルを生成する。そして、機械学習エンジンは、推論段階において、生成した学習済みモデルに対して、検出pH、検出温度及び撮影画像を入力して、調整剤及び分離剤の投入量を求める。
【0123】
また、機械学習エンジンは、学習段階において、工場システム4で得られる情報420を使用せずに学習モデルを学習させてもよい。また、統計解析エンジンは、統計解析モデルの生成段階において、工場システム4で得られる情報420を使用せずに統計解析モデルを生成してもよい。
【0124】
機械学習エンジンが推論する情報は上記の例に限られない。また、統計解析エンジンが求める情報は上記の例に限られない。例えば、機械学習エンジンは、製造ラインで製造された基板が写る撮影画像(情報420)に基づいて、当該基板に製造異常が無いか否かを推論する学習済みモデルを生成してもよい。また、統計解析エンジンは、例えば、インクの単位時間あたりの消費量(情報420)と、インクの残量(情報420)とに基づいて、インクの発注量及び発注時期を出力する統計解析モデルを生成してもよい。
【0125】
また、複数の機械学習エンジンの間において推論する情報の種類は互いに異なってもよい。この場合、イントラ内工場システム4のフォグP/F400は、受け取った情報420がどの機械学習エンジンで使用されるかに基づいて、当該情報420の送信先を決定してもよい。例えば、情報420がクラウドP/F100の機械学習エンジン101で使用される場合には、フォグP/F400は、当該情報420をクラウドP/F100に送信する。また、情報420がオンプレミスシステム5の機械学習エンジン510で使用される場合には、フォグP/F400は、当該情報420をオンプレミスシステム5に送信する。同様に、複数の統計解析エンジンの間において求められる情報の種類は互いに異なってもよい。
【0126】
また、イントラネット2外で生成される、ある工場用の学習済みモデルと同じ学習済みモデルが、当該ある工場に設けられた工場システム4内に構築されてもよい。
図12は、イントラネット2外で生成された、ある工場用の学習済みモデルと同じ学習済みモデル45が、当該ある工場に設けられた工場システム4のフォグP/F400内に構築されている様子の一例を示す図である。学習済みモデル45は、機械学習エンジン101で生成された第1クラウド側学習済みモデルであってもよいし、機械学習エンジン111で生成された第2クラウド側学習済みモデルであってもよい。
【0127】
図12の例では、フォグP/F400は、デバイスGW41からの情報420を、自身が備える学習済みモデル45に入力することができる。これにより、フォグP/F400は、機械学習による推論結果をすぐに取得することができる。よって、処理のリアルタイム性が向上する。例えば、学習済みモデル45が、製造装置の異常を特定することが可能なモデルである場合には、製造装置の異常が発生した場合に、フォグP/F400は、デバイスGW41及びPLC42bを通じて、当該製造装置をすぐに停止することができる。
【0128】
図13は、学習済みモデル45がデバイスGW41内に構築されている様子の一例を示す図である。
図13の例では、デバイスGW41内の学習済みモデル45には、当該デバイスGW41に接続されているデバイス42から得られる情報420が入力される。
図13の例では、デバイスGW41は、デバイス42から得られる情報420を、自身が備える学習済みモデル45に入力することができる。これにより、デバイスGW41は、機械学習による推論結果をすぐに取得することができる。よって、
図12の例と比較して、処理のリアルタイム性がさらに向上する。
【0129】
クラウドP/F100の機械学習エンジン101が生成する第1クラウド側学習済みモデルと同じ学習済みモデル45が工場システム4内に構築される場合には、クラウドP/F100が第1クラウド側学習済みモデルを表すデータを工場システム4のフォグP/F400に出力する。フォグP/F400は、第1クラウド側学習済みモデルを表すデータに基づいて、自身の中に、あるいはデバイスGW41の中に、学習済みモデル45を構築する。なお、工場システム4内に学習済みモデル45が構築された場合には、上述のシステム変化情報には、学習済みモデル45を特定するための特定情報が含められてもよい。
【0130】
また、クラウドP/F110の機械学習エンジン111が生成する第2クラウド側学習済みモデルと同じ学習済みモデル45が工場システム4内に構築される場合には、クラウドP/F110が、第2クラウド側学習済みモデルを表すデータを出力する。クラウドP/F110から出力されたデータは、工場システム4のフォグP/F400に入力される。フォグP/F400は、第2クラウド側学習済みモデルを表すデータに基づいて、自身の中に、あるいはデバイスGW41の中に、学習済みモデル45を構築する。工場Dシステム4dのフォグP/F400は、クラウドサーバ10を通じて、第2クラウド側学習済みモデルを表すデータを受け取る。したがって、工場Dシステム4dにおいては、学習済みモデル45がクラウドサーバ10を通じて構築されると言える。
【0131】
なお、同様にして、オンプレミスシステム5で生成される、ある工場用の学習済みモデル(オンプレミス側学習済みモデル)と同じ学習済みモデルが、当該ある工場に設けられた工場システム4内に構築されてもよい。
【0132】
また、イントラネット2外で生成される、ある工場用の統計解析モデルと同じ統計解析モデル46が、当該ある工場に設けられた工場システム4内に構築されてもよい。
図14は、フォグP/F400内に統計解析モデル46が構築されている様子の一例を示す図である。
図15は、デバイスGW41内に統計解析モデル46が構築されている様子の一例を示す図である。なお、工場システム4内に統計解析モデル46が構築された場合には、上述のシステム変化情報には、統計解析モデル46を特定するための特定情報が含められてもよい。
【0133】
また、同様にして、オンプレミスシステム5で生成される、ある工場用の統計解析モデル(オンプレミス側統計解析モデル)と同じ統計解析モデルが、当該ある工場に設けられた工場システム4内に構築されてもよい。
【0134】
<複数のモデルの併用>
本例の情報処理システム1は、複数の学習済みモデルを組み合わせて使用することも可能である。例えば、イントラネット2内の機械学習エンジン510は、第1情報を学習済みモデルに入力して第2情報を推論する。そして、イントラネット2外の機械学習エンジン101は、第2情報と第3情報を学習済みモデルに入力して第4情報を推論する。
図16はこの様子を示す図である。
【0135】
図16に示されるように、イントラネット2内の学習済みモデルには第1情報が入力される。そして、イントラネット2外の学習済みモデルには、イントラネット2内の学習済みモデルから出力される第2情報と第3情報とが入力される。イントラネット2外の学習済みモデルは第4情報を出力する。第4情報は例えばイントラネット2内に入力される。以下に、
図16に示される処理の具体例を説明する。以下では、一例として、工場Aの排水処理システムで使用されるある薬剤(以後、第1薬剤と呼ぶことがある)の発注量及び発注時期を
図16の処理で求める場合の情報処理システム1の動作について説明する。
【0136】
例えば、イントラネット2内の機械学習エンジン510は、第1薬剤(調整剤あるいは分離剤など)の暫定的な発注量及び発注時期(第2情報)を推論するオンプレミス側学習済みモデルを生成する。また、イントラネット2外の機械学習エンジン101は、第1薬剤の最終的な発注量及び発注時期(第4情報)を推論する第1クラウド側学習済みモデルを生成する。
【0137】
オンプレミス側学習済みモデルには、例えば、第1情報として機密性が高い情報が入力される。例えば、オンプレミス側学習済みモデルには、第1薬剤の現在の在庫量と、第1薬剤の発注情報と、工場Aでの生産計画情報とが入力される。発注情報には、例えば、発注済みの第1薬剤の発注量と、発注済みの第1薬剤の入荷時期とが含まれる。生産計画情報には、例えば、工場Aにおいて、どのような製品がどの時期にどれだけ製造される予定であるかを示す情報が含まれる。工場Aで製造される製品の種類及び工場Aでの生産量などによって、工場Aで発生する汚水の様子が変化する。したがって、生産計画情報は、薬剤の発注量及び発注時期を決定する場合に重要な情報となる。
【0138】
機械学習エンジン510は、推論段階において、工場Aを備える事業部に対応する事業部サーバ50の生産管理情報DB503bから、第1薬剤の現在の在庫量と、第1薬剤の発注情報と、工場Aでの生産計画情報とを取得する。そして、機械学習エンジン510は、第1薬剤の現在の在庫量と、第1薬剤の発注情報と、工場Aでの生産計画情報とをオンプレミス側学習済みモデルに対して入力して、第1薬剤の暫定的な発注量及び発注時期を推論する。オンプレミス側学習済みモデルの出力情報、つまり、第1薬剤の暫定的な発注量及び発注時期は、工場Aシステム4aのフォグP/F400に通知される。フォグP/F400は、通知されたオンプレミス側学習済みモデルの出力情報を、クラウドP/F100に通知する。
【0139】
第1クラウド側学習済みモデルには、オンプレミス側学習済みモデルの出力情報(第2情報)が入力される。また、第1クラウド側学習済みモデルには、例えば、第3情報として、機密性の低い情報が入力される。機密性の低い情報としては、例えば気温の予測情報が採用される。クラウドサーバ10は、例えば、情報処理システム1外のサーバから、気温の予測情報を取得することができる。薬剤が投入される処理槽は屋外に存在することから、気温に応じて処理槽内の汚水の温度も変化する。そして、汚水の温度に応じて薬剤の効き目が変化する。例えば、汚水の温度が低い場合に薬剤の効き目が低減する。したがって、気温が低い日が続くときには、多くの薬剤が必要となる。よって、気温の予測情報は、薬剤の発注量及び発注時期に影響を与える。
【0140】
クラウドP/F100の機械学習エンジン101は、クラウドサーバ10が取得した気温の予測情報と、オンプレミス側学習済みモデルの出力情報とを第1クラウド側学習済みモデルに入力して、第1薬剤の最終的な発注量及び発注時期を推論する。クラウドP/F100は、推論した発注量及び発注時期(第4情報)を、工場Aシステム4aのフォグP/F400に通知する。クラウドサーバ10では、機密性の高い推論された発注量及び発注時期は保存されない。工場Aシステム4aのフォグP/F400は、例えば、オンプレミスシステム5内の発注用サーバに対して、第1薬剤の発注量及び発注時期を通知する。発注用サーバは、第1薬剤の発注量及び発注時期に基づいて、第1薬剤の発注処理を行う。
【0141】
他の例として、イントラ内工場システム4が設けられた工場の排水処理システムにおいて、同じ処理槽に上述の調整剤及び分離剤を投入する場合の投入量を、複数の学習済みモデルを用いて求める場合を考える。以後、説明の対象のイントラ内工場システム4を対象イントラ内工場システム4と呼ぶことがある。また、対象イントラ内工場システム4が設けられた工場を対象工場と呼ぶことがある。
【0142】
例えば、対象イントラ内工場システム4のフォグP/F400は、デバイスGW41からの機密性が低い検出温度をクラウドサーバ10に送信する。クラウドサーバ10は、フォグP/F400からの検出温度を記憶部153に記憶する。また、フォグP/F400は、デバイスGW41からの機密性が高い検出pH及び撮像画像をクラウドサーバ10には送信せずに、オンプレミスシステム5に送信する。オンプレミスシステム5では、検出pH及び撮像画像が、対象工場を備える事業部に対応する事業部サーバ50の技術情報DB503dに保存される。オンプレミスシステム5内の機械学習エンジン510は、調整剤の暫定的な投入量と分離剤の暫定的な投入量とを推論するオンプレミス側学習済みモデルを生成する。イントラネット2外の機械学習エンジン101は、調整剤の最終的な投入量と分離剤の最終的な投入量とを推論する第1クラウド側学習済みモデルを生成する。
【0143】
機械学習エンジン510は、推論段階において、事業部サーバ50の技術情報DB503dから検出pH及び撮像画像を取得する。そして、機械学習エンジン510は、検出pH及び撮像画像をオンプレミス側学習済みモデルに対して入力して、調整剤及び分離剤の暫定的な投入量を推論する。オンプレミス側学習済みモデルの出力情報、つまり、調整剤及び分離剤の暫定的な投入量は、対象イントラ内工場システム4のフォグP/F400に通知される。フォグP/F400は、通知されたオンプレミス側学習済みモデルの出力情報を、クラウドP/F100に通知する。
【0144】
クラウドP/F100の機械学習エンジン101は、推論段階において、記憶部153から検出温度を取得する。そして、機械学習エンジン101は、検出温度と、フォグP/F400から受け取った、オンプレミス側学習済みモデルの出力情報とを、第1クラウド側学習済みモデルに入力して、調整剤及び分離剤の最終的な投入量を推論する。クラウドP/F100は、推論した投入量(第4情報)を、対象イントラ内工場システム4のフォグP/F400に通知する。クラウドサーバ10では、機密性の高い推論された投入量は保存されない。対象イントラ内工場システム4のフォグP/F400は、調整剤投入装置及び分離剤投入装置を制御するPLC42bが接続されたデバイスGW41に対して、推論された投入量を通知する。デバイスGW41は、PLC42bに対して投入量を設定する。PLC42bは、設定された投入量だけ調整剤が処理槽に投入されるように、調整剤投入装置を制御する。また、PLC42bは、設定された投入量だけ分離剤が処理槽に投入されるように、分離剤投入装置を制御する。これより、対象イントラ内工場システム4では、第1クラウド側学習済みモデルから出力される第4情報に基づいて、デバイス42が制御される。
【0145】
以上のように、
図16の例では、イントラネット2内の第1情報がイントラネット2内の学習済みモデルに入力され、イントラネット2内の学習済みモデルの出力情報がイントラネット2外の学習済みモデルに入力されている。これにより、イントラネット2外の学習済みモデルを利用しながらも、イントラネット2内の第1情報がイントラネット2外に漏れる可能性を低減することができる。よって、第1情報の機密性を高めることができる。
【0146】
また、工場システム4のフォグP/F400が、デバイス42から得られる、撮影画像などの機密性の高い情報420をクラウドP/F100に送信しないことにより、工場システム4で生成される機密性の高い情報420がイントラネット2外に漏れる可能性を低減することができる。
【0147】
なお、上記の例では、
図16のイントラネット2外の学習済みモデルは、第1クラウド側学習済みモデルであったが、機械学習エンジン111が備える第2クラウド側学習済みモデルであってもよい。
【0148】
イントラネット2内のオンプレミス側学習済みモデルには、イントラネット2内の情報と、イントラネット2外の第1クラウド側学習済みモデルの出力情報とが入力されてもよい。
図17はこの様子を示す図である。
【0149】
図17に示されるように、イントラネット2外の学習済みモデルには第5情報が入力される。そして、イントラネット2内の学習済みモデルには、イントラネット2外の学習済みモデルから出力される第6情報と、イントラネット2内の第7情報とが入力される。イントラネット2内の学習済みモデルは第8情報を出力する。以下に、
図17に示される処理の具体例を説明する。以下では、一例として、工場Bの排水処理システムで使用されるある薬剤(以後、第2薬剤と呼ぶことがある)の発注量及び発注時期を
図17の処理で求める場合の情報処理システム1の動作について説明する。
【0150】
例えば、第1クラウド側学習済みモデルが、情報処理システム1外の装置からの情報(第5情報)に基づいて、気温の予測情報(第6情報)を出力する。また、オンプレミス側学習済みモデルは、第2薬剤の発注量及び発注時期(第8情報)を推論する。
【0151】
機械学習エンジン101は、第1クラウド側学習済みモデルの出力情報、つまり気温の予測情報を、工場Bシステム4bのフォグP/F400に出力する。フォグP/F400は、気温の予測情報をオンプレミスシステム5に出力する。オンプレミスシステム5では、気温の予測情報が機械学習エンジン510に入力される。
【0152】
機械学習エンジン510は、推論段階において、工場Bを備える事業部に対応する事業部サーバ50の生産管理情報DB503bから、第2薬剤の現在の在庫量、第2薬剤の発注情報及び工場Bでの生産計画情報(第7情報)を取得する。そして、機械学習エンジン510は、第2薬剤の現在の在庫量と、第2薬剤の発注情報と、工場Bでの生産計画情報と、気温の予測情報とを、オンプレミス側学習済みモデルに対して入力して、第2薬剤の発注量及び発注時期を推論する。コンピュータ装置51は、機械学習エンジン510で求められた第2薬剤の発注量及び発注時期を、工場Bシステム4bのフォグP/F400に通知する。工場Bシステム4bのフォグP/F400は、例えば、オンプレミスシステム5内の発注用サーバに対して、第2薬剤の発注量及び発注時期を通知する。発注用サーバは、第2薬剤の発注量及び発注時期に基づいて、第2薬剤の発注処理を行う。
【0153】
他の例として、イントラ内工場システム4が設けられた工場の排水処理システムにおいて、同じ処理槽に上述の調整剤及び分離剤を投入する場合の投入量を
図16の処理で求める例について説明する。
【0154】
例えば、対象イントラ内工場システム4のフォグP/F400は、デバイスGW41からの検出温度をクラウドサーバ10に送信する。クラウドサーバ10は、フォグP/F400からの検出温度を記憶部153に記憶する。この検出温度は、調整剤及び分離剤が投入される処理槽内の汚水の温度を示す。クラウドサーバ10の第1クラウド側学習済みモデルには、記憶部153内の検出温度(第5情報)が入力される。また、第1クラウド側学習済みモデルには、情報処理システム1外のサーバから得られる気温の予測情報(第5情報)が入力される。そして、第1クラウド側学習済みモデルは、処理槽内の汚水の温度の予測情報(第6情報)を出力する。第1クラウド側学習済みモデルの出力情報は、対象イントラ内工場システム4のフォグP/F400に通知される。フォグP/F400は、第1クラウド側学習済みモデルの出力情報を、オンプレミスシステム5に通知する。オンプレミスシステム5では、第1クラウド側学習済みモデルの出力情報が機械学習エンジン510に入力される。
【0155】
ここで、調整剤及び分離剤の効き目は汚水の温度によって変化する。したがって、汚水の温度の予測情報は、調整剤及び分離剤の投入量に影響を与える。例えば、汚水の温度が下降すると予測される場合には、調整剤及び分離剤を多めに投入することが考えられる。そこで、本例では、オンプレミス側学習済みモデルが、第1クラウド側学習済みモデルの出力情報、つまり汚水の温度の予測情報に基づいて、調整剤及び分離剤の投入量を推論する。
【0156】
対象イントラ内工場システム4のフォグP/F400は、デバイスGW41からの検出pH及び撮像画像をオンプレミスシステム5に送信する。オンプレミスシステム5では、検出pH及び撮像画像が、対象工場を備える事業部に対応する事業部サーバ50の技術情報DB503dに保存される。機械学習エンジン510は、推論段階において、事業部サーバ50の技術情報DB503dから検出pH及び撮像画像を取得する。そして、機械学習エンジン510は、検出pH及び撮像画像(第7情報)をオンプレミス側学習済みモデルに対して入力する。また、機械学習エンジン510は、第1クラウド側学習済みモデルの出力情報、つまり汚水の温度の予測情報をオンプレミス側学習済みモデルに対して入力する。オンプレミス側学習済みモデルは、調整剤及び分離剤の投入量(第8情報)を出力する。
【0157】
調整剤及び分離剤の投入量は、対象イントラ内工場システム4のフォグP/F400に通知される。フォグP/F400は、通知された投入量を、調整剤投入装置及び分離剤投入装置を制御するPLC42bが接続されたデバイスGW41に通知する。デバイスGW41は、PLC42bに対して投入量を設定する。PLC42bは、設定された投入量だけ調整剤が処理槽に投入されるように、調整剤投入装置を制御する。また、PLC42bは、設定された投入量だけ分離剤が処理槽に投入されるように、分離剤投入装置を制御する。
【0158】
以上のように、
図17の例では、イントラネット2外の学習済みモデルから出力される第6情報と、イントラネット2内の第7情報とが、イントラネット2内の学習済みモデルに入力されている。これにより、イントラネット2外の学習済みモデルを利用しながらも、イントラネット2内の第7情報がイントラネット2外に漏れる可能性を低減することができる。よって、第7情報の機密性を高めることができる。
【0159】
なお、上記の例では、
図17のイントラネット2外の学習済みモデルは、第1クラウド側学習済みモデルであったが、機械学習エンジン111が備える第2クラウド側学習済みモデルであってもよい。
【0160】
また、ある工場システム4で得られる情報420が第1情報として使用されて
図16に示される処理が実行され、別の工場システム4で得られる情報420が第7情報として使用されて
図17に示される処理が実行されてもよい。また、同じ工場システムで得られる情報420が使用されて
図16に示される処理と
図17に示される処理が実行されてもよい。
【0161】
また、情報処理システム1は、複数の学習済みモデルを組み合わせて使用する場合と同様に、複数の統計解析モデルを組み合わせて使用してもよい。例えば、
図16に示される構成において、イントラネット2内の学習済みモデルを、統計解析エンジン520で生成されるオンプレミス側統計解析モデルに置き換えるとともに、イントラネット2外の学習済みモデルを、統計解析エンジン121で生成されるクラウド側統計解析モデルに置き換えてもよい。また、
図17に示される構成において、イントラネット2内の学習済みモデルをオンプレミス側統計解析モデルに置き換えるとともに、イントラネット2外の学習済みモデルをクラウド側統計解析モデルに置き換えてもよい。
【0162】
<情報処理システムの他の例>
各工場システム4のフォグP/F400は、デバイス42から得られる情報420を、それが機密性が高いか否かにかかわらず、クラウドP/F100に送信してもよい。この場合、例えば、クラウドP/F100のクラウド側フォグP/F400は、工場システム4からの情報420が機密性が低い情報である場合には、記憶部153に保存してもよい。一方で、クラウド側フォグP/F400は、工場システム4からの情報420が機密性が高い情報である場合には、記憶部153に保存せずに、オンプレミスシステム5に入力してもよい。オンプレミスシステム5では、例えば、事業部サーバ50の記憶部503に、クラウド側フォグP/F400からの情報420が記憶される。
【0163】
また、情報処理システム1は、クラウドサーバ11及び12を備えなくてもよい。また、クラウドサーバ10のクラウドP/F100は統計解析エンジンを備えてもよい。この場合、クラウドP/F100が備える統計解析エンジンは、統計解析エンジン520の代わりに使用されてもよいし、統計解析エンジン121の代わりに使用されてもよい。また、情報処理システム1は、イントラネット2内の機械学習エンジン及び統計解析エンジンのうちの一方だけを備えてもよい。また、情報処理システム1は、イントラネット2外の機械学習エンジン及び統計解析エンジンのうちの一方だけを備えてもよい。クラウドサーバ10,11,12の少なくとも一つは、情報処理システム1とは別に設けられて、情報処理システム1に含められなくてもよい。
【0164】
また、情報処理システム1は、工場Dシステム4d以外のイントラ外工場システム4を備えてもよい。また、イントラ外工場システム4は、特定企業が備えるシステムではなく、特定企業に関連のある組織が備えるシステムであってもよい。例えば、イントラ外工場システム4は、特定企業の子会社が備えるシステムであってもよいし、特定企業の関連会社が備えるシステムであってもよい。また、イントラ外工場システム4は、特定企業の協力会社が備えるシステムであってもよい。また、工場Dシステム4dはイントラネット2内に設けられてもよい。また、情報処理システム1は、イントラ外工場システム4を備えなくてもよい。
【0165】
また、情報処理システム1は、工場システム4の替わりに、工場システム4の構成と同様の構成を有する、工場とは別の場所に設けられたシステムを備えてもよい。例えば、情報処理システム1は、病院に設けられたシステムを備えてもよい。また、情報処理システム1は、大学に設けられたシステムを備えてもよい。情報処理システム1が工場とは別の場所に設けられたシステムを備える場合であっても、情報処理システム1は上記と同様に動作することが可能である。
【0166】
以上のように、情報処理システム1は詳細に説明されたが、上記した説明は、全ての局面において例示であって、この開示がそれに限定されるものではない。また、上述した各種例は、相互に矛盾しない限り組み合わせて適用可能である。そして、例示されていない無数の例が、この開示の範囲から外れることなく想定され得るものと解される。
【符号の説明】
【0167】
1,3 情報処理システム
4 工場システム
4a 工場Aシステム
4b 工場Bシステム
4c 工場Cシステム
4d 工場Dシステム
10 サーバ
42 デバイス
42a センサ
42b PLC
420 情報