JP7378674B1 - プログラマブルロジックコントローラ、推論実行システム、推論実行方法、および、プログラム - Google Patents

プログラマブルロジックコントローラ、推論実行システム、推論実行方法、および、プログラム Download PDF

Info

Publication number
JP7378674B1
JP7378674B1 JP2023526327A JP2023526327A JP7378674B1 JP 7378674 B1 JP7378674 B1 JP 7378674B1 JP 2023526327 A JP2023526327 A JP 2023526327A JP 2023526327 A JP2023526327 A JP 2023526327A JP 7378674 B1 JP7378674 B1 JP 7378674B1
Authority
JP
Japan
Prior art keywords
inference
application
instruction information
execution instruction
applications
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2023526327A
Other languages
English (en)
Other versions
JPWO2024069845A5 (ja
JPWO2024069845A1 (ja
Inventor
真吾 追立
偉浩 李
吉君 金
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP7378674B1 publication Critical patent/JP7378674B1/ja
Publication of JPWO2024069845A1 publication Critical patent/JPWO2024069845A1/ja
Publication of JPWO2024069845A5 publication Critical patent/JPWO2024069845A5/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Programmable Controllers (AREA)

Abstract

プログラマブルロジックコントローラ(100)は、推論処理の実行を指示する実行指示情報を生成する制御アプリケーション(104)と、推論処理を実行して、推論結果を生成しうる複数の推論アプリケーション(103A,103B,103C)と、制御アプリケーション(104)により送信された実行指示情報に応答して、複数の推論アプリケーション(103A,103B,103C)の中から、予め設定された規則を満たす推論アプリケーション(103A,103B,103C)を特定して推論処理を実行させ、特定した推論アプリケーション(103A,103B,103C)により生成された推論結果を、制御アプリケーション(104)に送信する機械学習プラットフォーム(105)と、を備える。

Description

本開示は、プログラマブルロジックコントローラ、推論実行システム、推論実行方法、および、プログラムに関する。
製造現場のFA(Factory Automation)機器からデータを収集し、収集したデータを用いた人工知能アルゴリズムによる推論結果を利用して機器の制御に役立てる技術が知られている。例えば、特許文献1には、制御対象の装置を制御するための制御データを出力する制御アプリケーションと、制御データと装置の動作を示す装置データとを入力として、推論処理を実行する推論アプリケーションと、を備える産業用PCデバイスが開示されている。
特表2021-531574号公報
この産業用PCデバイスにおいて、実行される推論アプリケーションは1つに決められている。しかしながら、生産現場では、様々な推論処理を行う複数の推論アプリケーションを、目的に応じてそれぞれ実行することにより、装置を制御することが求められる場合がある。したがって、複数の推論アプリケーションの中から推論の目的に応じて、好適な推論結果を得るといった観点からすると改善の余地がある。
本開示は、上記のような問題点に鑑みてなされたものであり、複数の推論アプリケーションの中から好適な推論結果を得ることができるプログラマブルロジックコントローラ、推論実行システム、推論実行方法、および、プログラムを提案することを目的にする。
上記の目的を達成するため、本開示に係るプログラマブルロジックコントローラは、推論処理の実行を指示する実行指示情報を生成する制御アプリケーションと、推論処理を実行して、推論結果を生成しうる複数の推論アプリケーションと、制御アプリケーションにより送信された実行指示情報に応答して、複数の推論アプリケーションの中から、予め設定された規則を満たす推論アプリケーションを特定して推論処理を実行させ、特定した推論アプリケーションにより生成された推論結果を、制御アプリケーションに送信する機械学習プラットフォームと、を備える。実行指示情報は、複数の推論アプリケーションにより生成された複数の推論結果に優先度を設定する優先度設定ルールを含む。機械学習プラットフォームは、実行指示情報から優先度設定ルールを取得し、取得した優先度設定ルールに基づいて、複数の推論アプリケーションにより生成された複数の推論結果それぞれに優先度を設定し、設定された優先度がもっとも大きい推論結果を、制御アプリケーションに送信する。
本開示によれば、複数の推論アプリケーションの中から、予め設定された規則を満たす推論アプリケーションを特定して、特定した推論アプリケーションにより生成された推論結果を制御アプリケーションに送信する機械学習プラットフォームを備える。したがって、複数の推論アプリケーションの中から好適な推論結果を得ることができる。
本開示の実施の形態1に係るプログラマブルロジックコントローラの論理構成を示す図 図1に示すイベントブローカが参照する対応テーブルの一例を示す図 図1に示すプログラマブルロジックコントローラの物理構成を示すブロック図 実施の形態に係るプログラマブルロジックコントローラによる推論実行処理を示すフローチャート 実施の形態2に係るプログラマブルロジックコントローラの構成を示す図 実施の形態2に係るプログラマブルロジックコントローラによる推論実行処理を示すフローチャート 実施の形態3に係る推論実行システムの構成を示す図 実施の形態3に係る推論実行システムによる推論実行処理を示すフローチャート 実施の形態4に係る推論実行システムの構成を示す図 実施の形態4に係る推論実行システムによる推論実行処理を示すフローチャート
以下、本開示の実施の形態に係るプログラマブルロジックコントローラ、推論実行システム、推論実行方法、および、プログラムについて図面を参照して説明する。なお、図中同一又は相当する部分には同じ符号を付す。
(実施の形態1)
本実施の形態に係るプログラマブルロジックコントローラは、制御対象の機器を制御するための制御データを生成する制御アプリケーションと互いに異なる推論処理を実行する複数の推論アプリケーションを備える。制御アプリケーションは、推論処理の実行を指示する実行指示情報を生成する。プログラマブルロジックコントローラは、実行指示情報に含まれる推論の目的と一致する推論処理を実行する推論アプリケーションを特定して、特定した推論アプリケーションに対して、推論処理の実行を指示する。推論アプリケーションは、プログラマブルロジックコントローラからの実行指示に応答して、推論処理を実行し、推論結果を制御アプリケーションに出力する。制御アプリケーションは、その推論結果を利用して、機器を制御する。
図1に示す通り、本実施の形態に係るプログラマブルロジックコントローラ100は、制御対象の機器200と通信路300を介して互いに通信可能に接続される。機器200は、センサ、組立ロボット、駆動機器等である。通信路300は、工場内に設置された通信線によって実現される産業用の制御ネットワークである。ただし、通信路300は、LAN(Local Area Network)に代表される情報ネットワークであってもよい。また、通信路300は、専用線であってもよいし、インターネットに代表される広域ネットワークであってもよい。
次に、プログラマブルロジックコントローラ100の論理構成について説明する。プログラマブルロジックコントローラ100は、時間的な制約を満たして処理を実行する機能を備えるリアルタイムOS(Operating System)101と、汎用的に様々な用途で使用される汎用OS102と、機器200から収集された機器200の動作を示す機器データを基に機械学習を行って学習モデルを生成し、生成した学習モデルを基に推論処理を実行する推論パッケージ103A,103B,103Cと、機器200の制御に係る処理を実行する制御アプリケーション104と、推論パッケージ103と制御アプリケーション104との間でデータを双方向に交換する機械学習プラットフォーム105と、を備える。なお、以下では、推論パッケージ103A,103B,103Cを総称して、推論パッケージ103ともいう。
リアルタイムOS101は、時間的な制約がある処理を実行するよう設計されたOSである。汎用OS102は、リアルタイム性を保証しない非リアルタイムのOSである。リアルタイムOS101上には、制御アプリケーション104が実装される。汎用OS102上には、推論パッケージ103が実装される。
推論パッケージ103は、機械学習処理および推論処理を実行可能なランタイムである機械学習エンジン106と、推論処理に用いられる学習済みモデル107と、推論処理を実行する推論アプリケーション108と、を含む。プログラマブルロジックコントローラ100は、複数の推論パッケージ103A,103B,103Cを備える。各推論パッケージ103A,103B,103Cは、品質予測、故障予知、摩耗予測、制御パラメータ最適化等互いに異なる目的の推論処理を実行する。
機械学習エンジン106は、機械学習により学習モデルを生成、更新する処理、および、学習済みモデル107に基づく推論処理を実行可能なランタイムである。機械学習は、ニューラルネットワーク、ディープニューラルネットワーク、強化学習、決定木学習、遺伝的アルゴリズム、分類子等の任意の好適な機械学習技法を使用して実施される。なお、機械学習エンジン106が学習に使用する入力データは、機器データのみに限られず、制御アプリケーション104により生成された制御データであってもよく、これらの複数のデータを入力データとして使用してもよい。
学習済みモデル107は、推論処理に用いられる学習モデルである。学習済みモデル107は、機械学習エンジン106により学習されたモデルであってもよいし、クラウド上で予め学習されたモデルをプログラマブルロジックコントローラ100に記憶させてもよい。
推論アプリケーション108は、学習済みモデル107、および、推論アプリケーション108の実行環境に適合させた機械学習エンジン106を呼び出し、学習済みモデル107を用いて推論処理を実行する。
制御アプリケーション104は、例えば、ラダー言語で記述され、機器200に対応付けられる入出力ポートを通じて機器200の動作を制御するアプリケーションである。制御アプリケーション104は、リアルタイムOS101上で動作する。制御アプリケーション104は、機器200からのデータの収集、加工、診断、フィードバック等を実行する。データの加工は、データの平滑化、先鋭化、FFT(Fast Fourier Transform)処理等を含む。データの診断は、閾値判定、パターンマッチング等を含む。フィードバックは、機器200の停止、減速、再開等、機器200を制御する制御データを生成する処理を含む。また、制御アプリケーション104は、推論API(Application Programming Interface)109を介して機械学習プラットフォーム105と通信して、入力データを提供し、推論処理の実行を指示する。そして、制御アプリケーション104は、推論パッケージ103による推論結果を、推論API109を介して取得する。
機械学習プラットフォーム105は、制御アプリケーション104とデータを双方向に交換する推論API109と、推論の目的に合致する推論パッケージ103を特定し、特定した推論パッケージ103の推論アプリケーション108とデータを双方向に交換するイベントブローカ110と、を含む。機械学習プラットフォーム105は、リアルタイムOS101および汎用OS102それぞれに実装される。
推論API109は、制御アプリケーション104とデータを双方向に交換するためのインタフェースである。具体的に、推論API109は、制御アプリケーション104から推論処理の実行を指示する実行指示情報と推論処理に使用される入力データを受信する。また、推論API109は、推論パッケージ103から出力される推論結果を制御アプリケーション104に送信する。
イベントブローカ110は、推論の目的に合致する推論アプリケーション108を特定し、特定した推論アプリケーション108とデータを双方向に交換する。具体的に、イベントブローカ110は、図2に示す、推論の目的と各推論処理を実行する推論アプリケーション108と各推論アプリケーション108の格納先とをそれぞれ対応付ける対応テーブルに基づいて、推論の目的に合致する推論アプリケーション108を特定する。図示する通り、対応テーブルは、推論の目的を識別する識別子である「推論ID」と、推論の目的を示す「目的」と、推論アプリケーション108を識別する情報である「推論アプリケーション」と、各推論アプリケーション108の格納先のアドレスを示す「格納先」との情報を含む。イベントブローカ110は、制御アプリケーション104から推論API109を介して、推論処理の実行を指示する実行指示情報を取得すると、取得した実行指示情報と対応テーブルとに基づいて、推論アプリケーション108を特定する。例えば、実行指示情報が品質予測を目的とする推論処理の実行を指示するものである場合、実行指示情報には、推論の目的が品質予測であることを示す識別子「X001」が含まれる。イベントブローカ110は、対応テーブルを読み出し、推論IDが「X001」である推論アプリケーション108の識別情報は、「AP1000」で、格納先のアドレスは「XXX」であると特定する。次に、イベントブローカ110は、特定した推論アプリケーション108「AP1000」に対し、推論処理に使用する入力データを送信し、推論処理の実行を指示する。推論アプリケーション108「AP1000」は、イベントブローカ110から受信した入力データを学習済みモデル107に与えて、品質予測を目的とする推論処理を実行する。推論アプリケーション108「AP1000」は、推論処理による推論結果をイベントブローカ110に送信する。推論結果は、推論API109を介して、制御アプリケーション104に送信される。なお、対応テーブルは、対応情報の一例である。
次に、図3を参照してプログラマブルロジックコントローラ100の物理的構成について説明する。プログラマブルロジックコントローラ100は、プログラムに従った処理を実行する2つのプロセッサ11a、11bと、揮発性メモリであるRAM(Random Access Memory)12と、不揮発性メモリであるROM(Read Only Memory)13と、データを記憶する記憶部14と、情報の入力を受け付ける入力部15と、情報の送受信を行う通信部16と、を備え、これらが内部バス99を介して接続されている。
プロセッサ11a、11bは、CPU(Central Processing Unit)をそれぞれ含む。プロセッサ11a、11bは、記憶部14に記憶されるプログラムをRAM12に読み出して実行することにより、各種処理を実行する。図1に示すリアルタイムOS101は、プロセッサ11a上で動作し、汎用OS102は、プロセッサ11b上で動作する。
RAM12は、CPUのワークエリアとして使用される。ROM13は、プログラマブルロジックコントローラ100の基本動作のためにCPUが実行する制御プログラム、BIOS(Basic Input Output System)等を記憶する。
記憶部14は、ハードディスクドライブを備え、CPUが実行するプログラムを記憶し、プログラム実行の際に使用される各種データを記憶する。記憶部14は、図1に示すリアルタイムOS101と、汎用OS102と、推論パッケージ103と、制御アプリケーション104と、機械学習プラットフォーム105とを記憶する。
入力部15は、キーボード、マウス等を備えるユーザインタフェースである。入力部15は、ユーザによって入力された情報を取得して、取得した情報をプロセッサ11a、11bに通知する。
通信部16は、ネットワークに接続する網終端装置または無線通信装置、およびそれらと接続するシリアルインタフェースまたはLANインタフェースである。通信部16は、外部から信号を受信して、この信号により示されるデータをプロセッサ11a、11bへ出力する。また、通信部16は、プロセッサ11a、11bから出力されたデータを示す信号を外部の装置へ送信する。
次に、上記構成を有するプログラマブルロジックコントローラ100による動作を、図4を参照して説明する。
推論実行処理を実行する前の準備として、記憶部14には、複数の推論パッケージ103が予め記憶される。ユーザは、各推論パッケージ103に含まれる機械学習エンジン106それぞれに学習データを与えて、機械学習させることにより、推論処理を実行する際に使用される学習済みモデル107を生成させ、記憶部14に予め記憶させる。具体的に、学習データは、例えば、機器200の動作を示す機器データと制御データを含む入力用データと、加工物の品質を示す情報、加工物の摩耗値、機器200の故障率等のデータを含む出力用データと、が対になったデータを含む。機械学習エンジン106は、与えられた学習データに基づき、推論結果を結果データに近づける機械学習を行って、学習済みモデル107を生成し、記憶部14に記憶させる。
推論パッケージ103が格納され、学習済みモデル107が生成されると、ユーザは、各推論アプリケーション108が実行する推論の目的と記憶部14に記憶された推論アプリケーション108と各推論アプリケーション108の格納先とをそれぞれ対応付ける対応テーブルを生成し、記憶部14に予め記憶させる。
このように準備が終了したプログラマブルロジックコントローラ100は、プログラマブルロジックコントローラ100に接続されたエンジニアリングツールを介して推論の目的を示す情報を受け付け、推論の目的に合致する推論アプリケーション108と特定して、特定した推論アプリケーション108に対して、推論処理の実行を指示する推論実行処理を実行する。
エンジニアリングツールは、推論の目的についてユーザの入力を受け付ける入力画面を表示する。具体的に、入力画面には、「品質予測」、「故障予知」、「摩耗予測」、「制御パラメータ最適化」等の選択肢が表示される。ユーザは、入力部15を操作して、所望の目的を選択する。ユーザが推論の目的を選択して、推論実行処理の開始を要求すると、エンジニアリングツールは制御アプリケーション104に通知する。制御アプリケーション104が通知を受信すると、プログラマブルロジックコントローラ100は、処理を開始する。なお、推論実行処理の開始は、ユーザによる入力を受け付けた場合に限られず、ユーザにより予め推論の目的毎のスケジュールが設定され、設定された日時になると自動的に推論実行処理を開始してもよい。
まず、制御アプリケーション104は、ユーザが選択した推論の目的の推論処理の実行を指示する実行指示情報と、推論の対象となる入力データと、を機械学習プラットフォーム105に送信する(ステップS11)。実行指示情報には、ユーザが選択した推論の目的を識別するための識別子が含まれる。入力データは、例えば、機器200から収集した機器データ、制御アプリケーション104が機器200に出力した制御データ等、推論に必要な各種データを含む。また、制御アプリケーション104は、リアルタイムに収集されるデータを入力データとして使用してもよく、予め収集されて、記憶部14に記憶されたデータを入力データとして使用してもよい。
次に、機械学習プラットフォーム105は、推論API109を介して、制御アプリケーション104から送信された実行指示情報と入力データとを受信する(ステップS12)。推論API109は、受信した実行指示情報および入力データを、イベントブローカ110に送信する。
次に、イベントブローカ110は、図2に示す対応テーブルを参照して、実行対象の推論アプリケーション108を特定する(ステップS13)。具体的に、イベントブローカ110は、ステップS12にて受信した実行指示情報の中から、推論の目的を識別するための識別子を取得する。例えば、実行指示情報が品質予測を目的とする推論処理の実行を指示するものである場合、実行指示情報には、推論の目的が品質予測であることを示す識別子「X001」が含まれる。イベントブローカ110は、実行指示情報から、推論の目的が品質予測であることを示す識別子「X001」を取得する。次に、イベントブローカ110は、対応テーブルを参照して、抽出した識別子「X001」をキーに、実行対象の推論アプリケーション108とその格納先のアドレスとを特定する。具体的に、イベントブローカ110は、対応テーブルの「推論ID」の中から「X001」と一致するデータがあるか否かを判定する。次に、イベントブローカ110は、「X001」に対応付けられている「AP1000」が実行対象の推論アプリケーション108であり、「XXX」が格納先のアドレスであると特定する。
図4に戻り、イベントブローカ110は、ステップS13で特定した推論アプリケーション108に対して、推論処理の実行開始指示と入力データを送信する(ステップS14)。推論アプリケーション108は、実行開始指示を受信すると、予め記憶された学習済みモデル107を読み出す。次に、推論アプリケーション108は、受信した入力データを学習済みモデル107に入力し、学習済みモデル107から出力された推論結果を取得する(ステップS15)。
次に、推論アプリケーション108は、ステップS15で取得した推論結果をイベントブローカ110に送信する(ステップS16)。
次に、イベントブローカ110は、ステップS16にて受信した推論結果を、推論API109を介して、制御アプリケーション104に送信する(ステップS17)。制御アプリケーション104は、ステップS17により送信された推論結果を受信すると(ステップS18)、推論実行処理を終了する。その後、制御アプリケーション104は、取得した推論結果に基づいて、制御データを生成し、機器200を制御する。
以上のように、プログラマブルロジックコントローラ100は、互いに異なる目的の推論処理を実行する複数の推論パッケージ103の中から、所望される推論の目的に合致する推論パッケージ103を特定して、実行を指示する。したがって、推論の目的に応じて、好適な推論アプリケーションを実行することが可能となる。
(実施の形態2)
上記実施の形態では、推論パッケージ103A-103Cは、互いに異なる目的の推論処理を実行するものであり、イベントブローカ110は、推論パッケージ103A-103Cの中から推論の目的に合致する推論パッケージ103を特定して、推論処理の実行を指示するものであった。これに対し、実施の形態2に係るプログラマブルロジックコントローラ100aは、同じ目的の推論処理を実行する複数の推論パッケージ103を備え、各推論パッケージ103が出力した推論結果の中から、予め定められた条件を満たす最良の推論結果を1つ選択して、制御アプリケーション104に出力する。
図5に示す通り、プログラマブルロジックコントローラ100aは、プログラマブルロジックコントローラ100が備えるリアルタイムOS101と、汎用OS102と、制御アプリケーション104と、機械学習プラットフォーム105と、を備え、互いに異なる推論の目的を持つ推論パッケージ103A-103Cに代えて、同じ推論の目的を持つ推論パッケージ103D-103Fを備える。プログラマブルロジックコントローラ100aの機械学習プラットフォーム105は、プログラマブルロジックコントローラ100が備える推論API109と、イベントブローカ110と、に加え、推論パッケージ103D-103Fがそれぞれ出力した推論結果の中から最良の推論結果を選択する推論結果選択部111を備える。
推論パッケージ103D-103Fは、同じ目的の推論処理を実行する。推論パッケージ103D-103Fの各推論アプリケーション108は、リアルタイムOS101または汎用OS102の何れかを備えるそれぞれ異なるCPU上で実行される。そのため、各推論アプリケーション108のリアルタイム性はそれぞれ異なる。また、推論パッケージ103D-103Fは、それぞれ異なる学習済みモデル107を備え、各推論アプリケーション108は、それぞれの学習済みモデル107により、推論処理を実行する。そのため、各推論アプリケーション108が実行する推論処理の演算量はそれぞれ異なる。したがって、推論パッケージ103D-103Fが出力する推論結果、および、推論結果を出力するために要する時間は、それぞれ異なる。
制御アプリケーション104は、推論処理の実行を指示する際に、推論結果を選択するための選択条件を含む実行指示情報を機械学習プラットフォーム105に送信する。具体的に、選択条件は、推論結果に優先度を設定するための条件であり、推論結果を待ち受ける時間である許容時間と、許容時間内に複数の推論結果を受信した場合に受信した推論結果に優先度を設定するための設定ルールと、をそれぞれ含む。設定ルールには、推論パッケージ103D-103Fの各学習済みモデル107がそれぞれニューラルネットワークによるものの場合、ニューラルネットワークの中間層の階層数が多い順に高い優先度を設定することが定義されている。これらの選択条件は、予めユーザにより設定されて、記憶部14に記憶されている。なお、選択条件は、優先度設定ルールの一例である。
推論結果選択部111は、推論パッケージ103D-103Fがそれぞれ出力した推論結果の中から制御アプリケーション104に送信する推論結果を選択する。具体的に、推論結果選択部111は、制御アプリケーション104から送信された実行指示情報に含まれる選択条件に従って、制御アプリケーション104に送信する推論結果を選択する。
次に、プログラマブルロジックコントローラ100aの動作について、図6を参照して説明する。以下の説明では、推論パッケージ103D-103Fは、同じ目的の推論処理を実行し、制御アプリケーション104は、推論パッケージ103D-103Fが実行する推論の目的に対応する推論処理の実行を指示することを前提として説明する。なお、以下の説明では、記憶部14には、推論結果を待ち受ける許容時間は、0.5秒であり、学習済みモデル107の階層数が多い順に推論結果の優先度を高く設定する、という選択条件が予めユーザにより記憶されているものとして説明する。また、図6において、図4に示したフローチャートと共通のステップを含むため、相違点を中心に説明する。
ステップS11において、制御アプリケーション104は、推論の目的に加え、推論結果を選択するための選択条件を含む実行指示情報を機械学習プラットフォーム105に送信する。制御アプリケーション104は、記憶部14から選択条件を読込み、読み込んだ選択条件を含む実行指示情報を送信する。
ステップS12において、機械学習プラットフォーム105のイベントブローカ110は、推論API109を介して、実行指示情報を受信すると、次に、イベントブローカ110は、実行指示情報から選択条件を取得する処理を行う(ステップS21)。具体的に、イベントブローカ110は、実行指示情報から、推論結果を待ち受ける許容時間は、0.5秒であり、学習済みモデル107の階層数が多い順に優先度を高く設定する、という選択条件を取得し、取得した選択条件を推論結果選択部111に出力する。
ステップS16において、推論パッケージ103D-103Fの推論アプリケーション108により、それぞれの推論結果が送信されると、推論結果選択部111は、ステップS21で取得した選択条件に従い、推論パッケージ103D-103Fから送信された推論結果の中から最良の推論結果を選択する(ステップS22)。具体的に、まず、推論結果選択部111は、選択条件で設定された推論結果を待ち受ける許容時間内に受信した推論結果を抽出する。推論結果選択部111は、S14による実行開始指示が送信された時刻と推論パッケージ103D-103Fの推論結果それぞれを受信した時刻との差を算出し、算出した差がそれぞれ許容時間の0.5秒以下か否かを判定する。次に、推論結果選択部111は、0.5秒以下の推論結果が複数ある場合、推論結果選択部111は、それぞれの学習済みモデル107の階層数を取得し、階層数が多い順に高い優先度を設定する。推論結果選択部111は、優先度がもっとも高い推論結果を、最良の推論結果であると判定する。なお、推論結果選択部111は、許容時間内に受信した推論結果が1つである場合、優先順を設定することなく、許容時間内に受信した推論結果を最良の推論結果であると判定してもよい。
以上のように、プログラマブルロジックコントローラ100aは、同じ目的の推論処理を実行し、演算量およびリアルタイム性がそれぞれ異なる複数の推論パッケージ103を備え、予め設定された選択条件により、複数の推論パッケージ103から出力された推論結果の中から最良の推論結果を選択する。ユーザは、推論の目的に応じて、選定条件をカスタマイズすることにより、機械学習技法、学習モデル等が異なる推論アプリケーション108を実行して、最良の推論結果を得ることが可能となる。
(実施の形態3)
上記実施の形態において、プログラマブルロジックコントローラ100は、予め推論パッケージ103を備えているものであった。本開示はこれに限られず、プログラマブルロジックコントローラ100とは異なる外部装置であるサーバに記憶されている推論パッケージ103をダウンロードして、プログラマブルロジックコントローラ100に展開することにより推論処理を実行してもよい。
具体的に、実施の形態3に係る推論実行システム1000は、図7に示す通り、サーバ400と、プログラマブルロジックコントローラ100bと、を備える。
サーバ400は、複数の推論パッケージ103とプログラマブルロジックコントローラ100bに推論パッケージ103を展開する際の配置場所を示す展開先情報410とを紐付けて記憶する推論パッケージ・ストレージ401と、プログラマブルロジックコントローラ100bに展開される推論パッケージ103を選択し、プログラマブルロジックコントローラ100bに対して選択した推論パッケージの展開を指示する推論パッケージ展開部402と、を備える。
推論パッケージ・ストレージ401が記憶する展開先情報410は、各推論パッケージ103がプログラマブルロジックコントローラ100bに展開される配置場所を示す情報であり、例えばディレクトリ名を含む。
推論パッケージ展開部402は、プログラマブルロジックコントローラ100bから送信された推論の目的に合致する推論パッケージ103を推論パッケージ・ストレージ401から選択する。具体的に、推論パッケージ・ストレージ401には、推論の目的と推論アプリケーションとその格納先とを対応付けた対応テーブルが予め記憶されている。推論パッケージ展開部402は、この対応テーブルを参照して、入力された推論の目的に合致する推論パッケージ103を特定する。推論パッケージ展開部402は、特定した推論パッケージ103を展開先情報410とともにプログラマブルロジックコントローラ100bに送信して、プログラマブルロジックコントローラ100bに、送信した推論パッケージ103の展開を指示する。なお、推論パッケージ展開部402は、推論アプリケーション選択部の一例である。
プログラマブルロジックコントローラ100bは、プログラマブルロジックコントローラ100aが備えるリアルタイムOS101と、汎用OS102と、制御アプリケーション104と、機械学習プラットフォーム105と、を備える。プログラマブルロジックコントローラ100bの機械学習プラットフォーム105は、プログラマブルロジックコントローラ100aが備える推論API109と、イベントブローカ110と、推論結果選択部111と、を備える。
次に、推論実行システム1000の動作について、図8を参照して説明する。なお、図8において、図4、6に示したフローチャートと共通のステップを含むため、相違点を中心に説明する。
ステップS31において、制御アプリケーション104は、推論の目的を識別する識別子を含む実行指示情報をサーバ400に送信する(ステップS31)。
次に、サーバ400の推論パッケージ展開部402は、プログラマブルロジックコントローラ100bから送信された実行指示情報から推論の目的を取得し、取得した推論の目的に合致する推論パッケージ103を推論パッケージ・ストレージ401から選択する(ステップS32)。具体的に、推論パッケージ展開部402は、実行指示情報から推論の目的を識別する識別子を取得する。次に、推論パッケージ展開部402は、対応テーブルを参照して、推論パッケージ103を特定する。
次に、推論パッケージ展開部402は、選択した推論パッケージ103を、展開先情報とともに、機械学習プラットフォーム105に送信し、推論パッケージ103の展開を指示する(ステップS33)。機械学習プラットフォーム105は、受信した推論パッケージを、取得した展開先情報に従って展開する(ステップS34)。その後、機械学習プラットフォーム105は、展開した推論パッケージ103の推論アプリケーション108に対し、推論処理の実行開始を指示する(ステップS14)。
以上のように、プログラマブルロジックコントローラ100bは、推論処理の実行時に、サーバ400に格納される推論パッケージ103から、推論の目的に合致する推論パッケージ103をダウンロードして、実行する。これにより、プログラマブルロジックコントローラ100bは、常に推論パッケージ103を記憶しておく必要がなくなるため、記憶部14の記憶容量の増加を抑制することが可能となる。
(実施の形態4)
実施の形態3では、入力された推論の目的に合致する推論パッケージ103をサーバ400からダウンロードすることとしたが、本開示はこれに限られない。サーバ400は、推論の目的に加え、もっとも最良の推論結果を得られると予測される推論パッケージ103を選択して、プログラマブルロジックコントローラ100にダウンロードさせることにしてもよい。
具体的に、実施の形態4に係る推論実行システム1000aは、図9に示す通り、サーバ400aと、プログラマブルロジックコントローラ100cと、を備える。
サーバ400aは、サーバ400が備える推論パッケージ・ストレージ401と、推論パッケージ展開部402と、に加え、各推論パッケージ103による推論処理に要する時間をシミュレートする推論シミュレータ403を備える。
推論シミュレータ403は、サーバ400a上に予め構築され、プログラマブルロジックコントローラ100cを擬似的に再現した仮想プログラマブルロジックコントローラを用いることにより、推論パッケージ103による推論処理に要する時間を予測する。なお、推論シミュレータ403は、予測部の一例である。
プログラマブルロジックコントローラ100cは、プログラマブルロジックコントローラ100bが備えるリアルタイムOS101と、汎用OS102と、制御アプリケーション104と、機械学習プラットフォーム105と、を備える。プログラマブルロジックコントローラ100cの機械学習プラットフォーム105は、プログラマブルロジックコントローラ100bが備える推論API109と、イベントブローカ110と、を備え、推論結果選択部111を含まない構成である。
次に、推論実行システム1000aの動作について、図10を参照して説明する。なお、図10において、図8に示したフローチャートと共通のステップを含むため、相違点を中心に説明する。
ステップS31において、制御アプリケーション104は、推論の目的を識別する識別子と選択条件とを含む実行指示情報をサーバ400aに送信する(ステップS31)。選択条件は、実施の形態2で説明した通り、実行指示情報を送信してから推論結果を待ち受ける時間である許容時間と、推論結果に優先度を設定するための設定ルールと、を含む。
次に、サーバ400aの推論パッケージ展開部402は、プログラマブルロジックコントローラ100cから送信された実行指示情報から推論の目的と選択条件とを取得する(ステップS41)。推論パッケージ展開部402は、対応テーブルを参照して、取得した推論の目的に合致する複数の推論パッケージ103を特定する。
次に、推論シミュレータ403は、ステップS41で特定した複数の推論パッケージ103が推論処理に要する時間を予測する(ステップS42)。具体的に、推論シミュレータ403は、予めサーバ400aに構築された仮想プログラマブルロジックコントローラ上で、推論パッケージ103をそれぞれ実行し、推論処理に要する予測時間をそれぞれ取得する。推論シミュレータ403は、取得した予測時間を、推論パッケージ展開部402に送信する。推論パッケージ展開部402は、ステップS41で取得した選択条件に基づき、選択条件を満たす最良の推論パッケージ103を選択する。具体的に、推論パッケージ展開部402は、予測時間が選択条件で設定された許容時間以内である推論パッケージ103を選択する。さらに、予測時間が許容時間以内である推論パッケージ103が複数存在すると判定した場合、推論パッケージ展開部402は、選択条件に含まれる優先度を設定する設定ルールに従い、各推論パッケージ103に優先度を付与する。推論パッケージ展開部402は、優先度がもっとも高い推論パッケージ103を、最良の推論パッケージ103として選択する。その後、推論パッケージ展開部402は、選択した推論パッケージ103を展開先情報とともに送信し、展開を指示する。
以上のように、推論実行システム1000aは、推論パッケージ103を格納するサーバ400aにより、推論の目的と選択条件とを満たす最良の推論パッケージ103が選択されて、プログラマブルロジックコントローラ100cに送信される。したがって、推論の目的に合致する推論パッケージ103が複数存在する場合であっても、プログラマブルロジックコントローラ100cは、これらの推論パッケージ103を実行したり、実行した複数の推論結果の中から制御アプリケーション104に送信する最良の推論結果を選択するといった処理を実行する必要が無い。したがって、プログラマブルロジックコントローラ100cの処理効率を上げることが可能となる。
以上、本開示の実施の形態について説明したが、本開示は上記実施の形態によって限定されるものではない。
上記実施の形態において、推論アプリケーション108は、1つの目的の推論処理を実行するものとして説明したがこれに限られず、複数の目的の推論処理を実行してもよい。その場合、図2に示す対応テーブルにおいて、1つの推論アプリケーション108に、複数の推論IDを紐付けて登録すればよい。
また、上記実施の形態において、推論パッケージ103は、3つである場合について説明したが、2つ以上の任意の数の推論パッケージ103が設定されればよい。その場合、設定された推論パッケージ103が備える推論アプリケーション108の数に応じて、図2に示す対応テーブルに定義すればよい。
上記実施の形態において、機械学習エンジン106は、制御対象の機器200から収集された機器データを入力データとして機械学習を行って学習モデルを生成することとしたがこれに限られない。機械学習エンジン106が学習に使用する入力データは、機器データのみに限られず、制御アプリケーション104により生成された制御データであってもよく、これらの複数のデータを入力データとして使用してもよい。
また、選択条件は、推論の目的毎にそれぞれ異なる選択条件が設定されてもよい。その場合、推論の目的を識別する推論IDとそれぞれの選択条件とを対応付けたテーブルを記憶部14に記憶させればよく、制御アプリケーション104は、ユーザにより選択された推論の目的の推論IDに対応付けられた選択条件を取得して、取得した選択条件を実行指示情報に含めて、機械学習プラットフォーム105に送信すればよい。
また、推論結果に優先度を設定するルールは、学習済みモデル107の階層数が多い順に推論結果の優先度を高く設定するものとして、説明したが、これに限られない。例えば、学習済みモデル107に含まれるパラメータ数が多いモデルに高い優先度を設定する、機械学習技法毎に異なる優先度を設定する、推論結果の出力時間が早い順に高い優先度を設定する等の任意のルールが設定されればよい。
また、上記実施の形態2、4では、複数の推論結果の中から最良の推論結果を1つ選択するものとして、説明したがこれに限られない。例えば、優先度を設定する処理に代えて、複数の推論結果の平均値、中央値、最頻値等、演算処理による演算結果を推論結果としてもよい。その場合、機械学習プラットフォーム105又は推論結果選択部111には、これらの演算方法が予め定義されていればよい。また、優先度を設定する処理と演算処理とを組み合わせて実行して、推論結果としてもよい。たとえば、許容時間内に受信した複数の推論結果に演算処理をして、演算結果を推論結果としてもよい。
また、ステップS16において、推論結果選択部111は、S14による実行開始指示が送信された時刻と推論パッケージ103の推論結果を受信した時刻との差を算出し、算出した差が許容時間以下か否かを判定こととしたが、これに限られない。推論結果選択部111は、制御アプリケーション104から実行指示情報を受信した時刻と推論パッケージ103の推論結果を受信した時刻との差を算出して許容時間と比較してもよい。
また、プログラマブルロジックコントローラ100の機能は、専用の装置によらず、通常のコンピュータシステムを用いて実現可能である。例えば、プログラマブルロジックコントローラ100における各機能を実現するためのプログラムを、コンピュータが読み取り可能なCD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)等の記録媒体に格納して配布し、このプログラムをコンピュータにインストールすることにより、上述の各機能を実現することができるコンピュータを構成してもよい。
また、各機能をOSとアプリケーションとの分担、またはOSとアプリケーションとの協同により実現する場合には、アプリケーションのみを記録媒体に格納してもよい。
本開示の主旨を逸脱しない限り、上記実施の形態で挙げた構成を取捨選択したり、他の構成に適宜変更したりすることが可能である。
また、本開示は、本開示の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、この開示を説明するためのものであり、本開示の範囲を限定するものではない。すなわち、本開示の範囲は、実施の形態ではなく、特許請求の範囲によって示される。そして、請求の範囲内及びそれと同等の開示の意義の範囲内で施される様々な変形が、本開示の範囲内とみなされる。
100,100a,100b,100c プログラマブルロジックコントローラ、101 リアルタイムOS、102 汎用OS、103,103A,103B,103C,103D,103E,103F 推論パッケージ、104 制御アプリケーション、105 機械学習プラットフォーム、106 機械学習エンジン、107 学習済みモデル、108 推論アプリケーション、109 推論API、110 イベントブローカ、111 推論結果選択部、200 機器、300 通信路、400,400a サーバ、401 推論パッケージ・ストレージ、402 推論パッケージ展開部、403 推論シミュレータ、410 展開先情報、11a、11b プロセッサ、12 RAM、13 ROM、14 記憶部、15 入力部、16 通信部、99 内部バス、1000,1000a 推論実行システム。

Claims (11)

  1. 推論処理の実行を指示する実行指示情報を生成する制御アプリケーションと、
    推論処理を実行して、推論結果を生成しうる複数の推論アプリケーションと、
    前記制御アプリケーションにより送信された実行指示情報に応答して、複数の前記推論アプリケーションの中から、予め設定された規則を満たす推論アプリケーションを特定して推論処理を実行させ、特定した推論アプリケーションにより生成された推論結果を、該制御アプリケーションに送信する機械学習プラットフォームと、
    を備え
    前記実行指示情報は、複数の推論アプリケーションにより生成された複数の推論結果に優先度を設定する優先度設定ルールを含み、
    前記機械学習プラットフォームは、前記実行指示情報から前記優先度設定ルールを取得し、取得した前記優先度設定ルールに基づいて、複数の前記推論アプリケーションにより生成された複数の推論結果それぞれに優先度を設定し、設定された前記優先度がもっとも大きい推論結果を、前記制御アプリケーションに送信する、
    プログラマブルロジックコントローラ。
  2. 前記機械学習プラットフォームは、複数の推論アプリケーションを記憶する外部装置から、特定した推論アプリケーションを受信し、受信した推論アプリケーションにより生成された推論結果を、前記制御アプリケーションに送信する、
    請求項1に記載のプログラマブルロジックコントローラ。
  3. 前記実行指示情報は、推論処理の目的を示す情報を含み、
    前記機械学習プラットフォームは、前記推論アプリケーションと各推論アプリケーションが実行する推論処理の目的とを対応付ける対応情報を参照して、前記制御アプリケーションにより送信された実行指示情報に含まれる推論処理の目的に一致する推論アプリケーションを特定し、特定した推論アプリケーションに推論処理の実行を指示し、推論処理の実行を指示した推論アプリケーションにより生成された推論結果を前記制御アプリケーションに送信する、
    請求項1又は2に記載のプログラマブルロジックコントローラ。
  4. 前記推論処理の目的と前記優先度設定ルールとを対応付ける選択条件対応情報を記憶する記憶部、をさらに備え、
    前記制御アプリケーションは、前記記憶部に記憶された前記選択条件対応情報に基づいて、前記推論処理の目的に対応する前記優先度設定ルールを特定して、前記推論処理の目的と特定した前記優先度設定ルールを含む前記実行指示情報を生成する、
    請求項3に記載のプログラマブルロジックコントローラ。
  5. 前記機械学習プラットフォームは、複数の推論アプリケーションそれぞれに推論処理の実行を指示し、前記推論アプリケーションにより生成された複数の推論結果に基づいて生成された推論結果を、前記制御アプリケーションに送信する、
    請求項1又は2に記載のプログラマブルロジックコントローラ。
  6. 前記優先度設定ルールは、前記推論アプリケーションから送信される推論結果を待ち受ける時間である許容時間を含み、
    前記機械学習プラットフォームは、前記優先度設定ルールに基づき、複数の推論アプリケーションから送信された推論結果の中から、前記許容時間以内に送信された推論結果を抽出し、抽出された推論結果に優先度を設定し、設定した優先度が最も大きい推論結果を前記制御アプリケーションに送信する推論結果として選択する、
    請求項に記載のプログラマブルロジックコントローラ。
  7. 制御対象の機器を制御するプログラマブルロジックコントローラと、複数の推論アプリケーションを記憶するサーバと、を含む推論実行システムであって、
    前記プログラマブルロジックコントローラは、
    推論処理の実行を指示する実行指示情報を生成する制御アプリケーションと、
    前記制御アプリケーションにより生成された実行指示情報を前記サーバに送信し、該実行指示情報に応答してサーバから送信された推論アプリケーションに、推論処理の実行を指示する機械学習プラットフォームと、を備え、
    前記サーバは、
    記憶する複数の推論アプリケーションの中から、予め設定された規則を満たす推論アプリケーションを特定し、特定した推論アプリケーションを、前記機械学習プラットフォームに送信する推論アプリケーション選択部、を備え、
    前記実行指示情報は、複数の推論アプリケーションにより生成された複数の推論結果に優先度を設定する優先度設定ルールを含み、
    前記機械学習プラットフォームは、前記実行指示情報から前記優先度設定ルールを取得し、取得した前記優先度設定ルールに基づいて、複数の前記推論アプリケーションにより生成された複数の推論結果それぞれに優先度を設定し、設定された前記優先度がもっとも大きい推論結果を、前記制御アプリケーションに送信する、
    推論実行システム。
  8. 前記推論アプリケーション選択部は、サーバに記憶される複数の推論アプリケーションと各推論アプリケーションが実行する推論処理の目的とを対応付ける対応情報を参照して、制御アプリケーションにより生成された実行指示情報に含まれる推論処理の目的に一致する推論アプリケーションを特定し、特定した推論アプリケーションを前記機械学習プラットフォームに送信する、
    請求項7に記載の推論実行システム。
  9. 記優先度設定ルールは、前記推論アプリケーションから送信される推論結果を待ち受ける時間である許容時間を含み、
    前記サーバは、
    推論アプリケーションが推論結果を出力するまでに要する時間を予測する予測部、をさらに備え、
    前記推論アプリケーション選択部は、前記優先度設定ルールに基づいて、記憶される複数の推論アプリケーションの中から、前記予測部により予測された時間が前記許容時間以内である推論アプリケーションを抽出し、抽出された推論結果に優先度を設定し、設定した優先度が最も大きい推論アプリケーションを前記機械学習プラットフォームに送信する、
    請求項7に記載の推論実行システム。
  10. 制御アプリケーションから実行指示情報を取得するステップと、
    取得した前記実行指示情報から、複数の推論アプリケーションにより生成された複数の推論結果に優先度を設定する優先度設定ルールを取得するステップと、
    取得した実行指示情報に応答して、複数の推論アプリケーションの中から、予め設定された規則を満たす推論アプリケーションを特定して実行し、取得した前記優先度設定ルールに基づいて、複数の前記推論アプリケーションにより生成された複数の推論結果それぞれに優先度を設定し、設定された前記優先度がもっとも大きい推論結果を、前記制御アプリケーションに送信するステップと、
    を含む推論実行方法。
  11. コンピュータに、
    制御アプリケーションから実行指示情報を取得する処理と、
    取得した前記実行指示情報から、複数の推論アプリケーションにより生成された複数の推論結果に優先度を設定する優先度設定ルールを取得する処理と、
    取得した実行指示情報に応答して、複数の推論アプリケーションの中から、予め設定された規則を満たす推論アプリケーションを特定して実行し、取得した前記優先度設定ルールに基づいて、複数の前記推論アプリケーションにより生成された複数の推論結果それぞれに優先度を設定し、設定された前記優先度がもっとも大きい推論結果を、前記制御アプリケーションに送信する処理と、
    を実行させるプログラム。
JP2023526327A 2022-09-29 2022-09-29 プログラマブルロジックコントローラ、推論実行システム、推論実行方法、および、プログラム Active JP7378674B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/036422 WO2024069845A1 (ja) 2022-09-29 2022-09-29 プログラマブルロジックコントローラ、推論実行システム、推論実行方法、および、プログラム

Publications (3)

Publication Number Publication Date
JP7378674B1 true JP7378674B1 (ja) 2023-11-13
JPWO2024069845A1 JPWO2024069845A1 (ja) 2024-04-04
JPWO2024069845A5 JPWO2024069845A5 (ja) 2024-09-05

Family

ID=88729168

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023526327A Active JP7378674B1 (ja) 2022-09-29 2022-09-29 プログラマブルロジックコントローラ、推論実行システム、推論実行方法、および、プログラム

Country Status (2)

Country Link
JP (1) JP7378674B1 (ja)
WO (1) WO2024069845A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003303332A (ja) * 2002-04-10 2003-10-24 Mitsubishi Electric Corp 知識処理システム
JP2020147405A (ja) * 2019-03-13 2020-09-17 オムロン株式会社 制御装置、制御方法、及び制御プログラム
US20210012187A1 (en) * 2019-07-08 2021-01-14 International Business Machines Corporation Adaptation of Deep Learning Models to Resource Constrained Edge Devices
JP2021022079A (ja) * 2019-07-25 2021-02-18 オムロン株式会社 推論装置、推論方法、及び推論プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003303332A (ja) * 2002-04-10 2003-10-24 Mitsubishi Electric Corp 知識処理システム
JP2020147405A (ja) * 2019-03-13 2020-09-17 オムロン株式会社 制御装置、制御方法、及び制御プログラム
US20210012187A1 (en) * 2019-07-08 2021-01-14 International Business Machines Corporation Adaptation of Deep Learning Models to Resource Constrained Edge Devices
JP2021022079A (ja) * 2019-07-25 2021-02-18 オムロン株式会社 推論装置、推論方法、及び推論プログラム

Also Published As

Publication number Publication date
WO2024069845A1 (ja) 2024-04-04
JPWO2024069845A1 (ja) 2024-04-04

Similar Documents

Publication Publication Date Title
JP7078170B2 (ja) 産業用pcデバイス及び産業用pcデバイスの動作方法
US11853760B2 (en) Model conversion method, device, computer equipment, and storage medium
JP6941743B2 (ja) 機械学習モデルパッケージの生成および展開
CN111861020A (zh) 模型部署方法、装置、设备及存储介质
CN109155743A (zh) 使用机器学习算法来满足sla要求的系统和方法
US11625018B2 (en) Method and system for configuring virtual controllers in a building management system
US20230350372A1 (en) Method and system for managing virtual controllers in a building management system
CN110995858A (zh) 一种基于深度q网络的边缘网络请求调度决策方法
US11940786B2 (en) Building management system and method with virtual controller and failsafe mode
US20210382449A1 (en) Building management system with control logic distributed between a virtual controller and a smart edge controller
JP7017162B2 (ja) 稼働状況予測システム、稼働状況予測方法および稼働状況予測プログラム
US11513866B1 (en) Method and system for managing resource utilization based on reinforcement learning
JP7378674B1 (ja) プログラマブルロジックコントローラ、推論実行システム、推論実行方法、および、プログラム
JP2021174545A (ja) 分散制御システム内でのワークステーションのリモート展開および試運転
JP6799313B2 (ja) 業務施策構築支援システム、業務施策構築支援方法及びプログラム
CN116302448A (zh) 任务调度方法和系统
Farhat et al. Safe Dynamic Reconfiguration of Concurrent Component-based Applications
JP7301169B2 (ja) 中継装置及び中継方法
US20180144007A1 (en) Control server
JP7449322B2 (ja) 情報処理システム
CN112639739A (zh) 在至少两个不同级别的平台的计算机上分发特定应用的子应用
KR102663094B1 (ko) 단일 엔드포인트를 이용한 ai 모델 운영 장치 및 방법
JP2020144509A (ja) 自動コード生成方法、及び自動コード生成プログラム
US20240036931A1 (en) Transferring Applications Between Execution Nodes
CN117742282A (zh) 用于控制逻辑测试的分布式控制系统的虚拟部署

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230428

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230428

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20230428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230613

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231003

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231031

R150 Certificate of patent or registration of utility model

Ref document number: 7378674

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150