JP7514716B2 - Information processing system, hierarchical edge system, and information processing method - Google Patents

Information processing system, hierarchical edge system, and information processing method Download PDF

Info

Publication number
JP7514716B2
JP7514716B2 JP2020163304A JP2020163304A JP7514716B2 JP 7514716 B2 JP7514716 B2 JP 7514716B2 JP 2020163304 A JP2020163304 A JP 2020163304A JP 2020163304 A JP2020163304 A JP 2020163304A JP 7514716 B2 JP7514716 B2 JP 7514716B2
Authority
JP
Japan
Prior art keywords
data
information processing
reservoir
server
transmitted
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
JP2020163304A
Other languages
Japanese (ja)
Other versions
JP2022055721A (en
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2020163304A priority Critical patent/JP7514716B2/en
Publication of JP2022055721A publication Critical patent/JP2022055721A/en
Application granted granted Critical
Publication of JP7514716B2 publication Critical patent/JP7514716B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

本発明は、通信手段を用いて収集したデータを処理する技術に関する。 The present invention relates to a technology for processing data collected using communication means.

通信技術やセンサの高速化、高機能化に伴い、自動車やロボットなどのモノとヒトに跨って、広域社会システム全体を繋げることが可能になっている。このようなIoT(Internet of Things)環境において、フィジカル空間の情報をサイバー空間に送り、サイバー空間内にフィジカル空間の環境を再現するデジタルツインの概念が提唱されている。 As communication technology and sensors become faster and more functional, it is now possible to connect entire wide-area social systems, spanning people and things such as automobiles and robots. In this IoT (Internet of Things) environment, the concept of digital twins has been proposed, which sends information from the physical world to cyberspace and recreates the physical world environment within cyberspace.

デジタルツインを活用することで、フィジカル空間のモニタリングを行える他、サイバー空間上でのリアルタイム予測等に基づいて、自動的にシステム全体が連動するシステムの実現が期待される。すなわち、このサイバー空間上での予測に基づいて、現実世界における変化を予測し、対応することができる。 By utilizing digital twins, it is expected that not only will it be possible to monitor the physical space, but it will also be possible to realize a system in which the entire system is automatically linked based on real-time predictions in cyberspace. In other words, it will be possible to predict and respond to changes in the real world based on these predictions in cyberspace.

このようなシステムは、例えば、ロボットと人が協働するスマート工場、自動運転化した鉄道や自動車同士の連動制御、移動体(ロボット、モビリティなど)への電力の供給制御など、社会システム全体をリアルタイムかつ低環境負荷で制御するために有用である。 Such systems will be useful for controlling entire social systems in real time with low environmental impact, for example, in smart factories where robots and humans work together, in linking autonomous trains and automobiles, and in controlling the supply of electricity to moving objects (robots, mobility, etc.).

5Gと称される第5世代移動通信システムは、2020年から日本国内でサービス開始を予定している。5Gの技術として、ネットワークスライシングやエッジコンピューティングが注目されている。ネットワークスライシングでは、同一の物理ネットワークアーキテクチャの上に、用途に応じた仮想的な独立の論理ネットワークを多重化する。エッジコンピューティングは、利用者や端末と物理的に近い場所(エッジ)に処理装置(MEC(Mobile Edge Computing、または、Multi-access Edge Computing)サーバー)を分散配置して、ネットワークの端点でデータ処理を行う。 The fifth-generation mobile communication system, known as 5G, is scheduled to begin service in Japan in 2020. Network slicing and edge computing are attracting attention as 5G technologies. Network slicing multiplexes virtual, independent logical networks according to application on the same physical network architecture. Edge computing distributes processing devices (MEC (Mobile Edge Computing, or Multi-access Edge Computing) servers) to locations (edges) physically close to users and terminals, and processes data at the edge of the network.

また、演算手段として、ディープニューラルネットワーク(DNN)やリザーバー計算機(リザーバーコンピューティング)等で構成される人工知能(AI)、アニーリングマシン等がある。リザーバー計算機はリカレントニューラルネットワーク(Recurrent Neural Network:RNN)の一種で、入力層、中間層(リザーバー層)、出力層(リードアウトニューロン層)の3層で構成され、例えば教師あり学習で学習される。アニーリングマシンは、最適化問題を解くためにイジングモデル等を応用した処理デバイスである。 In addition, computational methods include artificial intelligence (AI) consisting of deep neural networks (DNN) and reservoir computing, as well as annealing machines. A reservoir computer is a type of recurrent neural network (RNN) that consists of three layers: an input layer, an intermediate layer (reservoir layer), and an output layer (read-out neuron layer), and learns, for example, through supervised learning. An annealing machine is a processing device that applies the Ising model, etc. to solve optimization problems.

ネットワークスライシングについて特許文献1のようなものがある。また、アニーリングマシンの例としては、特許文献2のようなものがある。 Regarding network slicing, see Patent Document 1. Also, as an example of an annealing machine, see Patent Document 2.

特開2020-136788号公報JP 2020-136788 A 特開2018-206127号公報JP 2018-206127 A

広域社会システム全体を繋げ、遅延なく全体を制御するためには、データの収集、データの処理、システムの制御をリアルタイムで動作させる必要がある。 In order to connect the entire wide-area social system and control it without delay, data collection, data processing, and system control must occur in real time.

このために、DNN、リザーバー計算機等で構成される人工知能(AI)、あるいは特許文献2のようなアニーリングマシンによる処理が提案されるが、データ量の増加やリアルタイム処理の要求に伴い処理能力を拡大あるいは高機能化する必要がある。 For this purpose, artificial intelligence (AI) consisting of DNN, reservoir computers, etc., or processing using annealing machines such as those described in Patent Document 2 have been proposed, but with the increase in data volume and demand for real-time processing, it is necessary to expand processing capacity or improve functionality.

そこで本願発明の目的は、必要なデータ処理量や処理内容に応じて適応可能なデータ処理技術を提供することにある。 The object of the present invention is to provide a data processing technology that can be adapted according to the required amount of data processing and the processing content.

本発明の一側面は、関数近似器およびアニーリングマシンから選ばれる少なくとも一種の処理デバイスを含む処理部と、センサ側から送信されるデータを受信し、前記処理部へ送信するデータフローコントローラを備え、前記データフローコントローラは、前記処理部へ送信するデータを、前記センサ側の送信タイミングに基づいて並び替える、情報処理システムである。 One aspect of the present invention is an information processing system that includes a processing unit that includes at least one processing device selected from a function approximator and an annealing machine, and a data flow controller that receives data transmitted from a sensor side and transmits the data to the processing unit, and the data flow controller rearranges the data to be transmitted to the processing unit based on the transmission timing of the sensor side.

本発明の他の一側面は、上記構成の情報処理システムを複数備え、前記センサ側から順に、第1の情報処理システム、第2の情報処理システム、および第3の情報処理システムの階層構造を有する、階層型エッジシステムである。 Another aspect of the present invention is a hierarchical edge system that includes multiple information processing systems having the above-described configuration, and has a hierarchical structure of a first information processing system, a second information processing system, and a third information processing system, in that order from the sensor side.

本発明の他の一側面は、関数近似器およびアニーリングマシンから選ばれる少なくとも一種の処理デバイスを含む処理部により、センサ側から送信されるデータを処理する情報処理方法である。前記センサ側から送信されるデータを受信し、前記処理部へ送信するデータフローコントローラを用い、前記センサ側から送信されるデータは、異なるセンサから得られたデータ、異なる経路を経たデータ、および異なる通信手段によるデータの少なくとも一つを含み、前記データフローコントローラは、前記処理部へ送信するデータを、前記センサ側の送信タイミングに基づいて並び替える。 Another aspect of the present invention is an information processing method for processing data transmitted from a sensor side by a processing unit including at least one processing device selected from a function approximator and an annealing machine. A data flow controller is used to receive data transmitted from the sensor side and transmit it to the processing unit, and the data transmitted from the sensor side includes at least one of data obtained from different sensors, data that has passed through different routes, and data by different communication means, and the data flow controller rearranges the data to be transmitted to the processing unit based on the transmission timing of the sensor side.

必要なデータ処理量や処理内容に応じて適応可能なデータ処理技術を提供することができる。 We can provide data processing technology that can be adapted to the amount of data processing required and the processing content.

実施例1の情報処理システムの基本構成を示すブロック図。FIG. 1 is a block diagram showing a basic configuration of an information processing system according to a first embodiment. 実施例2の情報処理システムの全体構成を示すブロック図。FIG. 11 is a block diagram showing the overall configuration of an information processing system according to a second embodiment. 実施例2の情報処理システムで可能な処理のパターンの一覧を示す表図。FIG. 11 is a table showing a list of processing patterns possible in the information processing system according to the second embodiment. 実施例3の情報処理システムの回路実装の例を説明するブロック図。FIG. 11 is a block diagram illustrating an example of circuit implementation of an information processing system according to a third embodiment. 実施例4の特徴抽出の構成例を説明するブロック図。FIG. 13 is a block diagram illustrating an example of the configuration for feature extraction according to a fourth embodiment. 実施例5の複数のアニーリングマシンが連携して処理を行うシステムの概念を説明するブロック図。FIG. 13 is a block diagram explaining the concept of a system in which a plurality of annealing machines perform processing in cooperation with each other according to a fifth embodiment. 実施例5のアニーリングマシンの内部ブロック図。FIG. 13 is an internal block diagram of an annealing machine according to a fifth embodiment. 実施例5のアニーリングマシンの動作タイムチャート。13 is an operation time chart of the annealing machine of Example 5. 実施例5のアニーリングマシンの隣接スピンの接続の概念を示す概念図。FIG. 13 is a conceptual diagram showing the concept of connection of adjacent spins in the annealing machine of Example 5. 実施例6の複数のアニーリングマシンで同一問題を解くシステムの概念を説明するブロック図。FIG. 23 is a block diagram explaining the concept of a system for solving the same problem using multiple annealing machines according to a sixth embodiment. 実施例7のリザーバーコンピューティングを無線接続で大規模化するシステムの例を示すブロック図。FIG. 13 is a block diagram showing an example of a system for scaling up reservoir computing in a wireless manner according to the seventh embodiment. 実施例7のリザーバーの内部ブロック図。FIG. 13 is an internal block diagram of the reservoir of Example 7. 実施例7のシステムにおいて、サーバーおよびリザーバーが分担する機能および、送信するデータと送信先を示す表図。FIG. 23 is a table showing the functions shared by the server and reservoir, as well as the data to be transmitted and the destination in the system of Example 7. 実施例7のリザーバーの動作タイムチャート。13 is an operation time chart of the reservoir of the seventh embodiment. 実施例8の複数のリザーバーで同一処理を行うシステムの概念を説明するブロック図。FIG. 13 is a block diagram illustrating the concept of a system for performing the same process using multiple reservoirs in Example 8. 実施例8のシステムにおいて、サーバーおよびリザーバーが分担する機能および、送信するデータと送信先を示す表図。A table showing the functions shared by the server and reservoir, as well as the data to be transmitted and the destination in the system of Example 8. 実施例8のリザーバーの動作タイムチャート。13 is an operation time chart of the reservoir of Example 8. 実施例9のDNNを無線接続で大規模化するシステムの例を示すブロック図。FIG. 13 is a block diagram showing an example of a system for expanding the scale of a DNN in a ninth embodiment using wireless connections. 実施例9のシステムにおいて、サーバーおよびリザーバーが分担する機能および、送信するデータと送信先を示す表図。A table showing the functions shared by the server and reservoir, as well as the data to be transmitted and the destination in the system of Example 9. 実施例12の同時に複数のデータを予測計画部でリアルタイム処理する例を示す概念図。FIG. 23 is a conceptual diagram showing an example of simultaneously processing multiple data in real time by the prediction planning unit according to the twelfth embodiment. 実施例13の階層構造としたエッジの例を示すブロック図。FIG. 23 is a block diagram showing an example of edges having a hierarchical structure according to the thirteenth embodiment. 実施例13のエッジの詳細を示すブロック図。FIG. 23 is a block diagram showing details of an edge according to a thirteenth embodiment. 段階的複合AIの概念を示すブロック図。Block diagram showing the concept of staged composite AI. 現状解析と未来予測の並行実施の概念を示すブロック図。A block diagram showing the concept of concurrently analyzing the current situation and predicting the future.

以下、実施の形態について図面を用いて詳細に説明する。ただし、本発明は以下に示す実施の形態の記載内容に限定して解釈されるものではない。本発明の思想ないし趣旨から逸脱しない範囲で、その具体的構成を変更し得ることは当業者であれば容易に理解される。 The following describes the embodiments in detail with reference to the drawings. However, the present invention should not be interpreted as being limited to the description of the embodiments shown below. It will be easily understood by those skilled in the art that the specific configuration can be changed without departing from the concept or spirit of the present invention.

以下に説明する発明の構成において、同一部分又は同様な機能を有する部分には同一の符号を異なる図面間で共通して用い、重複する説明は省略することがある。 In the configuration of the invention described below, the same parts or parts having similar functions are designated by the same reference numerals in different drawings, and duplicate descriptions may be omitted.

同一あるいは同様な機能を有する要素が複数ある場合には、同一の符号に異なる添字を付して説明する場合がある。ただし、複数の要素を区別する必要がない場合には、添字を省略して説明する場合がある。 When there are multiple elements with the same or similar functions, they may be described using the same reference numerals with different subscripts. However, when there is no need to distinguish between multiple elements, the subscripts may be omitted.

本明細書等における「第1」、「第2」、「第3」などの表記は、構成要素を識別するために付するものであり、必ずしも、数、順序、もしくはその内容を限定するものではない。また、構成要素の識別のための番号は文脈毎に用いられ、一つの文脈で用いた番号が、他の文脈で必ずしも同一の構成を示すとは限らない。また、ある番号で識別された構成要素が、他の番号で識別された構成要素の機能を兼ねることを妨げるものではない。 The designations "first," "second," "third," and the like in this specification are used to identify components and do not necessarily limit the number, order, or content. Furthermore, numbers for identifying components are used in different contexts, and a number used in one context does not necessarily indicate the same configuration in another context. Furthermore, this does not prevent a component identified by a certain number from also serving the function of a component identified by another number.

図面等において示す各構成の位置、大きさ、形状、範囲などは、発明の理解を容易にするため、実際の位置、大きさ、形状、範囲などを表していない場合がある。このため、本発明は、必ずしも、図面等に開示された位置、大きさ、形状、範囲などに限定されない。 The position, size, shape, range, etc. of each component shown in the drawings, etc. may not represent the actual position, size, shape, range, etc., in order to facilitate understanding of the invention. Therefore, the present invention is not necessarily limited to the position, size, shape, range, etc. disclosed in the drawings, etc.

本明細書で引用した刊行物、特許および特許出願は、そのまま本明細書の説明の一部を構成する。 The publications, patents and patent applications cited herein are incorporated by reference in their entirety into the present specification.

<情報処理システムの基本構成>
図1は、実施例1の情報処理システムの基本構成を示すブロック図である。このシステムは、予測計画部100、センサ200、出力部300を備える。
<Basic configuration of information processing system>
1 is a block diagram showing the basic configuration of an information processing system according to embodiment 1. This system includes a prediction and planning unit 100, a sensor 200, and an output unit 300.

予測計画部100は、ディープニューラルネットワーク(DNN)101、リザーバー102、アニーリングマシン103、およびサーバー104を含む。予測計画部100は、センサ200からのデータを入力とし、演算結果を出力部300に出力する。予測計画部100の演算結果は、例えば無線通信により出力部300に送られる。予測計画部100の演算結果は、例えば認識、理解、判断、予測あるいは行動計画(これらを総称して推論ということがある。DNN101、リザーバー102、アニーリングマシン103の処理や出力自体も推論ということがある。)である。 The prediction and planning unit 100 includes a deep neural network (DNN) 101, a reservoir 102, an annealing machine 103, and a server 104. The prediction and planning unit 100 receives data from a sensor 200 as input, and outputs the calculation results to an output unit 300. The calculation results of the prediction and planning unit 100 are sent to the output unit 300, for example, by wireless communication. The calculation results of the prediction and planning unit 100 are, for example, recognition, understanding, judgment, prediction, or action planning (these are sometimes collectively referred to as inference. The processing and output of the DNN 101, reservoir 102, and annealing machine 103 themselves are sometimes referred to as inference.)

センサ200は、例えば人の位置や動き、機械やロボットの状態、交通機関あるいは環境の状態など、フィジカル空間のデータを公知のセンサデバイスやカメラで収集し、データを例えば無線通信により予測計画部100に送る。センサ200は、位置、加速度、音、温度、振動、匂い、画像など、様々な状態を検出するものが想定される。 The sensor 200 collects data on the physical space, such as the position and movement of people, the state of machines and robots, and the state of transportation or the environment, using known sensor devices and cameras, and sends the data to the prediction and planning unit 100, for example, by wireless communication. The sensor 200 is expected to detect various conditions, such as position, acceleration, sound, temperature, vibration, smell, and images.

出力部300は、例えばアクチュエータを制御するインターフェースやディスプレイである。アクチュエータは、入力されたエネルギーもしくは電気信号を物理的運動に変換する、機械・電気回路を構成する機械要素である。アクチュエータは、予測計画部100の演算結果、例えば行動計画結果により制御される。ディスプレイは、演算結果、例えば行動計画結果または予測結果を人が認識できるよう表示する。 The output unit 300 is, for example, an interface or display that controls an actuator. An actuator is a mechanical element that constitutes a mechanical/electrical circuit and converts input energy or an electrical signal into physical motion. The actuator is controlled by the calculation results of the prediction and planning unit 100, for example, the action plan results. The display shows the calculation results, for example, the action plan results or the prediction results, so that a person can recognize them.

予測計画部100は、親デバイスであるサーバー104と、複数の子デバイス(DNN101、リザーバー102、アニーリングマシン103から選ばれる少なくとも一種)を備える。予測計画部100は、親デバイスと子デバイス間の無線または有線による通信、さらに、子デバイス間の通信により、連携して、予測や行動計画のための演算を行い、演算結果にもとづき、アクチュエータを制御し、あるいは結果をディスプレイに表示する。 The prediction and planning unit 100 comprises a parent device, a server 104, and multiple child devices (at least one selected from a DNN 101, a reservoir 102, and an annealing machine 103). The prediction and planning unit 100 performs calculations for prediction and action planning in cooperation with the parent device and child devices through wireless or wired communication, and further through communication between the child devices, and controls actuators based on the calculation results, or displays the results on a display.

本実施例では、子デバイスは独立した端末で構成されることを想定しているので、子デバイス間の有線接続を適用する場合は、例えば半導体チップ内やチップ間のバス接続ではなく、長距離伝送用のトランシーバ(送受信回路)を備える必要がある。すなわち、長距離伝送用のトランシーバは、長距離伝送にともなう信号波形の減衰や劣化を補償するために、送信回路には送信アンプ(アナログ回路)を備えており、また、受信回路には、受信アンプ(アナログ回路)、イコライザ(波形等化回路)、同期回路などを備える必要がある。 In this embodiment, it is assumed that the child devices are composed of independent terminals, so when applying a wired connection between child devices, it is necessary to provide a transceiver (transmitter/receiver circuit) for long-distance transmission, rather than, for example, a bus connection within a semiconductor chip or between chips. That is, a transceiver for long-distance transmission must have a transmitter amplifier (analog circuit) in the transmitter circuit to compensate for attenuation and deterioration of the signal waveform that accompanies long-distance transmission, and a receiver amplifier (analog circuit), an equalizer (waveform equalization circuit), a synchronization circuit, etc. in the receiver circuit.

図1では、DNN101、リザーバー102、アニーリングマシン103は、各2個配置されるが、数は任意であり各3個以上でもよい。これは以下の実施例でも同様であり、子デバイスの数は必要に応じて任意に設定できる。子デバイス間の連携により、所望の規模の演算を行うことが可能である。 In FIG. 1, two DNNs 101, two reservoirs 102, and two annealing machines 103 are arranged, but the number of each can be any number, and may be three or more. This is also true for the following embodiments, and the number of child devices can be set arbitrarily as needed. By linking the child devices, it is possible to perform calculations of the desired scale.

サーバー104は、公知のサーバーの構成として、入力装置1041、出力装置1042、処理装置1043、記憶装置1044を備える。本実施例ではサーバー104による演算や制御等の機能は、記憶装置1044に格納されたプログラムが処理装置1043によって実行されることで、定められた処理を他のハードウェアと協働して実現される。サーバーが実行するプログラム、その機能、あるいはその機能を実現する手段を、「機能」、「手段」、「部」、「ユニット」、「モジュール」等と呼ぶ場合がある。 The server 104 comprises an input device 1041, an output device 1042, a processing device 1043, and a storage device 1044, as is a known server configuration. In this embodiment, functions such as calculation and control by the server 104 are realized by the processing device 1043 executing a program stored in the storage device 1044, in cooperation with other hardware to perform predetermined processing. The program executed by the server, its functions, or the means for realizing the functions may be referred to as a "function", "means", "part", "unit", "module", etc.

以上の構成は、単体のサーバーで構成してもよいし、あるいは、入力装置1041、出力装置1042、処理装置1043、記憶装置1044の任意の部分が、ネットワークで接続された他のコンピュータで構成されてもよい。 The above configuration may be configured as a single server, or any of the input device 1041, output device 1042, processing device 1043, and storage device 1044 may be configured as other computers connected via a network.

本実施例中、ソフトウェアで構成した機能と同等の機能は、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)などのハードウェアでも実現できる。 In this embodiment, functions equivalent to those configured by software can also be realized by hardware such as an FPGA (Field Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit).

本実施例によれば、大規模システムの動的な最適制御を実現し、高い臨場感を創出することができる。上記構成は典型的な一例である。サーバーは一般的な計算機でもよいし、MECサーバーでもよい。センサ200をサーバー104あるいは端末側に持たせることもできる。 According to this embodiment, dynamic optimal control of a large-scale system can be realized, and a high sense of realism can be created. The above configuration is a typical example. The server may be a general computer or an MEC server. The sensor 200 may be provided on the server 104 or the terminal side.

<子デバイスの連携システム>
図2は、実施例2の情報処理システムの全体構成を示すブロック図である。本実施例では、センサとして例えばガスセンサ201等の環境センサと、人や機器の状態を撮影するカメラ202を備えている。ガスセンサ201からのデータと、カメラ202からの画像データは、有線または無線でサーバー104に集約される。ここではサーバーとしてMECサーバーを用いてもよい。
<Child device linkage system>
2 is a block diagram showing the overall configuration of an information processing system according to a second embodiment. In this embodiment, the system includes an environmental sensor such as a gas sensor 201 as a sensor, and a camera 202 that captures images of people and equipment. Data from the gas sensor 201 and image data from the camera 202 are collected in a server 104 via a wired or wireless connection. An MEC server may be used as the server here.

DNN101、リザーバー102、アニーリングマシン103、サーバー104は、其々無線インターフェース105を備えており、相互にデータの送受信が可能である。本実施例では、DNN101、リザーバー102、アニーリングマシン103のハード構成はそれぞれ同一規格とする。 The DNN 101, reservoir 102, annealing machine 103, and server 104 each have a wireless interface 105, and are capable of transmitting and receiving data to and from each other. In this embodiment, the hardware configurations of the DNN 101, reservoir 102, and annealing machine 103 are all of the same standard.

ディープラーニングは、入力層、隠れ層、出力層からなるニューラルネットワーク(DNNなど)を学習し、入力ベクトルxに対して任意のベクトルf(x)を出力するように関数近似器を構成する技術である。すなわち、出力は、f1=f1(x1, x2, x3), f2=f2(x1, x2, x3)のように表現される。本実施例では、入力層と出力層をサーバー104で実現し、隠れ層をDNN101で構成する。厳密にはDNN101は、ディープニューラルネットワークの一部である隠れ層に対応するが、本明細書では便宜上DNNの呼称を用いる。DNN101は、例えば、教師あり学習により学習を行うことができる。本実施例では、DNN101は、ガスセンサ201からのデータと、カメラ202からの画像データから任意の特徴量を抽出できるように、公知の技術により学習済みとする。DNN101への入力が、時系列的なデータの場合には、DNN101からの出力も、時系列的な特徴量データとなる。 Deep learning is a technique for configuring a function approximator to learn a neural network (such as a DNN) consisting of an input layer, a hidden layer, and an output layer, and output an arbitrary vector f(x) for an input vector x. That is, the output is expressed as f1=f1(x1, x2, x3), f2=f2(x1, x2, x3). In this embodiment, the input layer and the output layer are realized by the server 104, and the hidden layer is configured by the DNN 101. Strictly speaking, the DNN 101 corresponds to the hidden layer, which is a part of the deep neural network, but for convenience, the name DNN is used in this specification. The DNN 101 can learn, for example, by supervised learning. In this embodiment, the DNN 101 is assumed to have been trained by a known technique so that it can extract arbitrary features from data from the gas sensor 201 and image data from the camera 202. If the input to DNN101 is time-series data, the output from DNN101 will also be time-series feature data.

リザーバーコンピューティングは、入力層、中間層(リザーバー層)、出力層(リードアウトニューロン層)の3種の層で構成され、教師あり学習を行うことができる技術であり、関数近似器を構成する。本実施例では、入力層と出力層をサーバー104で実現し、リザーバー層をリザーバー102で構成する。出力層は、公知の技術により学習済みとする。リザーバー102は、時系列信号に対するタスク(予測や、時系列信号に対する特徴抽出)を行う。すなわち、現在の離散時間nTにおける出力値は、現在の時間nT、および、過去の離散時間(n-1)T, (n-2)T, …のx1, x2, x3の値に対する関数となる。すなわち、リザーバーコンピューティングの出力層の出力は、
f1(nT)=f1(x1(nT), x2(nT), x3(nT), x1((n-1)T), x2((n-1)T), x3((n-1)T), x1((n-2)T), x2((n-2)T), x3((n-2)T), ….)
f2(nT)=f2(x1(nT), x2(nT), x3(nT), x1((n-1)T), x2((n-1)T), x3((n-1)T), x1((n-2)T), x2((n-2)T), x3((n-2)T), ….)
・・・
のように表現される。
Reservoir computing is a technology that is composed of three types of layers, an input layer, an intermediate layer (reservoir layer), and an output layer (readout neuron layer), and that can perform supervised learning, forming a function approximator. In this embodiment, the input layer and the output layer are realized by the server 104, and the reservoir layer is composed of the reservoir 102. The output layer is assumed to have been trained using known techniques. The reservoir 102 performs tasks on time series signals (prediction and feature extraction for time series signals). In other words, the output value at the current discrete time nT is a function of the values of x1, x2, and x3 at the current time nT and past discrete times (n-1)T, (n-2)T, .... In other words, the output of the output layer of reservoir computing is
f1(nT)=f1(x1(nT), x2(nT), x3(nT), x1((n-1)T), x2((n-1)T), x3((n-1)T), x1((n-2)T), x2((n-2)T), x3((n-2)T), ….)
f2(nT)=f2(x1(nT), x2(nT), x3(nT), x1((n-1)T), x2((n-1)T), x3((n-1)T), x1((n-2)T), x2((n-2)T), x3((n-2)T), ….)
...
It is expressed as follows.

リザーバーコンピューティングのほうが、ディープラーニングよりも、時系列信号に対するタスクの学習が容易という特長がある。具体的には、前者は出力層のニューロンの重みだけ学習すればよい。対して、後者(ディープラーニング)はすべての層のニューロンの重みを学習する必要がある。時系列信号タスクを処理するRNN(Recurrent Neural Network)やLSTM (Long Short-Term Memory)などのDNNの場合、Backpropagation through time (BPTT)という方法で学習が行われるが、上記の通り、各時間帯に対応するニューロンの層をすべて学習させる必要があり、容易ではない。よって、本実施例の一態様では、DNN101で人の形や位置、ガスの成分などの特徴量を抽出した後、これらの特徴量の経時変化から、リザーバー102で予測を行う。 Reservoir computing has the advantage that it is easier to learn tasks for time series signals than deep learning. Specifically, the former only needs to learn the weights of the neurons in the output layer. In contrast, the latter (deep learning) needs to learn the weights of neurons in all layers. In the case of DNNs such as RNNs (Recurrent Neural Networks) and LSTMs (Long Short-Term Memory) that process time series signal tasks, learning is performed using a method called Backpropagation through time (BPTT), but as mentioned above, it is necessary to train all layers of neurons corresponding to each time period, which is not easy. Therefore, in one aspect of this embodiment, after the DNN 101 extracts features such as the shape and position of a person and the components of a gas, the reservoir 102 makes predictions based on the changes in these features over time.

アニーリングマシン103は、最適化演算を行うデバイスであり、基本構成は例えば特許文献2に開示される。アニーリングマシン103は、2値のスピンを格納する複数ノードからなるスピンアレイ内部でスピン間の相互作用を実現し、エネルギー最小あるいは最大の状態に遷移することで、最適化問題を解く。なお、スピンの値を3値以上に拡張することもできる。 The annealing machine 103 is a device that performs optimization calculations, and its basic configuration is disclosed in, for example, Patent Document 2. The annealing machine 103 solves optimization problems by realizing interactions between spins within a spin array consisting of multiple nodes that store binary spins, and transitioning to a minimum or maximum energy state. The spin value can also be expanded to three or more values.

本実施例では、例えば以下のような処理のパターンを想定する。処理はリアルタイムで行うことを想定している。具体的な適用例としては、例えば所定区画内の人流の予測や最適化がある。この場合、センサ200は、カメラや振動センサであり、歩行者の画像データや振動データを取得する。DNN101は、センサのデータから、各人の存在位置や向いている方向、姿勢や速度などの特徴量を検出する。リザーバー102は、将来のデータや特徴量を予測する。アニーリングマシン103は、現在あるいは将来の特徴量から、例えば出入り口の開閉や、エレベータの速度の計画値を算出し、例えば、人流の均一化などの最適化を行う。 In this embodiment, the following processing patterns are assumed, for example. It is assumed that the processing is performed in real time. Specific application examples include prediction and optimization of people flow within a specified area. In this case, the sensor 200 is a camera or a vibration sensor that acquires image data and vibration data of pedestrians. The DNN 101 detects feature quantities such as the location, facing direction, posture, and speed of each person from the sensor data. The reservoir 102 predicts future data and feature quantities. The annealing machine 103 calculates planned values for, for example, the opening and closing of entrances and the speed of elevators from the current or future feature quantities, and performs optimization such as uniforming the flow of people.

図3は、図2の情報処理システムで可能な処理パターンの例を示す表図である。
パターン1:センサ200からの時系列データをサーバー104に送る。サーバー104から時系列データをDNN101に送信し、時系列の特徴量を抽出する。DNN101から時系列の特徴量をサーバー104経由でリザーバー102に送る。リザーバー102では時系列の特徴量から将来の特徴量を予測してサーバー104に送る。サーバー104では将来の特徴量を基にして最適化問題を生成し、アニーリングマシン103で処理可能なイジングモデルに変換して、アニーリングマシン103に問題を設定する。アニーリングマシン103で問題を解いた後、サーバー104が解を読み出し、例えば行動計画として出力部300に出力する。
FIG. 3 is a table showing examples of processing patterns possible in the information processing system of FIG.
Pattern 1: Time series data from the sensor 200 is sent to the server 104. The server 104 sends the time series data to the DNN 101, and time series features are extracted. The time series features are sent from the DNN 101 to the reservoir 102 via the server 104. The reservoir 102 predicts future features from the time series features and sends them to the server 104. The server 104 generates an optimization problem based on the future features, converts it into an Ising model that can be processed by the annealing machine 103, and sets the problem in the annealing machine 103. After the problem is solved by the annealing machine 103, the server 104 reads out the solution and outputs it to the output unit 300, for example, as an action plan.

パターン2:センサ200からの時系列データをサーバー104に送る。サーバー104から時系列データをDNN101に送る。DNN101では時系列データから時系列の特徴量を抽出してサーバー104に送る。サーバー104では特徴量を基にして最適化問題を生成し、アニーリングマシン103で処理可能なイジングモデルに変換して、アニーリングマシン103に問題を設定する。アニーリングマシン103で問題を解いた後、サーバー104が解を読み出し、例えば行動計画として出力部300に出力する。 Pattern 2: Time series data from the sensor 200 is sent to the server 104. The server 104 sends the time series data to the DNN 101. The DNN 101 extracts time series features from the time series data and sends them to the server 104. The server 104 generates an optimization problem based on the features, converts it into an Ising model that can be processed by the annealing machine 103, and sets the problem in the annealing machine 103. After the problem is solved by the annealing machine 103, the server 104 reads out the solution and outputs it to the output unit 300, for example, as an action plan.

パターン3:センサ200からの時系列データをサーバー104に送る。サーバー104から時系列データをリザーバー102に送る。リザーバー102では時系列データから将来のデータあるいは特徴量を予測してサーバー104に送る。サーバー104では将来のデータあるいは特徴量を基にして最適化問題を生成し、アニーリングマシン103で処理可能なイジングモデルに変換して、アニーリングマシン103に問題を設定する。アニーリングマシン103で問題を解いた後、サーバー104が解を読み出し、例えば行動計画として出力部300に出力する。 Pattern 3: Time series data from the sensor 200 is sent to the server 104. The server 104 sends the time series data to the reservoir 102. The reservoir 102 predicts future data or features from the time series data and sends the prediction to the server 104. The server 104 generates an optimization problem based on the future data or features, converts it into an Ising model that can be processed by the annealing machine 103, and sets the problem in the annealing machine 103. After the problem is solved by the annealing machine 103, the server 104 reads out the solution and outputs it to the output unit 300, for example, as an action plan.

パターン4:センサ200からの時系列データをサーバー104に送る。サーバー104から時系列データをDNN101に送る。DNN101では時系列データから時系列の特徴量を抽出してサーバー104を介してリザーバー102に送る。リザーバー102では時系列の特徴量から将来の特徴量を予測してサーバー104に送る。サーバー104では将来の特徴量を予測値として出力部300に出力する。 Pattern 4: Time series data from the sensor 200 is sent to the server 104. The server 104 sends the time series data to the DNN 101. The DNN 101 extracts time series features from the time series data and sends them to the reservoir 102 via the server 104. The reservoir 102 predicts future features from the time series features and sends them to the server 104. The server 104 outputs the future features to the output unit 300 as predicted values.

パターン5:センサ200からの時系列データをサーバー104に送る。サーバー104から時系列データをリザーバー102に送る。リザーバー102では時系列データから将来のデータを予測してサーバー104に送る。サーバー104では将来のデータを予測値として出力部300に出力する。 Pattern 5: Time series data from the sensor 200 is sent to the server 104. The server 104 sends the time series data to the reservoir 102. The reservoir 102 predicts future data from the time series data and sends it to the server 104. The server 104 outputs the future data to the output unit 300 as a predicted value.

パターン6:センサ200からの時系列データをサーバー104に送る。サーバー104から時系列データを基にして最適化問題を生成し、アニーリングマシン103で処理可能なイジングモデルに変換して、アニーリングマシン103に問題を設定する。アニーリングマシン103で問題を解いた後、サーバー104が解を読み出し、例えば行動計画として出力部300に出力する。 Pattern 6: Time series data from the sensor 200 is sent to the server 104. An optimization problem is generated based on the time series data from the server 104, converted into an Ising model that can be processed by the annealing machine 103, and the problem is set in the annealing machine 103. After the problem is solved by the annealing machine 103, the server 104 reads out the solution and outputs it to the output unit 300, for example, as an action plan.

本実施例では、サーバー104と子デバイス101~103は無線インターフェース105を備えており、相互にデータの送受信が可能である。特に子デバイスのノードの出力を、子デバイス間で送受信することにより、DNN101、リザーバー102、アニーリングマシン103の機能を柔軟に設定可能である。ここで、DNN101やリザーバー102のニューロンとアニーリングマシン103のスピンを総称してノードと呼ぶことにする。 In this embodiment, the server 104 and child devices 101 to 103 are equipped with a wireless interface 105, and are capable of transmitting and receiving data to and from each other. In particular, by transmitting and receiving the output of the nodes of the child devices between the child devices, the functions of the DNN 101, reservoir 102, and annealing machine 103 can be flexibly configured. Here, the neurons of the DNN 101 and reservoir 102 and the spins of the annealing machine 103 are collectively referred to as nodes.

子デバイス間は圧縮データを伝送し、各子デバイスの無線インターフェース105は圧縮伸張部を備えるものとする。サーバー104は各子デバイスに同期信号をブロードキャスト、または、各子デバイスが原子時計を備えることにより、子デバイス間の動作の同期を保証する。サーバー104と子デバイス間の通信手段の詳細は、後の実施例で詳説する。 Compressed data is transmitted between child devices, and the wireless interface 105 of each child device is equipped with a compression/decompression unit. The server 104 ensures synchronization of operations between child devices by broadcasting a synchronization signal to each child device, or by each child device being equipped with an atomic clock. Details of the communication means between the server 104 and the child devices will be described in detail in a later embodiment.

<子デバイスの実装例>
図4は、情報処理システムの回路実装の例を説明するブロック図である。図2では、DNN101、リザーバー102、アニーリングマシン103のそれぞれが独立の子デバイスとして示されている。しかし、これらの複数を同一の子デバイス上に構成してもよい。すなわち、例えばDNN101-1、リザーバー102-1、アニーリングマシン103-1から選ばれた任意の複数を、同一の子デバイス410上にセットで備えることができる。
<Example of child device implementation>
4 is a block diagram for explaining an example of circuit implementation of an information processing system. In FIG. 2, the DNN 101, the reservoir 102, and the annealing machine 103 are each shown as an independent child device. However, a plurality of these may be configured on the same child device. That is, for example, any plurality selected from the DNN 101-1, the reservoir 102-1, and the annealing machine 103-1 may be provided as a set on the same child device 410.

このためには、子デバイス410は、LSI(Large Scale Integrated Circuit)上、またはFPGA(Field Programmable Gate Array)上の再構成可能回路により、DNN101-1、リザーバー102-1、アニーリングマシン103-1のうち、少なくとも2つ以上の機能を実装してもよい。これにより、一つの子デバイスが、機能を動的に切り換えて、順次実行することが可能になるため、子デバイスの数を低減することができる。あるいはDNN101、リザーバー102、アニーリングマシン103をソフトウェアで実装することもできる。この場合は、汎用または専用のプロセッサによりソフトウェアを実行する。 To this end, the child device 410 may implement at least two or more functions of the DNN 101-1, reservoir 102-1, and annealing machine 103-1 using a reconfigurable circuit on an LSI (Large Scale Integrated Circuit) or FPGA (Field Programmable Gate Array). This allows one child device to dynamically switch between functions and execute them sequentially, thereby reducing the number of child devices. Alternatively, the DNN 101, reservoir 102, and annealing machine 103 can be implemented in software. In this case, the software is executed by a general-purpose or dedicated processor.

本実施例では、ガスセンサ201、カメラ202、出力部300、サーバー104および子デバイスが無線インターフェース105を備え、無線によりデータを送受信する。無線インターフェース105には、複数のアンテナ(または、複数の無線トランシーバ)が接続される。一つの例では、複数のアンテナは複数の周波数帯で、並列に無線通信することができる。さらに、サーバー104は公知のスペクトルセンス機能を備え、相互干渉を避けるように通信周波数を決定する。 In this embodiment, the gas sensor 201, the camera 202, the output unit 300, the server 104 and the child device are provided with a wireless interface 105 and transmit and receive data wirelessly. A plurality of antennas (or a plurality of wireless transceivers) are connected to the wireless interface 105. In one example, the plurality of antennas can wirelessly communicate in parallel in a plurality of frequency bands. Furthermore, the server 104 is provided with a known spectrum sensing function and determines the communication frequency so as to avoid mutual interference.

<センサ側で特徴抽出を行う例>
図5は、特徴抽出の構成の他の例を説明するブロック図である。図2では、DNN101はサーバー104と無線通信する子デバイスで構成したが、特徴抽出はセンサ側で行ってもよい。図5では、カメラ202および匂いセンサ203に付属してDNN501が配置される。
<Example of feature extraction on the sensor side>
Fig. 5 is a block diagram for explaining another example of the configuration of feature extraction. In Fig. 2, the DNN 101 is configured as a child device that wirelessly communicates with the server 104, but feature extraction may be performed on the sensor side. In Fig. 5, the DNN 501 is disposed in association with the camera 202 and the odor sensor 203.

このようにディープラーニングによる特徴抽出を、センサ200側で行うことで、センサからのデータ伝送量を低減することができる。 In this way, by performing feature extraction using deep learning on the sensor 200 side, the amount of data transmitted from the sensor can be reduced.

<ピアツーピア型接続アニーリングマシン>
図6Aは、複数のアニーリングマシン103-1~103-4が連携して処理を行うシステムの概念を説明するブロック図である。この例では、ピアツーピア型に接続されるアニーリングマシン103-1~103-4とサーバー104は、図4Aと同様に、相互に無線接続されている。
<Peer-to-peer connected annealing machine>
6A is a block diagram explaining the concept of a system in which multiple annealing machines 103-1 to 103-4 perform processing in cooperation with each other. In this example, the annealing machines 103-1 to 103-4 connected in a peer-to-peer format and the server 104 are connected to each other wirelessly, similar to FIG. 4A.

サーバー104の記憶装置1044に格納されたプログラムである問題設定部601は、DNN101やリザーバー102で抽出された特徴量、あるいはリザーバー102からの予測値を基にし、最適化問題を設定する。問題設定のために、ユーザの入力を可能とするインターフェースを設けてもよい。また、問題設定部601は、ディープラーニングにより問題設定を行ってもよい。その場合は、ディープニューラルネットワークをハードウェアとして備える。 The problem setting unit 601, which is a program stored in the storage device 1044 of the server 104, sets an optimization problem based on the features extracted by the DNN 101 or the reservoir 102, or the predicted values from the reservoir 102. An interface that allows user input may be provided for problem setting. The problem setting unit 601 may also set the problem by deep learning. In that case, a deep neural network is provided as hardware.

問題設定部601は、最適化問題をイジングモデルに変換し、特許文献2等で公知のようにスピン間の相互作用を定める外部磁場係数、相互作用係数等を決定する。ディープラーニングを用いて問題設定を行う場合は、DNN101やリザーバー102で抽出された特徴量、あるいは、リザーバー102からの予測値、あるいは、センサ出力やそれを処理した信号などをディープニューラルネットワークに入力し、その出力から前記係数のセットが得られる。前記ディープニューラルネットワークのパラメータ(ニューロンの重みなど)は、サーバー104上であらかじめ学習し、設定してもよい。また、サーバー104上で、随時、適切なタイミングで学習し、設定してもよい。あるいは、サーバー104外のコンピュータ上やクラウド上であらかじめ、または、随時、適切なタイミングで学習し、設定してもよい。問題設定部601により決定された係数は、サーバー104の無線インターフェース105から、アニーリングマシン103-1~103-4に送信される。アニーリングマシン103-1~103-4は、受信した係数を設定し、公知の手法で相互作用演算を行い、スピンの値を更新する。 The problem setting unit 601 converts the optimization problem into an Ising model and determines the external magnetic field coefficient, interaction coefficient, etc. that determine the interaction between spins as known in Patent Document 2 and the like. When the problem is set using deep learning, the feature values extracted by the DNN 101 or the reservoir 102, or the predicted value from the reservoir 102, or the sensor output or a signal processed therefrom, etc. are input to the deep neural network, and the set of coefficients is obtained from the output. The parameters of the deep neural network (such as neuron weights) may be learned and set in advance on the server 104. They may also be learned and set on the server 104 at any time and at an appropriate timing. Alternatively, they may be learned and set in advance or at any time and at an appropriate timing on a computer or cloud outside the server 104. The coefficients determined by the problem setting unit 601 are transmitted from the wireless interface 105 of the server 104 to the annealing machines 103-1 to 103-4. The annealing machines 103-1 to 103-4 set the received coefficients, perform interaction calculations using known methods, and update the spin values.

ピアツーピア型接続では、アニーリングマシン103-1~103-4は、全体で一つのアニーリングマシンとして動作する。アニーリングマシンでは、一つのスピンの値を更新するために、当該スピンと接続されるスピン(隣接スピンという)の値を使用する。従って、例えばアニーリングマシン103-1のスピンを更新するための隣接スピンがアニーリングマシン103-2にある場合は、当該スピンの値を無線でアニーリングマシン103-2からアニーリングマシン103-1に送信することになる。 In a peer-to-peer connection, the annealing machines 103-1 to 103-4 operate as a single annealing machine. To update the value of one spin, the annealing machines use the value of the spin connected to that spin (called an adjacent spin). Therefore, for example, if annealing machine 103-2 has an adjacent spin to update the spin of annealing machine 103-1, the value of that spin will be transmitted wirelessly from annealing machine 103-2 to annealing machine 103-1.

図6Bは、アニーリングマシン103の詳細な内部ブロック図を示す。無線インターフェース105は、データの送受信を行う。データ圧縮伸長部604は、送信するデータの圧縮および、受信したデータの伸長を行う。スピンアレイ605は、特許文献2等で公知のスピンを基底状態に遷移させるための構成で、例えば半導体メモリの原理を応用して実装される。 Figure 6B shows a detailed internal block diagram of the annealing machine 103. The wireless interface 105 transmits and receives data. The data compression/decompression unit 604 compresses data to be transmitted and decompresses received data. The spin array 605 is a configuration for transitioning spins to the ground state, as known from Patent Document 2 and the like, and is implemented by applying the principles of semiconductor memory, for example.

図6Cは、図6A、図6Bのアニーリングマシン103-1~103-4の動作タイムチャートである。事前に問題設定部601から無線インターフェース105を介して、各アニーリングマシン103-1~103-4に係数が設定され、スピンアレイ605のスピンの値が、例えばランダムに初期化されているものとする。 Figure 6C is an operation time chart of the annealing machines 103-1 to 103-4 in Figures 6A and 6B. It is assumed that coefficients are set in advance in each of the annealing machines 103-1 to 103-4 from the problem setting unit 601 via the wireless interface 105, and the spin values of the spin array 605 are initialized, for example, randomly.

まず、アニーリングマシン103-1~103-4の同期をとるために、サーバー104の同期制御部602から、同期信号(S)が各アニーリングマシン103にブロードキャスト送信される。各アニーリングマシン103は、同期信号受信回路とカウンタを備え、同期信号を受信したタイミングでカウンタをゼロにリセットし、以降、内部クロックによりカウンタの値を増加させ、各動作をカウンタの値にもとづいて切り換える。これにより、各アニーリングマシンの内部クロック周波数が多少異なっていても、これらの内部動作を互いに同期できる。 First, in order to synchronize the annealing machines 103-1 to 103-4, a synchronization signal (S) is broadcast from the synchronization control unit 602 of the server 104 to each annealing machine 103. Each annealing machine 103 is equipped with a synchronization signal receiving circuit and a counter, and resets the counter to zero when it receives the synchronization signal. Thereafter, the counter value is incremented by the internal clock, and each operation is switched based on the counter value. This allows the internal operations of each annealing machine to be synchronized with each other even if the internal clock frequencies of each annealing machine are slightly different.

次に、順番は任意であるが、例えばアニーリングマシン103-1が自己のスピンの値をアニーリングマシン103-2~103-4に送信する送信処理(T)を行い、アニーリングマシン103-2~103-4はこれを受信処理(R)する。第1回目の送信(Cycle 1)は、スピンの初期値(通常はランダム)を送信することになる。自己のスピンの値を全て送信してもよいが、他のアニーリングマシンのスピンの隣接スピンとなっているスピンの値のみを送信するのが効率的である。隣接スピンの配置関係については、事前にサーバー104から各アニーリングマシン103に通知しておく。それ以降、各アニーリングマシン103は、順番に送受信の役割を交代する。また、後述のように送信データは、データ圧縮伸長部604で圧縮処理を行う。 Next, the order can be arbitrary, but for example, the annealing machine 103-1 performs a transmission process (T) to transmit its own spin value to the annealing machines 103-2 to 103-4, and the annealing machines 103-2 to 103-4 perform a reception process (R). The first transmission (Cycle 1) transmits the initial spin value (usually random). All of the annealing machines' own spin values may be transmitted, but it is more efficient to transmit only the values of the spins that are adjacent to the spins of other annealing machines. The server 104 notifies each annealing machine 103 in advance of the arrangement relationship of the adjacent spins. After that, each annealing machine 103 takes turns in the role of transmitting and receiving. In addition, the transmitted data is compressed by the data compression and decompression unit 604, as described later.

なお、子デバイスである各アニーリングマシン103は、送信データにタイムスタンプ付しておいてもよい。以下の他の実施例でも同様である。 In addition, each annealing machine 103, which is a child device, may attach a timestamp to the transmitted data. This also applies to the other embodiments described below.

送受信が終了した後、各アニーリングマシン103のスピンアレイ605では、公知の手法で相互作用演算を行い、スピンの値の更新処理(U)を行う。次に更新したスピンの値を他のアニーリングマシン103に送信するが、送信データ量を圧縮するために、データ圧縮伸長部604では圧縮処理(P)を行う。圧縮処理(P)では、前回との差分のみを送信するように処理する。 After the transmission and reception is completed, the spin array 605 of each annealing machine 103 performs an interaction calculation using a known method, and performs a process (U) to update the spin value. The updated spin value is then transmitted to the other annealing machines 103, but in order to compress the amount of transmitted data, the data compression and expansion unit 604 performs a compression process (P). In the compression process (P), only the difference from the previous time is transmitted.

その後、同様の同期処理(S)、データ送受信(T)(R)、スピン更新(U)、データ圧縮(P)を、Cycle 2以降スピン値が収束するまであるいは規定回数実行し、最終的なスピンの値を各アニーリングマシン103が、サーバー104に送信する。サーバー104の解取得部603は収集したスピンの値に基づいて解を得、出力部300に出力する。 Then, similar synchronization processing (S), data transmission/reception (T) (R), spin update (U), and data compression (P) are performed from Cycle 2 onwards until the spin values converge or a specified number of times, and each annealing machine 103 transmits the final spin value to the server 104. The solution acquisition unit 603 of the server 104 obtains a solution based on the collected spin values and outputs it to the output unit 300.

アニーリングマシンでは、上記の時分割に行う各ブロードキャストにおいて、ブロードキャストを短時間で終わらせて演算時間を短縮するため、データを分割して、複数の周波数チャネルを用いて並列に送信してもよい。周波数チャネルの選定、指示はサーバー104が行うものとする。 In the annealing machine, in order to complete each broadcast in a short time and shorten the calculation time, the data may be divided and transmitted in parallel using multiple frequency channels in each broadcast performed in the time division manner described above. The selection and instruction of the frequency channels is performed by the server 104.

複数の周波数チャネルを用いる場合は、複数のアンテナや複数のトランシーバを無線インターフェース105に準備する。アンテナだけ複数でトランシーバは共通という実装もあり得る。その場合は、トランシーバ内に、複数系統の送受信回路を並列に備え、並列に送受信する。空き周波数帯をモニタするため、サーバー104が、スペクトルセンシングを行い、空き周波数領域をチャネル単位で把握し、それを上記ブロードキャスト時のチャネルとして各子デバイスに割り当ててもよい。 When multiple frequency channels are used, multiple antennas and multiple transceivers are prepared in the wireless interface 105. It is also possible to implement multiple antennas and a common transceiver. In that case, multiple transmission and reception circuits are provided in parallel within the transceiver, and transmission and reception are performed in parallel. To monitor available frequency bands, the server 104 may perform spectrum sensing to grasp available frequency regions on a channel-by-channel basis, and assign them to each child device as channels for the above-mentioned broadcast.

また、各子デバイスが複数のアンテナや複数の受信回路を備えることで、時分割でなく、周波数分割により、各子デバイスが一斉に(同時に)ブロードキャストしあうことも可能である。例えば、図6Aで各子デバイスが4個のアンテナと4つの周波数帯域を用いて、3個のアンテナとそれらに接続された3個の受信機で受信を行い、1個のアンテナとそれに接続された送信機で送信を行えば、一斉にブロードキャストすることができる。この場合、通信時間を1/4にできる。 Also, by equipping each child device with multiple antennas and multiple receiving circuits, it is possible for each child device to broadcast to each other simultaneously (at the same time) using frequency division rather than time division. For example, in FIG. 6A, each child device can broadcast simultaneously by using four antennas and four frequency bands, receiving with three antennas and three receivers connected to them, and transmitting with one antenna and a transmitter connected to it. In this case, the communication time can be reduced to one quarter.

同様に、各子デバイスが複数のアンテナや複数のトランシーバを備え、符号分割多重で送受信を行うことにより、一斉にブロードキャストしあうこともできる。その場合は、各トランシーバにおいて、所定の拡散符号を乗算することで、周波数帯域を共用しながら、混信を防止できる。拡散符号の選定、指示は、サーバー104が行うものとする。 Similarly, each child device can be equipped with multiple antennas and multiple transceivers and can broadcast simultaneously by transmitting and receiving using code division multiplexing. In this case, by multiplying a specific spreading code in each transceiver, it is possible to prevent interference while sharing the frequency band. The selection and instruction of the spreading code is performed by the server 104.

本実施例のシステムでは、アニーリングマシン103のスピンの更新演算よりも、スピンの情報をブロードキャストする時間のほうが長いため、アニーリングマシン103間のデータ送受信時間の短縮が重要である。そのため、周波数分割多重などのような伝送の高速化を図るとともに、スピン情報を圧縮してから送信することが好ましい。 In the system of this embodiment, the time it takes to broadcast spin information is longer than the time it takes to update the spin of the annealing machine 103, so it is important to reduce the time it takes to send and receive data between the annealing machines 103. For this reason, it is preferable to speed up transmission using techniques such as frequency division multiplexing, and to compress the spin information before sending it.

圧縮の手段として、ひとつは、既述のように更新されたスピン情報のみ伝送する。このためには、スピンの更新マップを作ればよい。特に、計算が進むと更新されるスピンが減るため、更新マップはほとんどがゼロ(更新なし)で、少数が1(更新有り)のマップとなる。ゼロが多いので、可逆的な圧縮方法でも高い圧縮率で圧縮できる。他の手法としては、スピン情報マップを例えば離散コサイン変換、あるいは、フーリエ変換のような空間周波数変換して、低周波成分と高周波成分に分離し、重要度が高い低周波成分を高いビット数で細かく量子化し、重要度が低い(あるいは、成分が少ない)高周波成分は、低いビット数で粗く量子化することで、圧縮率を高めることができる。 One method of compression is to transmit only updated spin information, as mentioned above. To do this, an update map of the spins can be created. In particular, as the calculations progress, the number of updated spins decreases, so the update map is mostly zero (no update) with a small number of 1 (update). Since there are many zeros, compression can be achieved at a high compression rate even with lossless compression methods. Another method is to apply a spatial frequency transform, such as a discrete cosine transform or Fourier transform, to the spin information map to separate it into low-frequency and high-frequency components, and then finely quantize the low-frequency components that are more important with a high number of bits, and roughly quantize the high-frequency components that are less important (or have fewer components) with a low number of bits, thereby increasing the compression rate.

データ圧縮伸長部604の圧縮処理(P)では、前述のように前の状態からの更新有無や差分を送信データとすることに加え、あるいはこれに代えて、送信データの非可逆圧縮を行うことが望ましい。スピンアレイのスピンの値は、1または-1(0)の2次元配置であるから、これをモノクロの画像とみなすことができる。あるいは、スピン複数個の情報をカラー画像とみなすことができる。後者は、例えば、6×4の24個のスピンの情報(24ビット情報)を、8ビット(R)8ビット(G)8ビット(B)のカラー画像の1ピクセルとみなすことができる。 In the compression process (P) of the data compression/expansion unit 604, in addition to or instead of using the update status and difference from the previous state as the transmission data as described above, it is desirable to perform lossy compression of the transmission data. Since the spin values of the spin array are a two-dimensional arrangement of 1 or -1 (0), this can be considered as a monochrome image. Alternatively, the information of multiple spins can be considered as a color image. In the latter case, for example, the information of 24 spins (24-bit information) of 6 x 4 can be considered as one pixel of an 8-bit (R) 8-bit (G) 8-bit (B) color image.

画像の圧縮技術として知られているJPEG等のデータ圧縮技術を適用すれば、このような、モノクロあるいはカラーの2次元画像とみなしたスピンの集合データを非可逆で圧縮可能である。JPEG等の非可逆圧縮は高い圧縮率であるため、子デバイス間の送信データを減らすことができ、送信時間を短縮可能である。アニーリングマシン103のデータ圧縮伸長部604は、非可逆画像圧縮と非可逆画像展開を行う。第1のアニーリングマシン103-1から非可逆画像圧縮方式で圧縮され送信されたスピン情報を、第2のアニーリングマシン103-2が受信し、非可逆画像展開してスピン情報を復元する。 By applying a data compression technique such as JPEG, which is known as an image compression technique, it is possible to losslessly compress the collection data of spins regarded as a monochrome or color two-dimensional image. Because lossy compression such as JPEG has a high compression rate, it is possible to reduce the amount of data transmitted between child devices and shorten the transmission time. The data compression and expansion unit 604 of the annealing machine 103 performs lossy image compression and lossy image expansion. The second annealing machine 103-2 receives the spin information compressed and transmitted by the first annealing machine 103-1 using a lossy image compression method, and performs lossy image expansion to restore the spin information.

非可逆圧縮であるため、復元されたスピン情報は、元のスピン情報と完全に同じにはならない。しかし、アニーリングマシン103はそもそも確率的にスピンを更新し、ランダム誤差に強いため、上記のスピン情報誤差に耐性がある。誤差の出方は、ランダムな方がよいため、非可逆圧縮のしかたを何通りか持っておき、それを、ランダムにあるいは順次切り替えて適用してもよい。 Because this is lossy compression, the restored spin information will not be completely the same as the original spin information. However, the annealing machine 103 updates the spins probabilistically and is resistant to random errors, so it is resistant to the above-mentioned spin information errors. Since it is better for the errors to occur randomly, it is possible to have several lossy compression methods and apply them randomly or by switching between them sequentially.

また、平滑フィルタ処理などをかけて、前記スピン情報に関する等価画像を単調化し、圧縮率を高めることを行ってもよい。また前述のように前の状態との差分データのみ抽出する処理を行ってもよい。このようなフィルタや処理機能は、データ圧縮伸長部604の一部としてあるいはその前段に備えることができる。平滑フィルタや周波数変換でもデータの一部が失われるが、アニーリングマシンの場合には演算結果に大きな影響はないと考えられる。 In addition, smoothing filter processing or the like may be applied to monotonize the equivalent image related to the spin information and increase the compression rate. As described above, processing may be performed to extract only the difference data from the previous state. Such filters and processing functions may be provided as part of the data compression and expansion unit 604 or at a stage preceding it. Although some data is lost with smoothing filters and frequency conversion, in the case of an annealing machine, it is believed that this will not have a significant effect on the calculation results.

以上のように伝送時間短縮のためのデータ削減には、(更新情報や差分情報の生成あり/なし)×(圧縮あり/なし)の種々の組み合わせが可能である。また、データ削減の処理のための時間に比べて、送信の時間が長いと考えられるため、種々のデータ削減手法をシリアルあるいはパラレルに実行し、好ましい結果を選択してもよい。 As described above, various combinations of (with/without generation of update information or difference information) x (with/without compression) are possible for data reduction to shorten transmission times. In addition, since the transmission time is likely to be longer than the time required for data reduction processing, various data reduction methods may be executed serially or in parallel to select the desired result.

上記実施例はアニーリングマシンの例であるが、リザーバー計算機の場合、ESN(Echo State Network)とLSM(Liquid State Machine)の2種類に大別されることが知られている。ESNでは、ニューロン出力が連続値となるため、例えば32ビットで表現される。一方、LSMでは、ニューロン出力はスパイク信号であるため、0、1や、-1、0、1のように2値や3値で表現される。後者では、スパイクを発生したニューロン以外のニューロンは出力が0であるため、ニューロン出力情報を、更新情報や差分情報に変換せずに、高い圧縮率で圧縮し、送信データを削減することができる。また、ESNの場合、差分によるデータ削減効果が少ないため、同様に、ニューロン出力情報を差分情報に変換せずに圧縮するのがよい。 The above embodiment is an example of an annealing machine, but it is known that reservoir computers can be broadly divided into two types: ESN (Echo State Network) and LSM (Liquid State Machine). In ESN, the neuron output is a continuous value, so it is expressed in, for example, 32 bits. On the other hand, in LSM, the neuron output is a spike signal, so it is expressed in two or three values such as 0, 1 or -1, 0, 1. In the latter, the output of neurons other than the neuron that generated the spike is 0, so the neuron output information can be compressed at a high compression rate without being converted into update information or difference information, and the transmitted data can be reduced. Also, in the case of ESN, the data reduction effect due to differences is small, so it is similarly better to compress the neuron output information without converting it into difference information.

なお、リザーバー計算機の場合は、各ニューロンは、近傍のニューロンだけでなく、遠方のニューロンにも結合するため、リザーバー102からのニューロン出力情報の送信はブロードキャストが適している。一方、アニーリングマシンの場合は、各スピンは、隣接するスピンとの接続だけでよいことも多く、その場合は、特定のスピン間で出力を送信すればよい。 In the case of a reservoir computer, each neuron is connected not only to nearby neurons but also to distant neurons, so broadcasting is suitable for transmitting neuron output information from the reservoir 102. On the other hand, in the case of an annealing machine, each spin often only needs to be connected to adjacent spins, in which case it is sufficient to transmit output between specific spins.

図6Dは、アニーリングマシンの隣接スピンの接続の概念を示す概念図である。この概念図では、アニーリングマシン103が9個2次元配列され、各アニーリングマシンにはスピン606が16個配置されている(実際はもっと個数が多く、また3次元配列の場合もある)。アニーリングマシンの場合は、隣接間のスピンの結合だけでよい場合も多い。その場合、図6Dの通り、中央のアニーリングマシンは、隣接する各アニーリングマシンと、点線枠で示した境界に存在するスピン606の情報を交換できるだけでよい。このため例えば、各アニーリングマシンは、無線インターフェース105として、4つのトランシーバを並列に用いて(または、一つのトランシーバに複数のアンテナを備えて)、周波数分割多重や符号分割多重や空間分割多重により、4方向の送受信を同時に行ってもよい。スピンの情報の圧縮は、圧縮率が高い非可逆圧縮を使用できるが、上記の場合には、伝送量が小さいため、情報劣化のない可逆圧縮でもよい。 Figure 6D is a conceptual diagram showing the concept of connecting adjacent spins of an annealing machine. In this conceptual diagram, nine annealing machines 103 are arranged in a two-dimensional array, and each annealing machine has 16 spins 606 (in reality, the number is greater, and there are also cases where the array is three-dimensional). In the case of an annealing machine, it is often sufficient to only couple adjacent spins. In that case, as shown in Figure 6D, the central annealing machine only needs to exchange information on the spins 606 that exist on the boundaries shown in the dotted lines with each of the adjacent annealing machines. For this reason, for example, each annealing machine may use four transceivers in parallel as the wireless interface 105 (or have multiple antennas on one transceiver) and perform simultaneous transmission and reception in four directions by frequency division multiplexing, code division multiplexing, or space division multiplexing. The compression of spin information can be performed using lossy compression, which has a high compression rate, but in the above case, since the amount of transmission is small, lossless compression, which does not degrade information, may also be used.

以上の実施例では、小規模のアニーリングマシンを組み合わせ、アニーリングマシン相互で隣接スピンのデータを送受信することで、大規模な問題に対応できる。またバッテリ駆動や自己発電に対応した低消費電力の子デバイスで、大規模問題の求解が可能になる。 In the above embodiment, large-scale problems can be handled by combining small-scale annealing machines and transmitting data of adjacent spins between the annealing machines. In addition, large-scale problems can be solved using low-power child devices that are battery-powered or self-generated.

<スター型接続アニーリングマシン>
図7は、実施例5とは別の例で、複数のアニーリングマシン103-1~103-4で同一問題を解く。複数のアニーリングマシン103-1~103-4は、独立に演算を行う。
<Star-type connection annealing machine>
7 shows an example different from the fifth embodiment, in which the same problem is solved by a plurality of annealing machines 103-1 to 103-4. The plurality of annealing machines 103-1 to 103-4 perform calculations independently.

サーバー104の問題設定部701は、同一問題に対する係数を各アニーリングマシン103に送信する。各アニーリングマシン103は独立に演算を行い、結果をサーバー104に送信する。なお、係数、スピンの初期値、演算の際に印加するランダム性などは、各アニーリングマシン103間で互いに異なる。 The problem setting unit 701 of the server 104 transmits coefficients for the same problem to each annealing machine 103. Each annealing machine 103 performs calculations independently and transmits the results to the server 104. Note that the coefficients, initial values of the spins, and randomness applied during calculations are different between each annealing machine 103.

サーバー104の解取得部703では、各アニーリングマシンの結果にもとづき、多数決や平均化などの処理を行うことで、最良の結果を判断する。本実施例では、アニーリングマシン103は最適化演算の前にサーバー104からデータを受信し、後にサーバー104へ結果を送信するだけで、アニーリングマシン103同士の通信は必要ない。本実施例では、高速に並列的な求解が可能である。 The solution acquisition unit 703 of the server 104 performs processes such as majority voting and averaging based on the results of each annealing machine to determine the best result. In this embodiment, the annealing machine 103 simply receives data from the server 104 before the optimization calculation and then transmits the results to the server 104, and there is no need for communication between the annealing machines 103. In this embodiment, high-speed parallel solution generation is possible.

<ピアツーピア型接続リザーバー>
図8Aは、リザーバーコンピューティングを無線接続で大規模化するシステムの例を示すブロック図である。リザーバー102-1~102-4が全体として、一つのリザーバー層を構成する。
図8Bは、リザーバー102の内部ブロック図を示す。無線インターフェース105は、データの送受信を行う。データ可逆圧縮伸長部804は、送信するデータの圧縮および、受信したデータの伸長を行う。ニューロン805は、公知の方法で接続されてリザーバー層を構成するニューロンの集合である。
図8Cは、図8Aのシステムにおいて、サーバー104およびリザーバー102が分担する機能および、送信するデータと送信先である。
図8Dは、図8Aの、リザーバー102-1~102-4の動作タイムチャートである。
<Peer-to-peer connected reservoir>
8A is a block diagram showing an example of a system for wirelessly connecting reservoir computing on a large scale. Reservoirs 102-1 to 102-4 collectively constitute one reservoir layer.
8B shows an internal block diagram of the reservoir 102. The wireless interface 105 transmits and receives data. The data lossless compression and decompression unit 804 compresses data to be transmitted and decompresses received data. The neuron 805 is a collection of neurons that are connected in a known manner to form the reservoir layer.
FIG. 8C shows the functions shared by the server 104 and the reservoir 102 in the system of FIG. 8A, as well as the data to be transmitted and the destination of the data.
FIG. 8D is a time chart showing the operation of the reservoirs 102-1 to 102-4 in FIG. 8A.

図8A、図8B、図8C、図8Dを参照して動作を説明する。サーバー104の入力部801は、各リザーバー102に入力データDをブロードキャストする。入力データDがn次元ベクトルであれば、x1(t)~xn(t)のデータを各リザーバー102に送信する。特徴抽出をリザーバーコンピューティングで行う場合は、センサ信号、あるいは、それにフィルタなどの前処理を加えた信号を、リザーバー102の入力信号とする。データの送受信は、無線インターフェース105を介して行われる(以下同様)。 The operation will be described with reference to Figures 8A, 8B, 8C, and 8D. The input unit 801 of the server 104 broadcasts input data D to each reservoir 102. If the input data D is an n-dimensional vector, data x1(t) to xn(t) is sent to each reservoir 102. When feature extraction is performed by reservoir computing, the input signal to the reservoir 102 is a sensor signal or a signal to which preprocessing such as a filter has been applied. Data is transmitted and received via the wireless interface 105 (same below).

また、サーバー104の同期制御部802は、同期信号Sをブロードキャストする。各リザーバー102は、同期信号受信回路とカウンタを備え、同期信号を受信したタイミングでカウンタをゼロにリセットし、以降、内部クロックによりカウンタの値を増加させ、各動作をカウンタの値にもとづいて切り換えることで、リザーバー102同士の同期を保証する。 The synchronization control unit 802 of the server 104 also broadcasts a synchronization signal S. Each reservoir 102 is equipped with a synchronization signal receiving circuit and a counter, and resets the counter to zero when it receives the synchronization signal. Thereafter, the counter value is incremented by an internal clock, and each operation is switched based on the counter value, thereby ensuring synchronization between the reservoirs 102.

各リザーバー102は、自分のリザーバーに含まれるニューロンの現在時刻の出力値を他のリザーバーおよびサーバー104に対してブロードキャスト(T)する。このとき、順番は任意であるが、例えばリザーバー102-1が自己のニューロンの出力をリザーバー102-2~102-4に送信する送信処理(T)を行い、リザーバー102-2~102-4とサーバー104はこれを受信(R)する。それ以降、各リザーバー102は、順番に送受信の役割を交代する。 Each reservoir 102 broadcasts (T) the output value of the neuron contained in its own reservoir at the current time to the other reservoirs and the server 104. At this time, the order is arbitrary, but for example, reservoir 102-1 performs a transmission process (T) to send the output of its own neuron to reservoirs 102-2 to 102-4, and reservoirs 102-2 to 102-4 and server 104 receive this (R). After that, each reservoir 102 takes turns in the role of sending and receiving.

各リザーバー102は、他のリザーバーからのニューロンの値とサーバー104からの入力信号に基づいて、ニューロンの値を更新(NU)する。各リザーバー102は更新したニューロン出力情報を圧縮(P)し、次のサイクルの処理に移る。図8Dには2サイクル分のタイムチャートを示すが、この処理は基本的にサーバー104の入力部(入力層)へのデータ入力のタイミングで、繰り返し実行される。 Each reservoir 102 updates (NU) the neuron value based on the neuron values from other reservoirs and the input signal from the server 104. Each reservoir 102 compresses (P) the updated neuron output information and moves on to the next cycle of processing. Figure 8D shows a time chart for two cycles, but this processing is basically executed repeatedly at the timing of data input to the input section (input layer) of the server 104.

図8Dのタイムチャートの、同期信号+入力データ値配信(S/D)~圧縮(P)に至る部分は、一つの時刻の入力値(1サイクルのデータ)に対する処理となる。よって、各ニューロン(ノード)の値は、上記入力データ、および、現在の自分、及び他のニューロンの出力値にもとづき、1サイクルぶんだけ更新されることになる。そのために、各リザーバー102は、現在時刻の全(あるいは、一部の)ニューロン値を収集しておく必要がある。本システムでは、他のリザーバー102のニューロン値を無線送信することで収集することができる。ブロードキャストを短時間で終わらせるため、周波数分割多重や符号分割多重を用いて一斉にブロードキャストしあってもよい点は、実施例5で説明したものと同様である。 In the time chart of Figure 8D, the part from the synchronization signal + input data value distribution (S/D) to compression (P) is the processing for the input value (one cycle of data) at one time. Therefore, the value of each neuron (node) is updated for one cycle based on the above input data and the current output value of itself and other neurons. For this reason, each reservoir 102 needs to collect all (or part of) the neuron values at the current time. In this system, the neuron values of other reservoirs 102 can be collected by wireless transmission. To complete the broadcast in a short time, frequency division multiplexing or code division multiplexing may be used to broadcast simultaneously, as explained in the fifth embodiment.

各子デバイスのニューロンの出力は、2次元の画像のようにみなすことができるので、圧縮処理(P)では、データ可逆圧縮伸長部804では、例えばGIF(Graphics Interchange Format)のような可逆圧縮により圧縮(P)し、送信を行う。受信側では、受け取ったデータを解凍して、送信側の現在のニューロン805の出力値を取得する。これにより、ニューロン805の更新が可能になる。リザーバーの場合は、ニューロンの出力誤差に比較的弱い計算方式のため、非可逆圧縮よりランレングス符号のような情報の劣化がない可逆圧縮方式のほうが好ましい。 The output of the neuron of each child device can be considered as a two-dimensional image, so in the compression process (P), the data lossless compression and expansion unit 804 compresses (P) the data using lossless compression such as GIF (Graphics Interchange Format) and transmits it. On the receiving side, the received data is decompressed to obtain the current output value of the neuron 805 on the transmitting side. This makes it possible to update the neuron 805. In the case of the reservoir, since the calculation method is relatively vulnerable to neuron output errors, a lossless compression method such as run-length coding, which does not degrade information, is preferable to lossy compression.

リザーバー102のニューロン出力は例えば32bitの連続値である。リザーバー102間のニューロン出力の送受信のオーバーヘッドを圧縮する場合、重要な上位ビットを優先的にブロードキャストすることが有効である。そのため、送り方は、
ニューロン1の最上位ビット、ニューロン2の最上位ビット、・・・、ニューロンNの最上位ビット、
ニューロン1の2番目のビット、ニューロン2の2番目のビット、・・・、ニューロンNの2番目のビット、
ニューロン1の3番目のビット、ニューロン2の3番目のビット、・・・、ニューロンNの3番目のビット、
・・・
のように、各ニューロンの最上位ビットから優先的に送信する。この送信方式をデータ圧縮に代えて採用することができる。
The neuron output of the reservoir 102 is, for example, a 32-bit continuous value. In order to reduce the overhead of transmitting and receiving neuron outputs between the reservoirs 102, it is effective to broadcast the important upper bits preferentially. Therefore, the transmission method is as follows:
The most significant bit of neuron 1, the most significant bit of neuron 2, ..., the most significant bit of neuron N,
The second bit of neuron 1, the second bit of neuron 2, ..., the second bit of neuron N,
The third bit of neuron 1, the third bit of neuron 2, ..., the third bit of neuron N,
...
The most significant bit of each neuron is transmitted preferentially, as shown below. This transmission method can be adopted instead of data compression.

先に述べたように、各子デバイスは、サーバー104から同期信号を受け取ったときに、自分のカウンタをゼロにリセットし、以降、カウンタは子デバイスの内部クロックにもとづき、インクリメントされていく。ここで、カウンタが、所定の値に到達したら時間切れとみなして、上記の送信を終了する。この方式では、全ての情報をブロードキャストしきれるとは限らないが、通信時間を制限することで全体の処理時間が短縮されるとともに、上記のように上位ビットから送信することにより精度の劣化も限定的となる。なお、時間切れとみなすためのカウンタの上限値は、サーバー104がタスクの成果を判定し、より高速性が必要と判断したら、小さく(短く)し、より高精度が必要と判断したら、大きく(長く)するように動的に調整することができる。 As mentioned above, when each child device receives a synchronization signal from the server 104, it resets its own counter to zero, and thereafter, the counter is incremented based on the child device's internal clock. When the counter reaches a predetermined value, it is considered to have timed out and the transmission ends. With this method, it is not guaranteed that all information can be broadcast, but by limiting the communication time, the overall processing time is shortened, and by transmitting from the most significant bits as described above, the deterioration of accuracy is also limited. The upper limit of the counter for determining that a time has expired can be dynamically adjusted by the server 104 when assessing the outcome of the task, so that if it determines that higher speed is required, it is made smaller (shorter), or if it determines that higher accuracy is required, it is made larger (longer).

サーバー104の出力部803は、各リザーバー102の出力を受信し、出力層として機能する。リザーバーコンピューティングでは、出力層は、リザーバー層のすべての、あるいは、一部のニューロンの出力を受け取り、学習した重みを用いて積和演算を行う。本実施例では、出力層の役割をサーバー104が担うため、各リザーバー102は、自分に含まれるニューロンの出力を、出力層であるサーバー104に送信する。サーバー104の出力部803は、1サイクル毎に時系列の出力信号を出力する。 The output unit 803 of the server 104 receives the output of each reservoir 102 and functions as an output layer. In reservoir computing, the output layer receives the output of all or some of the neurons in the reservoir layer and performs product-sum operations using learned weights. In this embodiment, the server 104 plays the role of the output layer, so each reservoir 102 transmits the output of the neurons contained therein to the server 104, which is the output layer. The output unit 803 of the server 104 outputs a time-series output signal every cycle.

なお、本実施例では、サーバー104の出力層から、各リザーバー102へのフィードバックは行っていないが、サーバー104の出力部803からの出力を、リザーバー102の少なくとも一つに無線伝送する構成にしてもよい。 In this embodiment, no feedback is provided from the output layer of the server 104 to each reservoir 102, but the output from the output section 803 of the server 104 may be wirelessly transmitted to at least one of the reservoirs 102.

<スター型接続リザーバー>
図9Aは、実施例7とは別の例で、複数のリザーバー102-1~102-4で同一処理を行うスター型接続の例である。複数のリザーバー102-1~102-4は、リザーバー層と出力層の役割を分担し、独立に演算を行う。なお、各リザーバー102は、リザーバー層のニューロン間の結合のパターン、リザーバー層のニューロンのパラメータ(重みなど)や活性化関数の形状、リザーバー層のニューロンの出力の初期値、出力層のニューロンのパラメータ(重みなど)などが互いに異なる。
図9Bは、図9Aのシステムにおいて、サーバー104およびリザーバー102が分担する機能および、送信するデータと送信先である。この例では、リザーバー102に出力層を分担させているが、リザーバー102が出力層を持たない場合は、サーバー104に、4つの子デバイスそれぞれの出力層を備えてもよい。
図9Cは、図9Aの、リザーバー102-1~102-4の動作タイムチャートである。
<Star-type connection reservoir>
9A is an example of a star-shaped connection in which the same processing is performed by multiple reservoirs 102-1 to 102-4, which is different from the seventh embodiment. The multiple reservoirs 102-1 to 102-4 share the roles of the reservoir layer and the output layer, and perform calculations independently. Note that each reservoir 102 is different from the others in the connection pattern between neurons in the reservoir layer, the parameters (weights, etc.) and activation function shape of the neurons in the reservoir layer, the initial value of the output of the neurons in the reservoir layer, and the parameters (weights, etc.) of the neurons in the output layer.
Fig. 9B shows the functions shared by the server 104 and the reservoir 102, the data to be transmitted, and the destination of the data in the system of Fig. 9A. In this example, the reservoir 102 is responsible for the output layer, but if the reservoir 102 does not have an output layer, the server 104 may be provided with an output layer for each of the four child devices.
FIG. 9C is a time chart showing the operation of the reservoirs 102-1 to 102-4 in FIG. 9A.

図9A、図9B、図9Cを参照して動作を説明する。サーバー104の入力部901は、同一の入力データを各リザーバー102にブロードキャストする(D)。各リザーバー102は独立に演算を行い(NU)、結果を出力層からサーバー104に送信する(T)。送信時は、時分割多重、符号分割多重、周波数分割多重、空間分割多重等を用いて混信を防止する。 The operation will be described with reference to Figures 9A, 9B, and 9C. The input unit 901 of the server 104 broadcasts the same input data to each reservoir 102 (D). Each reservoir 102 performs calculations independently (NU) and transmits the results from the output layer to the server 104 (T). During transmission, interference is prevented using time division multiplexing, code division multiplexing, frequency division multiplexing, space division multiplexing, etc.

サーバー104の解取得部903では、各リザーバー102の結果の多数決や平均値を取ることで、最良の結果を判断する。高速に並列的な求解が可能である。 The solution acquisition unit 903 of the server 104 determines the best result by taking a majority vote or averaging the results of each reservoir 102. High-speed parallel solution generation is possible.

本実施例では、複数のリザーバーで同一問題を解き、サーバーで最良の結果を判断することができ、高速並列演算が可能である。 In this embodiment, the same problem can be solved in multiple reservoirs and the best result determined on the server, enabling high-speed parallel calculations.

<階層型接続DNN>
図10Aは、DNNを無線接続で大規模化するシステムの例を示すブロック図である。DNN101-1~101-4が全体として、一つのDNNを構成する。
図10Bは、図10Aのシステムにおいて、サーバー104およびDNN101が分担する機能および、送信するデータと送信先である。
<Hierarchical Connection DNN>
10A is a block diagram showing an example of a system for expanding the scale of a DNN by wireless connection. DNNs 101-1 to 101-4 together constitute a single DNN.
FIG. 10B shows the functions shared by the server 104 and the DNN 101 in the system of FIG. 10A, as well as the data to be transmitted and the destinations thereof.

図10A、図10Bを参照して動作を説明する。サーバー104の入力部1001は、DNN101-1に入力データを送信する。入力データDがn次元ベクトルであれば、x1(t)~xn(t)のデータを送信する。 The operation will be explained with reference to Figures 10A and 10B. The input unit 1001 of the server 104 transmits input data to the DNN 101-1. If the input data D is an n-dimensional vector, data x1(t) to xn(t) is transmitted.

ディープラーニングでは、DNN101-1~101-4は直列接続され、前段の層から順次データを送信する。図では隠れ層は4層で構成されるが、タスクに応じて層数は変更される。簡単なタスクならば、少ない層数でよく、複雑になるにつれ層数が増加する。リザーバーコンピューティングやアニーリングマシンと違い、ディープラーニングは、層数を増やすことで、複雑なタスクを行うことができる。そのため、子デバイスを直列接続して必要な層数を確保することで、所望のタスクを実現できる。また、図では、各子デバイスは、一つの畳み込み層と一つのプーリング層を備えているが、より多くの層を備えていたり、様々な種類の層を備えていたりしてもよい。 In deep learning, DNNs 101-1 to 101-4 are connected in series, and data is transmitted sequentially from the previous layer. In the figure, the hidden layer is composed of four layers, but the number of layers can be changed depending on the task. For simple tasks, a small number of layers is sufficient, but the number of layers increases as the task becomes more complex. Unlike reservoir computing and annealing machines, deep learning can perform complex tasks by increasing the number of layers. Therefore, the desired task can be achieved by connecting child devices in series to ensure the required number of layers. Also, in the figure, each child device has one convolutional layer and one pooling layer, but it may have more layers or various types of layers.

DNN101-1~101-4の間の無線通信は、混信防止のために、周波数分割多重や符号分割多重や空間分割多重で行ってもよい。また、高速通信のために、複数のアンテナ、トランシーバ、周波数チャネルを用いて、並列に送受信してもよい。 Wireless communication between DNNs 101-1 to 101-4 may be performed using frequency division multiplexing, code division multiplexing, or space division multiplexing to prevent interference. For high-speed communication, multiple antennas, transceivers, and frequency channels may be used to transmit and receive in parallel.

また、サーバー104の同期制御部1002は、同期信号Sをブロードキャストする。各DNN101は、同期信号受信回路とカウンタを備え、受信したタイミングでカウンタをゼロにリセットすることで、DNN101同士の同期を保証する。 The synchronization control unit 1002 of the server 104 also broadcasts a synchronization signal S. Each DNN 101 is equipped with a synchronization signal receiving circuit and a counter, and resets the counter to zero when the signal is received to ensure synchronization between the DNNs 101.

<スター型接続DNN>
実施例9とは別の例で、複数のDNN101で同一の特徴抽出タスクを行うスター型接続が可能である。複数のDNN101-1~101-4は、隠れ層と出力層の役割を分担し、独立に演算を行う。サーバー104は入力層の役割を分担する。各DNN101は、ニューロンやニューロン間の結合の枝刈りの箇所、ニューロンのパラメータ(重みなど)、活性化関数の形状、ニューロンの出力の初期値(リカレントなディープニューラルネットワークの場合)などが互いに異なる。
<Star-type connection DNN>
In another example different from the ninth embodiment, a star-shaped connection is possible in which multiple DNNs 101 perform the same feature extraction task. Multiple DNNs 101-1 to 101-4 share the role of hidden layer and output layer, and perform calculations independently. Server 104 shares the role of input layer. Each DNN 101 differs from the others in terms of pruning points of neurons and connections between neurons, neuron parameters (weights, etc.), shapes of activation functions, initial values of neuron outputs (in the case of recurrent deep neural networks), etc.

サーバー104の入力層は、DNN101-1~101-4に入力データをブロードキャストする。DNN101-1~101-4は、独立かつ並列に演算を行い、サーバー104の解取得部に結果を送信する。送信時、時分割多重、符号分割多重、周波数分割多重、空間分割多重等を用いて混信を防止する。 The input layer of server 104 broadcasts input data to DNNs 101-1 to 101-4. DNNs 101-1 to 101-4 perform calculations independently and in parallel, and transmit the results to the solution acquisition unit of server 104. During transmission, interference is prevented using time division multiplexing, code division multiplexing, frequency division multiplexing, space division multiplexing, etc.

サーバー104の解取得部では、各DNN101の結果の多数決や平均値を取ることで、最良の結果を判断する。高速に並列的な求解が可能である。 The solution acquisition unit of the server 104 determines the best result by taking a majority vote or averaging the results of each DNN 101. This enables high-speed parallel solution generation.

本実施例では、複数のDNNで同一問題を解き、サーバーで最良の結果を判断することができ、高速並列演算が可能である。 In this embodiment, the same problem can be solved using multiple DNNs and the best result can be determined on the server, enabling high-speed parallel calculations.

<アンサンブル型DNN>
ディープラーニングでは、一つのタスクに対して、複数の異なるDNN(アンサンブルと呼ばれる)で別々に演算し、それらの演算結果を組み合わせて、推論精度を向上させることが知られている。実施例10もアンサンブルの手法にもとづくものであるが、本実施例では特に、互いに異なるデータセットでパラメータ(ニューロンの重みなど)を学習した複数のDNNをアンサンブルとして用いる。これらのDNNは、互いに異なるネットワーク構造や、異なる重みパラメータセットを備える。
<Ensemble-type DNN>
In deep learning, it is known that multiple different DNNs (called ensembles) are used to perform separate calculations for one task, and the results of these calculations are combined to improve inference accuracy. Example 10 is also based on the ensemble technique, but in this example, multiple DNNs that have learned parameters (such as neuron weights) using different data sets are used as the ensemble. These DNNs have different network structures and different weight parameter sets.

実施例10と同様のスター型接続で複数DNNをアンサンブルとして用い、サーバー104が、単一のタスクに対応した入力信号を各DNNにブロードキャストし、また、各DNNの出力結果を受け取って、組み合わせて推論精度を向上させる。 Multiple DNNs are used as an ensemble in a star-shaped connection similar to that of Example 10, and the server 104 broadcasts input signals corresponding to a single task to each DNN, and also receives and combines the output results of each DNN to improve inference accuracy.

実施例1~11で説明した情報処理システムにおいて、各子デバイスの同期はサーバーから送信される同期信号を基準に行うことにした。別の方法として、各機器が原子時計等の絶対時間を正確に計測できる時計を備えることにして、原子時計等の時間を基準として動作させてもよい。また、送受信するデータの時間的な前後関係を保証するために、各機器は送信データにタイムスタンプを含めて送信してもよい。 In the information processing systems described in the first to eleventh embodiments, synchronization of each child device is performed based on a synchronization signal sent from the server. As an alternative method, each device may be provided with a clock that can accurately measure absolute time, such as an atomic clock, and may operate based on the time of the atomic clock or the like. Also, to guarantee the chronological relationship of the data being sent and received, each device may include a timestamp in the data being sent.

以上の各DNNでも、リザーバーと同様にデータ送受信の圧縮伸長を行ってよい。 Each of the above DNNs may compress and expand data transmission and reception in the same way as the reservoir.

<同時多接続パイプライン>
実施例1~11で説明した情報処理システムにおいて、広域社会システム全体を繋げ、遅延なく全体を制御するためには、データの収集、データの処理、システムの制御をリアルタイムで動作させる必要がある。広域社会システムは個々の機器が物理的に分散して配置され、相互間の通信手段や距離も均一とは限らない。そこで、複数の通信で送受信されるデータと複数のエッジAI(DNN101、リザーバー102、アニーリングマシン103等)を、同期性を保証して接続することが望ましい。
<Simultaneous multi-connection pipeline>
In the information processing system described in the first to eleventh embodiments, in order to connect the entire wide-area social system and control the entire system without delay, it is necessary to collect data, process the data, and control the system in real time. In the wide-area social system, individual devices are physically distributed and arranged, and the communication means and distances between them are not necessarily uniform. Therefore, it is desirable to connect data transmitted and received through multiple communications with multiple edge AIs (DNN 101, reservoir 102, annealing machine 103, etc.) while ensuring synchronicity.

図11は、同時に複数のデータを予測計画部100でリアルタイム処理する例を示す概念図である。センサ200等から送信される複数のデータ1~5は、5Gや6Gなど異なる仕様の無線通信や、異なる仕様の有線通信が混在して接続されている場合がある。また、送信元の遠近など物理的な位置も異なる場合がある。さらに、接続関係も上り通信、下り通信、サイドリンク等の条件も同一ではないことが考えられる。このように受信するデータは、異なるセンサから得られたデータ、異なる経路を経たデータ、および異なる通信手段によるデータの少なくとも一つを含むため、各データのレイテンシが異なり、予測計画部100へのデータ到着順がデータ発生順にならないことが考えられる。 Figure 11 is a conceptual diagram showing an example of simultaneous real-time processing of multiple data by the prediction planning unit 100. Multiple data 1 to 5 transmitted from the sensor 200, etc., may be connected via a mixture of wireless communications of different specifications, such as 5G and 6G, and wired communications of different specifications. The physical locations of the senders, such as the distance from the senders, may also differ. Furthermore, the connection relationships and the conditions of upstream communication, downstream communication, side link, etc. may not be the same. In this way, the received data includes at least one of data obtained from different sensors, data that has passed through different routes, and data by different communication means, so the latency of each data is different, and it is considered that the order in which the data arrives at the prediction planning unit 100 will not be the order in which the data was generated.

この場合、データを一度データベースとして格納してから処理すれば、データの順番を保証することができるが、リアルタイム処理にならなくなる。本実施例では、同時多接続パイプライン1100の機能を追加することで、リアルタイムなデータの処理を可能とする。同時多接続パイプライン1100は、データフローコントローラ1110と、時間空間オーガナイザ1120の機能を備える。データフローコントローラ1110は、データ解析の順番を管理し、処理すべき順番に予測計画部100へ送信する。データフローコントローラ1110の設定は、たとえばAIオーケストレータ1045により制御される。時間空間オーガナイザ1120は、例えば、受信データの到着時間の計測結果と到着までの所要時間の計測結果や、受信データのタイムスタンプや、センサの位置の計測結果などに基づいて、受信データ(例えば各種センサデータ)にデータ生成時刻とデータ生成位置をラベリングする。 In this case, if the data is stored once as a database and then processed, the order of the data can be guaranteed, but real-time processing will not be possible. In this embodiment, the function of the simultaneous multi-connection pipeline 1100 is added to enable real-time data processing. The simultaneous multi-connection pipeline 1100 has the functions of a data flow controller 1110 and a time-space organizer 1120. The data flow controller 1110 manages the order of data analysis and transmits the data to the forecast planning unit 100 in the order in which it should be processed. The setting of the data flow controller 1110 is controlled, for example, by the AI orchestrator 1045. The time-space organizer 1120 labels the data generation time and data generation position of the received data (for example, various sensor data) based on, for example, the measurement results of the arrival time of the received data and the measurement results of the time required for arrival, the timestamp of the received data, the measurement results of the sensor position, etc.

<階層型エッジ>
図12は、図11の予測計画部100と同時多接続パイプライン1100の組でエッジ1200を構成し、階層構造としたエッジの例を示すブロック図である。予測計画部100と同時多接続パイプライン1100は、物理的には分離されていてもよい。各エッジ1200a~fは、同じリファレンスアーキテクチャに基づき構成してもよい。これらのエッジ1200a~fは、その役割に応じて、ソフトウェアにより必要な機能を定義可能である。エッジ1200a~fは、例えば一般的なサーバーやコンピュータ、あるいは、専用ハードウェアで構成され、エッジ1200の機能はソフトウェアで実装されるものとする。
<Hierarchical Edge>
FIG. 12 is a block diagram showing an example of an edge 1200 configured with a combination of the prediction planning unit 100 and the simultaneous multiple connection pipeline 1100 in FIG. 11, and having a hierarchical structure. The prediction planning unit 100 and the simultaneous multiple connection pipeline 1100 may be physically separated. Each of the edges 1200a-f may be configured based on the same reference architecture. The edges 1200a-f can define the necessary functions by software according to their roles. The edges 1200a-f are configured, for example, by a general server or computer, or dedicated hardware, and the functions of the edge 1200 are implemented by software.

図12では、各エッジ1200が予測計画部100を備える例が開示される。予測計画部100は、例えば図1に開示したように、親デバイス(サーバ104)と子デバイス101~103を備える。ただし、親デバイスと子デバイスは必ずしも同一エッジに存在する必要はなく、例えば、エッジ1200aの子デバイス101~103を、MECサーバーやクラウドのエッジ1200d~fのサーバー104が制御してもよい。この場合、エッジ1200aには、必ずしもサーバー104が配置されなくてもよい。以上のように子デバイスを制御する親デバイスは、必要な処理量や通信量を考慮して、階層型エッジの中の任意のエッジに配置することができる。 In FIG. 12, an example is disclosed in which each edge 1200 includes a prediction planning unit 100. The prediction planning unit 100 includes a parent device (server 104) and child devices 101 to 103, as disclosed in FIG. 1, for example. However, the parent device and the child devices do not necessarily need to exist in the same edge. For example, the child devices 101 to 103 of edge 1200a may be controlled by a server 104 of an MEC server or cloud edges 1200d to f. In this case, the server 104 does not necessarily need to be placed in edge 1200a. As described above, the parent device that controls the child devices can be placed in any edge among the hierarchical edges, taking into account the required processing volume and communication volume.

エッジ1200a~cは、制御対象となる人1211、ロボット1212、各種機器1213、交通機関1214などを含む現場1210の近くに置かれる、例えばセンサエッジである。エッジ1200a~cには、センサ部1220や必要に応じて前処理部1230が付属する。前処理部1230ではフィルタリング、データ圧縮、データ分割や符号化等の所望の処理を行う。図5で説明したように、特徴抽出を前処理に含めてもよい。前処理をセンサ側で行うことで、送信するデータ量を減らすことができる。 The edges 1200a-c are, for example, sensor edges that are placed near a site 1210 that includes a person 1211, a robot 1212, various devices 1213, transportation facilities 1214, etc. that are to be controlled. The edges 1200a-c are equipped with a sensor unit 1220 and, if necessary, a pre-processing unit 1230. The pre-processing unit 1230 performs desired processing such as filtering, data compression, data division, and encoding. As described in FIG. 5, feature extraction may be included in the pre-processing. By performing pre-processing on the sensor side, the amount of data to be transmitted can be reduced.

センサ部1220は、各種センサやカメラの他、PLC(Programmable Logic Controller)やXR(X Reality)の機能を含んでもよい。PLCやXRは、センサやカメラ同様にデータを収集する手段として機能する。センサ部1220の各種センサ、カメラ、PLC、XRは、ロボット等のデータを収集して出力するだけでなく、エッジ1200からの入力がフィードバックされる制御対象となり得る。例えば、フィードバックによりデータ取得やデータ送信の頻度を変更する。このように、ロボットや人の情報収集や制御に伴い、センサ部1220をそれに対応して制御することが可能である。 The sensor unit 1220 may include various sensors and cameras, as well as the functions of a PLC (Programmable Logic Controller) and XR (X Reality). The PLC and XR function as a means of collecting data, just like the sensors and cameras. The various sensors, cameras, PLC, and XR of the sensor unit 1220 not only collect and output data from robots and the like, but can also be control targets to which input from the edge 1200 is fed back. For example, the frequency of data acquisition and data transmission is changed by feedback. In this way, it is possible to control the sensor unit 1220 accordingly in accordance with the information collection and control of robots and people.

一つの例では、センサ部1220からのデータは、そのままあるいは前処理部1230で処理されて、エッジ1200a~fに送信される。データはエッジ1200で処理され、予測計画部100による推論の結果が出力部300で表示され、あるいは現場1210のロボット1212、各種機器1213、交通機関1214や、センサ部1220にフィードバックされる。他の例では、一つ、あるいは複数のエッジ1200の出力を、他のエッジの入力としてもよい。 In one example, data from the sensor unit 1220 is sent to the edges 1200a-f either directly or after being processed by the preprocessing unit 1230. The data is processed by the edge 1200, and the results of inference by the prediction and planning unit 100 are displayed by the output unit 300, or fed back to the robot 1212, various devices 1213, transportation facilities 1214, or the sensor unit 1220 at the site 1210. In another example, the output of one or more edges 1200 may be used as the input of other edges.

ネットワークNWには、有線や無線の各種の通信手段が用いられることを想定している。無線通信手段としては、4G、P-LTE、5G、Beyond5G、6G、Wi-Fi(商標)等種々のものが考えられる。よって、エッジ1200a~cの位置や使用する通信手段により、図11で説明したごとく送信データのレイテンシにばらつきが生じる。 It is assumed that various wired and wireless communication methods will be used in the network NW. Various wireless communication methods are possible, such as 4G, P-LTE, 5G, Beyond 5G, 6G, and Wi-Fi (trademark). Therefore, as explained in FIG. 11, the latency of transmitted data varies depending on the positions of the edges 1200a-c and the communication method used.

エッジ1200d~eは、クラウドよりも現場1210近くに配置される、例えばMECサーバーである。現場近くにあるため、クラウドより遅延を短縮できる。例えばネットワークNWの基地局上にエッジ1200d~eを設置する。 The edges 1200d-e are, for example, MEC servers that are placed closer to the site 1210 than the cloud. Being closer to the site, they can reduce delays compared to the cloud. For example, the edges 1200d-e are installed on base stations in the network NW.

エッジ1200fは、クラウド内あるいはクラウド入り口に設置される、例えばクラウドサーバーで構成される。エッジ1200fには全体制御部1240が付属あるいは、ネットワークで接続されてもよい。各エッジ1200a~fの機能のデプロイは、例えば全体制御部1240を介して行うことができる。デプロイの手順は従来技術を踏襲してよい。 The edge 1200f is configured, for example, as a cloud server that is installed in the cloud or at the entrance to the cloud. The edge 1200f may be accompanied by an overall control unit 1240 or connected via a network. The functions of each edge 1200a to f may be deployed, for example, via the overall control unit 1240. The deployment procedure may follow conventional technology.

本システムに含まれる各エッジ1200a~fの予測計画部100と同時多接続パイプライン1100は、エッジ毎に必要な機能がデプロイされる。例えば、現場1210に近いエッジ1200a~cの予測計画部100a~cでは簡易な処理(例えば認識)を、クラウドのエッジ1200fの予測計画部100fでは複雑な処理(例えば理解や判断)を行う。同時多接続パイプライン1100は、予測計画部100が行う処理に適合したデータフローを形成する。 The prediction and planning unit 100 and simultaneous multi-connection pipeline 1100 of each edge 1200a-f included in this system are deployed with the necessary functions for each edge. For example, the prediction and planning units 100a-c of edges 1200a-c close to the site 1210 perform simple processing (e.g., recognition), while the prediction and planning unit 100f of edge 1200f in the cloud performs complex processing (e.g., understanding and judgment). The simultaneous multi-connection pipeline 1100 forms a data flow that is compatible with the processing performed by the prediction and planning unit 100.

同時多接続パイプライン1100は、予測計画部100の処理に必要なデータの時間的順序を保証する。データの時間的順序は、例えば工業用ロボットの動作制御等では厳密に(例えばミリ秒単位)行うことが望ましい。また、マクロな人流の制御等ではそこまでの厳密性は要求されない(例えば分単位)。本実施例では、エッジ毎に予測計画部100と同時多接続パイプライン1100のスペックを最適化することができる。 The simultaneous multi-connection pipeline 1100 guarantees the time order of data required for processing by the prediction and planning unit 100. It is desirable to perform the time order of data strictly (e.g., in milliseconds) for, for example, controlling the operation of industrial robots. Furthermore, such strictness is not required for macro-level control of people flow (e.g., in minutes). In this embodiment, the specifications of the prediction and planning unit 100 and the simultaneous multi-connection pipeline 1100 can be optimized for each edge.

<エッジの詳細>
図13は、エッジ1200の詳細を示すブロック図である。図13では、エッジ1200がひとつだけ示されているが、図12のように全体制御部1240は、複数のエッジ1200を管理してもよい。エッジ1200は、同時多接続パイプライン1100と予測計画部100を備える。データの流れを太い矢印で示し、制御フローを一方向または双方向の細い矢印で示している。
<Edge details>
Fig. 13 is a block diagram showing details of an edge 1200. Although only one edge 1200 is shown in Fig. 13, the overall control unit 1240 may manage a plurality of edges 1200 as in Fig. 12. The edge 1200 includes a simultaneous multi-connection pipeline 1100 and a prediction planning unit 100. The data flow is indicated by a thick arrow, and the control flow is indicated by a unidirectional or bidirectional thin arrow.

予測計画部100は、既に説明した実施例のとおり、DNN101、リザーバー102、アニーリングマシン103から選ぶ任意の組み合わせを備える。また、予測計画部100は、AIオーケストレータ1045とフィードバックおよびフィードフォワード部1046を備える。AIオーケストレータ1045とフィードバックおよびフィードフォワード部1046は、サーバー104の機能の一部であり、記憶装置1044にプログラムとして格納される。 The prediction and planning unit 100, as in the embodiments already described, comprises any combination selected from the DNN 101, the reservoir 102, and the annealing machine 103. The prediction and planning unit 100 also comprises an AI orchestrator 1045 and a feedback and feedforward unit 1046. The AI orchestrator 1045 and the feedback and feedforward unit 1046 are part of the functions of the server 104, and are stored as programs in the storage device 1044.

同時多接続パイプライン1100は、図11で説明したデータフローコントローラ1110と時間空間オーガナイザ1120を備える。また、同時多接続パイプライン1100は、同期通信計測部1101、位置速度計測部1102、制御フローコントローラ1103を備える。同時多接続パイプライン1100の機能は、サーバー104の機能の一部であり、記憶装置1044にプログラムとして格納される。この場合、図13で別個のブロックとされている、AIオーケストレータ1045、フィードバックおよびフィードフォワード部1046および同時多接続パイプライン1100は同一のサーバー104にソフトウェアで実装される。あるいは、サーバー104とは別のサーバー等で同時多接続パイプライン1100を構成して、予測計画部100に接続してもよい。 The simultaneous multi-connection pipeline 1100 includes the data flow controller 1110 and the time-space organizer 1120 described in FIG. 11. The simultaneous multi-connection pipeline 1100 also includes a synchronous communication measurement unit 1101, a position and speed measurement unit 1102, and a control flow controller 1103. The function of the simultaneous multi-connection pipeline 1100 is part of the function of the server 104, and is stored as a program in the storage device 1044. In this case, the AI orchestrator 1045, the feedback and feedforward unit 1046, and the simultaneous multi-connection pipeline 1100, which are shown as separate blocks in FIG. 13, are implemented in software on the same server 104. Alternatively, the simultaneous multi-connection pipeline 1100 may be configured on a server other than the server 104, and connected to the forecast planning unit 100.

全体制御部1240は、運用管理DB1241、複合AI1242、GUI(Graphical User Interface)を含むアセット制御部1243を備える。 The overall control unit 1240 includes an operation management DB 1241, a composite AI 1242, and an asset control unit 1243 that includes a GUI (Graphical User Interface).

例えば現場1210の管理者であるユーザが、エッジ1200に所望の機能を実装する場合には、ユーザは全体制御部1240を介して、予測計画部100と同時多接続パイプライン1100の設定を行うことができる。運用管理DB1241は、配下の予測計画部100a~fと同時多接続パイプライン1100a~fの構成を記憶する。予測計画部100と同時多接続パイプライン1100の構成は、AIオーケストレータ1045に送信される。 For example, when a user who is an administrator of the site 1210 implements a desired function in the edge 1200, the user can configure the prediction planning unit 100 and the simultaneous multi-connection pipeline 1100 via the overall control unit 1240. The operation management DB 1241 stores the configurations of the subordinate prediction planning units 100a-f and simultaneous multi-connection pipelines 1100a-f. The configurations of the prediction planning unit 100 and the simultaneous multi-connection pipelines 1100 are transmitted to the AI orchestrator 1045.

AIオーケストレータ1045は、前記パターン1からパターン6の選択、それにもとづくDNN101、リザーバー102、アニーリングマシン103等の演算タイプの選択、各演算タイプに対する接続形態(ピアツーピア型接続かスター型接続か)の指定、使用する子デバイスの選択、子デバイス間の各接続に対する接続要、不要の指定などを行う。また、AIオーケストレータ1045は、パイプライン運用管理部1300に当該予測計画部100に入力するデータの順序を指示する。データの順序には、到達順、発信時間順、距離順等がある。これらの設定はアセット制御部1243、あるいはネットワークで接続されたユーザ端末1305から、DNN101、リザーバー102、アニーリングマシン103等の処理内容に応じて行う。また、運用管理DB1241は、エッジ1200のトラブル時の復旧用ミラーサイトとしてバックアップの機能も備える。DNN101、リザーバー102の学習は、全体制御部1240で行ってもよいし、エッジ1200で行ってもよい。 The AI orchestrator 1045 selects one of the patterns 1 to 6, selects the operation type of the DNN 101, the reservoir 102, the annealing machine 103, etc. based on the pattern, specifies the connection type (peer-to-peer connection or star connection) for each operation type, selects the child device to be used, and specifies whether or not a connection is required for each connection between the child devices. The AI orchestrator 1045 also instructs the pipeline operation management unit 1300 on the order of data to be input to the forecast planning unit 100. The order of data can be the order of arrival, the order of transmission time, the order of distance, etc. These settings are made by the asset control unit 1243 or the user terminal 1305 connected by a network according to the processing contents of the DNN 101, the reservoir 102, the annealing machine 103, etc. The operation management DB 1241 also has a backup function as a mirror site for recovery in the event of a problem with the edge 1200. Learning of the DNN 101 and the reservoir 102 may be performed by the overall control unit 1240 or by the edge 1200.

なお、複合AI1242は、エッジ1200で行う必要のない、あるいは、クラウドで行ったほうがよい計算を行う。エッジ1200で行う必要のない計算の一例は、所定以上の遅延が許されるケースである。例えば、ルーチン動作から逸脱のない動作は、クラウド内で処理すればよい。クラウドで行ったほうがよい計算の一例は、エッジに保存できない量のビッグデータを用いた予測などである。大量のデータはクラウド上に保存され、複合AI1242が処理することになる。取得したデータや計算結果もクラウドに保存されることにする。 The composite AI 1242 performs calculations that do not need to be performed on the edge 1200 or that are better performed in the cloud. An example of a calculation that does not need to be performed on the edge 1200 is a case where a delay of a certain amount or more is acceptable. For example, operations that do not deviate from routine operations can be processed in the cloud. An example of a calculation that is better performed in the cloud is predictions using big data in quantities that cannot be stored on the edge. Large amounts of data will be stored on the cloud and processed by the composite AI 1242. The acquired data and calculation results will also be stored in the cloud.

DNN101、リザーバー102、アニーリングマシン103等が実装されたエッジ1200は、センサ部1220あるいは他のエッジ1200からのデータを処理することができる。 The edge 1200, which is equipped with the DNN 101, reservoir 102, annealing machine 103, etc., can process data from the sensor unit 1220 or other edges 1200.

パイプライン運用管理部1300は、エッジ管理DB1301、通信制御部1302、送信時間DB1303、時間空間DB1304を備える。 The pipeline operation management unit 1300 includes an edge management DB 1301, a communication control unit 1302, a transmission time DB 1303, and a time-space DB 1304.

エッジ管理DB1301は、当該エッジに接続された現場1210に配置された、人1211、ロボット1212、各種機器1213、交通機関1214などの基本情報を管理する。また同じく接続されたセンサ部1220の基本情報を管理する。また、接続に用いている通信回線の基本情報を管理する。基本的情報は各機器や回線の規格や仕様である。 The edge management DB 1301 manages basic information on people 1211, robots 1212, various devices 1213, transportation facilities 1214, etc., that are deployed at the site 1210 connected to the edge. It also manages basic information on the sensor unit 1220 that is similarly connected. It also manages basic information on the communication line used for the connection. The basic information is the standards and specifications of each device and line.

また、エッジ管理DB1301は、センサ部1220から送られてくるデータフローとDNN101、リザーバー102、アニーリングマシン103、サーバー104の入力端子との対応を管理する。対応付けは、センサ部1220の構成に関する情報やDNN101、リザーバー102、アニーリングマシン103の構成に関する情報にもとづいて設定される。ユーザが設定することもできる。例えば、実施例10,11の例では、同一のデータフローを各DNN101に並列に送信(ブロードキャスト)してもよいし、データフローをまずサーバー104だけに送信し、サーバー104から各DNN101に並列に送信してもよい。実施例7の例では、同一のデータフローを各リザーバー102に並列に送信してもよいし、まず、サーバー104だけに送信し、サーバー104から各リザーバー102に並列に送信してもよい。実施例9の例では、データフローをDNN101-1だけに送信、あるいは、サーバー104だけに送信してもよい。データフローを制御するための情報等、エッジ管理DB1301の情報は、運用管理DB1241からAIオーケストレータ1045を介して、あるいは別途入力される。このように、データフローコントローラ1110が、どのようにデータフローを並び替え、分割し、送信するかは、センサ部1220の構成と予測計画部100の子デバイスの構成に依存する。 The edge management DB 1301 also manages the correspondence between the data flow sent from the sensor unit 1220 and the input terminals of the DNN 101, the reservoir 102, the annealing machine 103, and the server 104. The correspondence is set based on information about the configuration of the sensor unit 1220 and information about the configuration of the DNN 101, the reservoir 102, and the annealing machine 103. It can also be set by the user. For example, in the examples of Examples 10 and 11, the same data flow may be transmitted (broadcast) in parallel to each DNN 101, or the data flow may be transmitted first only to the server 104, and then transmitted in parallel from the server 104 to each DNN 101. In the example of Example 7, the same data flow may be transmitted in parallel to each reservoir 102, or first to the server 104, and then transmitted in parallel from the server 104 to each reservoir 102. In the example of Example 9, the data flow may be transmitted only to the DNN 101-1, or only to the server 104. Information in the edge management DB 1301, such as information for controlling data flow, is input from the operation management DB 1241 via the AI orchestrator 1045 or separately. In this way, how the data flow controller 1110 rearranges, divides, and transmits the data flow depends on the configuration of the sensor unit 1220 and the configuration of the child device of the forecast planning unit 100.

通信制御部1302は、センサ部1220から送信されるデータの測定や通知のタイミングを、制御フローコントローラ1103を介して公知の技術により制御する。また、エッジ1200が行う通信処理全体を統括するものとする。通信制御部1302の設定は、運用管理DB1241からAIオーケストレータ1045を介して、あるいは別途入力される。 The communication control unit 1302 controls the timing of measurement and notification of data sent from the sensor unit 1220 using known technology via the control flow controller 1103. It also supervises the entire communication processing performed by the edge 1200. The settings of the communication control unit 1302 are input from the operation management DB 1241 via the AI orchestrator 1045 or separately.

送信時間DB1303と時間空間DB1304は、後述のようにエッジ1200の運用に伴って収集されたデータを格納する。なお、バックアップ等のため、パイプライン運用管理部1300のデータは、適宜運用管理DB1241に複製を作成するものとする。 The transmission time DB 1303 and the time-space DB 1304 store data collected in association with the operation of the edge 1200, as described below. For backup purposes, etc., the data in the pipeline operation management unit 1300 is appropriately copied to the operation management DB 1241.

同期通信計測部1101は、水晶時計あるいは原子時計等の基準となる基準時計を備えている。同期通信計測部1101は、データ送信元になるセンサ部1220に基準時計の時刻をブロードキャストする。ブロードキャストするチャネルは例えば5Gの無線チャネルである。コスト増加要因になるが、各センサ部1220が原子時計等を備えるようにして、ブロードキャストを省略してもよい。かかる構成により、各センサ部1220は共通の時計を備えることができるので、送信データに、共通の時間軸によるタイムスタンプを付すことができる。同期通信計測部1101は、受信したデータのタイムスタンプとデータ受信時の自己の基準時計の時刻の差分から、各センサ部1220からのデータの送信遅延時間(送信にかかる時間)を計算することができる。各センサ部1220に対応するデータの送信遅延時間は、送信時間DB1303としてパイプライン運用管理部1300に記録される。 The synchronous communication measurement unit 1101 is equipped with a reference clock such as a quartz clock or an atomic clock. The synchronous communication measurement unit 1101 broadcasts the time of the reference clock to the sensor unit 1220 that is the data transmission source. The channel for broadcasting is, for example, a 5G wireless channel. Although it will increase costs, each sensor unit 1220 may be equipped with an atomic clock or the like, and broadcasting may be omitted. With this configuration, each sensor unit 1220 can be equipped with a common clock, so that the transmitted data can be time-stamped based on a common time axis. The synchronous communication measurement unit 1101 can calculate the transmission delay time (time required for transmission) of data from each sensor unit 1220 from the difference between the timestamp of the received data and the time of its own reference clock at the time of receiving the data. The transmission delay time of data corresponding to each sensor unit 1220 is recorded in the pipeline operation management unit 1300 as a transmission time DB 1303.

位置速度計測部1102は、制御対象となる人1211、ロボット1212、各種機器1213、交通機関1214、あるいはセンサ部のセンサの位置や速度を計測する。制御対象は、それが備えるGPS(Global Positioning System)や全世界測位システム(GNSS:Global Navigation Satellite System)等により、自己の位置や移動速度を測定することができる。GPSやGNSSの位置精度は1メートルオーダーのため、さらに高い精度を得るためには、RTK(Real Time Kinematic)等を用いる。RTKでは、GPSやのGNSSの位置情報を、制御対象と位置速度計測部1102の2か所で取得し、位置速度計測部1102の位置情報を制御対象側にブロードキャスト送信し、その差分を用いて位置情報のずれを修正することで、数センチメートルの精度を可能にする。また、制御対象を撮影しているカメラの情報や、5Gやポスト5Gで使われる基地局から放出されるミリ波を用いて、位置情報を補正することもできる。かかる構成により、各センサ部1220からの送信データに、送信元の正確な位置情報を付すことができる。また、送信データには、位置情報に代えて、あるいは位置情報に加えて、重量センサ、光学式センサ、画像データ、熱センサなど各種のセンサで取得したデータを含めることもできる。 The position and speed measurement unit 1102 measures the position and speed of the person 1211, robot 1212, various devices 1213, transportation 1214, or the sensor of the sensor unit that is the control target. The control target can measure its own position and moving speed using its Global Positioning System (GPS) or Global Navigation Satellite System (GNSS). Since the position accuracy of GPS and GNSS is on the order of one meter, RTK (Real Time Kinematic) or the like is used to obtain even higher accuracy. In RTK, the position information of GPS or GNSS is acquired at two locations, the control target and the position and speed measurement unit 1102, and the position information of the position and speed measurement unit 1102 is broadcast to the control target side, and the difference is used to correct the deviation of the position information, thereby enabling an accuracy of several centimeters. In addition, the position information can be corrected using information from a camera that is photographing the control target or millimeter waves emitted from base stations used in 5G and post 5G. With this configuration, accurate location information of the sender can be added to the data transmitted from each sensor unit 1220. Furthermore, the transmitted data can also include data acquired by various sensors such as weight sensors, optical sensors, image data, and thermal sensors instead of or in addition to location information.

時間空間オーガナイザ1120は、受信したデータに時間情報と位置情報その他のセンサ情報をラベリングする。具体的には、受信データの到着時間から遅延時間データテーブルの遅延時間を差し引くことにより、データの発信時間(データの生成時間に等しいとみなせる)を算出する。算出したデータ生成時間と位置情報を受信データにヘッダとして付与する。これにより、受信データ収集時間と位置の四次元座標化が可能になり、パイプライン運用管理部1300内に時間空間DB1304が生成できる。また、時間空間オーガナイザ1120は、同期通信計測部1101で測定したデータの送信遅延時間から、遅延やジッタのモニタリングを行うことができる。また、遅延やジッタに基づいてセンサ部1220を分類してスライシングすることができる。 The time space organizer 1120 labels the received data with time information, location information, and other sensor information. Specifically, the data transmission time (which can be considered to be equal to the data generation time) is calculated by subtracting the delay time in the delay time data table from the arrival time of the received data. The calculated data generation time and location information are added to the received data as a header. This makes it possible to convert the received data collection time and location into four-dimensional coordinates, and a time space DB 1304 can be generated in the pipeline operation management unit 1300. The time space organizer 1120 can also monitor delays and jitters from the transmission delay time of data measured by the synchronous communication measurement unit 1101. The sensor units 1220 can also be classified and sliced based on delays and jitters.

データフローコントローラ1110は、予測計画部100でのリアルタイム処理のために、データ生成時間順に解析が行われるように受信データを並び替える。このため、データフローコントローラ1110は、時間空間オーガナイザ1120がデータに付与したラベリングに基づいて、受信データを並び替えるためのバッファの機能を有する。具体的な実装例としては、データバッファとしてDRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)等のワークメモリへの一時記憶を行うことにより、データの並び替えを行う。データフローコントローラ1110はまた、エッジ管理DB1301の情報に従って並び替えたデータに宛先ヘッダを付し、複数のDNN101、リザーバー102、アニーリングマシン103へ送信してもよい。 The data flow controller 1110 sorts the received data so that analysis is performed in the order of data generation time for real-time processing in the prediction planning unit 100. For this reason, the data flow controller 1110 has a buffer function for sorting the received data based on the labeling given to the data by the time-space organizer 1120. As a specific implementation example, the data is sorted by temporarily storing the data in a work memory such as a DRAM (Dynamic Random Access Memory) or SRAM (Static Random Access Memory) as a data buffer. The data flow controller 1110 may also add a destination header to the sorted data according to the information in the edge management DB 1301 and transmit it to multiple DNNs 101, reservoirs 102, and annealing machines 103.

また、データフローコントローラ1110は、上記の時間順にデータを並び替えるモードの他に、到着順にデータを予測計画部100に送ってもよい。このモードはデータの時間順が厳密に要求されない場合に適用でき、予測結果や行動計画結果を最短の時間で得ることができる。あるいは、送信元の特定の位置に注目した解析を行うため、特定のセンサのデータを優先的に予測計画部100に送ってもよい。例えば、工場などのフロア全体のロボットやドローンを監視中に、ある一台に変化が起こった場合、その一台の位置を特定、トレースして挙動を優先して解析したい場合である。 In addition to the above-mentioned mode of sorting data in chronological order, the data flow controller 1110 may also send data to the prediction and planning unit 100 in the order of arrival. This mode is applicable when the chronological order of data is not strictly required, and prediction and action plan results can be obtained in the shortest time. Alternatively, data from a specific sensor may be sent preferentially to the prediction and planning unit 100 in order to perform analysis focusing on the specific position of the sender. For example, when monitoring robots or drones on an entire floor of a factory, etc., if a change occurs in one particular robot, it may be desirable to identify and trace the position of that robot and analyze its behavior as a priority.

制御フローコントローラ1103は、通信制御部1302の指示により、現場1210の制御対象やセンサ部1220のセンサに対する制御信号を配信する。制御信号は、DNN101、リザーバー102、アニーリングマシン103の出力に基づき、フィードバックおよびフィードフォワード部1046で生成されたフィードバック信号、あるいはアセット制御部1243の指示によりフィードバックおよびフィードフォワード部1046で生成されたフィードフォワード信号である。 The control flow controller 1103 distributes control signals to the controlled objects of the site 1210 and the sensors of the sensor unit 1220 in response to instructions from the communication control unit 1302. The control signals are feedback signals generated by the feedback and feedforward unit 1046 based on the outputs of the DNN 101, the reservoir 102, and the annealing machine 103, or feedforward signals generated by the feedback and feedforward unit 1046 in response to instructions from the asset control unit 1243.

アセット制御部1243は、先に述べたようにエッジ1200の内容を設定するためのユーザインタフェースとなる他、エッジ1200が出力する予測結果に基づいて、ユーザが現場1210の制御対象やセンサ部1220のセンサを直接制御するインターフェースにもなる。アセット制御部1243は、ユーザ端末1305の入力により所望の制御をするように構成してもよい。 As described above, the asset control unit 1243 serves as a user interface for setting the contents of the edge 1200, and also serves as an interface for the user to directly control the control target of the site 1210 and the sensor of the sensor unit 1220 based on the prediction results output by the edge 1200. The asset control unit 1243 may be configured to perform the desired control based on input from the user terminal 1305.

<AIの学習の詳細>
公知のようにDNN101、リザーバー102は、ニューロンのネットワークを構成しており、重みなどのパラメータについて学習が行われた後、推論、すなわち、AIの実行が可能になる。本実施例で採用できるいくつかの学習の方式を以下で説明する。
<Details of AI learning>
As is well known, the DNN 101 and the reservoir 102 constitute a network of neurons, and after learning parameters such as weights, inference, i.e., execution of AI, becomes possible. Several learning methods that can be adopted in this embodiment are described below.

第一の方式は、サーバー104の中で閉じた形で、DNN101やリザーバー102のニューロンネットワーク構成と同一の構成(レプリカ)をサーバー104内に形成して学習を行う。サーバー104内だけで学習が行われるため、学習を高速に行うことができる。レプリカは、AIオーケストレータ1045が、実際のDNN101やリザーバー102の構造を子デバイス間の接続も含めて模倣して、生成すればよい。 In the first method, a configuration (replica) identical to the neuron network configuration of the DNN 101 and reservoir 102 is formed within the server 104 in a closed form within the server 104, and learning is performed. Since learning is performed only within the server 104, learning can be performed quickly. The replica can be generated by the AI orchestrator 1045 by imitating the actual structure of the DNN 101 and reservoir 102, including the connections between child devices.

リザーバー102の場合、サーバー104内にリザーバー層のネットワークのレプリカを準備するとともに、サーバー104内に持っている本来の入力層と出力層を用いて学習を行う(図8C参照)。教師データとしては、タスクに相当する入力教師信号と出力教師信号をサーバー104内で生成する。教師データの生成に必要な情報は、例えば運用管理DB1241に格納された過去データを読み出して使用する。学習するのは、出力層のパラメータ(重みなど)だけである。リザーバー層のニューロンのパラメータ(重みなど)と上記レプリカ構成内の対応するパラメータは、あらかじめランダムに設定された値に固定されている。サーバー104内の出力層のパラメータだけを学習するため、学習結果を各リザーバー102へ送信する必要はない。 In the case of the reservoir 102, a replica of the reservoir layer network is prepared in the server 104, and learning is performed using the original input layer and output layer in the server 104 (see FIG. 8C). As training data, input training signals and output training signals corresponding to the task are generated in the server 104. Information required for generating training data is, for example, past data stored in the operation management DB 1241 that is read and used. Only the parameters of the output layer (weights, etc.) are learned. The parameters of the neurons in the reservoir layer (weights, etc.) and the corresponding parameters in the replica configuration are fixed to values that are randomly set in advance. Since only the parameters of the output layer in the server 104 are learned, there is no need to send the learning results to each reservoir 102.

DNN101の場合、リザーバーコンピューティングの場合と同様に、サーバー104内に別途備えた、DNNのレプリカ構成を用いて学習を行うことができる。DNNの学習では、すべての、あるいは一部のニューロンのパラメータ(重みなど)を学習する。リザーバーコンピューティングの場合と異なり、学習したパラメータを、該当するDNN101の該当するニューロンに反映させる必要があるので、学習したパラメータの情報を、サーバー104から例えば無線インターフェース105を用いて各DNN101に送信し、パラメータを設定する。 In the case of DNN101, as in the case of reservoir computing, learning can be performed using a DNN replica configuration separately provided in server 104. In learning a DNN, the parameters (weights, etc.) of all or some of the neurons are learned. Unlike the case of reservoir computing, the learned parameters must be reflected in the corresponding neurons of the corresponding DNN101, so information on the learned parameters is transmitted from server 104 to each DNN101 using, for example, wireless interface 105, and the parameters are set.

なお、リザーバーコンピューティングの場合も、DNNと同じように、リザーバー層のニューロンのパラメータを学習させることがありうる。その場合は、DNNの場合と同様に、サーバー104から各リザーバー102に、学習したニューロンのパラメータを送信して設定すればよい。 In the case of reservoir computing, it is possible to learn the parameters of the neurons in the reservoir layer, just as in the case of DNN. In that case, just as in the case of DNN, the learned neuron parameters can be transmitted from the server 104 to each reservoir 102 and set.

第二の方式は、DNN101やリザーバー102のニューロンネットワークをそのまま用い、推論時と同じ構成で学習する。 The second method uses the neuron networks of DNN 101 and reservoir 102 as is, and learns with the same configuration as during inference.

リザーバーコンピューティングの場合、入力教師信号と出力教師信号をサーバー104内で生成し、入力教師信号を無線インターフェース105で各リザーバー102にブロードキャストする。サーバーが各リザーバー102のニューロン出力を受信して、自分の持つ出力層で処理を行う。出力層の出力信号(すなわち、リザーバーコンピューティングとしての出力信号)と出力教師信号を比較して、その差がゼロに近づくように、サーバー104内の出力層のパラメータ(重みなど)を更新する。パラメータの更新は、サーバー104内だけで生じるため、更新の際、サーバー104から各リザーバー102への送信は不要であり、学習を高速に行うことができる。 In the case of reservoir computing, an input teacher signal and an output teacher signal are generated within the server 104, and the input teacher signal is broadcast to each reservoir 102 via the wireless interface 105. The server receives the neuron output of each reservoir 102 and performs processing in its own output layer. The output signal of the output layer (i.e., the output signal as reservoir computing) is compared with the output teacher signal, and the parameters of the output layer (weights, etc.) in the server 104 are updated so that the difference approaches zero. Since parameter updates occur only within the server 104, there is no need to transmit data from the server 104 to each reservoir 102 when updating, and learning can be performed quickly.

DNNの場合(子デバイスが直列に接続された場合を想定)、入力教師信号と出力教師信号をサーバー104内で生成し、入力教師信号を、DNN初段を担うDNN101-1に送信する(図10A、図10B参照)。DNN最終段を担うDNN101-4の出力(すなわち、ディープラーニングとしての出力)をサーバー104が受信する。この出力信号と出力教師信号を比較して、その差がゼロに近づくように、各DNN101のパラメータ(ニューロンの重みなど)を更新する。パラメータを更新するために、サーバー104から各DNN101への送信が必要である。したがって、レプリカによる学習と比べて、学習は低速となる。 In the case of DNN (assuming child devices are connected in series), an input teacher signal and an output teacher signal are generated within the server 104, and the input teacher signal is sent to DNN 101-1, which serves as the first stage of the DNN (see Figures 10A and 10B). The server 104 receives the output of DNN 101-4, which serves as the final stage of the DNN (i.e., the output as deep learning). This output signal is compared with the output teacher signal, and the parameters of each DNN 101 (such as neuron weights) are updated so that the difference approaches zero. To update the parameters, transmission from the server 104 to each DNN 101 is necessary. Therefore, learning is slower than learning by replicas.

第一のサーバー内レプリカを用いる方式では、子デバイスと親デバイス(サーバー)の回路構成が完全に同一ではない場合、特性にずれが生じるため、精度の点では第二の実際のデバイスを用いる方式に劣る。特に子デバイスを、低消費電力を志向したアナログ回路で実装している場合、アナログ回路の製造バラツキや、温度や電源電圧変動にともなう回路特性変動に起因して、サーバー内のレプリカと、子デバイス内の実物の特性(重みの値など)にずれが生じる。第二の方式により、実際の子デバイスを用いて定期的に学習を行うことで、特性変動に追従できるため、高い推論精度を維持できる。一方、レプリカを用いる方式は、前記の通り、高速な学習が可能という利点がある。 The first method, which uses a replica in the server, is inferior in terms of accuracy to the second method, which uses an actual device, because deviations in characteristics occur when the circuit configurations of the child device and the parent device (server) are not completely identical. In particular, when the child device is implemented with an analog circuit that aims for low power consumption, deviations occur between the replica in the server and the characteristics (weight values, etc.) of the actual child device due to manufacturing variations in the analog circuit and fluctuations in circuit characteristics due to fluctuations in temperature and power supply voltage. With the second method, regular learning is performed using the actual child device, making it possible to track characteristic fluctuations and maintain high inference accuracy. On the other hand, the method using a replica has the advantage of enabling high-speed learning, as mentioned above.

以上の学習は、あらかじめタスクを想定して、DNN101やリザーバー102を実運用する前に行うほか、新しいタスクに対応するために、実運用中の任意のタイミングで行ってもよい。また、上記方法で定期的に学習を繰り返し、追加学習とすることもできる。追加学習により、現場の状況変化やセンサの特性変化、あるいは、後述のデータフローコントローラの設定の変更等に対応が可能である。 The above learning can be performed before the DNN 101 and reservoir 102 are put into actual operation, with tasks anticipated in advance, or can be performed at any time during actual operation to accommodate new tasks. Additionally, learning can be repeated periodically using the above method as additional learning. Additional learning can accommodate changes in on-site conditions, changes in sensor characteristics, or changes to the settings of the data flow controller, which will be described later.

なお、上記では教師有り学習の例を説明したが、強化学習や公知の他の学習方法を採用してもよい。強化学習では、実際に推論を行いながら、サーバー104が何らかの指標で現在のAIの成果を評価し、評価結果にもとづいて、リザーバーの出力層の重みやDNNの重みを更新する。以上説明した学習機能は、AIオーケストレータ1045の機能の一部として持てばよい。 Note that, although an example of supervised learning has been described above, reinforcement learning or other known learning methods may also be adopted. In reinforcement learning, while actually performing inference, the server 104 evaluates the current AI results using some kind of index, and updates the weights of the reservoir output layer and the weights of the DNN based on the evaluation results. The learning functions described above may be included as part of the functions of the AI orchestrator 1045.

<段階的複合AI>
図14は、図12、図13のシステム構成による段階的複合AIの概念を示すブロック図である。先の実施例で説明したデータフローコントローラ1110は、データフローを実際のイベント発生順に並び替えるので、現実の時空間を正確に反映したデータを生成でき、精度の良い推論や予測が可能である。一方、データフローコントローラ1110は、一種のバッファなので、原理的にデータ遅延が生じる。そこで、精度と遅延時間はトレードオフの関係にある。また、運用の初期段階では、とにかく何らかの推論結果を得ることが優先される場合もある。そこで、本実施例では、データフローコントローラ1110が状況や段階に応じてデータフローの制御を可能とする例を示す。具体的な例としては、センサ側の送信タイミングに基づいてデータを並び替える際に、並び替えるデータの割合を変更し、並び替えるデータの割合を変更したことによる、処理の精度と速度を評価可能とする。
<Step-by-step compound AI>
FIG. 14 is a block diagram showing the concept of staged composite AI using the system configurations of FIG. 12 and FIG. 13. The data flow controller 1110 described in the previous embodiment rearranges the data flow in the order of actual event occurrence, so that data that accurately reflects the real time-space can be generated, enabling accurate inference and prediction. On the other hand, since the data flow controller 1110 is a kind of buffer, data delay occurs in principle. Therefore, there is a trade-off between accuracy and delay time. Also, in the early stages of operation, there are cases where priority is given to obtaining some kind of inference result. Therefore, in this embodiment, an example is shown in which the data flow controller 1110 can control the data flow depending on the situation and stage. As a specific example, when rearranging data based on the transmission timing of the sensor side, the proportion of data to be rearranged is changed, and the accuracy and speed of processing due to the change in the proportion of data to be rearranged can be evaluated.

まず、データフローコントローラ1110は、データの並び替え制御をキャンセルして、到着順にデータを予測計画部100で処理させる(S1401)。この場合、原理的には低遅延で最高速の計算が可能である(S1402)。 First, the data flow controller 1110 cancels the data sorting control and has the forecast planning unit 100 process the data in the order of arrival (S1401). In this case, in principle, it is possible to perform calculations at the highest speed with low latency (S1402).

次に、データフローコントローラ1110は、AIオーケストレータ1045の設定に従って、例えば、一つ、または複数の所定のセンサからのデータフローのみを発生順に並び替える(S1403)。どのセンサのデータフローを並び替えるかの設定は予め決めておいてもよいし、ユーザが動的に変更してもよい。具体例としては、並び替えるデータの割合を変更する際に、センサ側に複数種類のセンサがある場合、センサの種類ごとに並び替えるデータと、並び替えないデータに区別して制御する。センサ種類毎に制御する他、送信元毎、回線毎、あるいは任意のグルーピングを基に制御してもよい。これらは、データフロー中の送信元アドレスやフラグ等に基づいて識別することができる。 Next, the data flow controller 1110, for example, sorts only the data flows from one or more specified sensors in the order of occurrence according to the settings of the AI orchestrator 1045 (S1403). The settings for which sensors' data flows are to be sorted may be determined in advance, or may be changed dynamically by the user. As a specific example, when changing the proportion of data to be sorted, if there are multiple types of sensors on the sensor side, the data is sorted for each sensor type and controlled separately from data that is not to be sorted. In addition to controlling for each sensor type, control may be performed for each sender, each line, or based on any grouping. These can be identified based on the sender address or flags in the data flow.

この結果、制御の条件によっては、遅延が多少大きくなるが、精度が上がるかもしれない。遅延時間と精度は、例えば全体制御部1240で、あらかじめ決めた理想的な遅延時間と精度の条件と比較して評価する(S1404)。データフローコントローラ1110は、以上のように、コントロールするデータフローとコントロールしないデータフローの組み合わせを何通りか(あるいは全て)試行する。 As a result, depending on the control conditions, delays may increase slightly, but accuracy may improve. The delay time and accuracy are evaluated, for example, by the overall control unit 1240, by comparing them with predetermined ideal delay time and accuracy conditions (S1404). As described above, the data flow controller 1110 tries several (or all) combinations of controlled and uncontrolled data flows.

一つの方法では、全ての組み合わせを試してみて、最も評価がよいものをデータフローコントローラ1110の設定とする。上記では、センサごとにデータフローのコントロールの有無を切り替える例を示したが、制御対象とする機器ごと、あるいは、現場の位置ごと等、他の組み合わせもあり得る。例えば、予め精度が重視される部分(あるいはセンサ)に優先度をつけて置き、優先度順に時間順のデータフローに並び替える等である。 In one method, all combinations are tried and the one with the best evaluation is set as the setting for the data flow controller 1110. In the above, an example was shown in which data flow control was switched on and off for each sensor, but other combinations are also possible, such as for each device to be controlled or for each site location. For example, priorities can be assigned in advance to parts (or sensors) for which accuracy is important, and the data flow can be rearranged chronologically in order of priority.

上記の例では、実際の子デバイスに入力するデータフローの順序を変更しているが、実施例14で説明したレプリカを用いて学習を行う第二の方式を採用した場合、レプリカに変更したデータフローを入力して評価に用い、実際の子デバイスではレプリカで得られたもっともよい条件に切り替えて、データフローコントローラ1110を動作させるという方式もあり得る。この方式では、予測計画部100の出力は次第に目標とする遅延時間と精度の条件に近づいていくことになる。 In the above example, the order of the data flows input to the actual child device is changed, but if the second method of learning using a replica described in Example 14 is adopted, the changed data flows can be input to the replica and used for evaluation, and the actual child device can be switched to the best conditions obtained from the replica and the data flow controller 1110 can be operated. With this method, the output of the prediction planning unit 100 will gradually approach the target conditions for delay time and accuracy.

別の方法では、次第にコントロールするデータフローの割合を増やしていき(たとえば単調増加)、遅延時間があらかじめ設定した上限に達したときにデータフローコントローラ1110の設定を固定することにしてもよい。この場合には、遅延時間の許容範囲内で、段階的に精度が向上していくことになる。 Another method is to gradually increase the proportion of data flow to be controlled (e.g., monotonically increase), and fix the settings of the data flow controller 1110 when the delay time reaches a preset upper limit. In this case, the accuracy will be improved step by step within the allowable range of delay time.

<未来予測フィードフォワードAI>
図15は、図12、図13のシステム構成による現状解析と未来予測の並行実施の概念を示すブロック図である。図12のような階層型のエッジ構成では、各階層のエッジの能力や仕様、さらにエッジに提供されるデータの量や転送速度が異なるので、各階層のエッジに適した処理を分担させることができる。
<Future prediction feedforward AI>
Fig. 15 is a block diagram showing the concept of parallel execution of current analysis and future prediction by the system configurations of Fig. 12 and Fig. 13. In the hierarchical edge configuration as shown in Fig. 12, the capabilities and specifications of the edges of each layer, as well as the amount and transfer speed of data provided to the edges, are different, so that it is possible to share processing suitable for the edges of each layer.

クラウドに近い全体制御部1240の複合AI1242(DNN、リザーバー、アニーリングマシン等で構成される)では、ビッグデータが利用可能でかつビッグデータを処理可能なリソースがあるが、現場から離れているのでリアルタイムデータの入手には不利である。そこで、複合AI1242では、リアルタイムのセンサデータでなく、DBの過去の履歴データを用いて、突発的な事象を考慮する必要のないルーチンの動作の大まかな未来予測を行う(S1501)。 The composite AI 1242 (consisting of a DNN, a reservoir, an annealing machine, etc.) of the overall control unit 1240, which is close to the cloud, has the resources to use and process big data, but is located away from the site, which puts it at a disadvantage in obtaining real-time data. Therefore, the composite AI 1242 uses past history data from the DB, rather than real-time sensor data, to make rough future predictions of routine operations that do not require consideration of sudden events (S1501).

予測計画部100では、DNN101とリザーバー102、あるいはリザーバー102を用いて、100msec程度の未来の予測を行う(図3のパターン4と5)。また、DNN101またはリザーバー102、およびアニーリングマシン103を用いて行動・軌道計画等を行う(図3のパターン1~3,6、S1502)。この処理のための入力として、リアルタイムのセンサデータを用いる。 The prediction planning unit 100 uses the DNN 101 and reservoir 102, or the reservoir 102, to make predictions for the future of about 100 msec (patterns 4 and 5 in Figure 3). In addition, the DNN 101 or reservoir 102 and the annealing machine 103 are used to plan actions and trajectories (patterns 1 to 3, 6, S1502 in Figure 3). Real-time sensor data is used as input for this process.

DNNの特徴抽出やリザーバーの特徴抽出、予測で得られた複数(例えば1万)時間ステップ分の時系列出力を使って、アニーリングマシンは一つの最適化問題の設定および求解を行う。この場合は、解法スループットが1万倍遅いが、より複雑な状態に対して、最適な行動を選択することができる。 The annealing machine uses the time series output for multiple (e.g. 10,000) time steps obtained from DNN feature extraction, reservoir feature extraction, and prediction to set up and solve a single optimization problem. In this case, the solution throughput is 10,000 times slower, but it is possible to select the optimal action for a more complex state.

例えば、都市の中の人流を5分間、DNN101やリザーバー102で特徴抽出し、その5分間の結果を用いて、次の5分間かけて、人流を均一化する最適化問題として、サーバー104が問題設定する(すなわち、アニーリングマシン103のスピン間の結合係数を決定)。さらに、アニーリングマシンに、上記結合係数を送信し(問題設定完了)、アニーリングマシンは、さらに次の5分間かけて、上記問題を解き、結果をサーバー104に返す。サーバー104は、その結果にもとづき、例えば、街角に置かれたディプレイに、推奨経路を表示する。上記15分の動作を周期的に繰り返すことで、都市の混雑を緩和することが考えられる。 For example, DNN 101 and reservoir 102 extract features of people flow in a city for five minutes, and then the server 104 uses the results of those five minutes to set an optimization problem for equalizing people flow over the next five minutes (i.e., determines the coupling coefficients between the spins of the annealing machine 103). Furthermore, the above coupling coefficients are sent to the annealing machine (problem setting complete), and the annealing machine solves the above problem over the next five minutes and returns the results to server 104. Based on the results, server 104 displays recommended routes on a display placed on a street corner, for example. It is conceivable that congestion in the city can be alleviated by periodically repeating the above 15-minute operation.

しかし、上記説明から明らかなように、アニーリングマシンによる処理は、DNN101やリザーバー102のみで処理を行うより時間がかかる。DNN101やリザーバー102のみでの特徴抽出や予測によると、よりリアルタイムに処理、応答が可能である。 However, as is clear from the above explanation, processing using an annealing machine takes longer than processing using only DNN 101 or reservoir 102. Feature extraction and prediction using only DNN 101 or reservoir 102 allows for more real-time processing and response.

例えば、人がつぎにやりたいことを、人の動きの特徴抽出、あるいは、予測により推定し、事前に、アクチュエータで支援(あるいは指示)、または、ウェアラブルディスプレイ等で支援(必要な道具の場所を教示する等)することが考えられる。例えば、人が非定常作業を遠隔から行おうとする場合、支援が伝わるまでの時間に違和感が生じないようにするには、脳の感度である200msec以内の動作があらかじめ予測できるとよい。異常の前兆だけでなく、非定型作業の前兆を検知する予測を行ってもよい。さらに、世界の裏側や、人工衛星への通信で発生する通信遅延の隠蔽に、未来予測を使うことができる。 For example, it would be possible to estimate what a person will want to do next by extracting characteristics of their movements or by predicting it, and provide support (or instructions) in advance using actuators, or support using a wearable display (such as showing the location of necessary tools). For example, when a person is attempting to perform non-routine tasks remotely, it would be good to be able to predict movements within 200 msec, which is the sensitivity of the brain, in order to prevent any discomfort during the time it takes for the support to be transmitted. Predictions could be made to detect not only signs of abnormalities, but also signs of non-routine tasks. Furthermore, future predictions could be used to conceal communication delays that occur when communicating to the other side of the world or with artificial satellites.

さらにレスポンスを早くするためには、現場に近いエッジにおいてリアルタイムのセンサデータでDNN101やリザーバー102の特徴抽出のみを行い、機器の異常などを高速に認識して突発動作に対する緊急停止対応などを可能にする。 To further speed up the response, only feature extraction of the DNN 101 and reservoir 102 is performed using real-time sensor data at the edge close to the site, enabling equipment abnormalities to be quickly recognized and emergency shutdowns to be implemented in the event of a sudden operation.

以上説明した実施例1~16は、適宜組み合わせて実施することができる。 The above-described embodiments 1 to 16 can be implemented in any suitable combination.

予測計画部100、DNN101、リザーバー102、アニーリングマシン103、サーバー104、無線インターフェース105、センサ200、出力部300、同時多接続パイプライン1100、データフローコントローラ1110、時間空間オーガナイザ1120、エッジ1200、全体制御部1240 Prediction and planning unit 100, DNN 101, reservoir 102, annealing machine 103, server 104, wireless interface 105, sensor 200, output unit 300, simultaneous multi-connection pipeline 1100, data flow controller 1110, time-space organizer 1120, edge 1200, overall control unit 1240

Claims (15)

関数近似器およびアニーリングマシンから選ばれる少なくとも一種の処理デバイスを含む処理部と、
センサ側から送信されるデータを受信し、前記処理部へ送信するデータフローコントローラを備え、
前記データフローコントローラは、前記処理部へ送信するデータを、前記センサ側の送信タイミングに基づいて並び替え、
前記データフローコントローラは、前記処理部へ送信するデータを、前記センサ側の送信タイミングに基づいて並び替える際に、並び替えるデータの割合を変更し、
並び替えるデータの割合を変更したことによる、前記処理部の処理の精度と速度を評価可能とする、
情報処理システム。
A processing unit including at least one processing device selected from a function approximator and an annealing machine;
A data flow controller is provided for receiving data transmitted from a sensor and transmitting the data to the processing unit.
The data flow controller rearranges the data to be transmitted to the processing unit based on a transmission timing on the sensor side;
the data flow controller changes a ratio of data to be rearranged when rearranging the data to be transmitted to the processing unit based on a transmission timing on the sensor side;
The accuracy and speed of the processing by the processing unit can be evaluated by changing the proportion of the data to be rearranged.
Information processing system.
前記データフローコントローラが受信するデータは、異なるセンサから得られたデータ、異なる経路を経たデータ、および異なる通信手段によるデータの少なくとも一つを含む、
請求項1記載の情報処理システム。
The data received by the data flow controller includes at least one of data obtained from different sensors, data passed through different paths, and data by different communication means.
2. The information processing system according to claim 1.
前記処理デバイスの設定に対応して、前記データフローコントローラの設定を行うオーケストレータを備える、
請求項2記載の情報処理システム。
an orchestrator that configures the data flow controller in response to the configuration of the processing device;
3. The information processing system according to claim 2.
前記センサ側に自己が持つ基準時計の時刻をブロードキャストする第1の計測部を備える、
請求項3記載の情報処理システム。
a first measurement unit that broadcasts the time of its own reference clock to the sensor side;
4. The information processing system according to claim 3.
前記センサ側に自己の位置情報をブロードキャストする第2の計測部を備える、
請求項4記載の情報処理システム。
a second measurement unit that broadcasts its own location information to the sensor side;
5. The information processing system according to claim 4.
前記センサ側からの送信遅延時間を記憶した遅延時間データテーブルを備え、

前記センサ側から送信されるデータの到着時間から前記遅延時間データテーブルの送信遅延時間を差し引くことにより、データの発信時間を算出して得た前記センサ側の送信タイミングと、前記センサ側から送信されるデータに付された位置情報に基づいて、該データに前記センサ側の送信タイミングと位置をラベリングする時間空間オーガナイザを備える、
請求項5記載の情報処理システム。
a delay time data table storing a transmission delay time from the sensor side;

a time-space organizer for labeling the data with the transmission timing and location of the sensor side based on the transmission timing of the sensor side obtained by subtracting the transmission delay time of the delay time data table from the arrival time of the data transmitted from the sensor side and the location information added to the data transmitted from the sensor side;
6. An information processing system according to claim 5.
前記データフローコントローラは、前記処理部へ送信するデータを並び替える制御と、前記並び替える制御をキャンセルする制御の両方を実行する、the data flow controller executes both a control for rearranging the data to be transmitted to the processing unit and a control for canceling the rearrangement control;
請求項1記載の情報処理システム。2. The information processing system according to claim 1.
前記データフローコントローラは、並び替えるデータの割合を変更する際に、センサ種類毎、送信元毎、回線毎、あるいは任意のグルーピングを基にデータを並び替えるかどうかを制御する、
請求項記載の情報処理システム。
The data flow controller controls whether to rearrange the data based on the sensor type, the source, the line, or an arbitrary grouping when changing the proportion of data to be rearranged.
2. The information processing system according to claim 1 .
前記データフローコントローラは、並び替えるデータの割合が単調増加するように変更する、
請求項記載の情報処理システム。
The data flow controller changes the ratio of data to be rearranged so that the ratio increases monotonically.
2. The information processing system according to claim 1 .
前記処理デバイスとしてDNNあるいはリザーバーを用いる特徴抽出、および、前記処理デバイスとしてリザーバーを用いる未来予測の少なくとも一つを行う、
請求項1記載の情報処理システム。
Performing at least one of feature extraction using a DNN or a reservoir as the processing device and future prediction using a reservoir as the processing device;
2. The information processing system according to claim 1.
前記処理部はサーバーを備え、該サーバーは前記DNNあるいはリザーバーの出力を基にして最適化問題を生成し、前記アニーリングマシンで処理可能なモデルに変換して、前記アニーリングマシンに問題を設定し、前記アニーリングマシンで問題を解いた後、解を読み出す、
請求項10記載の情報処理システム。
The processing unit includes a server, which generates an optimization problem based on the output of the DNN or the reservoir, converts the optimization problem into a model that can be processed by the annealing machine, sets the problem to the annealing machine, and reads out the solution after the problem is solved by the annealing machine.
11. The information processing system according to claim 10.
前記処理部は、親デバイスと複数の子デバイスを備え、
前記子デバイスは、前記関数近似器および前記アニーリングマシンから選ばれる少なくとも一種のデバイスの少なくとも一部を構成し、
前記親デバイスと前記複数の子デバイスのそれぞれは、通信インターフェースを備え、
前記通信インターフェースは、無線通信インターフェースおよびアナログ回路を含む有線通信インターフェースから選ばれる少なくとも一つであり、
前記子デバイスで処理するデータは、前記親デバイスから前記複数の子デバイスの少なくとも一つに送信され、
前記子デバイスの少なくとも一つのノードの出力が、前記親デバイスおよび他の前記子デバイスの少なくとも一つに送信される、
請求項1記載の情報処理システム。
The processing unit includes a parent device and a plurality of child devices,
the child device constitutes at least a part of at least one type of device selected from the function approximator and the annealing machine;
each of the parent device and the plurality of child devices includes a communication interface;
The communication interface is at least one selected from a wireless communication interface and a wired communication interface including an analog circuit;
data to be processed by the child device is transmitted from the parent device to at least one of the plurality of child devices;
an output of at least one node of the child device is transmitted to the parent device and at least one of the other child devices;
2. The information processing system according to claim 1.
請求項1記載の情報処理システムを複数備え、
前記センサ側から順に、第1の情報処理システム、第2の情報処理システム、および第3の情報処理システムの階層構造を有する、
階層型エッジシステム。
A plurality of the information processing systems according to claim 1 are provided,
The information processing system has a hierarchical structure including, in order from the sensor side, a first information processing system, a second information processing system, and a third information processing system.
Hierarchical edge systems.
前記第1の情報処理システムにおいて、前記処理デバイスとしてDNNあるいはリザーバーを用いる特徴抽出を行い、突発動作に対する緊急対応を行う、
請求項13記載の階層型エッジシステム。
In the first information processing system, feature extraction is performed using a DNN or a reservoir as the processing device, and an emergency response is performed for a sudden operation.
The hierarchical edge system of claim 13.
関数近似器およびアニーリングマシンから選ばれる少なくとも一種の処理デバイスを含む処理部により、センサ側から送信されるデータを処理する情報処理方法であって、
前記センサ側から送信されるデータを受信し、前記処理部へ送信するデータフローコントローラを用い、
前記センサ側から送信されるデータは、異なるセンサから得られたデータ、異なる経路を経たデータ、および異なる通信手段によるデータの少なくとも一つを含み、
前記データフローコントローラは、前記処理部へ送信するデータを、前記センサ側の送信タイミングに基づいて並び替え、
前記データフローコントローラは、前記処理部へ送信するデータを、前記センサ側の送信タイミングに基づいて並び替える際に、並び替えるデータの割合を変更し、
並び替えるデータの割合を変更したことによる、前記処理部の処理の精度と速度を評価可能とする、
情報処理方法。
An information processing method for processing data transmitted from a sensor side by a processing unit including at least one processing device selected from a function approximator and an annealing machine,
A data flow controller receives data transmitted from the sensor side and transmits the data to the processing unit,
The data transmitted from the sensor side includes at least one of data obtained from different sensors, data via different routes, and data via different communication means;
The data flow controller rearranges the data to be transmitted to the processing unit based on a transmission timing on the sensor side;
the data flow controller changes a ratio of data to be rearranged when rearranging the data to be transmitted to the processing unit based on a transmission timing on the sensor side;
The accuracy and speed of the processing by the processing unit can be evaluated by changing the proportion of the data to be rearranged.
Information processing methods.
JP2020163304A 2020-09-29 2020-09-29 Information processing system, hierarchical edge system, and information processing method Active JP7514716B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020163304A JP7514716B2 (en) 2020-09-29 2020-09-29 Information processing system, hierarchical edge system, and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020163304A JP7514716B2 (en) 2020-09-29 2020-09-29 Information processing system, hierarchical edge system, and information processing method

Publications (2)

Publication Number Publication Date
JP2022055721A JP2022055721A (en) 2022-04-08
JP7514716B2 true JP7514716B2 (en) 2024-07-11

Family

ID=80998930

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020163304A Active JP7514716B2 (en) 2020-09-29 2020-09-29 Information processing system, hierarchical edge system, and information processing method

Country Status (1)

Country Link
JP (1) JP7514716B2 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018166273A (en) 2017-03-28 2018-10-25 Necプラットフォームズ株式会社 Wireless device and timing synchronization method
JP2018182661A (en) 2017-04-20 2018-11-15 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America Communication system, on-vehicle equipment and program
JP2019161359A (en) 2018-03-09 2019-09-19 横河電機株式会社 Relay device
JP2020057165A (en) 2018-10-01 2020-04-09 株式会社椿本チエイン Abnormality determination device, signal feature amount predictor, abnormality determination method, learning model generation method, and learning model
WO2020115903A1 (en) 2018-12-07 2020-06-11 日本電気株式会社 Learning device, learning method, and learning program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018166273A (en) 2017-03-28 2018-10-25 Necプラットフォームズ株式会社 Wireless device and timing synchronization method
JP2018182661A (en) 2017-04-20 2018-11-15 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America Communication system, on-vehicle equipment and program
JP2019161359A (en) 2018-03-09 2019-09-19 横河電機株式会社 Relay device
JP2020057165A (en) 2018-10-01 2020-04-09 株式会社椿本チエイン Abnormality determination device, signal feature amount predictor, abnormality determination method, learning model generation method, and learning model
WO2020115903A1 (en) 2018-12-07 2020-06-11 日本電気株式会社 Learning device, learning method, and learning program

Also Published As

Publication number Publication date
JP2022055721A (en) 2022-04-08

Similar Documents

Publication Publication Date Title
Wu et al. Digital twin networks: A survey
Yan et al. Cloud robotics in smart manufacturing environments: Challenges and countermeasures
Yang et al. Ultra-reliable communications for industrial internet of things: Design considerations and channel modeling
CN110390246A (en) A kind of video analysis method in side cloud environment
Vaezi et al. Digital twins from a networking perspective
CN111444014A (en) Ocean observation network system and method based on EC-REST system structure
CN104049575A (en) Collecting And Delivering Data To A Big Data Machine In A Process Control System
CN113610329B (en) Short-time rainfall approaching forecasting method of double-current convolution long-short term memory network
CN111935124A (en) Multi-source heterogeneous data compression method applied to smart city
Di Geospatial sensor web and self-adaptive Earth predictive systems (SEPS)
Mohamed et al. A service-oriented middleware for cloud of things and fog computing supporting smart city applications
CN112257846A (en) Neuron model, topology, information processing method, and retinal neuron
Dyk et al. Sensesim: An agent-based and discrete event simulator for wireless sensor networks and the internet of things
Yu et al. Energy-aware dynamic computation offloading for video analytics in multi-UAV systems
da Silva et al. Towards federated learning in edge computing for real-time traffic estimation in smart cities
JP7514716B2 (en) Information processing system, hierarchical edge system, and information processing method
Moorthy et al. A middleware for digital twin-enabled flying network simulations using ubsim and UB-ANC
Qadeer et al. Deep-deterministic policy gradient based multi-resource allocation in edge-cloud system: a distributed approach
Chen et al. A survey on resource management in joint communication and computing-embedded SAGIN
Carvalho et al. Farming on the edge: Architectural Goals
US20220101099A1 (en) Information processing system and information processing method
Kurniawan et al. Mobile computing and communications-driven fog-assisted disaster evacuation techniques for context-aware guidance support: A survey
Sanislav et al. Digital twins in the internet of things context
Ksentini et al. Fog-enabled industrial IoT network slicing model based on ML-enabled multi-objective optimization
Zhang et al. Application of artificial intelligence for space-air-ground-sea integrated network

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230302

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240311

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: 20240611

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240701

R150 Certificate of patent or registration of utility model

Ref document number: 7514716

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150