(57)【特許請求の範囲】
【請求項１】
複数の入出力ユニットのそれぞれが有する複数の入出力端子に制御対象機器を割り付けた自動制御システムにおける割り付けの見直しを支援する割付支援プログラムであって、
前記入出力ユニットにおける前記入出力端子と前記制御対象機器とを対応させた割付情報、前記入出力ユニット及び前記制御対象機器が稼働している時間帯を示す時間帯情報、前記入出力ユニットのユニット消費電力情報、及び、前記制御対象機器の機器消費電力情報を含む第１入力情報、又は、前記割付情報で割り付けた前記自動制御システムを稼働させたときの前記入出力ユニットの消費電力と前記制御対象機器の消費電力とに基づいて算出された前記自動制御システムの電力使用量を含むシステム電力使用情報、及び、前記割付情報を含む第２入力情報を取得する情報取得部、
前記第１入力情報、又は、前記第２入力情報が入力されることで学習済モデルを用いた推論を行う推論部から取得した、前記割付情報で割り付けた前記自動制御システムの前記電力使用量が減少する前記制御対象機器の割り付けの情報を出力する割付情報出力部、
として演算装置を機能させる
割付支援プログラム。
【請求項２】
前記割り付けの情報は、前記割付情報で割り付けた前記自動制御システムの前記複数の入出力ユニットのうち少なくとも１つの入出力ユニットへの電力供給を停止する時間が増加する情報である、
請求項１に記載の割付支援プログラム。
【請求項３】
前記第１入力情報及び前記第２入力情報は、前記入出力端子に送信される信号の送信回数を示す回数情報をさらに含み、
前記割り付けの情報は、前記割付情報で割り付けた前記自動制御システムの少なくとも１つの入出力ユニットの有する前記複数の入出力端子に送信される信号の送信回数のうちの最大値が減少する情報である、
請求項２に記載の割付支援プログラム。
【請求項４】
複数の入出力ユニットのそれぞれが有する複数の入出力端子に制御対象機器を割り付けた自動制御システムにおける割り付けの見直しを学習する割付学習プログラムであって、
前記入出力端子と前記制御対象機器とを対応させた割付情報と、前記割付情報で割り付けた前記自動制御システムを稼働させたときの前記入出力ユニットの消費電力と前記制御対象機器の消費電力とに基づいて算出された前記自動制御システムの電力使用量を含む電力使用情報と、を含む学習用データを取得する学習用データ取得部、
前記学習用データを用いて、前記割付情報及び前記電力使用情報から、前記割付情報で割り付けた前記自動制御システムの前記電力使用量が減少する前記制御対象機器の割り付け状態を推論する学習済モデルを生成するモデル生成部、
として演算装置を機能させる、
割付学習プログラム。
【請求項５】
前記モデル生成部は、前記割付情報で割り付けた前記自動制御システムの前記複数の入出力ユニットのうち少なくとも１つの入出力ユニットへの電力供給を停止する時間が増加する前記制御対象機器の割り付け状態を推論する前記学習済モデルを生成する、
請求項４に記載の割付学習プログラム。
【請求項６】
前記学習用データは、前記入出力端子に送信される信号の送信回数を示す回数情報をさらに含み、
前記モデル生成部は、前記学習用データを用いて、前記割付情報で割り付けた前記自動制御システムの少なくとも１つの入出力ユニットの有する前記複数の入出力端子に送信される信号の送信回数のうちの最大値が減少する制御対象機器の割り付け状態を推論する前記学習済モデルを生成する、
請求項５に記載の割付学習プログラム。
【請求項７】
前記モデル生成部は、前記電力使用量と予め定められた第１閾値との差分に基づいて第１報酬を計算する報酬計算部、及び前記第１報酬に基づいて、前記割付情報で割り付けた前記自動制御システムの前記電力使用量が減少する前記制御対象機器の割り付け状態を推論するための関数を更新する関数更新部、を含む、
請求項４に記載の割付学習プログラム。
【請求項８】
前記関数更新部は、前記第１報酬に基づいて、前記割付情報で割り付けた前記自動制御システムの前記複数の入出力ユニットのうち少なくとも１つの入出力ユニットへの電力供給を停止する時間が増加する前記制御対象機器の割り付け状態を推論するための前記関数を更新する
請求項７に記載の割付学習プログラム。
【請求項９】
前記モデル生成部は、前記電力使用量と予め定められた第１閾値との差分に基づいて第１報酬を計算し、前記複数の入出力ユニットのそれぞれにおける前記複数の入出力端子に送信される信号の送信回数のうちの最大値を合計した合計回数と予め定められた第２閾値との差分に基づいて第２報酬を計算し、前記第１報酬と前記第２報酬に基づいて最終報酬を計算する報酬計算部、前記最終報酬に基づいて、前記割付情報で割り付けた前記自動制御システムの前記電力使用量が減少し、且つ、前記割付情報で割り付けた前記自動制御システムの前記複数の入出力ユニットのうち少なくとも１つの入出力ユニットへの電力供給を停止する時間が増加し、且つ、前記割付情報で割り付けた前記自動制御システムの少なくとも１つの入出力ユニットの有する前記複数の入出力端子に送信される信号の送信回数のうちの最大値が減少する前記制御対象機器の割り付け状態を推論するための関数を更新する関数更新部、を含む、
請求項５に記載の割付学習プログラム。
【請求項１０】
前記報酬計算部は、前記第１報酬及び前記第２報酬に重み付けを行うための係数を前記第１報酬及び前記第２報酬のそれぞれに乗算したのち、前記第１報酬と前記第２報酬とを加算して前記最終報酬を計算する
請求項９に記載の割付学習プログラム。
【請求項１１】
前記学習済モデルの生成に用いる前記学習用データを前記割付情報に基づいて演算する割付シミュレーション部、をさらに含む、
請求項４から請求項１０のいずれか一項に記載の割付学習プログラム。
【請求項１２】
請求項１から請求項３のいずれか一項に記載の割付支援プログラムを記憶した、演算装置可読記憶媒体。
【請求項１３】
請求項４から請求項１１のいずれか一項に記載の割付学習プログラムを記憶した、演算装置可読記憶媒体。
【請求項１４】
複数の入出力ユニットのそれぞれが有する複数の入出力端子に制御対象機器を割り付けた自動制御システムにおける割り付けの見直しを支援する割付支援装置であって、
前記入出力ユニットにおける前記入出力端子と前記制御対象機器とを対応させた割付情報、前記入出力ユニット及び前記制御対象機器が稼働している時間帯を示す時間帯情報、前記入出力ユニットのユニット消費電力情報、及び、前記制御対象機器の機器消費電力情報を含む第１入力情報、又は、前記割付情報で割り付けた前記自動制御システムを稼働させたときの前記入出力ユニットの消費電力と前記制御対象機器の消費電力とに基づいて算出された前記自動制御システムの電力使用量を含むシステム電力使用情報、及び、前記割付情報を含む第２入力情報を取得する情報取得部と、
前記第１入力情報、又は、前記第２入力情報が入力されることで、学習済モデルを用いた推論を行う推論部から取得した、前記割付情報で割り付けた前記自動制御システムの前記電力使用量が減少する前記制御対象機器の割り付けの情報を出力する割付情報出力部と、
を備える割付支援装置。
【請求項１５】
前記割り付けの情報は、前記割付情報で割り付けた前記自動制御システムの前記複数の入出力ユニットのうち少なくとも１つの入出力ユニットへの電力供給を停止する時間が増加する情報である、
請求項１４に記載の割付支援装置。
【請求項１６】
前記第１入力情報及び前記第２入力情報は、前記入出力端子に送信される信号の送信回数を示す回数情報をさらに含み、
前記割り付けの情報は、前記割付情報で割り付けた前記自動制御システムの少なくとも１つの入出力ユニットの有する前記複数の入出力端子に送信される信号の送信回数のうちの最大値が減少する情報である、
請求項１５に記載の割付支援装置。
【請求項１７】
複数の入出力ユニットのそれぞれが有する複数の入出力端子に制御対象機器を割り付けた自動制御システムにおける割り付けの見直しを学習する割付学習装置であって、
前記入出力端子と前記制御対象機器とを対応させた割付情報と、前記割付情報で割り付けた前記自動制御システムを稼働させたときの前記入出力ユニットの消費電力と前記制御対象機器の消費電力とに基づいて算出された前記自動制御システムの電力使用量を含む電力使用情報と、を含む学習用データを取得する学習用データ取得部と、
前記学習用データを用いて、前記割付情報及び前記電力使用情報から、前記割付情報で割り付けた前記自動制御システムの前記電力使用量が減少する前記制御対象機器の割り付け状態を推論する学習済モデルを生成するモデル生成部と、
を備える割付学習装置。
【請求項１８】
前記モデル生成部は、前記割付情報で割り付けた前記自動制御システムの前記複数の入出力ユニットのうち少なくとも１つの入出力ユニットへの電力供給を停止する時間が増加する前記制御対象機器の割り付け状態を推論する前記学習済モデルを生成する、
請求項１７に記載の割付学習装置。
【請求項１９】
前記学習用データは、前記入出力端子に送信される信号の送信回数を示す回数情報をさらに含み、
前記モデル生成部は、前記学習用データを用いて、前記割付情報で割り付けた前記自動制御システムの少なくとも１つの入出力ユニットの有する前記複数の入出力端子に送信される信号の送信回数のうちの最大値が減少する制御対象機器の割り付け状態を推論する前記学習済モデルを生成する、
請求項１８に記載の割付学習装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、自動制御システムにおける制御対象機器の割り付けの見直しを支援するための割付支援プログラム、割付支援装置、割付学習プログラム、割付学習装置、及び、演算装置可読記憶媒体に関する。
【背景技術】
【０００２】
近年、工場やプラント等の稼働率を向上させるために、プログラマブルロジックコントローラ（以下、単に「ＰＬＣ」という）を用いた制御装置によって製造ラインを構成する各種機器（センサ、モータ、アクチュエータ、安全機器、等の制御対象機器）を自動で制御する自動制御システムの導入が進められている。【０００３】
ＰＬＣは、所望のユニットを用いて構築される制御装置である。ＰＬＣを構築するユニットとしては、例えば、電源供給源である電源ユニット、ＰＬＣの制御を行うＣＰＵユニット、複数の各種機器等へ信号を送信する、又は、複数の各種機器等から信号を受信する入出力ユニット、通信ネットワークに接続するための通信ユニット、等がある。【０００４】
入出力ユニットは、１つの入出力ユニットに複数入出力端子を有しており、入出力端子１つずつに対して、それぞれ制御対象機器が割り付けられている。なお、割り付けとは、入出力端子の識別記号と制御対象機器とを対応付けることを指す。そして、ＰＬＣは、ＣＰＵユニットに記憶された制御プログラムに基づき、入出力ユニットの入出力端子を指定して信号を受信及び送信することで、ＰＬＣの制御を行い、ＰＬＣに接続された各種機器の動作を自動制御している。【０００５】
しかしながら、ＰＬＣを用いた自動制御システムを導入すると、製造ラインの電力使用量が増大する傾向にあり、工場全体の電力量が増大してしまうため、省電力設計の自動制御システムが求められている。【０００６】
従来の自動制御システムの一例であるフィールドネットワークシステムは、複数のフィールド機器（制御対象機器）へ信号を送信、又は、複数のフィールド機器（制御対象機器）から信号の受信を行うＩ／Ｏ入出力ユニット（入出力ユニット）に対し電源操作信号を送信する。Ｉ／Ｏ入出力ユニットは、電源操作信号に基づいて、Ｉ／Ｏ入出力ユニット内の供給電源のオン／オフを制御し、フィールドネットワークシステムの電力使用量を低減していた（例えば、特許文献１参照）。【０００７】
具体的には、フィールドネットワークシステムが備える複数のＩ／Ｏ入出力ユニットにおいて、１つのＩ／Ｏ入出力ユニットには複数のフィールド機器が割り付けられている。また、Ｉ／Ｏ入出力ユニット内は、Ｉ／Ｏ入出力ユニットの内部回路ＣＰＵ及び複数のフィールド機器全てに対する電力供給のオン／オフを切り替えるスイッチ（説明の便宜上、「全体スイッチ」という）と、複数のフィールド機器それぞれに対する電力供給のオン／オフを切り替える複数のスイッチ（説明の便宜上、「個別スイッチ」という）と、を備えている。フィールドネットワークシステムは、１つのＩ／Ｏ入出力ユニットに割り付けられた複数のフィールド機器全てに対して電力供給の必要がない場合は、全体スイッチをオフとする。また、フィールドネットワークシステムは、複数のフィールド機器の内いずれか１つでも電力供給が必要な場合は、全体スイッチはオンとして、電力供給の必要がないフィールド機器に対応する個別スイッチをオフとし、電力使用量を低減していた。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１２−１９８８４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、複数の制御対象機器の中には、センサや安全機器の様に製造ライン稼働中に、常に電力供給が必要な機器も存在する。上述した特許文献１に開示されるフィールドネットワークシステムでは、１つのＩ／Ｏ入出力ユニットに割り付けされている複数のフィールド機器の内、いずれか１つでも稼働する場合には、上述の全体スイッチをオフにすることはできない。つまり、フィールドネットワークシステムにおけるフィールド機器の割り付け状態が考慮されていないため、Ｉ／Ｏ入出力ユニットへのフィールド機器の割り付け状態によっては、上述の全体スイッチをオフにできる期間が存在せず、フィールドネットワークシステムにおける電力使用量を限定的にしか低減できないという問題があった。【００１０】
本発明は、上述した問題点を解決するためになされたものであり、自動制御システムの電力使用量が減少するように、自動制御システムにおける制御対象機器の割り付けの見直しを支援する割付支援プログラム、割付支援装置、割付学習プログラム、割付学習装置、及び、演算装置可読記憶媒体、を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明に係る割付支援プログラムは、複数の入出力ユニットのそれぞれが有する複数の入出力端子に制御対象機器を割り付けた自動制御システムにおける割り付けの見直しを支援する割付支援プログラムであって、入出力ユニットにおける入出力端子と制御対象機器とを対応させた割付情報、入出力ユニット及び制御対象機器が稼働している時間帯を示す時間帯情報、入出力ユニットのユニット消費電力情報、及び、制御対象機器の機器消費電力情報を含む第１入力情報、又は、割付情報で割り付けた自動制御システムを稼働させたときの入出力ユニットの消費電力と制御対象機器の消費電力とに基づいて算出された自動制御システムの電力使用量を含むシステム電力使用情報、及び、割付情報を含む第２入力情報を取得する情報取得部、第１入力情報、又は、第２入力情報が入力されることで学習済モデルを用いた推論を行う推論部から取得した、割付情報で割り付けた自動制御システムの電力使用量が減少する制御対象機器の割り付けの情報を出力する割付情報出力部、として演算装置を機能させるものである。
【発明の効果】
【００１２】
本発明によれば、自動制御システムにおける制御対象機器の割り付けを、割付情報で割り付けた自動制御システムの電力使用量が減少するように自動制御システムにおける割り付けを見直す指標を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】自動制御システムの概略を示す図である。
【図２】実施の形態１に係る割付支援装置のハードウェア構成の一例を示す図である。
【図３】実施の形態１に係る割付支援装置の機能ブロックの一例を模式的に示す図である。
【図４】実施の形態１に係る割付情報の一例を示す図である。
【図５】実施の形態１に係る時間帯情報の一例を示す図である。
【図６】実施の形態１に係るユニット消費電力情報の一例を示す図である。
【図７】実施の形態１に係る機器消費電力情報の一例を示す図である。
【図８】実施の形態１に係る見直割付情報の一例を示す図である。
【図９】実施の形態１に係る見直し割付情報に基づいた自動制御システムの１日の稼働状態を示す図である。
【図１０】実施の形態１に係る学習装置部の機能ブロックの一例を模式的に示す図である。
【図１１】実施の形態１に係る学習済モデルを生成する動作を示すフローチャートである。
【図１２】実施の形態１に係る割付支援プログラム及び割付支援装置１の動作を示すフローチャートである。
【図１３】実施の形態２に係る割付支援装置１の機能ブロックの一例を模式的に示す図である。
【図１４】実施の形態２に係る回数情報の一例を示す図である。
【図１５】実施の形態２に係る見直割付情報の一例を示す図である。
【図１６】実施の形態２に係る見直し割付情報に基づいた自動制御システムの１日の稼働状態を示す図である。
【図１７】実施の形態２に係る学習装置部の機能ブロックの一例を模式的に示す図である。
【図１８】実施の形態２に係る学習済モデルを生成する動作を示すフローチャートである。
【図１９】実施の形態２に係る割付支援プログラム及び割付支援装置の動作を示すフローチャートである。
【図２０】実施の形態３に係る割付支援装置の機能ブロックの一例を模式的に示す図である。
【図２１】実施の形態３に係る割付シミュレーション部の機能ブロックの一例を示す図である。
【図２２】実施の形態３に係る割付シミュレーション部の動作を示すフローチャートである。
【発明を実施するための形態】
【００１４】
実施の形態１．
本発明の実施の形態１に係る割付支援プログラム、割付支援装置、割付学習プログラム、割付学習装置について図面を用いて説明する。本実施の形態１では、割付支援プログラムの中に割付学習プログラムを含んでおり、割付支援装置が割付学習装置の機能を有する形態として説明する。図１は、自動制御システムＡＳの概略を示す図である。図２は、割付支援装置１のハードウェア構成の一例を示す図である。図３は、割付支援装置１の機能ブロックの一例を模式的に示す図である。図４は、学習部２１に含まれる機能ブロックの一例を模式的に示す図である。
【００１５】
図１に示すように、自動制御システムＡＳは、複数の制御対象機器１５０、制御プログラムを実行して制御対象機器１５０を制御するＰＬＣ２００、を備えている。自動制御システムＡＳは、ＰＬＣ２００を介して、制御プログラムが記憶されている演算装置３００と通信を行い、制御対象機器１５０を自動で制御するシステムである。
【００１６】
図１では、自動制御システムＡＳの一例として、入出力端子を３つ有する入出力デバイス部を備えた入出力ユニット２０２を３台備えたＰＬＣ２００と、各入出力端子に制御対象機器１５０が割り付けられており、制御対象機器１５０を９台備えた自動制御システムＡＳを示している。なお、本実施の形態において、入出力端子が３つである例を示したが、２つ以上であればよい。
【００１７】
ＰＬＣ２００は、演算装置３００に記憶されている制御プログラムを読み出して実行するＣＰＵユニット２０１と、制御対象機器１５０と接続される入出力ユニット２０２と、を有している。ＣＰＵユニット２０１と入出力ユニット２０２とは、各ユニットを電気的に接続するベースボードを介して接続されるか、または、ベースボードを介さずに各ユニットに備えられているユニット同士を電気的に接続するコネクタによって接続されてもよい。
【００１８】
ＰＬＣ２００と演算装置３００とは、専用線又はネットワークを介して通信可能に接続される。専用線を用いて接続される場合、例えば、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）ケーブルを介して接続されてもよい。ネットワークを介して接続される場合、例えば、インターネットの様なオープンネットワークを介して接続されてもよいし、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）の様なクローズドネットワークを介して接続されていてもよい。
【００１９】
ＣＰＵユニット２０１は、制御プログラムを読み出して実行するＣＰＵ部、制御プログラムやデータを一時的に記憶する内部メモリ部、各ユニットに電力を供給する内部電源部を有している。
【００２０】
入出力ユニット２０２は、制御対象機器１５０が割り付けられる複数の入出力端子を備えた入出力デバイス部、電源を備える他のユニット（例えば、ＣＰＵユニット、電源ユニット、等）からの電力供給、又は、外部電源からの電力供給を受ける電力供給部（例えば、電源回路、等）を備えている。ここで、入出力ユニット２０２とは、例えば、Ｉ／Ｏ入出力ユニット、アナログユニット、カウンタユニット、ネットワークユニット、等のＰＬＣを用いて制御対象機器１５０を自動制御する際に、信号を入力及び出力の少なくとも一方を行うことが可能なユニットである。
【００２１】
制御対象機器１５０は、入出力ユニット２０２の入出力端子に割り付けられる機器であり、例えば、センサ、モータ、アクチュエータ、安全機器、等である。
【００２２】
演算装置３００は、上述の制御プログラムを記憶する他に、割付支援装置１としても機能する。図２には、割付支援装置１として機能する演算装置３００のハードウェア構成の一例を示す。割付支援装置１は、割付支援プログラムをインストールして実行する演算装置３００であり、割付支援プログラムを実行する演算部１０１、割付支援プログラムの保存や、データ及び命令の読み書きを行う記憶部１０２、キーボードやマウス、タッチパネル、等の入力部１０３、割付支援プログラムの実行結果等を表示する表示部１０４、ＰＬＣ等と通信を行う通信インターフェース（通信Ｉ／Ｆ）１０５を備えている。
【００２３】
記憶部１０２には、インストールされた割付支援プログラムが保存されている不揮発性記憶部と、割付支援プログラム実行時にワークメモリとなる揮発性記憶部が含まれる。なお、割付支援装置１としては、記憶部１０２に割付支援プログラムがインストールされた、例えば、ノート型コンピュータ、デスクトップ型コンピュータ、タブレット型コンピュータ、スマートフォン、等の演算装置３００を用いることができる。割付支援プログラムは、非一時的な演算端末可読記憶媒体に記憶されており、演算装置３００にインストールされることで機能する。非一時的な演算端末可読記憶媒体としては、例えば、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）、ＤＶＤ−ＲＯＭ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）フラッシュドライブ、等を用いることができる。
【００２４】
図３は、図２で示す演算部１０１及び記憶部１０２を含む演算装置３００で実現される割付支援装置１の機能ブロックを模式的に示す図である。なお、本実施の形態１において、割付支援装置１は、制御対象機器１５０の割り付けの見直しを支援する機能に加え、機械学習を行う割付学習装置２としての機能も有する構成である。本実施の形態１では、割付支援装置１と併せて割付学習装置２の機能ブロックも含めて説明する。
【００２５】
割付支援装置１は、既に稼働している自動制御システムＡＳにおける制御対象機器１５０の割り付けの見直しを支援する装置である。割付支援装置１は、自動制御システムＡＳにおける各種情報を取得する情報取得部１１と、情報取得部１１で取得した情報を入力して、自動制御システムＡＳにおける制御対象機器１５０の割り付けを推論する推論部２０と、推論部２０の演算処理により出力される情報を取得し出力する割付情報出力部１２と、を有している。さらに、割付支援装置１は、自動制御システムＡＳにおける制御対象機器１５０の割り付けを機械学習するための学習部２１を有している。なお、学習部２１は、割付学習装置２の機能ブロックである。
【００２６】
情報取得部１１は、自動制御システムＡＳが備える複数の入出力ユニット２０２における入出力端子と制御対象機器１５０とを対応させた割付情報４００、複数の入出力ユニット２０２に割り付けられた制御対象機器１５０が稼働している時間帯を示す時間帯情報５００、入出力ユニット２０２のユニット消費電力情報６００、制御対象機器１５０の機器消費電力情報７００を含んだ第１入力情報８００を取得するか、又は、複数の入出力ユニット２０２の消費電力と前記制御対象機器１５０の消費電力とに基づく前記自動制御システムＡＳを稼働させたときのシステム電力使用情報９００、上述の割付情報４００を含む第２入力情報１０００を取得する。なお、情報取得部１１が取得する上述の各情報については後述する。
【００２７】
推論部２０は、前処理部２２と演算処理部２６とを備えている。前処理部２２は、情報取得部１１で取得した情報が演算処理部２６で演算処理するために、データの前処理が必要な場合に、推論部２０の演算処理の一部として前処理を行う。なお、前処理とは、情報取得部１１で取得した情報の計算や形式の変更等を含む演算処理のことをいう。演算処置部２６は、後述する学習部２１により機械学習を行うことで生成した学習済モデルを読み出し、情報取得部１１で取得した情報に基づいて、自動制御システムＡＳにおける制御対象機器１５０の割り付けの見直しを推論する。推論部２０での演算処理については後述する。
【００２８】
推論部２０は、第１入力情報８００又は第２入力情報１０００のいずれかが入力され、後述する各演算処理を実行して、第１入力情報８００又は第２入力情報１０００に含まれる割付情報４００の割り付けで割り付けられた自動制御システムＡＳの電力使用量が減少し、且つ、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加する制御対象機器１５０の割り付け状態を推論する。なお、第１入力情報８００又は第２入力情報１０００に含まれる割付情報４００の割り付けで割り付けられた自動制御システムＡＳとは、割り付けの見直しを行う前の自動制御システムＡＳを表している。
【００２９】
割付情報出力部１２は、推論部２０で推論された割り付け情報を見直割付情報１１００として取得して出力する。出力した見直割付情報１１００は、表示部１０４に表示される。
【００３０】
以下に、上述の情報取得部１１が取得する各情報及び割付情報出力部１２が出力する情報について説明する。
【００３１】
図４は、本実施の形態１における割付情報４００の一例を示す図である。図４に示すように、割付情報４００は、自動制御システムＡＳにおいて、自動制御システムＡＳが備える複数の入出力ユニット２０２の入出力端子にどのような制御対象機器１５０が割り付けられているかを示す情報である。図４では、３台の入出力ユニット２０２をそれぞれ入出力ユニット２０２Ａ、２０２Ｂ、２０２Ｃとして示し、入出力ユニット２０２Ａが備える入出力端子を入出力端子Ｘ０、Ｘ１、Ｘ２として示し、入出力ユニット２０２Ｂが備える入出力端子を入出力端子Ｙ０、Ｙ１、Ｙ２として示し、入出力ユニット２０２Ｃが備える入出力端子を入出力端子Ｚ０、Ｚ１、Ｚ２として示している。割付情報４００は、複数の入出力ユニット２０２Ａ、２０２Ｂ、２０２Ｃと複数の入出力端子Ｘｎ、Ｙｎ、Ｚｎと制御対象機器１５０とを特定する情報とが対応付けられている。ここで、制御対象機器１５０を特定する情報とは、機器名、型番、等の機器固有の情報である。図４では、制御対象機器１５０を特定する情報として機器名Ｍ１、Ｍ２・・・Ｍｎを用いている。なお、割付情報４００は、割り付けを見直す前の自動制御システムＡＳにおける割り付け状態を示す情報である。
【００３２】
図５は、時間帯情報５００の一例を示す図である。なお、図５は、図４で示した割付情報４００で示す自動制御システムＡＳの各入出力ユニット２０２及び制御対象機器１５０の稼働時間を示している。図５に示すように、時間帯情報５００は、自動制御システムＡＳにおいて、自動制御システムＡＳが備えるＰＬＣ２００及び入出力ユニット２０２の入出力端子に割り付けられた制御対象機器１５０がどのような時間帯で稼働しているかを示す情報である。ここで時間帯とは１日を０時００分から始まる２４時間として示すものとする。図５では、図４と同様に、３台の入出力ユニットを入出力ユニット２０２Ａ、２０２Ｂ、２０２Ｃとして示し、制御対象機器１５０を機器名Ｍ１、Ｍ２・・・Ｍｎで示している。
【００３３】
図５において、機器稼働開始１は、機器名Ｍｎで特定される制御対象機器１５０が、０時００分から始まる２４時間の時間帯の中で最初に稼働を開始した時刻を示し、機器稼働終了１は、機器稼働開始１で稼働した機器名Ｍｎで特定される制御対象機器１５０が稼働を終了した時刻を示す。つまり、機器稼働開始１の時刻から機器稼働終了１の時刻までの間は、機器名Ｍｎで特定される制御対象機器１５０が稼働している時間帯であることを示す。また、機器稼働開始２は、機器名Ｍｎで特定される制御対象機器１５０が機器稼働終了１の後で、最初に稼働を開始した時刻を示し、機器稼働終了２は、機器稼働開始２で稼働した機器名Ｍｎで特定される制御対象機器１５０が稼働を終了した時刻を示す。つまり、機器稼働開始２の時刻から機器稼働終了２の時刻までの間は、機器名Ｍｎで特定される制御対象機器１５０が稼働している時間帯であることを示し、機器稼働終了１の時刻から機器稼働開始２の時刻までの間は、時間帯の中において、機器名Ｍｎで特定される制御対象機器１５０が稼働していない時間帯であることがわかる。機器稼働開始３及び機器稼働終了３以降についても上記同様である。
【００３４】
また、図５に示すユニット稼働開始１は、入出力ユニット２０２の入出力端子に割り付けられた制御対象機器１５０の内、いずれかが上述の時間帯の中で最初に稼働開始した時刻を示し、ユニット稼働終了１は、入出力ユニット２０２の入出力端子に割り付けられた制御対象機器１５０の全てが上述の時間帯の中で最初に稼働終了した時刻を示す。つまり、入出力ユニット２０２Ａを例に説明すると、ユニット稼働開始１からユニット稼働終了１までの間は、入出力ユニット２０２Ａの入出力端子に割り付けられた機器名Ｍ１、Ｍ２、Ｍ３で特定される制御対象機器１５０のいずれかが稼働しており、入出力ユニット２０２Ａが稼働している時間帯を示している。さらに、ユニット稼働開始２は、ユニット稼働終了１の後で、最初に入出力ユニット２０２の入出力端子に割り付けられた制御対象機器１５０のいずれかが稼働開始した時刻を示し、ユニット稼働終了２は、入出力ユニット２０２の入出力端子に割り付けられた制御対象機器１５０の全てが上述の時間帯の中でユニット稼働開始２に示される時刻の後で、最初に稼働終了した時刻を示す。つまり、入出力ユニット２０２Ａを例に説明すると、ユニット稼働開始２の時刻からユニット稼働終了２の時刻までの間は、入出力ユニット２０２Ａの入出力端子に割り付けられた機器名Ｍ１、Ｍ２、Ｍ３で特定される制御対象機器１５０のいずれかが稼働しており、入出力ユニット２０２Ａが稼働している時間帯を示している。そして、ユニット稼働終了１の時刻からユニット稼働開始２の時刻までの間は、上述の時間帯の中において入出力ユニット２０２Ａの入出力端子に割り付けられた機器名Ｍ１、Ｍ２、Ｍ３で特定される制御対象機器１５０の全てが稼働していないことがわかる。ユニット稼働開始３及びユニット稼働終了３以降についても上記同様である。
【００３５】
なお、図５によれば、割付情報４００で示される自動制御システムＡＳにおける各入出力ユニット２０２Ａ、２０２Ｂ、２０２Ｃは、１日中（２４時間）稼働指定状態であることがわかる。
【００３６】
図６は、ユニット消費電力情報６００の一例を示す図である。図６は、図４で示した割付情報４００で示す自動制御システムＡＳの各入出力ユニット２０２の消費電力を示す情報である。具体的には、図６に示すように、ユニット消費電力情報６００は、自動制御システムＡＳにおいて、自動制御システムＡＳが備える入出力ユニット２０２Ａ、２０２Ｂ、２０２Ｃの消費電力をｋＷ（キロワット）としてそれぞれ示す情報である。各入出力ユニット２０２のユニット消費電力は、入出力ユニット２０２の仕様値（例えば、カタログ値）を使うことができる。
【００３７】
図７は、機器消費電力情報７００の一例を示す図である。図７は、図４で示した割付情報４００で示す自動制御システムＡＳの制御対象機器１５０の消費電力を示す情報である。具体的には、図７に示すように、機器消費電力情報７００は、自動制御システムＡＳにおいて、入出力ユニット２０２の入出力端子に割り付けられた機器名Ｍｎで特定される制御対象機器１５０の消費電力をｋＷ（キロワット）として、それぞれ示す情報である。各制御対象機器１５０の機器消費電力は、制御対象機器の仕様値（例えば、カタログ値）を使うことができる。
【００３８】
第１入力情報８００は、上述の割付情報４００、時間帯情報５００、ユニット消費電力情報６００、機器消費電力情報７００を含む情報である。なお、本実施の形態１では、第１入力情報８００は、割付情報４００、時間帯情報５００、ユニット消費電力情報６００、機器消費電力情報７００の４つの情報で構成されている。
【００３９】
システム電力使用情報９００は、図４で示した割付情報４００で割り付けた自動制御システムＡＳを所定時間稼働させたときの電力使用量（ｋＷｈ：キロワットアワー）を示す情報である。本実施の形態１での電力使用量は、自動制御システムＡＳを制御プログラムに従って１日稼働させたときの電力の使用量を示す。なお、１日とは、０時００分からの２４時間とする。また、電力使用量は入出力ユニットの消費電力（ｋＷ：キロワット）と制御対象機器の消費電力（ｋＷ：キロワット）とに基づいて算出される。
【００４０】
自動制御システムＡＳを所定時間稼働させたときの電力使用量は、以下の数１、数２で示す数式を用いて入出力ユニットの電力使用量（ｋＷｈ：キロワットアワー）と制御対象機器の電力使用量（ｋＷｈ：キロワットアワー）とを算出し、入出力ユニットの使用電力量と制御対象機器の電力使用量とに基づいて算出する。
【００４１】
つまり、自動制御システムＡＳを所定時間稼働させたときの電力使用量の算出は、まず、自動制御システムＡＳに備えられた入出力ユニットが制御プログラムに従い所定時間稼働したときの電力使用量（ｋＷｈ：キロワットアワー）と、入出力ユニット２０２の入出力端子に割り付けられた制御対象機器１５０が制御プログラムに従い所定時間稼働したときの電力使用量（ｋＷｈ：キロワットアワー）とを計算する。これらの電力使用量の計算を、自動制御システムＡＳが備える複数の入出力ユニット２０２及び入出力ユニット２０２の入出力端子に割り付けられた制御対象機器１５０のすべてに対して行い、各電力使用量を加算することで自動制御システムＡＳの電力使用量を算出する。算出した自動制御システムＡＳの電力使用量は、システム電力使用情報９００となる。なお、上述の割付情報４００、時間帯情報５００、ユニット消費電力情報６００、機器消費電力情報７００に基づき、システム電力使用情報９００に含まれる本実施の形態１で示す自動制御システムＡＳの電力使用量は２２９０ｋＷｈである。
【００４２】
【数１】
0006915762.tif 000002
【００４３】
【数２】
0006915762.tif 000003
【００４４】
なお、数１で示す数式で用いる入出力ユニットの消費電力は、入出力ユニットの仕様値（例えば、カタログ値）を使用することができ、入出力ユニットの稼働時間は、１日の中で入出力ユニットに対して電力が供給されている時間を使用することができる。また、数２で示す数式で用いる制御対象機器の消費電力は、制御対象機器の仕様値（例えば、カタログ値）を使用することができ、制御対象機器の稼働時間は、１日の中で制御対象機器に対して電力が供給されている時間を使用することができる。
【００４５】
第２入力情報１０００は、上述の割付情報４００、システム電力使用情報９００を含む情報である。なお、本実施の形態１では、第２入力情報１０００は、割付情報４００とシステム電力使用情報９００との２つの情報で構成されている。
【００４６】
図８は見直割付情報１１００を示す図であり、見直割付情報１１００は、自動制御システムＡＳにおける制御対象機器１５０の割り付けの情報を含んでいる。図９は、見直割付情報１１００に基づいて自動制御システムＡＳにおける入出力ユニット２０２の入出力端子へ制御対象機器１５０を割り付けた場合の、自動制御システムＡＳの１日の稼働状態を示す図である。
【００４７】
見直割付情報１１００は、図８に示すように、入出力ユニット２０２Ａ、２０２Ｂ、２０２Ｃと入出力ユニット２０２Ａ、２０２Ｂ、２０２Ｃの入出力端子Ｘ０、Ｘ１、Ｘ２、Ｙ０、Ｙ１、Ｙ２、Ｚ０、Ｚ１、Ｚ２と各入出力端子に割り付けられる制御対象機器１５０の機器名Ｍ１、Ｍ２・・・Ｍ９と入出力ユニット２０２の稼働時間の合計であるユニット稼働時間と制御対象機器１５０の稼働時間の合計である機器稼働時間と自動制御システムＡＳの電力使用量とを対応させて示すものである。なお、見直割付情報１１００に含まれる、入出力ユニット２０２Ａ、２０２Ｂ、２０２Ｃと入出力ユニット２０２Ａ、２０２Ｂ、２０２Ｃの入出力端子Ｘ０、Ｘ１、Ｘ２、Ｙ０、Ｙ１、Ｙ２、Ｚ０、Ｚ１、Ｚ２と各入出力端子に割り付けられる制御対象機器１５０の機器名Ｍ１、Ｍ２・・・Ｍ９とを対応付けた情報が、自動制御システムＡＳにおける制御対象機器１５０の割り付けの情報である。
【００４８】
また、図９に示すように、見直割付情報１１００に基づく割り付けによれば、入出力ユニット２０２Ａ、２０２Ｂ、２０２Ｃに対して制御対象機器１５０の稼働時間帯に偏りを持たせて割り付けることができる。つまり、入出力ユニット２０２Ａ、２０２Ｂは、自動制御システムＡＳの１日の稼働の中で、割り付けられている制御対象機器１５０のいずれかが常に稼働しているため、入出力ユニット２０２Ａ、２０２Ｂに対しては１日中電力供給が行われていることがわかる。入出力ユニット２０２Ｃは、自動制御システムＡＳの１日の稼働の中で、１１：００から１５：００の間と２１：００から２４：００の間で電力供給を停止することができることがわかる。また、見直割付情報１１００を用いた割り付けによれば、自動制御システムＡＳの電力使用量が２２５５ｋＷｈである。つまり、見直割付情報１１００に基づく割り付けによれば、割付情報４００で割り付けた自動制御システムＡＳの電力使用量よりも、見直割付情報１１００に含まれる割付の情報で割り付けた自動制御システムＡＳの電力使用量が減少していることがわかる。さらに、入出力ユニット２０２Ｃへの電力供給を停止する時間が、割付情報４００で示す自動制御システムＡＳの割り付けにおける入出力ユニット２０２Ｃへの電力供給を停止する時間よりも増加していることがわかる。
【００４９】
図１０は、学習部２１の機能ブロックを模式的に示す図である。学習部２１は、割付学習装置２の機能を実現する機能ブロックであり、自動制御システムＡＳにおける制御対象機器１５０の割り付けの見直しを機械学習する。学習部２１は、図１０に示すように、前処理部２２ａ、学習用データ取得部２３、モデル生成部２４、モデル記憶部２５、を備えている。
【００５０】
前処理部２２ａは、学習部２１に入力されたデータを学習用データとするために前処理が必要な場合に前処理を行う。なお、前処理とは、学習部２１に入力されたデータの計算や形式の変更等を含む演算処理のことをいう。学習用データ取得部２３は、学習部２１での機械学習に必要な学習用データを取得する。本実施の形態１における学習用データについては後述する。
【００５１】
モデル生成部２４は、学習用データに基づいて、割付情報４００で割り付けた前記自動制御システムＡＳの電力使用量が減少し、且つ、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加する制御対象機器１５０の割り付け状態を推論する学習済モデルを生成する。言い換えれば、割付情報４００で割り付けた自動制御システムＡＳの電力使用量よりも、自動制御システムＡＳの電力使用量が減少し、且つ、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間よりも、自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加する制御対象機器１５０の割り付け状態を推論する学習済モデルを生成する。
【００５２】
モデル記憶部２５は、モデル生成部２４で生成された学習済モデルを記憶する。
【００５３】
以下に本実施の形態１に係る学習部２１で行う学習済モデルの生成について説明する。なお、モデル生成部２４が用いる学習アルゴリズムは教師あり学習、教師なし学習、強化学習等の公知のアルゴリズムを用いることができる。なお、学習部２１として演算装置３００を機能させるプログラムは、割付学習プログラムである。
【００５４】
本実施の形態１では、機械学習の一例として、強化学習（Ｒｅｉｎｆｏｒｃｅｍｅｎｔ  Ｌｅａｒｎｉｎｇ）を適用した場合について説明する。強化学習では、ある環境内におけるエージェント（行動主体）が、現在の状態（環境のパラメータ）を観測し、取るべき行動を決定する。エージェントの行動により環境が動的に変化し、エージェントには環境の変化に応じて報酬が与えられる。エージェントはこれを繰り返し、一連の行動を通じて報酬が最も多く得られる行動方針を学習する。強化学習の代表的な手法として、Ｑ学習（Ｑ−ｌｅａｒｎｉｎｇ）やＴＤ学習（ＴＤ−ｌｅａｒｎｉｎｇ）が知られている。例えば、Ｑ学習の場合、行動価値関数Ｑ（ｓ，ａ）の一般的な更新式は数３で表される。
【００５５】
【数３】
0006915762.tif 000004
【００５６】
数３において、ｓｔは時刻ｔにおける環境の状態を表し、ａｔは時刻ｔにおける行動を表す。行動ａｔにより、状態はｓｔ＋１に変わる。ｒｔ＋１はその状態の変化によってもらえる報酬を表し、γは割引率を表し、αは学習係数を表す。なお、γは０＜γ≦１、αは０＜α≦１の範囲とする。本実施の形態１では、「自動制御システムＡＳを稼働させたときの電力使用情報」が行動ａｔとなり、「自動制御システムＡＳにおける制御対象機器１５０の割付情報４００」が状態ｓｔとなり、時刻ｔの状態ｓｔにおける最良の行動ａｔを学習する。
【００５７】
なお、自動制御システムＡＳを稼働させたときの電力使用情報とは、割付情報４００で割り付けた自動制御システムを稼働させたときの入出力ユニット２０２の消費電力と制御対象機器１５０の消費電力とに基づいて算出された自動制御システムＡＳの電力使用量を含む情報であり、自動制御システムＡＳにおける制御対象機器１５０の割付情報４００とは、自動制御システムＡＳに含まれる入出力ユニット２０２の入出力端子と制御対象機器１５０とを対応させた情報である。
【００５８】
数３で表される更新式は、時刻ｔ＋１における最もＱ値の高い行動ａの行動価値Ｑが、時刻ｔにおいて実行された行動ａの行動価値Ｑよりも大きければ、行動価値Ｑを大きくし、逆の場合は、行動価値Ｑを小さくする。換言すれば、時刻ｔにおける行動ａの行動価値Ｑを、時刻ｔ＋１における最良の行動価値に近づけるように、行動価値関数Ｑ（ｓ，ａ）を更新する。それにより、或る環境における最良の行動価値が、それ以前の環境における行動価値に 順次伝播していくようになる。
【００５９】
報酬計算部２４Ｒは、自動制御システムＡＳを稼働させたときの電力使用情報、自動制御システムＡＳにおける制御対象機器１５０の割付情報４００に基づいて報酬を計算する。報酬計算部２４Ｒは、割付情報４００で割り付けた自動制御システムＡＳを稼働させたときの入出力ユニット２０２の消費電力と制御対象機器１５０の消費電力とに基づいて算出された自動制御システムＡＳの電力使用量（ｋＷｈ）と予め定められた第１閾値との差に基づいて、第１報酬ｒ１を計算する。例えば、自動制御システムＡＳを稼働させたときの電力使用情報に含まれる電力使用量が第１閾値より小さい場合には第１報酬ｒ１を増大させ（例えば「第１閾値から電力使用量の値を減算した正の値」とする）、他方、自動制御システムＡＳを稼働させたときの電力使用情報に含まれる電力使用量が第１閾値より大きい場合には第１報酬ｒ１を低減する（例えば「所定の閾値から電力使用量の値を減算した負の値」とする）。
【００６０】
なお、第１閾値とは、学習させる際の任意の数値であり、電力使用量の数値を参考として決定することができる。また、第１報酬ｒ１とは、数３で表した更新式の報酬ｒｔ＋１を示すものである。
【００６１】
関数更新部２４Ｕは、報酬計算部２４Ｒによって計算される第１報酬ｒ１に従って、割付情報４００で割り付けた前記自動制御システムＡＳの電力使用量が減少し、且つ、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加する制御対象機器１５０の割り付け状態を決定するための関数を更新し、モデル記憶部２５に出力する。例えばＱ学習の場合、数３で表される行動価値関数Ｑ（ｓｔ，ａｔ）を割付情報４００で割り付けた前記自動制御システムＡＳの電力使用量が減少する制御対象機器１５０の割り付け状態を算出するための関数として用いることができる。また、行動価値関数Ｑ（ｓｔ，ａｔ）を割付情報４００で割り付けた前記自動制御システムＡＳの電力使用量が減少し、且つ、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加する制御対象機器１５０の割り付け状態を算出するための関数として用いることもできる。
【００６２】
以上のような学習を繰り返し実行する。モデル記憶部２５は、関数更新部２４Ｕによって更新された行動価値関数Ｑ（ｓｔ，ａｔ）、すなわち、学習済モデルを記憶する。
【００６３】
図１１は、本実施の形態１に係る学習部２１で機械学習により学習済モデルを生成する動作を示すフローチャートである。
【００６４】
図１１に示すように、学習部２１は、上述の第１入力情報８００と構成が同様の学習用第１入力情報８００、又は、上述の第２入力情報１０００と構成が同様の学習用第２入力情報１０００のいずれかの入力を受け付ける（ステップＳ１０１）。入力された学習用第１入力情報８００、又は、学習用第２入力情報１０００に基づき、自動制御システムＡＳにおける制御対象機器１５０の学習用割付情報４００と、自動制御システムＡＳを稼働させたときの学習用電力使用情報とを含む学習用データを取得する（ステップＳ１０２）。取得した学習用データに基づいて、割付情報４００で割り付けた前記自動制御システムＡＳの電力使用量が減少し、且つ、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加する制御対象機器１５０の割り付け状態を推論する学習済モデルを生成する（ステップＳ１０３）。生成した学習済モデルを記憶する（ステップＳ１０４）。以下にステップＳ１０２及びステップＳ１０３について詳述する。
【００６５】
ステップＳ１０２において、入力された入力情報が学習用第１入力情報８００である場合に、学習用データを取得するために前処理部２２ａにより、学習用第１入力情報８００に含まれる学習用時間帯情報５００、学習用ユニット消費電力情報６００、学習用機器消費電力情報７００に基づいて、自動制御システムＡＳを稼働させたときの学習用電力使用情報を算出する。具体的には上述した数１、数２で示した数式に相当するシステム電力使用量計算用関数を記憶部１０２に記憶しておき、前処理部２２ａは、記憶部１０２から読み出して、システム電力使用情報９００に相当する情報を算出する。学習用第１入力情報８００に含まれている学習用割付情報４００と、前処理部２２ａで算出した自動制御システムＡＳを稼働させたときの学習用電力使用情報と、を学習用データとして学習用データ取得部２３が取得する。
【００６６】
また、入力された入力情報が学習用第２入力情報１０００である場合は、学習用第２入力情報１０００に含まれる学習用割付情報４００と、学習用システム電力使用情報９００と、を学習用データとして学習用データ取得部２３が取得する。なお、学習用システム電力使用情報９００は、学習用電力使用情報である。
【００６７】
ステップＳ１０３において、モデル生成部２４は、自動制御システムＡＳを稼働させたときの学習用電力使用情報、自動制御システムＡＳにおける制御対象機器１５０の学習用割付情報４００に基づいて第１報酬ｒ１を計算する。具体的には、報酬計算部２４Ｒは、自動制御システムＡＳを稼働させたときの学習用電力使用情報、自動制御システムＡＳにおける制御対象機器１５０の学習用割付情報４００を取得し、予め定められた第１閾値と学習用電力使用情報に含まれる電力使用量（ｋＷｈ）との差に基づいて第１報酬ｒ１を増加させるか（ステップＳ１０３−Ａ）又は第１報酬ｒ１を減じるか（ステップＳ１０３−Ｂ）を判断する。
【００６８】
報酬計算部２４Ｒは、第１報酬ｒ１を増大させると判断した場合に、ステップＳ１０３−Ａにおいて第１報酬ｒ１を増大させる。一方、報酬計算部２４Ｒは、第１報酬ｒ１を減少させると判断した場合に、ステップＳ１０３−Ｂにおいて第１報酬ｒ１を減少させる。
【００６９】
そして、ステップＳ１０３−Ｃにおいて、関数更新部２４Ｕは、報酬計算部２４Ｒによって計算された第１報酬ｒ１に基づいて、モデル記憶部２５が記憶する数３で表される行動価値関数Ｑ（ｓｔ，ａｔ）を更新する。
【００７０】
学習部２１は、以上のステップＳ１０２からＳ１０３までのステップを、学習用割付情報４００の異なる自動制御システムＡＳに対して繰り返し実行し、行動価値関数Ｑ（ｓｔ，ａｔ）を学習済モデルとして生成する。
【００７１】
なお、上述した学習用割付情報４００、学習用時間帯情報５００、学習用ユニット消費電力情報６００、学習用機器消費電力情報７００、学習用第１入力情報８００、学習用システム電力使用情報９００、及び学習用第２入力情報１０００（これらをまとめて「学習用データを得るための情報」ともいう）は、学習部２１での機械学習に用いる情報である。学習用データを得るための情報は、後述する推論部２０での自動制御システムＡＳにおける制御対象機器１５０の割り付け状態を推論する演算処理を行う際に入力される、割付情報４００、時間帯情報５００、ユニット消費電力情報６００、機器消費電力情報７００、第１入力情報８００、システム電力使用情報９００、及び第２入力情報１０００（これらをまとめて「推論用の情報」ともいう）と区別するために用いた用語である。学習用データを得るための情報は、推論用の情報に対して、それぞれの情報構成は同じであり、各情報を示す具体的な数値等の内容の異なる情報である。
【００７２】
以下に、本実施の形態１に係る割付支援プログラム及び割付支援装置１の動作について図を用いて説明する。
【００７３】
図１２は、本実施の形態１に係る割付支援プログラム及び割付支援装置１の動作を示すフローチャートである。割付支援装置１はインストールされた割付支援プログラムを起動することで動作を開始できる状態となる。
【００７４】
ユーザは、稼働させている自動制御システムＡＳの割付情報４００、時間帯情報５００、自動制御システムＡＳに使用している入出力ユニットのユニット消費電力情報６００、機器消費電力情報７００の４つの情報で構成される第１入力情報８００、又は、稼働させている自動制御システムＡＳの割付情報４００、システム電力使用情報９００の２つの情報で構成される第２入力情報１０００のいずれかを準備する。
【００７５】
そして、準備した第１入力情報８００又は第２入力情報１０００のいずれかを割付支援装置１に入力する。入力された第１入力情報８００又は第２入力情報１０００は、記憶部１０２に記憶される。記憶部１０２に記憶されている第１入力情報８００又は第２入力情報１０００を、情報取得部１１が読み出して取得する（ステップＳ２０１）。
【００７６】
次に、情報取得部１１が取得した第１入力情報８００又は第２入力情報１０００のいずれかが、推論部２０に入力される（ステップＳ２０２）。学習装置部２１は、入力された情報に基づいた演算処理を実行する。ここで、入力された情報に基づく推論部２０の演算処理について具体的に説明する。
【００７７】
推論部２０に入力された情報が第１入力情報８００である場合は、第１入力情報８００は、前処理部２２により第１演算処理が実行される（ステップＳ２０３）。具体的には、上述した数１、数２で示される数式に相当するシステム電力使用計算用関数を記憶部１０２に記憶しておき、前処理部２２は、記憶部１０２から読み出して、第１入力情報８００に含まれる、時間帯情報５００、自動制御システムＡＳに使用している入出力ユニットのユニット消費電力情報６００、機器消費電力情報７００に基づき、システム電力使用情報９００に相当する情報を算出する。
【００７８】
続いて、ステップＳ２０２で推論部２０に入力された第１入力情報８００に含まれていた割付情報４００と、ステップＳ２０３で第１演算処理を行い取得した情報と、に基づき、演算処理部２６は、学習済モデルを使用した第２演算処理を実行する（ステップＳ２０４）。つまり、演算処理部２６は、学習部２１のモデル記憶部２５に記憶されている学習済みの学習済モデルを読み出して、第２演算処理を実行し、割付情報４００で割り付けた前記自動制御システムＡＳの電力使用量が減少する制御対象機器１５０の割り付け状態を推論し、推論の結果を出力する。もしくは、演算処理部２６は、第２演算処理を実行し、割付情報４００で割り付けた前記自動制御システムＡＳの電力使用量が減少し、且つ、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加する制御対象機器１５０の割り付け状態を推論し、推論の結果を出力する。
【００７９】
言い換えれば、演算処理部２６は、第２演算処理を実行して、割付情報４００で割り付けた自動制御システムＡＳの電力使用量よりも、自動制御システムＡＳの電力使用量が減少する制御対象機器１５０の割り付け状態を推論し、推論の結果を出力する。もしくは、演算処理部２６は、第２演算処理を実行して、割付情報４００で割り付けた自動制御システムＡＳの電力使用量よりも、自動制御システムＡＳの電力使用量が減少し、且つ、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間よりも、自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加する制御対象機器１５０の割り付け状態を推論し、推論の結果を出力する。
【００８０】
また、推論部２０に入力された情報が第２入力情報１０００である場合は、第２入力情報１０００にシステム電力使用情報９００を含んでいるため、上述のステップＳ２０３で行った第１演算処理が不要となるため、ステップＳ２０２の後、ステップＳ２０４を実行する。第２入力情報が入力された場合は、ステップＳ２０４で行う第２演算処理について、第２入力情報１０００を構成する割付情報４００とシステム電力使用情報９００に基づいて実行する。つまり、推論部２０が行う推論とは、上述の演算処理であり、第１入力情報８００が入力された場合は、第１演算処理及び第２演算処理を指し、第２入力情報１０００が入力された場合は、第２演算処理を指す。
【００８１】
そして、割付情報出力部１２は、推論部２０の演算処理部２６が出力した結果を、見直割付情報１１００として取得して出力する（ステップＳ２０５）。ステップＳ２０５を完了することで、割付支援プログラム及び割付支援装置１は動作を終了する。なお、割付情報出力部１２は、見直割付情報１１００に含まれる、入出力ユニットと入出力ユニットの入出力端子と各入出力端子に割り付けられる制御対象機器１５０とを対応付けた自動制御システムＡＳにおける制御対象機器１５０の割り付けの情報を取得して出力するようにしてもよい。
【００８２】
以上により、本実施の形態１における割付支援プログラム及び割付支援装置１は、第１入力情報８００、又は、第２入力情報１０００のいずれかを取得する情報取得部１１、第１入力情報８００、又は、第２入力情報１０００が入力され、推論部２０の学習済モデルを用いた推論により出力された、見直割付情報１１００を推論部２０から取得して出力する割付情報出力部１２を有する。これにより、自動制御システムＡＳにおける制御対象機器１５０の割り付けを、割付情報４００で割り付けた前記自動制御システムＡＳの電力使用量が減少するように見直す指標である自動制御システムＡＳにおける制御対象機器１５０の割り付けの情報を提供することができる。あるいは、割付情報４００で割り付けた前記自動制御システムＡＳの電力使用量が減少し、且つ、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加するように見直す指標である自動制御システムＡＳにおける制御対象機器１５０の割り付けの情報を提供することができる。
【００８３】
したがって、本実施の形態１における見直割付情報１１００を用いた自動制御システムＡＳの割り付けによれば、自動制御システムＡＳに割り付けられた制御対象機器１５０の稼働時間帯を、各入出力ユニット２０２に対して偏らせることで、自動制御システムＡＳの電力使用量を低減することができる。また、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加する。ここで、入出力ユニット２０２への電力供給を停止するとは、入出力ユニット２０２の全ての機能を停止するように電力供給を停止することとしてもよく、また、入出力ユニット２０２の備える入出力デバイス全体のへの電力供給を停止することとしてもよい。
【００８４】
なお、学習部２１が、上述のように割付情報４００と自動制御システムＡＳを稼働させたときの電力使用情報を含む学習用データに基づいて、学習済モデルを生成しているため、割付情報４００で特定される自動制御システムＡＳにおける制御対象機器１５０の割り付け状態によって、自動制御システムＡＳが稼働したときの電力使用量がどのように変化するかを推論することができる。そして、自動制御システムＡＳが稼働したときの電力使用量は、自動制御システムＡＳに含まれる入出力ユニット２０２への電力供給が行われている場合は、電力使用量が高くなる傾向にあり、入出力ユニット２０２への電力供給が停止されている場合は低くなる傾向にある。したがって、自動制御システムＡＳが稼働したときの電力使用量が低い割り付け状態を推論することができ、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加する制御対象機器１５０の割り付け状態を推論することができる。
【００８５】
実施の形態２．
本発明の実施の形態２に係る割付支援プログラム、割付支援装置、割付学習プログラム、割付学習装置について図面を用いて説明する。本実施の形態２においても、割付支援プログラムに割付学習プログラムを含み、割付支援装置が割付学習装置としての機能を有する形態として説明する。なお、上述の実施の形態１と同様の構成については、同じ符号を用いて記載し、具体的な説明は省略する。以下、実施の形態１と異なる構成について具体的に説明する。
【００８６】
図１３は、本実施の形態２に係る割付支援装置１ｂの機能ブロックの一例を模式的に示す図である。なお、本実施の形態２においても上述の実施の形態１と同様に、割付支援装置１ｂは、制御対象機器１５０の割り付けの見直しを支援する機能に加え、機械学習を行う割付学習装置２ｂとしての機能も有する構成である。本実施の形態２においても、割付支援装置１ｂと併せて割付学習装置２ｂの機能ブロックも含めて説明する。
【００８７】
割付支援装置１ｂは、既に稼働している自動制御システムＡＳにおける制御対象機器１５０の割り付けの見直しを支援する装置である。割付支援装置１ｂは、自動制御システムＡＳにおける各種情報を取得する情報取得部１１ｂと、情報取得部１１ｂで取得した情報を入力して、自動制御システムＡＳにおける制御対象機器１５０の割り付けを推論する推論部２０ｂと、推論部２０ｂの演算処理により出力される情報を取得し出力する割付情報出力部１２ｂと、を有している。さらに、割付支援装置１ｂは、自動制御システムＡＳにおける制御対象機器１５０の割り付けを機械学習するための学習部２１ｂを有している。なお、学習部２１ｂは、割付学習装置２ｂの機能ブロックである。
【００８８】
情報取得部１１ｂは、割付情報４００、時間帯情報５００、ユニット消費電力情報６００、機器消費電力情報７００、割付情報４００に対応する各入出力ユニット２０２の各入出力端子への信号の送信回数を示す回数情報４０１を含んだ第１入力情報８００ｂを取得するか、又は、システム電力使用情報９００、割付情報４００、回数情報４０１を含む第２入力情報１０００ｂを取得する。回数情報４０１については後述する。
【００８９】
推論部２０ｂは、前処理部２２と演算処理部２６ｂとを備えている。前処理部２２は実施の形態１と同様の機能を有する。演算処理部２６ｂは、後述する学習部２１ｂにより機械学習を行うことで生成した学習済モデルを読み出し、情報取得部１１ｂで取得した情報に基づいて、自動制御システムＡＳにおける制御対象機器１５０の割り付けの見直しを推論する。推論部２０での演算処理については後述する。
【００９０】
推論部２０ｂは、第１入力情報８００ｂ又は第２入力情報１０００ｂのいずれを入力し、後述する各演算処理を実行する。割付情報４００で割り付けた前記自動制御システムＡＳの電力使用量が減少し、且つ、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加するような割り付け状態を推論する。さらに、この割り付け状態は、割付情報４００で割り付けた自動制御システムＡＳの少なくとも１つの入出力ユニット２０２の有する複数の入出力端子に送信される信号の送信回数のうちの最大値が減少するように推論部２０ｂにより推論される。
【００９１】
割付情報出力部１２ｂは、推論部２０ｂで推論された割り付け状態を見直割付情報１１００ｂとして取得し出力する。出力された見直割付情報１１００ｂは、表示部１０４に表示される。
【００９２】
以下に、上述の情報取得部１１ｂが取得する各情報及び割付情報出力部１２ｂが出力する情報について説明する。なお、情報取得部１１ｂが取得する各情報のうち、割付情報４００、時間帯情報５００、ユニット消費電力情報６００、機器消費電力情報７００、システム電力使用情報９００は上述の実施の形態１と同様であるため説明を省略する。
【００９３】
図１４は、回数情報４０１の一例を示す図である。図１４に示すように、回数情報４０１は、割付情報４００に対応する各入出力ユニット２０２の各入出力端子への信号の送信回数を示す。具体的には、回数情報４０１は、図４と同様に３台の入出力ユニット２０２Ａ、２０２Ｂ、２０２Ｃと、各入出力ユニット２０２Ａ、２０２Ｂ、２０２Ｃの入出力端子Ｘ０、Ｘ１、Ｘ２、Ｙ０、Ｙ１、Ｙ２、Ｚ０、Ｚ１、Ｚ２と、を対応させて示し、各入出力端子へ信号が送信された回数と各入出力端子とを対応させて示している。なお、各入出力端子へ信号が送信された回数は、ＣＰＵユニット２０１から入出力端子へ信号が送信された回数、及び、制御対象機器１５０から入出力端子へ信号が送信された回数の合計の回数である。なお、図１４に示すように、本実施の形態２では入出力ユニット２０２Ａの入出力端子の中で信号の送信回数が最も多いのは、入出力端子Ｘ１であり、１８４２９回であった。同様に入出力ユニット２０２Ｂの入出力端子の中で信号の送信回数が最も多いのは、入出力端子Ｙ０であり、１５３２０回であり、入出力ユニット２０２Ｃの入出力端子の中で信号の送信回数が最も多いのは、入出力端子Ｚ０であり、１９０７９回であった。
【００９４】
本実施の形態２において、第１入力情報８００ｂは、上述の割付情報４００、時間帯情報５００、ユニット消費電力情報６００、機器消費電力情報７００、回数情報４０１を含む情報である。なお、本実施の形態２では、第１入力情報８００ｂは、割付情報４００、時間帯情報５００、ユニット消費電力情報６００、機器消費電力情報７００、回数情報４０１の５つの情報で構成されている。
【００９５】
また、本実施の形態２において、第２入力情報１０００ｂは、上述の割付情報４００、システム電力使用情報９００、回数情報４０１を含む情報である。なお、本実施の形態２では、第２入力情報１０００ｂは、割付情報４００とシステム電力使用情報９００と回数情報４０１との３つの情報で構成されている。
【００９６】
図１５は、見直割付情報１１００ｂを示す図であり、見直割付情報１１００ｂは、自動制御システムＡＳにおける制御対象機器１５０の割り付けの情報を含んでいる。図１６は、見直割付情報１１００ｂに基づいて自動制御システムＡＳにおける入出力ユニット２０２の入出力端子へ制御対象機器１５０を割り付けた場合の、自動制御システムＡＳの１日の稼働状態を示す図である。
【００９７】
見直割付情報１１００ｂは、図１５に示すように、入出力ユニット２０２Ａ〜２０２Ｃと、入出力ユニット２０２Ａ〜２０２Ｃの備える入出力端子Ｘ０〜Ｚ２と、各入出力端子に割り付けられる制御対象機器１５０の機器名Ｍ１〜Ｍ９と、入出力端子に信号が送信された回数である送信回数と、入出力ユニット２０２の稼働時間の合計であるユニット稼働時間と、制御対象機器１５０の稼働時間の合計である機器稼働時間と、自動制御システムＡＳの電力使用量と、を対応させて示すものである。なお、見直割付情報１１００ｂに含まれる、入出力ユニット２０２Ａ〜２０２Ｃと、入出力ユニット２０２Ａ〜２０２Ｃの入出力端子Ｘ０〜Ｚ２と、各入出力端子に割り付けられる制御対象機器１５０の機器名Ｍ１〜Ｍ９と、を対応付けた情報が、自動制御システムＡＳにおける制御対象機器１５０の割り付けの情報である。見直割付情報１１００ｂに基づく割り付けによれば、入出力ユニット２０２Ａ、２０２Ｂ、２０２Ｃに対して制御対象機器１５０の稼働時間帯に偏りを持たせ、且つ、各入出力ユニット２０２Ａ、２０２Ｂ、２０２Ｃに対して信号の送信回数に偏りを持たせて割り付けることができる。
【００９８】
つまり、図１６に示すように、入出力ユニット２０２Ａ、２０２Ｂは、自動制御システムＡＳの１日の稼働の中で、割り付けられている制御対象機器１５０のいずれかが常に稼働しているため、入出力ユニット２０２Ａ、２０２Ｂに対しては1日中電力供給が行われていることがわかる。入出力ユニット２０２Ｃは、自動制御システムＡＳの１日の稼働の中で、１２：００から１５：００の間と２２：００から２４：００の間で電力供給を停止することができることがわかる。また、図１５に示すように、見直割付情報１１００ｂを用いた割り付けによれば、自動制御システムＡＳの電力使用量が２２６５ｋＷｈである。つまり、見直割付情報１１００ｂに基づく割り付けによれば、自動制御システムＡＳの電力使用量が減少していることがわかる。さらに、入出力ユニット２０２Ｃへの電力供給を停止する時間が、割付情報４００で示す自動制御システムＡＳの割り付けにおける入出力ユニット２０２Ｃへの電力供給を停止する時間よりも増加していることがわかる。
【００９９】
また、図１５に示すように、入出力ユニット２０２Ａと入出力ユニット２０２Ｃとは、入出力ユニット２０２Ａ、２０２Ｃのそれぞれが有する複数の入出力端子に送信される信号の送信回数のうちのそれぞれ入出力ユニット２０２Ａ、２０２Ｃに対する最大値が、図１４に示す、割付情報４００で示される自動制御システムＡＳの割り付けにおける入出力ユニット２０２Ａ、２０２Ｃの有する複数の入出力端子に送信される信号の送信回数のうちのそれぞれ入出力ユニット２０２Ａ、２０２Ｃに対する最大値よりも小さくなっている。
【０１００】
具体的には、図１４に示す、割付情報４００で割り付けた自動制御システムＡＳの入出力ユニット２０２Ａのそれぞれの入出力端子に送信される信号の送信回数のうちの最大値は１８４２９回であったが、見直割付情報１１００ｂに含まれる割り付けの情報で割り付けた自動制御システムＡＳの入出力ユニット２０２Ａのそれぞれの入出力端子に送信される信号の送信回数のうちの最大値は７９５９回である。また、割付情報４００で割り付けた自動制御システムＡＳの入出力ユニット２０２Ｃのそれぞれの入出力端子に送信される信号の送信回数のうちの最大値は１９０７９回であったが、見直割付情報１１００ｂに含まれる割り付けの情報で割り付けた入出力ユニット２０２Ｃのそれぞれの入出力端子に送信される信号の送信回数のうちの最大値は２６１５回である。
【０１０１】
図１７は、実施の形態２に係る学習部２１ｂの機能ブロックの一例を示す図である。学習部２１ｂは、割付学習装置２ｂの機能を実現する機能ブロックであり、自動制御システムＡＳにおける制御対象機器１５０の割り付けの見直しを機械学習する。図１６に示すように、学習部２１ｂは、上述の実施の形態１と同様に機能する前処理部２２ａ、本実施の形態２における学習用データを取得する学習用データ取得部２３ｂ、学習済モデルの生成に影響を与える情報を取得する重付情報取得部２７、学習済モデルを生成するモデル生成部２５ｂ、学習済モデルを記憶するモデル記憶部２５ｂを備えている。
【０１０２】
重付情報取得部２７は、後述の学習済モデル生成の際の報酬に重み付けを行う重付情報を取得する。学習用データ取得部２３ｂは、学習部２１ｂでの機械学習に必要な学習用データを取得する。本実施の形態２における学習用データについては後述する。
【０１０３】
モデル生成部２４ｂは、学習用データ及び重付情報に基づいて、割付情報４００で割り付けた前記自動制御システムＡＳの電力使用量が減少し、且つ、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加するような割り付け状態を推論する学習済モデルを生成する。さらに、この学習済モデルは、割付情報４００で割り付けた自動制御システムＡＳの少なくとも１つの入出力ユニット２０２の有する複数の入出力端子に送信される信号の送信回数のうちの最大値が減少するように生成されている。
【０１０４】
以下に本実施の形態２に係る学習部２１ｂで行う学習済モデルの生成について説明する。なお、モデル生成部２４ｂが用いる学習アルゴリズムは教師あり学習、教師なし学習、強化学習等の公知のアルゴリズムを用いることができる。なお、学習部２１ｂとして演算装置３００を機能させるプログラムは、割付学習プログラムである。
【０１０５】
本実施の形態２では、上述の実施の形態１と同様に、機械学習の強化学習（Ｒｅｉｎｆｏｒｃｅｍｅｎｔ  Ｌｅａｒｎｉｎｇ）を適用した場合について説明する。強化学習の代表的な手法である、Ｑ学習を用いる場合、行動価値関数Ｑ（ｓ，ａ）の一般的な更新式は上述の数３で表される。
【０１０６】
本実施の形態２では、数３において、「自動制御システムＡＳを稼働させたときの電力使用情報」及び「自動制御システムＡＳに含まれる複数の入出力ユニット２０２のそれぞれが有する複数の入出力端子に送信される信号の送信回数を示す回数情報４０１」が行動ａｔとなり、「自動制御システムＡＳにおける制御対象機器１５０の割付情報４００」が状態ｓｔとなり、時刻ｔの状態ｓｔにおける最良の行動ａｔを学習する。本実施の形態２では、後述する重付情報取得部２７で取得した重付情報を考慮して学習を行う。
【０１０７】
なお、自動制御システムＡＳを稼働させたときの電力使用情報とは、割付情報４００で割り付けた自動制御システムを稼働させたときの入出力ユニット２０２の消費電力と制御対象機器１５０の消費電力とに基づいて算出された自動制御システムＡＳの電力使用量を含む情報であり、自動制御システムＡＳにおける制御対象機器１５０の割付情報４００とは、自動制御システムＡＳに含まれる入出力ユニット２０２の入出力端子と制御対象機器１５０とを対応させた情報である。
【０１０８】
重付情報取得部２７は、学習済モデル生成の際に報酬に重み付けを行う重付情報を取得する。重付情報は、後述する報酬計算部２４Ｒｂで計算する報酬に対して作用する係数であり、０．０から０．１の範囲が設定可能である。重付情報取得部２７は、ユーザが入力部１０３を介して設定した係数を重付情報として取得する。本実施の形態２では、後述する第１報酬ｒ１及び第２報酬ｒ２のそれぞれに対して作用する２つの係数を重付情報として取得する。例えば、第１報酬ｒ１の影響を大きくして学習させたい場合は、第１報酬ｒ１に対して作用する係数を大きく設定し（例えば「０．８」）、第２報酬ｒ２に対して作用する係数を第１報酬ｒ１に対して作用する係数よりも小さく設定する（例えば、「０．６」）。
【０１０９】
報酬計算部２４Ｒｂは、自動制御システムＡＳを稼働させたときの電力使用情報、自動制御システムＡＳに含まれる複数の入出力ユニット２０２のそれぞれが有する複数の入出力端子に送信される信号の送信回数を示す回数情報４０１、自動制御システムＡＳにおける制御対象機器１５０の割付情報４００、重付情報に基づいて報酬を計算する。
【０１１０】
報酬計算部２４Ｒｂは、電力使用量における所定の閾値であり、予め定められた第１閾値（以下、本実施の形態２では、便宜上「電力閾値」という）と電力使用量（ｋＷｈ）との差に基づいて、第１報酬ｒ１を計算し、第１報酬ｒ１に対して重付情報に基づく係数を乗算する。例えば、自動制御システムＡＳを稼働させたときの電力使用情報に含まれる電力使用量が電力閾値より小さい場合には第１報酬ｒ１を増大させ（例えば「電力閾値から電力使用量の値を減算した正の値」とし）、増大させた第１報酬ｒ１に対して係数を乗算する。他方、自動制御システムＡＳを稼働させたときの電力使用情報に含まれる電力使用量が電力閾値より大きい場合には第１報酬ｒ１を低減し（例えば「電力閾値から電力使用量の値を減算した負の値」とし）、低減した第１報酬ｒ１に対して係数を乗算する。なお電力閾値とは、学習させる際の任意の数値であり、電力使用量の数値を参考として決定することができる。
【０１１１】
また、報酬計算部２４Ｒｂは、入出力端子に送信される信号の送信回数における所定の閾値であり、予め定められた第２閾値（以下、本実施の形態２では、便宜上「回数閾値」という）と複数の入出力ユニット２０２のそれぞれの入出力端子への信号の送信回数のうちの最大値を合計した合計回数との差に基づいて、第２報酬ｒ２を計算する。
【０１１２】
なお、合計回数とは、例えば、以下の手法にて求めることができる。まず、自動制御システムＡＳを稼働させたときの入出力ユニット２０２のそれぞれの入出力端子へ送信される信号の送信回数のうちで、最も送信回数の多い入出力端子に該当する送信回数を入出力ユニット２０２における送信回数の最大値とする。この最大値を各入出力ユニットに対して抽出する。次に、抽出した複数の最大値を合計して合計回数とする。
【０１１３】
報酬計算部２４Ｒｂは、自動制御システムＡＳに含まれる複数の入出力ユニット２０２のそれぞれが有する複数の入出力端子に送信される信号の送信回数を示す回数情報４０１に含まれる合計回数が回数閾値より小さい場合には第２報酬ｒ２を増大させ（例えば「回数閾値から合計回数の値を減算した正の値」とし）、増大させた第２報酬ｒ２に対して係数を乗算する。他方、自動制御システムＡＳに含まれる複数の入出力ユニット２０２のそれぞれが有する複数の入出力端子に送信される信号の送信回数を示す回数情報４０１に含まれる合計回数が回数閾値より大きい場合には第２報酬ｒ２を低減し（例えば「電力閾値から電力使用量の値を減算した負の値」とし）、低減した第２報酬ｒ２に対して係数を乗算する。なお回数閾値とは、学習させる際の任意の数値であり、入出力端子への信号の送信回数の数値を参考として決定することができる。
【０１１４】
そして、報酬計算部２４Ｒｂは、第１報酬ｒ１と第２報酬ｒ２とを加算して、最終報酬を決定する。なお、ここでの最終報酬は、数３で表した更新式の報酬ｒｔ＋１を示すものである。
【０１１５】
関数更新部２４Ｕｂは、報酬計算部２４Ｒｂによって計算される最終報酬に従って、割付情報４００で割り付けた前記自動制御システムＡＳの電力使用量が減少し、且つ、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加し、且つ、割付情報４００で割り付けた自動制御システムＡＳの少なくとも１つの入出力ユニット２０２の有する複数の入出力端子に送信される信号の送信回数のうちの最大値が減少する制御対象機器１５０の割り付け状態を決定するための関数を更新し、モデル記憶部２５に出力する。
【０１１６】
例えばＱ学習の場合、数３で表される行動価値関数Ｑ（ｓｔ，ａｔ）を割付情報４００で割り付けた前記自動制御システムＡＳの電力使用量が減少し、且つ、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加するような割り付け状態を算出するための関数として用いる。さらに、この関数で算出される割り付け状態は、割付情報４００で割り付けた自動制御システムＡＳの少なくとも１つの入出力ユニット２０２の有する複数の入出力端子に送信される信号の送信回数のうちの最大値が減少する割り付け状態である。
【０１１７】
以上のような学習を繰り返し実行する。モデル記憶部２５ｂは、関数更新部２４Ｕｂによって更新された行動価値関数Ｑ（ｓｔ，ａｔ）、すなわち、学習済モデルを記憶する。
【０１１８】
図１８は、本実施の形態２に係る学習部２１ｂで機械学習により学習済モデルを生成する動作を示すフローチャートである。
【０１１９】
図１８に示すように、学習部２１は、上述の第１入力情報８００ｂと構成が同様の学習用第１入力情報８００ｂ、又は、上述の第２入力情報１０００ｂと構成が同様の学習用第２入力情報１０００ｂのいずれかの入力を受け付ける（ステップＳ３０１）。重付情報取得部２７により、重付情報を取得する（ステップＳ３０２）。入力された学習用第１入力情報８００ｂ、又は、学習用第２入力情報１０００ｂに基づき、自動制御システムＡＳにおける制御対象機器１５０の学習用割付情報４００と、自動制御システムＡＳを稼働させたときの学習用電力使用情報と、学習用割付情報４００に対応する自動制御システムＡＳに含まれる複数の入出力ユニット２０２のそれぞれが有する複数の入出力端子に送信される信号の送信回数を示す学習用回数情報４０１とを含む学習用データを取得する（ステップＳ３０３）。取得した学習用データに基づいて、制御対象機器１５０の割り付け状態を推論する学習済モデルを生成する（ステップＳ３０４）。生成した学習済モデルを記憶する（ステップＳ３０５）。以下にステップＳ３０３及びステップＳ３０４について詳述する。
【０１２０】
ステップＳ３０３において、入力された入力情報が学習用第１入力情報８００ｂである場合に、上述の実施の形態１と同様に学習用データを取得するために前処理部２２により、学習用第１入力情報８００ｂに含まれる学習用時間帯情報５００、学習用ユニット消費電力情報６００、学習用機器消費電力情報７００に基づいて、自動制御システムＡＳを稼働させたときの学習用電力使用情報を算出する。学習用第１入力情報８００ｂに含まれている学習用割付情報４００及び学習用回数情報４０１と、前処理部２２で算出した自動制御システムＡＳを稼働させたときの学習用電力使用情報と、を学習用データとして学習用データ取得部２３ｂが取得する。
【０１２１】
また、入力された入力情報が学習用第２入力情報１０００ｂである場合は、学習用第２入力情報１０００ｂに含まれる学習用割付情報４００と、学習用システム電力使用情報９００と、学習用回数情報４０１と、を学習用データとして学習用データ取得部２３ｂが取得する。なお、学習用システム電力使用情報９００は、学習用電力使用情報である。
【０１２２】
ステップＳ３０４において、モデル生成部２３ｂは、自動制御システムＡＳを稼働させたときの学習用電力使用情報、自動制御システムＡＳにおける制御対象機器１５０の学習用割付情報４００、自動制御システムＡＳに含まれる複数の入出力ユニット２０２のそれぞれが有する複数の入出力端子に送信される信号の学習用送信回数を示す回数情報４０１に基づいて報酬を計算する。具体的には、報酬計算部２４Ｒｂは、第１報酬ｒ１及び第２報酬ｒ２を計算し、重付情報を考慮して、最終報酬を計算する。まず、報酬計算部２４Ｒｂは、学習用電力使用情報、学習用割付情報４００を使用して、予め定められた電力閾値と学習用電力使用情報に含まれる電力使用量（ｋＷｈ）との差に基づいて第１報酬ｒ１を増加させるか（ステップＳ３０４−Ａ）又は第１報酬ｒ１を減じるか（ステップＳ３０４−Ｂ）を判断する。
【０１２３】
報酬計算部２４Ｒｂは、第１報酬ｒ１を増大させると判断した場合に、ステップＳ３０４−Ａにおいて第１報酬ｒ１を増大させる。一方、報酬計算部２４Ｒｂは、第１報酬ｒ１を減少させると判断した場合に、ステップＳ３０４−Ｂにおいて第１報酬ｒ１を減少させる。そして、ステップＳ３０４−ＣにおいてステップＳ３０２で取得した重付情報に含まれる係数を増大又減少させた第１報酬ｒ１に乗算する。
【０１２４】
続いて、報酬計算部２４Ｒｂは、学習用割付情報４００、学習用回数情報４０１を使用して、予め定められた回数閾値と上述の合計回数との差に基づいて第２報酬ｒ２を増加させるか（ステップＳ３０４−Ａ）又は第２報酬ｒ２を減じるか（ステップＳ３０４−Ｂ）を判断する。
【０１２５】
報酬計算部２４Ｒｂは、第２報酬ｒ２を増大させると判断した場合に、ステップＳ３０４−Ａにおいて第２報酬ｒ２を増大させる。一方、報酬計算部２４Ｒｂは、第２報酬ｒ２を減少させると判断した場合に、ステップＳ３０４−Ｂにおいて第２報酬ｒ２を減少させる。そして、ステップＳ３０４−ＣにおいてステップＳ３０２で取得した重付情報に含まれる係数を増大又減少させた第２報酬ｒ２に乗算する。
【０１２６】
そして、ステップＳ３０４−Ｄにおいて、報酬計算部２４Ｒｂは、計算した第１報酬ｒ１と第２報酬ｒ２とを加算して最終報酬を計算する。
【０１２７】
ステップＳ３０４−Ｅにおいて、関数更新部２４Ｕｂは、報酬計算部２４Ｒｂによって計算された最終報酬に基づいて、モデル記憶部２４ｂが記憶する数３で表される行動価値関数Ｑ（ｓｔ，ａｔ）を更新する。
【０１２８】
学習部２１ｂは、以上のステップＳ３０３からＳ３０４までのステップを、学習用の割付情報４００の異なる自動制御システムＡＳに対して繰り返し実行し、行動価値関数Ｑ（ｓｔ，ａｔ）を学習済モデルとして生成する。
【０１２９】
なお、上述した学習用割付情報４００、学習用回数情報４０１、学習用時間帯情報５００、学習用ユニット消費電力情報６００、学習用機器消費電力情報７００、学習用第１入力情報８００ｂ、学習用システム電力使用情報９００、及び、学習用第２入力情報１０００ｂ（これらをまとめて「学習用データを得るための情報」ともいう）とは、学習部２１ｂでの機械学習に用いる情報である。学習用データを得るための情報は、後述する推論部２０ｂでの自動制御システムＡＳにおける制御対象機器１５０の割り付け状態を推論する演算処理を行う際に入力される、割付情報４００、回数情報４０１、時間帯情報５００、ユニット消費電力情報６００、機器消費電力情報７００、第１入力情報８００、システム電力使用情報９００、及び、第２入力情報１０００と区別するために用いた用語である。学習用データを得るための情報は、推論用の情報に対して、各情報としては、それぞれの情報構成は同じであり、各情報を示す具体的な数値等の内容の異なる情報である。
【０１３０】
以下に、本実施の形態２に係る割付支援プログラム及び割付支援装置１ｂの動作について図を用いて説明する。
【０１３１】
図１９は、本実施の形態２に係る割付支援プログラム及び割付支援装置１ｂの動作を示すフローチャートである。割付支援装置１ｂはインストールされた割付支援プログラムを起動することで動作を開始できる状態となる。
【０１３２】
ユーザは、稼働させている自動制御システムＡＳの割付情報４００、時間帯情報５００、自動制御システムＡＳに使用している入出力ユニットのユニット消費電力情報６００、機器消費電力情報７００、割付情報４００に対応する自動制御システムＡＳに含まれる複数の入出力ユニット２０２のそれぞれが有する複数の入出力端子に送信される信号の送信回数を示す回数情報４０１の５つの情報で構成される第１入力情報８００ｂ、又は、稼働させている自動制御システムＡＳの割付情報４００、システム電力使用情報、回数情報４０１の３つの情報で構成される第２入力情報１０００ｂのいずれかを準備する。
【０１３３】
そして、準備した第１入力情報８００ｂ又は第２入力情報１０００ｂのいずれかを割付支援装置１に入力する。入力された第１入力情報８００ｂ又は第２入力情報１０００ｂは、記憶部１０２に記憶される。記憶部１０２に記憶されている第１入力情報８００ｂ又は第２入力情報１０００ｂを、情報取得部１１ｂが読み出して取得する（ステップＳ４０１）。
【０１３４】
次に、情報取得部１１ｂが取得した第１入力情報８００ｂ又は第２入力情報１０００ｂのいずれかが、推論部２０ｂに入力される（ステップＳ４０２）。推論部２０ｂは、入力された情報に基づいた演算処理を実行する。ここで、入力された情報に基づく推論部２０ｂの演算処理について具体的に説明する。
【０１３５】
推論部２０ｂに入力された情報が第１入力情報８００ｂである場合は、第１入力情報８００ｂは、前処理部２２により第１演算処理が実行される（ステップＳ４０３）。具体的には、上述した数１、数２に相当するシステム電力使用計算用関数を記憶部１０２に記憶しておき、前処理部２２は、記憶部１０２から読み出して、第１入力情報８００ｂに含まれる、時間帯情報５００、自動制御システムＡＳに使用している入出力ユニットのユニット消費電力情報６００、機器消費電力情報７００に基づき、システム電力使用情報９００に相当する情報を算出する。
【０１３６】
続いて、ステップＳ４０２で推論部２０ｂに入力された第１入力情報８００ｂに含まれていた割付情報４００、回数情報４０１と、ステップＳ４０３で第１演算処理を行い取得した情報と、に基づき、演算処理部２６ｂは、学習済モデルを使用した第２演算処理を実行する（ステップＳ４０４）。つまり、演算処理部２６ｂは、学習部２１ｂのモデル記憶部２５ｂに記憶されている学習済みの学習済モデルを読み出して、第２演算処理を実行し、割付情報４００で割り付けた前記自動制御システムＡＳの電力使用量が減少し、且つ、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加するような割り付け状態を推論する。さらに、この割り付け状態は、割付情報４００で割り付けた自動制御システムＡＳの少なくとも１つの入出力ユニット２０２の有する複数の入出力端子に送信される信号の送信回数のうちの最大値が減少するように推論部２０ｂにより推論される。そして、推論の結果が推論部２０ｂから出力される。
【０１３７】
また、推論部２０ｂに入力された情報が第２入力情報１０００ｂである場合は、第２入力情報１０００ｂにシステム電力使用情報９００を含んでいるため、上述のステップＳ４０３で行った第１演算処理が不要となるため、ステップＳ４０２の後、ステップＳ４０４を実行する。第２入力情報１０００ｂが入力された場合は、ステップＳ４０４で行う第２演算処理について、第２入力情報１０００ｂを構成する割付情報４００と回数情報４０１とシステム電力使用情報９００に基づいて実行する。つまり、推論部２０ｂが行う推論とは、上述の演算処理であり、第１入力情報８００ｂが入力された場合は、第１演算処理及び第２演算処理を指し、第２入力情報１０００ｂが入力された場合は、第２演算処理を指す。
【０１３８】
そして、割付情報出力部１２ｂは、推論部２０ｂの演算処理部２６ｂが出力した結果を、見直割付情報１１００ｂとして取得し出力する（ステップＳ４０５）。ステップＳ４０５を完了することで、割付支援プログラム及び割付支援装置１ｂは動作を終了する。なお、割付情報出力部１２ｂは、見直割付情報１１００ｂに含まれる、入出力ユニットと入出力ユニットの入出力端子と各入出力端子に割り付けられる制御対象機器１５０とを対応付けた自動制御システムＡＳにおける制御対象機器１５０の割り付けの情報を取得して出力するようにしてもよい。
【０１３９】
以上により、本実施の形態２における割付支援プログラム及び割付支援装置１ｂは、第１入力情報８００ｂ、又は、第２入力情報１０００ｂのいずれかを取得する情報取得部１１ｂ、第１入力情報８００ｂ、又は、第２入力情報１０００ｂが入力されることで、学習済モデルを用いた推論を行う推論部２０ｂから取得した、見直割付情報１１００ｂに含まれる制御対象機器１５０の割り付けの情報を出力する割付情報出力部１２ｂを有する。これにより、自動制御システムＡＳにおける制御対象機器１５０の割り付けを見直す指標である、本実施の形態２で説明した自動制御システムＡＳにおける制御対象機器１５０の割り付けの情報を提供することができる。
【０１４０】
したがって、本実施の形態２における見直割付情報１１００ｂを用いた自動制御システムＡＳの割り付けによれば、自動制御システムＡＳに割り付けられた制御対象機器１５０の稼働時間帯を、各入出力ユニット２０２に対して偏らせることで、上述の実施の形態１と同様に自動制御システムＡＳの電力使用量を低減することができる。
【０１４１】
また、入出力ユニット２０２は、通常、入出力端子へ送信される信号を所定の回路へ伝達するためにリレーやコンデンサ等の消耗部品を備えている。入出力ユニット２０２の備える複数の入出力端子に対応する消耗部品のうち１つが消耗し破損した場合、他の入出力端子に異常がなくとも、入出力ユニット２０２ごと交換又は修理が必要となる。本実施の形態２における見直割付情報１１００ｂを用いた自動制御システムＡＳの割り付けによれば、割付情報４００で割り付けた自動制御システムＡＳの少なくとも１つの入出力ユニット２０２の有する複数の入出力端子に送信される信号の送信回数のうちの最大値を減少させることができる。
【０１４２】
つまり、割り付けを見直した後の入出力ユニット２０２は、見直す前に比べ、最も多く信号が送信されていた入出力端子へ信号の送信回数の少ない制御対象機器１５０が割り付けられることとなる。他方、最も多く信号が送信されていた入出力端子に割り付けられていた制御対象機器１５０は、他の入出力ユニット２０２の入出力端子へ割り付けられることとなる。言い換えれば、自動制御システムＡＳの備える複数の入出力ユニット２０２に対して、入出力ユニット２０２の有する複数の入出力端子に送信される信号の送信回数が多くなるように制御対象機器１５０を割り付けられるものと、入出力ユニット２０２の有する複数の入出力端子に送信される信号の送信回数が少なくなるように制御対象機器１５０を割り付けられるものと、が生じるように複数の入出力ユニット２０２に対して信号の送信回数を偏らせる割り付けとすることができる。
【０１４３】
したがって、１つの入出力ユニット２０２の有する複数の入出力端子に信号の送信回数が少なくなるように割り付けられた入出力ユニット２０２は、交換又は修理の頻度を低減することができる。また、１つの入出力ユニット２０２の有する複数の入出力端子に信号の送信回数が多くなるように割り付けられた入出力ユニット２０２であっても、１つの入出力端子が異常であるために入出力ユニット２０２ごと交換又は修理するという事態を低減できるため、自動制御システムＡＳのメンテナンス性を向上させることができる。
【０１４４】
なお、学習部２１ｂが、上述のように割付情報４００と回数情報４０１と自動制御システムＡＳを稼働させたときの電力使用情報を含む学習用データに基づいて、学習済モデルを生成している。このため、割付情報４００で特定される自動制御システムＡＳにおける制御対象機器１５０の割り付け状態によって、自動制御システムＡＳが稼働したときの電力使用量がどのように変化するか、及び、自動制御システムＡＳが稼働したときの各入出力ユニット２０２の備える各入出力端子へ信号を送信される送信回数がどのように変化するかを推論することができる。
【０１４５】
そして、自動制御システムＡＳが稼働したときの電力使用量は、自動制御システムＡＳに含まれる入出力ユニット２０２への電力供給が行われている場合は、電力使用量が高くなる傾向にあり、入出力ユニット２０２への電力供給が停止されている場合は低くなる傾向にある。また、入出力端子への信号の送信回数は、割り付けられている制御対象機器１５０に依存する。つまり、頻繁に稼働する制御対象機器１５０が割り付けられた入出力端子は、信号が送信される回数が多くなる。したがって、自動制御システムＡＳが稼働したときの電力使用量が低く、且つ、少なくとも１つの入出力ユニットに対して信号の送信回数の最大値が小さくなる割り付け状態を推論することで、割付情報４００で割り付けた前記自動制御システムＡＳの電力使用量が減少し、且つ、割付情報４００で割り付けた自動制御システムＡＳの複数の入出力ユニット２０２のうち少なくとも１つの入出力ユニット２０２への電力供給を停止する時間が増加し、且つ、割付情報４００で割り付けた自動制御システムＡＳの少なくとも１つの入出力ユニット２０２の有する複数の入出力端子に送信される信号の送信回数のうちの最大値が減少する制御対象機器１５０の割り付け状態を推論することができる。
【０１４６】
実施の形態３．
本発明の実施の形態３に係る割付支援プログラム、割付支援装置、割付学習プログラム、割付学習装置について図面を用いて説明する。本実施の形態３においても、割付支援プログラムに割付学習プログラムを含み、割付支援装置が割付学習装置としての機能を有する形態として説明する。なお、上述の実施の形態１及び実施の形態２と同様の構成については、同じ符号を用いて記載し、具体的な説明は省略する。また、本実施の形態３では、上述の実施の形態１と同様に、入出力端子を３つ有する入出力デバイス部を備えた入出力ユニット２０２を３台備え、各入出力端子に制御対象機器１５０が割り付けられており制御対象機器１５０を９台備えた自動制御システムＡＳを一例にして説明を行う。以下、実施の形態１及び実施の形態２と異なる構成について具体的に説明する。
【０１４７】
図２０は、本実施の形態３に係る割付支援装置１ｃの機能ブロックの一例を模式的に示す図である。図２１は、本実施の形態３に係る割付シミュレーション部の機能ブロックの一例を示す図である。本実施の形態３に係る割付支援装置１ｃは、上述の実施の形態１及び実施の形態２で説明した構成に加え、割付シミュレーション部３１を有している。
【０１４８】
割付シミュレーション部３１は、図２１に示すように、１つの割付情報４００に基づいて、複数の学習用の情報を作成する機能を有する。割付シミュレーション部３１は、制御情報取得部３２、割付演算部３３、情報演算部３４を備えている。以下割付シミュレーション部３１の機能ブロックについて説明する。
【０１４９】
制御情報取得部３２は、自動制御システムＡＳを稼働させるための制御プログラムを演算装置３００から取得する。本実施の形態３で取得する制御プログラムは、上述の実施の形態１及び実施の形態２で例示した自動制御システムＡＳを稼働させるためのラダープログラムである。
【０１５０】
割付演算部３３は、１つの割付情報４００に基づいて、複数の学習用割付情報４００を作成する。なお、学習用割付情報４００とは、上述の割付情報４００と区別するために用いた用語であり、情報構成は割付情報４００と同じである。具体的には、入出力ユニット２０２Ａ、２０２Ｂ、２０２Ｃと各入出力端子Ｘ０、Ｘ１、Ｘ２、Ｙ０、Ｙ１、Ｙ２、Ｚ０、Ｚ１、Ｚ２が対応付けられており、各入出力端子Ｘｎ、Ｙｎ、Ｚｎと制御対象機器１５０を特定する機器名Ｍｎとの対応関係が学習用割付情報４００ごとに異なる情報である。
【０１５１】
情報演算部３４は、割付演算部３３が演算により作成した複数の学習用割付情報４００のそれぞれに対し、制御情報取得部３２で取得した制御プログラムに基づいて、学習用時間帯情報５００、学習用回数情報４０１、学習用システム電力使用情報９００、を演算し作成する。なお、学習用時間帯情報５００、学習用システム電力使用情報９００とは、時間帯情報５００、ユニット消費電力情報６００、システム電力使用情報９００、と区別するために用いた用語であり、各情報としての情報構成は同じであり、各情報を示す具体的な数値等の内容の異なる情報である。
【０１５２】
以下に、本実施の形態３に係る割付シミュレーション部３１が実行する演算処理について図を用いて説明する。
【０１５３】
図２２は、割付シミュレーション部３１の動作を示すフローチャートである。割付シミュレーション部３１は、演算装置３００に記憶されている制御プログラムを取得する（ステップＳ５０１）。そして、割付シミュレーション部３１は、割付情報４００、ユニット消費電力情報６００、機器消費電力情報７００、の入力を受け付ける（ステップＳ５０２）。割付シミュレーション部３１は、割付演算部３３を用いて、入力を受け付けた割付情報４００に基づいて、学習用割付情報４００を作成する（ステップＳ５０３）。割付シミュレーション部３１は、情報演算部３４を用いて、取得した制御プログラムと、作成した学習用割付情報４００とに基づいて、学習用時間帯情報５００、学習用回数情報４０１、学習用システム電力使用情報９００、を作成する（ステップＳ５０４）。以下に各ステップにおける演算処理を具体的に説明する。
【０１５４】
ステップＳ５０１において、制御情報取得部３２は、演算装置３００の記憶部１０２に記憶されている制御プログラムを読み出して取得する。
【０１５５】
ステップＳ５０２において、割付シミュレーション部３１は、ユーザの操作により、割付情報４００、割付情報４００に含まれる入出力ユニット２０２のユニット消費電力情報６００、割付情報４００に含まれる制御対象機器１５０の機器消費電力情報７００の入力を受け付ける。
【０１５６】
ステップＳ５０３において、割付演算部３３は、ステップＳ５０２で入力された割付情報４００を基に、学習用割付情報４００を複数作成する。具体的には、入出力ユニット２０２と入出力端子との対応関係は変更せず、入出力端子と制御対象機器１５０との対応関係を変更する演算処理を行い、各入出力端子と制御対象機器１５０との組み合わせが異なる学習用割付情報４００を複数作成する。作成した複数の学習用割付情報４００は記憶部１０２に記憶される。
【０１５７】
ステップＳ５０４において、情報演算部３４は、ステップＳ５０３で作成した複数の学習用割付情報４００のうち１つを記憶部１０２から読み出して、学習用割付情報４００に基づいた、模擬自動制御システムＡＳを構築する。構築した模擬自動制御システムＡＳに対して、ステップＳ５０１で取得した制御プログラムを所定時間分実行する演算処理を行う。情報演算部３４は、演算処理の結果、学習用時間帯情報５００、学習用回数情報４０１を取得する。情報演算部３４は、取得した学習用時間帯情報５００、学習用割付情報４００、Ｓ５０２で入力されたユニット消費電力情報６００及び機器消費電力情報７００に基づいて、学習用システム電力使用情報９００を演算する。学習用システム電力使用情報９００の演算は、記憶部１０２に記憶された上述の数１、数２で表される関数を記憶部１０２から読み出して演算処理を行う。情報演算部３４は、演算処理の結果、学習用システム電力使用情報９００を取得する。取得した各学習用の情報は、学習用割付情報４００と合わせて、記憶部１０２に記憶される。
【０１５８】
割付シミュレーション部３１は、１つの学習用割付情報４００に対して、ステップＳ５０４が完了すると、ステップＳ５０３で作成した他の学習用割付情報４００に対してステップＳ５０４を行う。これにより、複数の学習用第１入力情報８００、８００ｂ及び複数の学習用第２入力情報１０００、１０００ｂを作成することができる。
【０１５９】
本実施の形態３に係る学習部２１ｃで行う学習済モデルの生成については、上述のシミュレーション部３１で作成した学習用第１入力情報８００、８００ｂ及び学習用第２入力情報１０００、１０００ｂのいずれかを学習用データとして利用することで学習済モデルを生成することができる。具体的な内容については、上述の実施の形態１又は実施の形態２と同様であるため説明を省略する。なお、本実施の形態３においても、学習部２１ｃは割付学習装置２ｃの機能を表す機能ブロックである。
【０１６０】
以上により、本実施の形態３における割付支援プログラム及び割付支援装置１ｃは、シミュレーション部３１を備えることにより、学習部２１、２１ｂに入力される学習用第１入力情報８００、８００ｂ及び学習用第２入力情報１０００、１０００ｂを多数準備することが容易になり、学習部２１，２１ｂでの学習効率を向上させることができる。
【０１６１】
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
【０１６２】
上述の実施の形態１から実施の形態３において、割付学習プログラムは割付支援プログラムに組み込まれており、割付支援装置１、１ｂ、１ｃは割付学習装置２、２ｂ、２ｃの機能を有する形態を説明したが、割付支援プログラムと割付学習プログラムとは、別のプログラムとして２つのプログラムとしてもよい。つまり、情報取得部及び割付情報出力部を少なくとも含むプログラムを割付支援プログラムとし、学習部を少なくとも含むプログラムを割付学習プログラムとしてもよい。さらに、別に作成した割付支援プログラムと割付学習プログラムとを、別々の演算装置可読記憶媒体に記憶してもよいし、１つの演算装置可読記憶媒体に記憶してもよい。
【０１６３】
また、別に作成された割付支援プログラムと割付学習プログラムとは、別々の演算装置にインストールされ、割付支援装置と割付学習装置とを別々に準備されることとしてもよい。さらに、別に作成された割付支援プログラムと割付学習プログラムとは、１つの演算装置にインストールされ、１つの演算装置を割付支援装置および割付学習装置として機能させてもよい。
【０１６４】
上述の実施の形態１から実施の形態３において、自動制御システムＡＳは３台の入出力ユニット２０２、９台の制御対象機器を備える構成として説明したが、入出力ユニット２０２と制御対象機器とは複数台備えていればよい。
【０１６５】
実施の形態１から実施の形態３において、時間帯情報５００、システム電力使用情報９００は、１日を０時００分からの２４時間として１日稼働させた場合のデータを示したが、所定時間稼働させた場合のデータであればよい。例えば、１日を０時００分からの２４時間として３日稼働させて、３日間のデータを平均して１日分のデータとしてもよいし、１日に満たない所定時間のデータとしてもよい。ただし、より効果的な見直割付情報を得るためには、１日以上稼働させた場合のデータを使用することが好ましい。
【０１６６】
上述の実施の形態２において、重付情報取得部２７は、学習部２１ｂの機能ブロックとして説明したが、学習部２１ｂで学習を行う際に重付情報を取得できればよい。例えば、割付学習プログラムと割付支援プログラムとが別に構成されている場合に、重付情報取得部２７として演算装置を機能させるプログラムを割付支援プログラムに組み込んでもよい。このような場合、ユーザが入力した重付情報を学習データの１つとして、学習部２１ｂの学習データ取得部２３ｂが取得してもよい。
【０１６７】
上述の実施の形態３において、割付シミュレーション部３１は割付支援装置１ｃの機能ブロックとして説明したが、割付シミュレーション部３１を学習部２１、２１ｂの機能ブロックとして構成してもよい。
【０１６８】
また、割付シミュレーション部３１は、学習用時間帯情報５００、学習用回数情報４０１、学習用システム電力使用情報９００を作成することを説明したが、学習用データとして不要な情報は作成しないこととしてもよい。例えば、上述の実施の形態１に係る学習部２１の学習では、学習用回数情報４０１は不要であるため、このような場合、学習用回数情報４０１を作成しないこととすることができる。
【符号の説明】
【０１６９】
ＡＳ  自動制御システム、１５０  制御対象機器、２００  ＰＬＣ、２０１  ＣＰＵユニット、２０２  入出力ユニット、３００  演算装置、１  １ｂ  １ｃ  割付支援装置、１１  情報取得部、１２  割付情報出力部、１０１  演算部、１０２  記憶部、１０３  入力部、１０４  表示部、１０５  通信インターフェース、２  ２ｂ  割付学習装置、２０  ２０ｂ  推論部、２１  ２１ｂ  学習部、２２  ２２ａ  前処理部、２３  ２３ｂ  学習用データ取得部、２４  ２４ｂ  モデル生成部、２４Ｒ  ２４Ｒｂ  報酬計算部、２４Ｕ  ２４Ｕｂ  関数更新部、２５  ２５ｂ  モデル記憶部、２６  ２６ｂ  演算処理部、２７  重付情報取得部、３１  割付シミュレーション部、３２  制御情報取得部、３３  割付演算部、３４  情報演算部、４００  割付情報、４０１  回数情報、５００  時間帯情報、６００  ユニット消費電力情報、７００  機器消費電力情報、８００  ８００ｂ  第１入力情報、９００  システム電力使用情報、１０００  １０００ｂ  第２入力情報、１１００  １１００ｂ  割付見直情報
【要約】
第１入力情報又は第２入力情報を取得する情報取得部、第１入力情報又は第２入力情報が入力されることで学習済モデルを用いた推論を行う推論部（２０、２０ｂ）から取得した、割付情報で割り付けた自動制御システムの電力使用量が減少する制御対象機器の割り付けの情報を出力する割付情報出力部（１２）、を備え、自動制御システムの電力使用量が減少するように、自動制御システムにおける制御対象機器の割り付けの見直しを支援する割付支援プログラム、割付支援装置（１、１ｂ、１ｃ）、割付学習プログラム、割付学習装置（２、２ｂ）及び演算端末可読記憶媒体を提供する。【図１】
0006915762.tif 000005
【図２】
0006915762.tif 000006
【図３】
0006915762.tif 000007
【図４】
0006915762.tif 000008
【図５】
0006915762.tif 000009
【図６】
0006915762.tif 000010
【図７】
0006915762.tif 000011
【図８】
0006915762.tif 000012
【図９】
0006915762.tif 000013
【図１０】
0006915762.tif 000014
【図１１】
0006915762.tif 000015
【図１２】
0006915762.tif 000016
【図１３】
0006915762.tif 000017
【図１４】
0006915762.tif 000018
【図１５】
0006915762.tif 000019
【図１６】
0006915762.tif 000020
【図１７】
0006915762.tif 000021
【図１８】
0006915762.tif 000022
【図１９】
0006915762.tif 000023
【図２０】
0006915762.tif 000024
【図２１】
0006915762.tif 000025
【図２２】
0006915762.tif 000026