(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024171255
(43)【公開日】2024-12-11
(54)【発明の名称】制御システム、拡張演算装置、及び、空間システム
(51)【国際特許分類】
G06N 3/02 20060101AFI20241204BHJP
G06F 9/38 20180101ALI20241204BHJP
【FI】
G06N3/02
G06F9/38 370C
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2023088229
(22)【出願日】2023-05-29
(71)【出願人】
【識別番号】314012076
【氏名又は名称】パナソニックIPマネジメント株式会社
(74)【代理人】
【識別番号】110002527
【氏名又は名称】弁理士法人北斗特許事務所
(72)【発明者】
【氏名】岩堀 裕
【テーマコード(参考)】
5B013
【Fターム(参考)】
5B013DD03
(57)【要約】
【課題】推定モデルを用いる演算処理を効率化することができる制御システムを提供する。
【解決手段】制御システム2は、演算部11を備える。演算部11は、センサ20から取得する空間の状態変化に基づき、推定モデル41を用いてアクチュエータを制御するための演算処理を実行するように構成されている。演算部11は、推定モデル41を用いて演算処理を実行するように構成されている拡張演算装置80を利用可能である。演算部11は、拡張演算装置80を利用可能である場合に、演算処理のうち、一部を実行し、一部以外の残りを拡張演算装置80に実行させる。
【選択図】
図2
【特許請求の範囲】
【請求項1】
センサから取得する空間の状態変化に基づき、推定モデルを用いてアクチュエータを制御するための演算処理を実行するように構成されている演算部
を備え、
前記演算部は、
前記推定モデルを用いて前記演算処理を実行するように構成されている拡張演算装置を利用可能であり、
前記拡張演算装置を利用可能である場合に、前記演算処理のうち、一部を実行し、前記一部以外の残りを前記拡張演算装置に実行させる、
制御システム。
【請求項2】
前記センサから前記状態変化を取得可能であり、
前記推定モデルは、入力層、出力層、及び少なくとも1つの中間層を含むニューラルネットワークであり、
前記演算部は、前記拡張演算装置を利用可能である場合に、前記ニューラルネットワークのうち前記入力層から所定の中間層までの部分モデルを用いて前記演算処理の前記一部を実行する、
請求項1に記載の制御システム。
【請求項3】
請求項2に記載の制御システムから利用可能であって、
前記制御システムの前記演算部から利用可能である場合に、前記部分モデルを用いる前記演算処理の前記一部を実行せず、前記ニューラルネットワークのうち前記所定の中間層から前記出力層までの部分モデルを用いて前記演算処理の前記残りを実行する、
拡張演算装置。
【請求項4】
前記センサから前記状態変化を取得可能であり、
前記センサは、前記状態変化として複数のフレームを含む動画を出力し、
前記演算処理は、前記動画に基づく演算処理であり、
前記演算部は、前記拡張演算装置を利用可能である場合に、前記動画を、前記演算処理の前記一部に用いる1以上のフレームと、前記演算処理の前記残りに用いる1以上のフレームと、に分割する、
請求項1に記載の制御システム。
【請求項5】
前記演算部が、前記制御システムである第1制御システムと同じ構成を備える第2制御システムの前記拡張演算装置として動作可能であり、
前記演算部が前記第2制御システムの前記拡張演算装置として動作する場合に、前記演算部が動作する期間は、前記第1制御システムの前記演算部として前記演算処理を実行する第1期間と、前記第2制御システムの前記拡張演算装置として演算処理を実行する第2期間と、を含む、
請求項1に記載の制御システム。
【請求項6】
前記アクチュエータと通信可能であり、
前記推定モデルは、入力層、出力層、及び少なくとも1つの中間層を含むニューラルネットワークであり、
前記演算部は、前記拡張演算装置を利用可能である場合に、前記ニューラルネットワークのうち所定の中間層から前記出力層までの部分モデルを用いて前記演算処理の前記一部を実行する、
請求項1に記載の制御システム。
【請求項7】
請求項6に記載の制御システムから利用可能であって、
前記制御システムの前記演算部から利用可能である場合に、前記部分モデルを用いる前記演算処理の前記一部を実行せず、前記ニューラルネットワークのうち前記入力層から前記所定の中間層までの部分モデルを用いて前記演算処理の前記残りを実行する、
拡張演算装置。
【請求項8】
請求項1に記載の制御システムである、第1制御システム及び第2制御システムを備え、
前記第1制御システムの前記演算部は、
前記第2制御システムの前記演算部を前記拡張演算装置として利用可能であり、
前記第2制御システムの前記演算部を利用可能である場合に、前記第1制御システムの前記演算処理の前記一部を実行し、
前記第2制御システムの前記演算部は、前記第1制御システムの前記演算部から利用される場合に、前記第1制御システムの前記演算処理の前記残りを実行する、
空間システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は制御システム、拡張演算装置、及び、空間システムに関し、特に、空間制御を行う制御システム、拡張演算装置、及び、空間システムに関する。
【背景技術】
【0002】
特許文献1には、推論モデル(推定モデル)を用いて推論を行う推論装置が開示されている。特許文献1の推論装置は、推論モデルを用いて、例えば、製品を撮像した画像データに基づき製品の欠陥の有無を推論する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】国際公開第2022/190966号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、最近、推定モデルを用いる演算処理の効率化が求められている。
【0005】
本開示は、推定モデルを用いる演算処理を効率化することができる制御システム、拡張演算装置、及び、空間システムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本開示の一態様に係る制御システムは演算部を備える。前記演算部は、センサから取得する空間の状態変化に基づき、推定モデルを用いてアクチュエータを制御するための演算処理を実行するように構成されている。前記演算部は、前記推定モデルを用いて前記演算処理を実行するように構成されている拡張演算装置を利用可能である。前記演算部は、前記拡張演算装置を利用可能である場合に、前記演算処理のうち、一部を実行し、前記一部以外の残りを前記拡張演算装置に実行させる。
【0007】
本開示の一態様に係る拡張演算装置は、前記制御システムから利用可能である。前記拡張演算装置は、前記制御システムの前記演算部から利用可能である場合に、前記部分モデルを用いる前記演算処理の前記一部を実行せず、前記ニューラルネットワークのうち前記所定の中間層から前記出力層までの部分モデルを用いて前記演算処理の前記残りを実行する。
【0008】
本開示の他の一態様に係る拡張演算装置は、前記制御システムから利用可能である。前記制御システムの前記演算部から利用可能である場合に、前記部分モデルを用いる前記演算処理の前記一部を実行せず、前記ニューラルネットワークのうち前記入力層から前記所定の中間層までの部分モデルを用いて前記演算処理の前記残りを実行する。
【0009】
本開示の一態様に係る空間システムは、第1制御システム及び第2制御システムを備える。前記第1制御システム及び第2制御システムは、前記制御システムである。前記第1制御システムの前記演算部は、前記第2制御システムの前記演算部を前記拡張演算装置として利用可能である。前記第1制御システムの前記演算部は、前記第2制御システムの前記演算部を利用可能である場合に、前記第1制御システムの前記演算処理の前記一部を実行する。前記第2制御システムの前記演算部は、前記第1制御システムの前記演算部から利用される場合に、前記第1制御システムの前記演算処理の前記残りを実行する。
【発明の効果】
【0010】
本開示の一態様に係る制御システム、拡張演算装置、及び、空間システムによれば、推定モデルを用いる演算処理を効率化することが可能となる。
【図面の簡単な説明】
【0011】
【
図1】
図1は、実施形態1に係る制御システムを含む空間システムの構成を示すブロック図である。
【
図2】
図2は、同上の制御システムの構成を示すブロック図である。
【
図3】
図3は、同上の制御システムにおけるアクチュエータの構成を示すブロック図である。
【
図4】
図4は、同上の制御システムにおける推定モデル及び部分モデルの概略図である。
【
図5】
図5は、同上の制御システムの動作を示すフローチャートである。
【
図6】
図6は、実施形態3に係る空間システムの構成を示すブロック図である。
【発明を実施するための形態】
【0012】
以下、本開示の態様に係る制御システム、拡張演算装置、及び、空間システムについて、図面を用いて説明する。
【0013】
(実施形態1)
(1)全体構成
図1に示すように、実施形態1に係る制御システム2は、空間システム1に用いられる。空間システム1は、制御システム2と、複数(
図1では2つ)のアクチュエータ30と、を含む。制御システム2は、
図1及び
図2に示すように、処理部10と、1以上(
図1及び
図2では2つ)のセンサ20と、を備える。制御システム2は、複数のセンサ20が検知する空間AR1の状態変化に基づいて推定モデル41(
図2及び
図4参照)を用いた演算処理を行う。制御システム2は、演算処理の結果に基づいて、空間AR1に設けられている複数のアクチュエータ30を制御する。
【0014】
複数のアクチュエータ30の各々は、空間AR1の状態に対して変化をもたらす挙動を示すデバイスである。本開示において、アクチュエータ30とは、気流、音、明るさの変化などの空間AR1の状態変化を生じさせるデバイスを指し、機械的な運動を行うものに限られない。すなわち、アクチュエータ30とは、制御システム2における演算処理の結果に基づいて、空間AR1の状態を変化させるデバイスを言う。
【0015】
複数のアクチュエータ30の各々は、
図3に示すように、空間AR1に対して働きかけを行う動作部31と、通信部32と、制御部33と、を備える。複数のアクチュエータ30の各々は、例えば、照明器具、空調機、スピーカ、表示装置等である。
【0016】
動作部31は、例えば、照明、空調、気流、音声、画像の少なくとも1つを変化させる。具体的には、動作部31は、例えば、照明器具の発光部、空調機の室内機、スピーカの発音部、表示装置の表示部、等である。動作部31は、通信部32を介して制御システム2から受信した制御指示に従って動作する。
【0017】
通信部32は、例えば、Bluetooth(登録商標)、BLE(Bluetooth Low Energy)、無線LAN、有線LANなど、制御システム2との通信を可能とする通信インターフェースである。
【0018】
制御部33は、制御システム2から制御指示を受信すると、制御指示に基づく動作を行うよう動作部31を制御する。
【0019】
(2)制御システムの構成
制御システム2は、
図2に示すように、処理部10と、1以上(
図1及び2では2つ)のセンサ20と、を備える。
【0020】
(2.1)センサ
複数のセンサ20の各々は、空間AR1の状態変化を検知する。空間AR1の状態変化は、例えば、空間AR1内の人数、人の活動、室温、明るさなどの変化を言う。複数のセンサ20は、例えば、空間AR1から取得される画像、空間AR1から取得される音声など、空間AR1内の人の活動を示す情報を取得する。又は、複数のセンサ20は、室温、明るさなどの、空間AR1内の状態を示す情報を取得する。
【0021】
センサ20は、例えば、カメラ、マイク、明るさセンサ、温度センサ等の状態検知デバイスである。
【0022】
(2.2)処理部
処理部10は、センサ20から空間AR1の状態を示す信号を受信し、受信した信号に基づいて推定モデル41(
図4参照)を用いた演算処理を行う。処理部10は、演算処理の結果に基づいて、空間AR1に設けられている複数のアクチュエータ30を制御する。例えば、処理部10は、センサ20から空間AR1の画像を示す信号に基づいて、空間AR1への人数を推測し、空間AR1内の人数に合わせて空調機であるアクチュエータ30を制御する。
【0023】
処理部10は、
図2に示すように、演算部11と、記憶部12と、通信部13と、制御部14と、を備える。
【0024】
演算部11は、センサ20から受信する信号に基づいて推定モデル41を用いた演算処理を実行するように構成されている。演算処理の結果は、アクチュエータ30を制御するために用いられる。演算処理の内容は、例えば、人の粗密、人の移動、環境データ、及び、エネルギー消費のうち少なくとも1つに関する。また、推定モデル41を用いた演算処理は、人の感情、人の活性度、人の体感温度、及び、異常推論のうち少なくとも1つに関する演算処理である。例えば、センサ20が空間AR1の状態として画像を出力する場合、演算処理は、分類(classification)、検出(detection)、セマンティックセグメンテーション、インスタンスのうち1つ以上を含む。
【0025】
推定モデル41は、
図4に示すように、入力層50と、出力層70と、複数の中間層60(
図4では2つの中間層61及び62)とを含む、ニューラルネットワークモデルである。
【0026】
より詳細には、演算部11は、
図2に示すように、演算処理に必要な信号をセンサ20から取得し、演算処理に使用する推定モデル41を記憶部12から取得する。そして、演算部11は、推定モデル41の入力層50にセンサ20から取得した信号を入力し、出力層70の出力データを算出する。
【0027】
演算部11は、例えば、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、FPGA(Field Programmable Gate Array)、又はASIC(Application Specific Integrated Circuit)など、演算処理のためのハードウェアを含む。
【0028】
演算部11は、拡張演算装置80を利用可能である。より詳細には、演算部11は、拡張演算装置80と接続可能に構成されている。ここで、拡張演算装置80とは、制御システム2と接続可能であって、推定モデル41を用いた演算処理を実行する機能を有する装置を言う。拡張演算装置80は、例えば、CPU、GPU、FPGA、又はASICなど、演算処理のためのハードウェアを含む。ここで、演算部11が拡張演算装置80を利用可能であるとは、演算部11が拡張演算装置80に演算処理の一部を実行させ、その結果を取得することが可能な状態を言う。
【0029】
演算部11は、拡張演算装置80を利用可能であるときは、演算処理の一部を実行し、拡張演算装置80に演算処理の残りを実行させる。演算部11は、拡張演算装置80を利用可能であるときは、拡張演算装置80に実行させる演算処理の残りについては実行しない。
【0030】
演算部11は、拡張演算装置80を利用可能でないときは、センサ20から受信する信号に基づいて推定モデル41を用いた演算処理を行う。一方、演算部11は、拡張演算装置80を利用可能であるときは、推定モデル41の一部である部分モデル43を用いて、センサ20から受信する信号に基づく演算処理の一部を行う。部分モデル43は、推定モデル41のうち、入力層50から所定の中間層62までの部分である。拡張演算装置80は、推定モデル41の一部である部分モデル42を用いて、演算処理の残りを行う。部分モデル42は、推定モデル41のうち、所定の中間層62から出力層70までの部分である。
【0031】
記憶部12は、推定モデル41、及び、推定モデル41の一部である部分モデル42及び43を記憶している記憶媒体である。
【0032】
通信部13は、アクチュエータ30、及び、他の制御システム2との通信を可能とする通信インターフェースである。通信部13は、例えば、Bluetooth、BLE、無線LAN、有線LANなどのインターフェースである。
【0033】
制御部14は、センサ20から、空間AR1の状態を示す信号を取得する。制御部14は、センサ20から受信する信号に基づいて推定モデル41を用いた演算処理を演算部11に行わせる。また、制御部14は、演算部11の演算結果に基づいて、アクチュエータ30に指示を送信する。
【0034】
処理部10及び拡張演算装置80は、コンピュータシステムを含んでいる。コンピュータシステムは、ハードウェアとしてのプロセッサ及びメモリを主構成とする。コンピュータシステムのメモリに記録されたプログラムをプロセッサが実行することによって、本開示における処理部10としての機能が実現される。プログラムは、コンピュータシステムのメモリに予め記録されてもよく、電気通信回線を通じて提供されてもよく、コンピュータシステムで読み取り可能なメモリカード、光学ディスク、ハードディスクドライブ等の非一時的記録媒体に記録されて提供されてもよい。コンピュータシステムのプロセッサは、半導体集積回路(IC)又は大規模集積回路(LSI)を含む1ないし複数の電子回路で構成される。ここでいうIC又はLSI等の集積回路は、集積の度合いによって呼び方が異なっており、システムLSI、VLSI(Very Large Scale Integration)、又はULSI(Ultra Large Scale Integration)と呼ばれる集積回路を含む。さらに、LSIの製造後にプログラムされる、FPGA、又はLSI内部の接合関係の再構成若しくはLSI内部の回路区画の再構成が可能な論理デバイスについても、プロセッサとして採用することができる。複数の電子回路は、1つのチップに集約されていてもよいし、複数のチップに分散して設けられていてもよい。複数のチップは、1つの装置に集約されていてもよいし、複数の装置に分散して設けられていてもよい。ここでいうコンピュータシステムは、1以上のプロセッサ及び1以上のメモリを有するマイクロコントローラを含む。したがって、マイクロコントローラについても、半導体集積回路又は大規模集積回路を含む1ないし複数の電子回路で構成される。
【0035】
また、処理部10及び拡張演算装置80における複数の機能が、1つの筐体内に集約されていることは処理部10に必須の構成ではなく、処理部10の構成要素は、複数の筐体に分散して設けられていてもよい。例えば、センサ20は、処理部10とは異なる筐体に設けられてもよい。
【0036】
(3)動作
図5は、実施形態1に係る制御システム2における、センサ20による空間AR1の状態変化検知に基づく一連の動作を示すフローチャートである。
【0037】
制御システム2の制御部14は、演算部11が拡張演算装置80を利用可能であるか否かを判定する(ステップS11)。
【0038】
演算部11は、拡張演算装置80を利用可能である場合(ステップS11でYes)、センサ20による空間AR1の状態変化検知に基づく演算処理の一部を実行する(ステップS12)。より詳細には、演算部11は、推定モデル41を用いる演算処理の一部である、部分モデル43を用いる演算処理を実行する。演算部11は、推定モデル41の入力層50に相当する部分モデル43の入力層に、センサ20から取得した空間AR1の状態変化を入力する。そして、演算部11は、推定モデル41の中間層62に相当する部分モデル43の出力層から出力されるデータとして、中間データを算出する。
【0039】
演算部11は、次に、拡張演算装置80に、演算処理の残りを委任する(ステップS13)。より詳細には、演算部11は、部分モデル43の出力である中間データと、部分モデル42とを出力する。拡張演算装置80は、推定モデル41の中間層62に相当する部分モデル42の入力層に、中間データを入力する。そして、拡張演算装置80は、推定モデル41の出力層70に相当する部分モデル42の出力層から出力されるデータとして、出力データを算出する。演算部11は、推定モデル41を用いた演算結果として、拡張演算装置80から出力データを取得する。
【0040】
次に、制御部14は、出力データに基づいてアクチュエータ30を制御する(ステップS14)。制御部14は、出力データとして推定される空間AR1の状態に基づいて、アクチュエータ30を制御する。例えば、制御部14は、空間AR1にいる人の体感温度が上昇していることが推定されると、空調機であるアクチュエータ30に設定温度を下げるよう指示する。また、例えば、制御部14は、空間AR1にいる人の活性度が低下していることが推定されると、表示装置であるアクチュエータ30に画像を表示するように指示する。
【0041】
一方、演算部11が拡張演算装置80を利用可能でない場合(ステップS11でNo)、演算部11は、センサ20による空間AR1の状態変化に基づく演算処理の全てを実行する(ステップS15)。演算部11は、推定モデル41の入力層50に、センサ20から取得した空間AR1の状態変化を入力する。そして、演算部11は、推定モデル41の出力層70から出力されるデータとして、出力データを算出する。続く処理は、上述のステップS14の通りである。
【0042】
(4)効果
実施形態1に係る制御システム2は、演算部11を備える。演算部11は、センサ20から取得する空間AR1の状態変化に基づき、推定モデル41を用いてアクチュエータ30を制御するための演算処理を実行するように構成されている。演算部11は、推定モデル41を用いて演算処理を実行するように構成されている拡張演算装置80を利用可能である。演算部11は、拡張演算装置80を利用可能である場合に、演算処理の一部を実行し、残りを拡張演算装置80に実行させる。これにより、演算部11は、拡張演算装置80を利用可能である場合に、演算処理を演算部11と拡張演算装置80とで分担することができる。したがって、制御システム2の演算リソースを効率的に使用することができる。
【0043】
また、実施形態1に係る制御システム2は、センサ20から状態変化を取得可能である。推定モデル41は、入力層50、出力層70、及び中間層60を含むニューラルネットワークである。演算部11は、拡張演算装置80を利用可能である場合に、ニューラルネットワークのうち入力層50から所定の中間層62までの部分モデル43を用いて演算処理の一部を行う。これにより、演算部11と拡張演算装置80とは、演算結果に影響が出ないように演算処理を分担することが可能となる。また、演算部11は、センサ20から取得する空間の状態変化に基づく演算処理を行うため、演算部11が速やかに演算処理を開始することが可能となる。また、演算部11は、センサ20から取得する空間の状態変化に基づく演算処理の結果を拡張演算装置80に出力して演算処理の残りを拡張演算装置80に行わせる。したがって、制御システム2と拡張演算装置80との間のデータの転送量を削減することができる。
【0044】
また、実施形態1に係る拡張演算装置80は、制御システム2から利用可能である。拡張演算装置80は、制御システム2の演算部11から利用可能である場合に、部分モデル43を用いる演算処理の一部を実行せず、ニューラルネットワーク41のうち所定の中間層62から出力層70までの部分モデル42を用いる演算処理の残りを行う。これにより、拡張演算装置80は、制御システム2の演算部11による演算結果に基づき部分モデル42を用いる演算処理を行うことで、推定モデル41を用いる演算処理の最終結果を算出できる。したがって、制御システム2と拡張演算装置80との間のデータの転送量を削減することができるとともに、制御システム2及び拡張演算装置80による演算処理を効率化することが可能となる。
【0045】
(実施形態2)
(1)構成
実施形態2に係る制御システム2は、拡張演算装置80を利用可能である場合に、センサ20から取得した空間AR1の状態変化を示すデータを2つの部分データに分割する。演算部11は、2つの部分データのうち一方に基づき推定モデル41を用いた演算を行い、拡張演算装置80は、2つの部分データのうち他方に基づき推定モデル41を用いた演算を行う。
【0046】
実施形態2に係る制御システム2では、センサ20は動画カメラである。センサ20は、空間AR1の状態変化として、空間AR1を撮像した、複数のフレームを含む動画を出力する。
【0047】
演算部11は、センサ20から取得する動画データに基づき、推定モデル41を用いた演算を行う。演算部11は、センサ20から取得する複数のフレームを含む動画データを、1以上のフレームを含む第1部分データと、1以上のフレームを含む第2部分データと、に分割する。より詳細には、演算部11は、動画データを、複数のフレームのうちの一部である1以上のフレームを含む第1部分データと、複数のフレームのうちの残りである1以上のフレームを含む第2部分データに分割する。例えば、第1部分データは動画データのうち奇数番目のフレームを含み、第2部分データは動画データのうち偶数番目のフレームを含む。
【0048】
演算部11は、動画データに基づく推定モデル41を用いる演算処理のうち、第1部分データに基づき推定モデル41を用いる一部を行う。また、演算部11は、動画データに基づく推定モデル41を用いる演算処理のうち、第2部分データに基づき推定モデル41を用いる残りを、拡張演算装置80に行わせる。すなわち、演算部11は、センサ20から取得した空間AR1の状態変化に基づく演算処理のうち、第1部分データに基づく一部を実行する。また、拡張演算装置80は、センサ20から取得した空間AR1の状態変化に基づく演算処理のうち、第2部分データに基づく残りを実行する。演算部11は、演算部11自身が行う第1部分データに基づく演算処理の一部の結果と、拡張演算装置80が行う第2部分データに基づく演算処理の残りの結果と、に基づいて、センサ20から取得した空間AR1の状態変化に基づく演算処理の結果を生成する。
【0049】
(2)効果
実施形態2に係る制御システム2は、センサ20から状態変化を取得可能である。センサ20は、状態変化として複数のフレームを含む動画を出力する。演算処理は、動画に基づく演算処理である。演算部11は、拡張演算装置80を利用可能である場合に、動画を、演算処理の一部に用いる1以上のフレームと、演算処理の残りに用いる1以上のフレームとに分割する。これにより、演算部11と拡張演算装置80とは、演算結果に影響が出ないように演算処理を分担することが可能となる。また、演算部11が行う演算処理と拡張演算装置80が行う演算処理とは、互いに依存関係を有していない。したがって、制御システム2及び拡張演算装置80は、演算処理の一部及び残りを並列処理で行うことができるため、演算処理を効率的に行うことができる。
【0050】
(実施形態3)
(1)構成
実施形態3では、
図6に示すように、空間システム1が複数の制御システム2を含む。空間システム1は、制御システム2a及び2bを含む。制御システム2aは、複数のセンサ20が検知する空間AR1の状態変化に基づいて推定モデル41を用いた演算処理を行う。制御システム2aは、演算処理の結果に基づいて、空間AR1に設けられている複数のアクチュエータ30を制御する。制御システム2bは、複数のセンサ20が検知する空間AR2の状態変化に基づいて推定モデル41(
図2参照)を用いた演算処理を行う。制御システム2bは、演算処理の結果に基づいて、空間AR2に設けられている複数のアクチュエータ30を制御する。
【0051】
制御システム2は、他の制御システム2に対して拡張演算装置80として機能する。以下、制御システム2bが制御システム2aに対して拡張演算装置80として機能する場合について説明する。制御システム2bは、制御システム2aと同じ構成を備える。ここで、制御システム2bが制御システム2aと同じ構成を備えるとは、制御システム2bの演算部11が複数のセンサ20が検知する空間AR2の状態変化に基づいて推定モデル41を用いた演算処理を行うことを言う。
【0052】
制御システム2bの制御部14は、演算部11の処理余裕度が大きい場合に、通信部13から制御システム2aに対して、制御システム2bが拡張演算装置80として動作可能であることを通知する。演算部11の処理余裕度とは、演算部11の演算能力にどの程度の余裕があるか示すパラメータである。より詳細には、演算部11の処理余裕度とは、演算部11において、単位時間当たりの演算を行っていない時間の割合である。
【0053】
制御システム2aの演算部11は、制御システム2bより拡張演算装置80として動作可能である旨の通知を受けると、制御システム2bを拡張演算装置80として使用する。制御システム2aの演算部11は、センサ20による空間AR1の状態変化検知に基づく演算処理の一部を実行する。より詳細には、制御システム2aの演算部11は、推定モデル41を用いる演算処理のうち、部分モデル43を用いる演算処理を実行する。制御システム2aの演算部11は、推定モデル41の入力層50に相当する部分モデル43の入力層に、センサ20から取得した空間AR1の状態変化を入力する。そして、制御システム2aの演算部11は、推定モデル41の中間層62に相当する部分モデル43の出力層から出力されるデータとして、中間データを算出する。
【0054】
制御システム2aの演算部11は、拡張演算装置80である制御システム2bに、演算処理の残りを委任する。より詳細には、制御システム2aの演算部11は、部分モデル43の出力である中間データと、部分モデル42とを、制御システム2bに出力する。
【0055】
制御システム2bの演算部11は、中間データと、部分モデル42とを用いて、空間AR1の状態変化検知に基づく演算処理の残りを実行する。このとき、制御システム2bの演算部11は、制御システム2bの演算部11としての動作と、制御システム2aの拡張演算装置80としての動作とを、時分割で行う。言い換えると、制御システム2bの演算部11が動作する時間は、制御システム2bの演算部11として演算処理を行う期間と、制御システム2aの拡張演算装置80として演算処理を行う期間と、を含む。例えば、制御システム2bの演算部11の処理余裕度が60%である場合、制御システム2bの演算部11は、制御システム2bの演算部11として動作する時間と、制御システム2aの拡張演算装置80として動作する時間とを、4:6とする。これにより、制御システム2bの演算部11では、制御システム2bの演算部11としての演算処理を行ったうえで、空いた時間を用いて制御システム2aの演算部11の演算を肩代わりすることができる。したがって、制御システム2a及び2b全体で、演算効率を向上させることが出来る。
【0056】
制御システム2bの演算部11は、推定モデル41の中間層62に相当する部分モデル42の入力層に、制御システム2aから受信した中間データを入力する。そして、制御システム2bの演算部11は、推定モデル41の出力層70に相当する部分モデル42の出力層から出力されるデータとして、出力データを算出する。制御システム2aの演算部11は、推定モデル41を用いた演算結果として、制御システム2bの演算部11から出力データを取得する。
【0057】
なお、制御システム2bの演算部11は、拡張演算装置80を利用可能である。制御システム2bの拡張演算装置80は、制御システム2aであってもよいし、実施形態1に係る拡張演算装置80であってもよい。
【0058】
(2)効果
実施形態3の制御システム2(2b)は、制御システム2(2b)と同じ構成を備える制御システム2(2a)の拡張演算装置80として動作可能である。制御システム2bが制御システム2aの拡張演算装置80として動作する場合に、制御システム2bの演算部11が動作する期間は、制御システム2bの演算部11として演算処理を行う期間と、制御システム2aの拡張演算装置80として演算処理を行う期間と、を含む。これにより、複数の制御システム2の間で、演算処理を互いに肩代わり可能となるため、演算処理を効率化することができる。
【0059】
実施形態3の空間システム1は、制御システム2a及び制御システム2bを備える。制御システム2aの演算部11は、制御システム2bの演算部11を拡張演算装置80として利用可能である。制御システム2aの演算部11は、制御システム2bの演算部11を利用可能である場合に、制御システム2aの演算処理の一部を実行する。制御システム2bの演算部11は、制御システム2aの演算部11から利用される場合に、制御システム2aの演算処理の残りを実行する。これにより、空間システム1に含まれる複数の制御システム2の間で、演算処理を互いに肩代わり可能となるため、演算処理を効率化することができる。
【0060】
(実施形態4)
(1)構成
実施形態4に係る制御システム2は、アクチュエータ30と通信可能である。制御システム2の演算部11は、拡張演算装置80を利用可能である場合、推定モデル41を用いる演算処理のうち、所定の中間層62から出力層70までの部分モデル42を用いる一部を実行する。拡張演算装置80は、推定モデル41を用いる演算処理のうち、入力層50から所定の中間層62までの部分モデル43を用いる残りを実行する。
【0061】
演算部11は、自身が演算処理の一部を実施する前に、拡張演算装置80に、演算処理の残りを委任する。より詳細には、演算部11は、センサ20から取得した空間AR1の状態変化と、部分モデル43とを出力する。拡張演算装置80は、推定モデル41の入力層50に相当する部分モデル43の入力層に、センサ20から取得した空間AR1の状態変化を入力する。そして、拡張演算装置80は、推定モデル41の中間層62に相当する部分モデル43の出力層から出力されるデータとして、中間データを算出する。
【0062】
演算部11は、次に、演算処理の一部を実行する。より詳細には、演算部11は、拡張演算装置80が行った演算処理の残りの結果である中間データを取得し、推定モデル41の中間層62に相当する部分モデル42の入力層に、中間データを入力する。そして、演算部11は、推定モデル41の出力層70に相当する部分モデル42の出力層から出力されるデータとして、出力データを算出する。
【0063】
制御システム2の制御部14は、演算部11による演算処理の結果に基づきアクチュエータ30を制御する。
【0064】
(2)効果
実施形態4に係る制御システム2では、アクチュエータ30と通信可能である。推定モデル41は、入力層50、出力層70、及び中間層60を含むニューラルネットワークである。演算部11は、拡張演算装置80を利用可能である場合に、ニューラルネットワークのうち所定の中間層62から出力層70までの部分モデル42を用いて、演算処理の一部を実行する。これにより、演算部11が拡張演算装置80を利用可能か否かに関わらず、推定モデル41を用いる演算処理の演算結果を演算部11自身が算出する。したがって、制御システム2では、推定モデル41を用いる演算処理の結果に基づき制御部14がアクチュエータ30を制御する際に、拡張演算装置80から制御システム2への演算処理の結果の転送が必要ない。
【0065】
また、実施形態4に係る拡張演算装置80は、制御システム2から利用可能である。拡張演算装置80は、制御システム2の演算部11から利用可能である場合に、部分モデル42を用いる演算を行わず、ニューラルネットワークのうち入力層50から所定の中間層62までの部分モデル43を用いて演算を行う。これにより、拡張演算装置80は、部分モデル43を用いる演算処理を行うことで、演算部11に出力すべき中間データを算出できる。したがって、制御システム2と拡張演算装置80との間のデータの転送量を削減することができるとともに、制御システム2及び拡張演算装置80による演算処理を効率化することが可能となる。
【0066】
(変形例)
(1)構成
実施形態4の変形例では、実施形態3と同様、空間システム1が複数の制御システム2を含む。制御システム2は、他の制御システム2に対して拡張演算装置80として機能する。以下、制御システム2bが制御システム2aに対して拡張演算装置80として機能する場合について説明する。
【0067】
制御システム2bの制御部14は、演算部11の処理余裕度が大きい場合に、通信部13から制御システム2aに対して、拡張演算装置80として動作可能であることを通知する。
【0068】
制御システム2aの演算部11は、制御システム2bより拡張演算装置80として動作可能である旨の通知を受けると、制御システム2bを拡張演算装置80として使用する。制御システム2aの演算部11は、センサ20による空間AR1の状態変化検知に基づく演算処理の一部を実行する。より詳細には、演算部11は、推定モデル41を用いる演算処理のうち、部分モデル43を用いる演算処理を拡張演算装置80として動作する制御システム2bに実行させる。制御システム2bの演算部11は、推定モデル41の入力層50に相当する部分モデル43の入力層に、センサ20から取得した空間AR1の状態変化を入力する。そして、制御システム2bの演算部11は、推定モデル41の中間層62に相当する部分モデル43の出力層から出力されるデータとして、中間データを算出する。
【0069】
制御システム2aの演算部11は中間データと、部分モデル42とを用いて、演算処理の残りの部分を実行する。
【0070】
(2)効果
実施形態4の変形例の空間システム1は、制御システム2a及び制御システム2bを備える。制御システム2aの演算部11は、制御システム2bの演算部11を拡張演算装置80として利用可能である。制御システム2aの演算部11は、制御システム2bの演算部11を利用可能である場合に、制御システム2aの演算処理の一部を実行する。制御システム2bの演算部11は、制御システム2aの演算部11から利用される場合に、制御システム2aの演算処理の残りを実行する。これにより、空間システム1に含まれる複数の制御システム2の間で、演算処理を互いに肩代わり可能となるため、演算処理を効率化することができる。
【0071】
(実施形態に係るその他の変形例)
(1)実施形態1~4及び変形例では、制御システム2は2つのセンサ20を備えるが、センサ20は1つでもよいし3以上でもよい。また、制御システム2はセンサ20を備えておらず、センサ20と通信可能に構成されていてもよい。
【0072】
(2)実施形態1~4及び変形例では、制御システム2は演算処理の一部を拡張演算装置80に委任するが、制御システム2は、演算処理を3以上に分割し、そのうち2以上を、2以上の拡張演算装置80に委任してもよい。
【0073】
(3)実施形態3及び実施形態4の変形例では、拡張演算装置80として動作可能な制御システム2はセンサ20を備えるが、拡張演算装置80として動作可能な制御システム2はセンサ20を備えていないとしてもよい。また、実施形態4に係る制御システム2はセンサ20を備えるが、センサ20を備えていないとしてもよい。
【0074】
(4)実施形態3及び実施形態4の変形例では、推定モデル41を所定の中間層62で分割するが、推定モデル41の中間層60は3以上の中間層を有していてもよい。また、所定の中間層は、中間層61でもよいし、中間層60が3以上の中間層を含む場合には、そのうちの任意の1つでもよい。
【0075】
(態様)
第1の態様に係る制御システム(2)は、演算部(11)を備える。演算部(11)は、センサ(20)から取得する空間(AR1)の状態変化に基づき、推定モデル(41)を用いてアクチュエータ(30)を制御するための演算処理を実行するように構成されている。演算部(11)は、推定モデル(41)を用いて演算処理を実行するように構成されている拡張演算装置(80)を利用可能である。演算部(11)は、拡張演算装置(80)を利用可能である場合に、演算処理のうち、一部を実行し、一部以外の残りを拡張演算装置(80)に実行させる。
【0076】
上記態様に係る制御システム(2)によれば、演算部(11)は、拡張演算装置(80)を利用可能である場合に、演算処理を演算部(11)と拡張演算装置(80)とで分担することができる。したがって、制御システム(2)の演算リソースを効率的に使用することができる。
【0077】
第2の態様に係る制御システム(2)は、第1の態様において、センサ(20)から状態変化を取得可能である。推定モデル(41)は、入力層(50)、出力層(70)、及び少なくとも1つの中間層(62)を含むニューラルネットワークである。演算部(11)は、拡張演算装置(80)を利用可能である場合に、ニューラルネットワークのうち入力層(50)から所定の中間層(62)までの部分モデル(43)を用いて演算処理の一部を実行する。
【0078】
上記態様に係る制御システム(2)によれば、演算部(11)と拡張演算装置(80)とは、演算結果に影響が出ないように演算処理を分担することが可能となる。また、演算部(11)は、センサ(20)から取得する空間の状態変化に基づく演算処理を行うため、演算部(11)が速やかに演算処理を開始することが可能となる。また、演算部(11)は、センサ(20)から取得する空間の状態変化に基づく演算処理の結果を拡張演算装置(80)に出力して演算処理の続きを拡張演算装置(80)に行わせる。したがって、制御システム(2)と拡張演算装置(80)との間のデータの転送量を削減することができる。
【0079】
第3の態様に係る拡張演算装置(80)は、第2の態様に係る制御システム(2)から利用可能である。拡張演算装置(80)は、制御システム(2)の演算部(11)から利用安濃である場合に、部分モデル(43)を用いる演算処理の一部を実行せず、ニューラルネットワークのうち所定の中間層(62)から出力層(70)までの部分モデル(42)を用いる演算処理の残りを実行する。
【0080】
上記態様に係る拡張演算装置(80)によれば、制御システム(2)の演算部(11)による演算結果に基づき部分モデル(42)を用いる演算処理を行うことで、推定モデル(41)を用いる演算処理の最終結果を算出できる。したがって、制御システム(2)と拡張演算装置(80)との間のデータの転送量を削減することができるとともに、制御システム(2)及び拡張演算装置(80)による演算処理を効率化することが可能となる。
【0081】
第4の態様に係る制御システム(2)は、第1の態様において、センサから状態変化を取得可能である。センサ(20)は、状態変化として複数のフレームを含む動画を出力する。演算処理は、動画に基づく演算処理である。演算部(11)は、拡張演算装置(80)を利用可能である場合に、動画を、演算処理の一部に用いる1以上のフレームと、演算処理の残りに用いる1以上のフレームとに分割する。
【0082】
上記態様に係る制御システム(2)によれば、演算部(11)と拡張演算装置(80)とは、演算結果に影響が出ないように演算処理を分担することが可能となる。また、演算部(11)が行う演算処理の一部と拡張演算装置(80)が行う演算処理の残りとは、互いに依存関係を有していない。したがって、制御システム(2)及び拡張演算装置(80)は、演算処理の一部及び残りを並列処理で行うことができるため、演算処理を効率的に行うことができる。
【0083】
第5の態様に係る制御システム(2)は、第1、第2又は第4の態様において、演算部(11)が、制御システム(2)である第1制御システム(2b)と同じ構成を備える制御システム(2a)の拡張演算装置(80)として動作可能である。制御システム(2b)の演算部(11)が第2制御システム(2a)の拡張演算装置(80)として動作する場合に、演算部(11)が動作する期間は、第1制御システム(2b)の演算部(11)として演算処理を行う第1期間と、第2制御システム(2a)の拡張演算装置(80)として演算処理を行う第2期間と、を含む。
【0084】
上記態様に係る制御システム(2)によれば、複数の制御システム(2)の間で、演算処理を互いに肩代わり可能となるため、演算処理を効率化することができる。
【0085】
第6の態様に係る制御システム(2)は、第1の態様において、アクチュエータ(30)と通信可能である。推定モデル(41)は、入力層(50)、出力層(70)、及び少なくとも1つの中間層(62)を含む。演算部(11)は、拡張演算装置(80)を利用可能である場合に、ニューラルネットワークのうち所定の中間層(62)から出力層(70)までの部分モデルを用いて演算処理の一部を実行する。
【0086】
上記態様に係る制御システム(2)によれば、推定モデル(41)を用いる演算処理の結果に基づきアクチュエータ(30)を制御する際に、拡張演算装置(80)から制御システム(2)への演算処理の結果の転送が必要ない。
【0087】
第7の態様に係る拡張演算装置(80)は、第6の態様に係る制御システム(2)から利用可能である。拡張演算装置(80)は、制御システム(2)の演算部(11)から利用可能である場合に、部分モデル(42)を用いる演算処理の一部を実行せず、ニューラルネットワークのうち入力層(50)から所定の中間層(62)までの部分モデル(43)を用いて演算処理の残りを実行する。
【0088】
上記態様に係る拡張演算装置(80)によれば、拡張演算装置(80)は、部分モデル(43)を用いる演算処理を行うことで、演算部(11)に出力すべき中間データを算出できる。したがって、制御システム(2)と拡張演算装置(80)との間のデータの転送量を削減することができるとともに、制御システム(2)及び拡張演算装置(80)による演算処理を効率化することが可能となる。
【0089】
第8の態様に係る空間システム(1)は、第1制御システム(2a)及び第2制御システム(2b)を含む。第1制御システム(2a)の演算部(11)は、第2制御システム(2b)の演算部(11)を拡張演算装置(80)として利用可能である。第1制御システム(2a)の演算部(11)は、第2制御システム(2b)の演算部(11)を利用可能である場合に、第1制御システム(2a)の演算処理の一部を実行する。第2制御システム(2b)の演算部(11)は、第1制御システム(2a)の演算部(11)から利用される場合に、第1制御システム(2a)の演算処理の残りを実行する。
【0090】
上記態様に係る空間システム(1)によれば、複数の制御システム(2)の間で、演算処理を互いに肩代わり可能となるため、演算処理を効率化することができる。
【符号の説明】
【0091】
1 空間システム
2 制御システム
2a 第2制御システム、第1制御システム
2b 第1制御システム、第2制御システム
11 演算部
20 センサ
30 アクチュエータ
41 推定モデル
42 部分モデル
43 部分モデル
50 入力層
62 中間層
70 出力層
80 拡張演算装置
AR1 空間