(57)【特許請求の範囲】
【請求項１】
複数の変動データに基づいて対象物の状態の予測値を出力する状態予測システムであって、
前記変動データ毎に当該変動データに応じた処理を行い、当該変動データの予測値を演算する複数の埋め込み機械学習部と、
前記複数の埋め込み機械学習部を相互に連携させる相互インタフェースと、
を備え、
複数の前記埋め込み機械学習部は並列処理を行い、複数の変動データの予測値を演算して前記相互インタフェースに出力し、一つの埋め込み機械学習部から出力される予測値が変化すると、前記相互インタフェースを介して他の埋め込み機械学習部に前記変化した予測値を引き渡し、前記変化した予測値を取得した他の埋め込み機械学習部は、前記変化した予測値を新たな入力として新たな変動データの予測値を再演算して前記相互インタフェースに出力する、
ことを特徴とする状態予測システム。
【請求項２】
請求項１に記載の状態予測システムにおいて、
一つの変動データに対して識別系予測を行う第１埋め込み機械学習部と、生成モデル系予測を行う第２埋め込み機械学習部と、を備え、前記第１埋め込み機械学習部及び前記第２埋め込み機械学習部の其々の出力を基に前記識別系予測と前記生成モデル系予測の評価を行い、評価が高い系を用いた制御を実行する、
ことを特徴とする状態予測システム。
【請求項３】
請求項１又は２に記載の状態予測システムにおいて、
前記他の埋め込み機械学習部との連携効果として、前記他の埋め込み機械学習部との予測精度についての連携効果を評価するトークンインタフェースを更に備える、
ことを特徴とする状態予測システム。
【請求項４】
請求項１又は２に記載の状態予測システムにおいて、
前記他の埋め込み機械学習部との連携効果として、前記他の埋め込み機械学習部への制御についての連携効果を評価するトークンインタフェースを更に備える、
ことを特徴とする状態予測システム。
【請求項５】
請求項１、２、３、４のいずれか一つに記載の状態予測システムにおいて、
前記状態予測システムは、複数のノードを用いて構成され、前記ノードの其々は、前記埋め込み機械学習部を用いて構成され、ノード跨ぎ処理によるシステム状態最適制御を実行する、
ことを特徴とする状態予測システム。
【請求項６】
請求項１、２、３、４、５のいずれか一つに記載の状態予測システムにおいて、
異なる変動データの其々を演算する複数の埋め込み機械学習部は一つのＣｅｌｌに含んで構成される、
ことを特徴とする状態予測システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は状態予測システムに関し、特にＡＩ機能を用いた状態予測システムに関する。
【背景技術】
【０００２】
従来、ＡＩによる機械学習処理はＣｌｏｕｄ、オンプレミスのサーバ・ＰＣが集中処理により行っている。例えば特許文献１には、ＡＩを用いて複数の動的変動のある対象に対するリアルタイム制御をする例が示されている。【０００３】
また特許文献２には、ＡＩを用いた集中ゲームサーバからのオンラインゲームが示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許出願公開第２０１９／０１２９７３２号明細書
【特許文献２】米国特許出願公開第２０１９／０１６８１２２号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１、２は共に１つのＡＩが複数の処理を集中して行う。従って、ＡＩ処理の演算負荷が高い場合は、演算結果が出力されるのに時間が掛かるという問題がある。特に、ＩｏＴやログなどを用いるシステムでは、一般にデータ入出力が多いので、単一のＡＩを用いて集中処理を行うと、データ入力量や演算量が膨大となり、処理速度が際立って低下するという実情がある。またデータ入出力個所が増減するデータの集中処理では、再学習が頻発するという問題があり、再学習待ちによる運用低下を改善したいという要望がある。【０００６】
本発明は上記実情を鑑みてなされたものであり、複数の変動データを用いて対象物の状態を予測する状態予測システムにＡＩを適用しても、演算処理速度の低下を抑制できる状態予測システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記実情になされたものであり、本発明は請求の範囲に記載の構成を備える。その一例をあげるならば、本発明は、複数の変動データに基づいて対象物の状態の予測値を出力する状態予測システムであって、前記変動データ毎に当該変動データに応じた処理を行い、当該変動データの予測値を演算する複数の埋め込み機械学習部と、前記複数の埋め込み機械学習部を相互に連携させる相互インタフェースと、を備え、複数の前記埋め込み機械学習部は、並列処理を行い、複数の変動データの予測値を演算して前記相互インタフェースに出力し、一つの埋め込み機械学習部から出力される予測値が変化すると、前記相互インタフェースを介して他の埋め込み機械学習部に前記変化した予測値を引き渡し、前記変化した予測値を取得した他の埋め込み機械学習部は、前記変化した予測値を新たな入力として新たな変動データの予測値を再演算して前記相互インタフェースに出力する、ことを特徴とする。【０００８】
上記状態予測システムによれば、複数の変動データを用いて対象物の状態を予測する状態予測システムにＡＩを適用しても、演算処理速度の低下を抑制できる。従って、システム全般に亘る多数箇所で変動データを機械学習により同時並列処理により演算できるので、負荷の集中を緩和しながら、システム全般に亘る分散処理が可能になる。【０００９】
また上記状態予測システムにおいて、一つの変動データに対して識別系予測を行う第１埋め込み機械学習部と、生成モデル系予測を行う第２埋め込み機械学習部とを備え、前記第１埋め込み機械学習部及び前記第２埋め込み機械学習部の其々の出力を基に前記識別系予測と前記生成モデル系予測の評価を行い、評価が高い系を用いた制御を実行してもよい。【００１０】
機械学習処理には予測辞書を用意して入力と予測辞書に格納されたデータとの距離評価から出力を決定する識別系予測処理と、予め変動データ（出力）とその変動データの演算に用いた入力とを含む教師データを用いて学習済みモデルを生成し、生成された学習済みモデルに新たな入力を適用して変動データを演算する生成モデル系予測とがある。変動データの特性によって、識別系予測処理と生成モデル系予測処理とのどちらがより精度が高いかは異なるので、一つの変動データに対して識別系予測処理と生成モデル系予測処理とを用意し、より変動データの特性に合った予測処理を行うことで予測精度を向上させることができる。【００１１】
また上記状態予測システムにおいて、前記他の埋め込み機械学習部との連携効果として、前記他の埋め込み機械学習部との予測精度についての連携効果を評価するトークンインタフェースを更に備えてもよい。また、前記他の埋め込み機械学習部との連携効果として、前記他の埋め込み機械学習部への制御についての連携効果を評価するトークンインタフェースを更に備えてもよい。【００１２】
これにより並列で埋め込み機械学習部の演算処理をする際に、新たな変動データが出力されると、より連携効果が高い埋め込み機械学習部には新たな変動データを引き渡し、一方、連携効果が認められない機械学習部には新たな変動データを引き渡さないことで、連携効果が認められないにも関らず、新たな変動データが引き渡されて本来であれば不要な機械学習演算が実行されることを防ぐことができる。【００１３】
また上記状態予測システムは、複数のノードを用いて構成され、前記ノードの其々は、前記埋め込み機械学習部を用いて構成され、ノード跨ぎ処理によるシステム状態最適制御を実行してもよい。【００１４】
また上記状態予測システムは、異なる変動データの其々を演算する複数の埋め込み機械学習部は一つのＣｅｌｌに含んで構成されてもよい。
【発明の効果】
【００１５】
本発明によれば、複数の変動データ用いて対象物の状態を予測する状態予測システムにＡＩを適用しても、演算処理速度の低下を抑制できる状態予測技術を提供することができる。なお上記した以外の目的、構成、効果は以下の実施形態により明らかにされる。
【図面の簡単な説明】
【００１６】
【図１】状態予測システムの全体構成図
【図２】システムアプリケーションプログラムのソフトウェア構成図
【図３】システムアプリケーションプログラムの実行時に生成されるインスタンスを示す図
【図４】状態予測システムを適用した店舗業務システムの構成例を示す図
【図５】店舗業務システムの上位システムとの関係を示す図
【図６】ノードオブジェクト“発注数量Ａ１  予測”に対応するＣｅｌｌインスタンスの構成例
【図７】状態予測システムの一般的な処理の流れを示すフローチャート
【図８】店舗業務システムにおける発注業務処理の流れを示すフローチャート
【図９】ノードオジェクト“製品品質Ａ値  予測”に対応するＣｅｌｌインスタンスの構成例
【図１０】製造現場管理システムにおける作業状態管理業務処理の流れを示すフローチャート
【図１１】ノードオブジェクト“論理設計  デバイス制御インタフェース信号Ａタイミング  予測”に対応するＣｅｌｌインスタンスの構成例
【図１２】設計業務システムにおける論理設計処理の流れを示すフローチャート
【図１３】状態予測システムのシステム実装例の他例を示す図
【図１４】ノードオブジェクト“機械制御モータＡ回転角度  予測”に対応するＣｅｌｌインスタンスの構成例
【図１５】ノードオブジェクト“農産物生産制御  予測”に対応するＣｅｌｌインスタンスの構成例
【図１６】ノードオブジェクト“株価指数  予測”に対応するＣｅｌｌインスタンスの構成例
【図１７】ノードオブジェクト“移動時間  予測”に対応するＣｅｌｌインスタンスの構成例
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態について説明する。まず、以下の説明で用いる用語について説明する。
・  本実施形態におけるシステムアプリケーションプログラム（以下「アプリケーション」は「ＡＰ」と略記する）には、状態予測システムが適用されているものとするシステムＡＰプログラムの具体例として、例えば店舗業務システムプログラムや製造現場管理システム、設計業務システムがある。システムＡＰプログラムをインストールして実行可能にした装置が、状態予測装置である。
・  オブジェクトとは、システムＡＰにおいて状態予測を行う対象である。例えば店舗業務システムでは、発注伝票業務における発注伝票がオブジェクトに相当する。製造装置管理システムでは、製造装置の作業状態を管理する業務における製造装置センサデータファイルに相当する。設計業務システムにおいては、論理設計処理における論理設計仕様書に相当する。
・  変動データとは、オブジェクトにおいて、値が変動するデータである。またオブジェクトにおいて変動データが配置される欄を変動データカラムという。例えば、発注伝票（オブジェクト）では、商品の発注数量が変動データであり、発注伝票フォーマットにおいて発注数量が記載される欄が変動データカラムである。製造装置センサデータファイルでは、センサデータが変動データであり、製造装置センサデータファイルにおいてセンサデータの格納領域が変動データカラムである。論理設計仕様書では、説明信号データが変動データであり、論理設計仕様書において説明信号が記入される欄が変動データカラムである。
・  Ｅｎｔｉｔｙとは、変動データの実体である。例えば、発注伝票（オブジェクト）の商品Ａ１の注文数量（変動データ）において、注文数量の“実体”がＥｎｔｉｔｙである。発注伝票の中には商品Ａ１の（注文）数量、商品Ａ２の（注文）数量、・・・があり、それらの１つ１つの（注文）数量がＥｎｔｉｔｙである。上記センサデータの値、説明信号の信号レベルの値もＥｎｔｉｔｙである。
・  ノードオブジェクト（以下「ノード」と略記する）とは、システムＡＰプログラムに含まれる各変動データのＥｎｔｉｔｙを演算するプログラムモジュールである。ノードは、１つの変動データに対して一つ設けられる。そして、システムＡＰプログラムに含まれる複数の変動データのうち、第１変動データのＥｎｔｉｔｙが変わると、それに応じて第２変動データのＥｎｔｉｔｙが変わる場合、第１変動データに対応する第１ノードと第２変動データに対応する第２ノードとを相互に関連付けて構成される。より詳しくは、第１ノードから出力されるＥｎｔｉｔｙは、第２ノードの入力となるように第１ノードと第２ノードが関連付けて接続されて構成される。各ノードは、１つのＣｅｌｌと１つのそれに含まれる複数のｕ−ＡＩとを含んで構成される。
・  Ｃｅｌｌとは、ｕ−ＡＩクラスと、ｕ−ＡＩクラスの周りでシステム又はアプリケーション及び別のｕ−ＡＩクラスとインタフェースする処理を実行するモジュールである。Ｃｅｌｌは、１つの変動データに対して一つ設けられる。Ｃｅｌｌクラスプログラムとｕ−ＡＩクラスプログラムはシステムＡＰプログラム内におかれる。ここでいう「クラス」とは、処理の型で、データ処理方法を示した関数もしくはメソッドの集まりやその関数に設定すべきプロパティ（属性）が定義されている。一方、後述する「インスタンス」とは、クラス（処理の型）から、具体的なデータに合わせた関数もしくはメソッドとプロパティを指定されて処理に必要な部分だけが複写されてＣＰＵ上で実行されるプログラム実体である。
・  ｕ−ＡＩ（埋め込み（ｅｍｂｅｄｄｅｄ）機械学習部、“ｕ−”は“ユビキタス”ｕである）とは、時系列予測、回帰系予測などの機械学習処理を行うプログラムモジュールを意味する。ｕ−ＡＩは、一つの関数を用いて一種類のＥｎｔｉｔｙを出力する。ｕ−ＡＩは、機械学習により識別や予測に必要なパラメータを算出したり、識別辞書や予測辞書を生成し、その結果をＣｅｌｌ経由でストレージに格納する。ｕ−ＡＩは、自身が関数を用いて演算した学習結果を使って、外部からシステムＡＰプログラム及びＣｅｌｌ経由で与えられたデータの識別処理、予測処理、及び評価処理の少なくとも一つの処理を行う。
【００１８】
以下、図面を参照して本実施形態について説明する。全図を通じて同一の構成には同一の符号を付し、重複説明を省略する。
【００１９】
図１は、本実施形態に係る状態予測システム１００の全体構成図である。図２は、システムＡＰプログラム１０６ｅのソフトウェア構成図である。図３は、システムＡＰプログラム１０６ｅの実行時に生成されるインスタンスを示す図である。
【００２０】
図１の状態予測システム１００は、ＣＰＵ１０２、メモリ１０４、ストレージ１０６、入力インタフェース１０８、出力インタフェース１１０の其々をバス１１２で接続して構成されたコンピュータを用いて構成される。
【００２１】
ストレージ１０６は、ＤＢ変動データ１０６ａ、オブジェクトファイル１０６ｂ、識別辞書ファイル１０６ｃ、予測辞書ファイル１０６ｄ、及びシステムＡＰプログラム１０６ｅを格納する。
【００２２】
図２に示すように、システムＡＰプログラム１０６ｅは、ストレージ１０６に格納されている状態において、Ｃｅｌｌクラスプログラム１１５及びｕ−ＡＩクラスプログラム１２０が同一階層に格納されていてもよい。
【００２３】
ｕ−ＡＩクラスプログラム１２０には機械学習に用いられる複数種類の関数が格納される。状態予測システム１００は、ｎ個の変動データがある場合にはｎ個のＣｅｌｌクラスプログラム１１５を含む。各Ｃｅｌｌクラスプログラム１１５には、ｕ−ＡＩクラスプログラム１２０に含まれる複数種類の関数の内、どの関数を用いるかが定義されている。
【００２４】
ＣＰＵ１０２がシステムＡＰプログラム１０６ｅをストレージ１０６から読みだしてメモリ１０４にロードして実行すると、ＣＰＵ１０２がＣｅｌｌクラスプログラム１１５を読み出す。そしてＣｅｌｌクラスが呼ばれてＣｅｌｌインスタンス１０４ｂが生成される。そして、ＣＰＵ１０２がそのＣｅｌｌインスタンスを実行すると（１０２ｂ）、そのＣｅｌｌインスタンスに定義されている定義された関数名（これら二つの関数名は相互に異なる）をｕ−ＡＩクラスプログラム１２０から読み出すと共に、必要なパラメータを例えばＤＢ変動データ１０６ａから読み出す。そして２種類のｕ−ＡＩインスタンス１０４ｃが生成され、実行される（１０２ｃ）。
【００２５】
図３を例に具体例を説明する。ＣＰＵ１０２がシステムＡＰプログラム１０６ｅを起動すると、オブジェクトファイル１０６ｂからオブジェクト２００のファイルを読み出す。オブジェクト２００は２つの変動データＡのカラムと変動データＢのカラムとを含む。
【００２６】
オブジェクト２００のファイルには、第１ノードオブジェクト２１０Ａと第２ノードオブジェクト２１０Ｂが含まれる。第１ノードオブジェクト２１０Ａは変動データＡを演算するモジュールである。第２ノードオブジェクト２１０Ｂは変動データＢを演算するモジュールである。
【００２７】
ＣＰＵ１０２は、第１ノードオブジェクト２１０Ａにおいて、第１Ｃｅｌｌインスタンス１３０Ａを生成する。更にＣＰＵ１０２は第１Ｃｅｌｌインスタンス１３０Ａから必要な２つの関数名を読みだす。そして、ＣＰＵ１０２は、読みだした二つの関数名を基に予測辞書ファイル１０６ｄを参照し、二つの関数を取得する。同様に、ＣＰＵ１０２はＤＢ変動データ１０６ａから二つの関数に適用するパラメータを読み出す。そして、関数に其々に必要なパラメータを適用して、第１ｕ−ＡＩインスタンス１４０Ａ１及び第２ｕ−ＡＩインスタンス１４０Ａ２を生成する。
【００２８】
ＣＰＵ１０２は、第２ノードオブジェクト２１０Ｂを実行して第２Ｃｅｌｌインスタンス１３０Ｂ、及び第２Ｃｅｌｌインスタンス１３０Ｂにより生成された第１ｕ−ＡＩインスタンス１４０Ｂ１及び第２ｕ−ＡＩインスタンス１４０Ｂ２を生成する。
【００２９】
ＣＰＵ１０２は、第１ノードオブジェクト２１０Ａが出力するＥｎｔｉｔｙが、第２ノードオブジェクト２１０Ｂの入力となるように関連付ける。関連付けは、第１ノードオブジェクト２１０Ａの出力段と第２ノードオブジェクト２１０Ｂの入力段とを直接関係づけてもよい（論理的に接続してもよい）。またＣＰＵ１０２は、第２ノードオブジェクト２１０Ｂが出力するＥｎｔｉｔｙが、第１ノードオブジェクト２１０Ａの入力となるように関連付ける。関連付けは、第２ノードオブジェクト２１０Ｂの出力段と第１ノードオブジェクト２１０Ａの入力段とを直接関係づけてもよい（論理的に接続してもよい）
【００３０】
変動データに対する入力、換言するとノードオブジェクトに対する入力として、例えばデータベース（以下「ＤＢ」と記載）からの入力（ＩｏＴからのデータを一旦入力するＤＢ、他の変動データが更新されることにより自動的に更新されるＤＢ、当該変動データが更新されることにより自動的に更新されるＤＢ等）でもよい。変動データの入力先を設定すると、設定されたＤＢからデータが取り込まれたり、マージ（演算等を伴う結合を含む）が行われたりする。出力は、当該変動データが更新されることにより自動的に更新されるＤＢに対して行われる。
【００３１】
また、ＣＰＵ１０２は、第１ノードオブジェクト２１０Ａが出力するＥｎｔｉｔｙをＤＢ変動データ１０６ａに記憶させる。その後ＣＰＵ１０２が第２ノードオブジェクト２１０Ｂの第１ｕ−ＡＩインスタンス１４０Ｂ１及び第２ｕ−ＡＩインスタンス１４０Ｂ２に適用するパラメータとしてＤＢ変動データ１０６ａから第１ノードオブジェクト２１０Ａが出力するＥｎｔｉｔｙを読み出して入力値として用いる態様でもよい。
【００３２】
図４は、状態予測システム１００を適用した店舗業務システム３００の構成例を示す。
【００３３】
店舗業務システム３００が行う第１階層業務には、行３０１に示す“管理”“人員管理”“物流”“倉庫管理”“仕入販売”“店舗管理”及び“販促”がある。
【００３４】
各第１階層業務には、第１階層業務をより細分化された項目である第２階層業務がある。例えば“管理”業務は、更に列３０２に並んだ“売上”“利益”“販売”“クレーム”“マニュアル”“情報”の第２階層業務を含む。
【００３５】
“仕入販売”の第２階層業務である“発注業務”にはオブジェクト３１０として“注文書”３２０がある。“注文書”３２０は変動データとして商品の“数量”記載欄３３０（変動データカラム）がある。
【００３６】
Ｃｅｌｌインスタンス３４０は、変動データとしての商品の“数量”のＥｎｔｉｔｙを出力する。Ｃｅｌｌインスタンス３４０が実行されると第１ｕ−ＡＩインスタンス３４０１及び第２ｕ−ＡＩインスタンス３４０２が生成される。
【００３７】
Ｃｅｌｌインスタンス３４０は、“管理”の第２階層業務“売上”の変動データである“売上目標”、“利益”の変動データである“利益目標”、“販売”の変動データである“販売目標”“販売予測”の各Ｅｎｔｉｔｙを入力パラメータとして、第１ｕ−ＡＩインスタンス３４０１及び第２ｕ−ＡＩインスタンス３４０２で演算を行う。
【００３８】
第１ｕ−ＡＩインスタンス３４０１及び第２ｕ−ＡＩインスタンス３４０２の演算結果は、商品の“数量”記載欄３３０に入力される。
【００３９】
商品の“数量”記載欄３３０に入力されたＥｎｔｉｔｙは、他の業務、より詳しくは、“輸送”“販促”のＣｅｌｌクラスに対する入力となる。
【００４０】
図５は、店舗業務システム３００の上位システムとの関係を示す図である。店舗業務システム３００はＰＣ、サーバ、又はクラウドに置かれた店舗業務システム３００のＡＰ３５０が実行されることで構成される。店舗業務システム３００は、例えば単店舗の業務を管理するシステムである。店舗業務システム３００の更に上位システムとして、複数の店舗業務システム３００を統括するユーザ情報システム３６０がある。店舗業務システム３００が各店舗に置かれるものであり、ユーザ情報システム３６０は本社や地域支社など、店舗エリアを統括する機能を有する本社に置かれるシステムである。
【００４１】
店舗業務システム３００のうちの発注業務には、注文書商品Ａ類オブジェクト３１１及び注文書商品Ｂ類オブジェクト３１２のように、複数のオブジェクトを含む。
【００４２】
注文書商品Ａ類オブジェクト３１１は“商品Ａ１”“商品Ａ２”の各発注数量を記載する欄がある。よって、注文書商品Ａ類オブジェクト３１１は、変動データとして“商品Ａ１”の発注数量と“商品Ａ２”の発注数量とがあり、これらの各変動データに対するノードオブジェクトを含む。
【００４３】
状態予測システムを店舗業務システム３００に含まれる発注書の発行業務に適用した際に生成されるインスタンスを図６を参照して説明する。図６は、ノードオブジェクト“発注数量Ａ１  予測”に対応するＣｅｌｌインスタンスの構成例を示す。
【００４４】
Ｃｅｌｌインスタンス７００は、ノードオブジェクト“発注数量Ａ１  予測”に対応するＣｅｌｌインスタンスである。インスタンスの構成によっては、データを介したオブジェクトを跨ぐｕ−ＡＩ連携、ノードを跨ぐｕ−ＡＩ連携を実施する。オブジェクトを跨ぐｕ−ＡＩ連携もノードを跨ぐｕ−ＡＩ連携も、Ｃｅｌｌ外部ＩＦ６１０によりデータを介して行われる。データを介したオブジェクトを跨ぐノード間のｕ−ＡＩ連携として、例えば商品Ａについての発注（仕入れ）注文書では、売上・利益、見通し、実績、資料との連携がある。また、他商品についての発注（仕入れ）注文書では、販促計画書、業務（組織）構造、業務プロセス（手順書）、入出力仕様書がある。Ｃｅｌｌインスタンス７００は、Ｃｅｌｌ機能処理部６００、Ｃｅｌｌ外部ＩＦ６１０、Ｃｅｌｌ内部ＩＦ６２０、ｕ−ＡＩＩＦ６３０、商品ＡＩ発注数量値＿Ａモデル予測（第１ｕ−ＡＩ６４０）、及び商品ＡＩ発注数量値＿Ｂモデル予測（第２ｕ−ＡＩ６５０）を含む。連携は、第２ｕ−ＡＩインスタンス３４０２→Ｃｅｌｌ外部ＩＦ６１０→ＤＢ（外部）→Ｃｅｌｌ外部ＩＦ６１０→第１ｕ−ＡＩインスタンス３４０１、もしくは、第１ｕ−ＡＩインスタンス３４０１→Ｃｅｌｌ外部ＩＦ６１０→ＤＢ（外部）→Ｃｅｌｌ外部ＩＦ６１０→第２ｕ−ＡＩインスタンス３４０２で実現される。
【００４５】
Ｃｅｌｌ機能処理部６００は、次の処理を実行する。
・システムＡＰ  ＩＦ
・システムＡＰからの設定処理
・ｕ−ＡＩの生成
・システムＡＰとの構成処理ＩＦ
・ユーザシステムＡＰ設定処理からのｕ−ＡＩ設定
・ＤＢデータの取り込み
・ｕ−ＡＩ共通の区分化処理
・データ種別判定
・データ及び区分情報をｕ−ＡＩへ書込み
・ｕ−ＡＩからの処理結果吸い上げ
・処理結果をＤＢへ書込み
・ｕ−ＡＩ区分毎の評価
・予測組立（区分結合）
・ｕ−ＡＩ毎とｕ−ＡＩ結合  両方をＤＢ出力
【００４６】
状態予測システム１００では、複数ノードに跨るｕ−ＡＩとＣｅｌｌの連携、相互作用、即ち、ｕ−ＡＩとＣｅｌｌは、別のｕ−ＡＩとＣｅｌｌの出力データの一部を入力の一部とすることにより別のｕ−ＡＩとＣｅｌｌの出力データの作用を受ける。これにより、別のｕ−ＡＩとＣｅｌｌの評価、予測、制御及び制御設定を機械学習し、評価、予測、制御の出力を更新する（別のｕ−ＡＩとＣｅｌｌの制御を組み合わせた制御の生成なども含む）。
【００４７】
また状態予測システム１００では、ｕ−ＡＩとＣｅｌｌは識別モデルと予測モデルによる予測を行い予測と制御効果の精度を上げる。具体的には、識別モデルの予測辞書探索による目標接近制御の機能とパラメータ選択と予測モデルの分布変分や回帰や隠れマルコフモデルによる目標接近制御の機能とパラメータ選択とを行い、両方の選択値のバランス及び結果観測による両選択の評価により探索及び変分を更新する。
【００４８】
図７は、本実施形態に係る状態予測システム１００の一般的な処理の流れを示すフローチャートである。図７を店舗業務システム３００に適用した際の流れは図８を参照して後述する。
【００４９】
ストレージ１０６にはシステムＡＰプログラム１０６ｅが予め格納されている（Ｓ１０１）。ＣＰＵ１０２は、ストレージ１０６からシステムＡＰプログラム１０６ｅを読み出し、メモリ１０４にロードする。これにより、状態予測システム１００が起動する（Ｓ１０２）。
【００５０】
状態予測システム１００が起動すると、オブジェクト処理が開始する（Ｓ１０３）。ＣＰＵ１０２は、各オブジェクトに対応するＣｅｌｌクラスプログラム１１５を読み出す。
【００５１】
ＣＰＵ１０２はｕ−ＡＩとＣｅｌｌは処理を定義する次のような設定を、状態予測システム１００を介してノード毎に行う（Ｓ１０４）。ｕ−ＡＩとＣｅｌｌの処理を定義することにより、Ｃｅｌｌインスタンスとｕ−ＡＩインスタンスとが生成される。
【００５２】
入力データ設定（ＤＢや別の箇所の変動データ等のデータの取得元）を行う（Ｓ１０４−１）。
【００５３】
目的変動データ設定（入力データから目的変動データの求め方など。例えば回帰式であったり、設定時点までの時系列データであったり、学習データ（入力データ設定に示される）とラベルデータ（入力データ設定に示される）の組み合わせであったり）を行う。（Ｓ１０４−２）
【００５４】
目標値設定を行う（Ｓ１０４−３）。
【００５５】
評価設定（＋値、―値と対応するラベル）を行う（Ｓ１０４−４）。
【００５６】
制御設定（計画、実施、変更）他を行う（Ｓ１０４−５）。
【００５７】
ＣＰＵ１０２は、Ｃｅｌｌインスタンスの処理をセマフォシステムによる並列プロセスにより実行し、処理結果を出力する（Ｓ１０５）。
【００５８】
状態予測システム１００により、Ｃｅｌｌオブジェクトが割当済のデータのあるファイル等の処理が始まった時点でＡＰはＣｅｌｌインスタンスを生成・起動し、更に起動したＣｅｌｌインスタンスはｕ−ＡＩインスタンスを生成・起動し、設定情報と一時点前の結果に基づき処理が実行される。
【００５９】
Ｃｅｌｌインスタンスの処理では、第１ｕ−ＡＩインスタンス及び第２ｕ−ＡＩインスタンスが同一の入力を得てそれぞれ学習動作処理を実行する。
【００６０】
学習動作時、ＡＰは、入力データをユーザシステム等の外部から取込み、前処理を行い、ストレージ１０６に格納する。ＣｅｌｌインスタンスはＣｅｌｌ外部ＩＦ（ノードＩＦ）６１０により入力データを取込み、データの区分処理を行い、第１ｕ−ＡＩインスタンス及び第２ｕ−ＡＩインスタンスへデータと区分処理結果情報を渡す。
【００６１】
第１ｕ−ＡＩインスタンス及び第２ｕ−ＡＩインスタンスのそれぞれは、識別・予測学習により識別・予測辞書及び評価辞書を生成する。
【００６２】
第１ｕ−ＡＩインスタンス及び第２ｕ−ＡＩインスタンスのそれぞれは、識別・予測学習を行った時に得た、他のノードのデータの寄与率、決定係数情報等も同時に生成する。
【００６３】
第１ｕ−ＡＩインスタンス及び第２ｕ−ＡＩインスタンスのそれぞれは、生成した識別・予測学習により識別・予測辞書及び評価辞書はｕ−ＡＩに保持すると共に、ＣｅｌｌインスタンスがＣｅｌｌ内部ＩＦ６２０により吸い上げ、Ｃｅｌｌ外部ＩＦ（ノードＩＦ）６１０によりストレージ１０６に格納する。
【００６４】
同様に、前述の他のノードのデータの寄与率、決定係数情報等もＣｅｌｌがＣｅｌｌ内部ＩＦ６２０により吸い上げ、他のノードへのクーポン情報としてＣｅｌｌ外部ＩＦ（ノードＩＦ）６１０によりストレージ１０６に格納する。
【００６５】
状態予測システム１００は、ストレージ１０６からノード毎のクーポン情報を吸い上げ、ユーザによる入力データに関する設定情報などに基づき各Ｃｅｌｌ処理の優先順位付けや不要Ｃｅｌｌの停止などの処理を行う。
【００６６】
（（状態）識別・予測・評価  動作時）については、状態予測システム１００は、入力データを状態予測システム１００の外部から取込み、前処理を行い、ストレージ１０６に格納する。
【００６７】
ＣｅｌｌインスタンスはＣｅｌｌ外部ＩＦ（ノードＩＦ）６１０により入力データを取込み、データの区分処理を行い、ｕ−ＡＩへデータと区分処理結果情報を渡す。
【００６８】
第１ｕ−ＡＩインスタンス及び第２ｕ−ＡＩインスタンスのそれぞれは、識別辞書を使用した識別処理を行い、識別結果データを出力する。また、予測（予測制御）辞書を使用して予測（予測制御）処理を行い、予測（予測制御）結果データを出力する。更に予測（予測制御）結果と予測時点と同時点の入力データ及び評価辞書を使用して評価処理を行い、評価結果データを生成する。
【００６９】
Ｃｅｌｌインスタンスは、第１ｕ−ＡＩインスタンス及び第２ｕ−ＡＩインスタンスのそれぞれが出力した識別結果データ、予測（予測制御）結果データ、評価結果データ、をＣｅｌｌ内部ＩＦ６２０により吸い上げる。
【００７０】
Ｃｅｌｌインスタンスは、Ｃｅｌｌ内の２つのｕ−ＡＩの識別結果データ、予測（予測制御）結果データ、評価結果データをデータの区分毎に比較し、比較評価結果データを生成する。そして、Ｃｅｌｌインスタンスは、識別結果データ、予測（予測制御）結果データ、評価結果データ、比較評価結果データをＣｅｌｌ外部ＩＦ（ノードＩＦ）６１０によりストレージ１０６に格納する。
【００７１】
状態予測システム１００は、ストレージ１０６からＣｅｌｌ毎の識別結果データ、予測（予測制御）結果データ、評価結果データ、比較評価結果データを読み出す。
【００７２】
状態予測システム１００は、Ｃｅｌｌ毎の識別結果、予測結果を統合し、状態予測システム１００の状態の識別・予測を行う。
【００７３】
状態予測システム１００は、各Ｃｅｌｌの識別結果、予測結果、状態予測システム１００の識別・予測結果をユーザＩＦによりモニタ画面に表示したり、プリンタからの帳票出力を行ったり、もしくは、予測結果に基づきシステムＩＦにより状態予測システム１００の装置への制御を行う。
【００７４】
上記「予測」とは、区分の予測と、区分のつながりの予測がある。区分の予測は、上記識別で識別したデータの状態（データを出力又は観測した対象の状態に対応）をその区分の初期状態として、それから区分化処理結果の時間幅分のデータの変化を予測辞書の予測演算パラメータ（例えば回帰係数など）を使用して演算により得る。区分つながりの予測は、上記識別で識別したデータの状態（データを出力又は観測した対象の状態に対応）を時系列化し、予測辞書の参照を上記（状態遷移時系列）分類の区分ラベルとの対応付けと同様にして行い、（状態遷移時系列）分類を行う。
【００７５】
更に、予測辞書から、対応付けられた区分ラベルの次の区分ラベルを参照することでデータの予測を行う。
【００７６】
Ｃｅｌｌインスタンスの処理では、「セマフォ」システムによる排他制御を用いた並列プロセスにより実行する。ここでいう排他制御とは、例えばデータＡを処理するＣｅｌｌインスタンスはｕ−ＡＩインスタンスの処理結果としてデータＡの予測値などをＤＢのデータＡの予測値書込み箇所へ書込む。その際、データＢを処理するＣｅｌｌインスタンスはデータＢの予測値を得るためにデータＢを処理するｕ−ＡＩインスタンスへＤＢからデータＡの予測値を読出して渡す。そこで、データＡを処理するＣｅｌｌインスタンスによるＤＢへのデータＡの書込みとデータＢを処理するＣｅｌｌインスタンスによるＤＢへのデータＡの読出しが競合しないように排他制御を行う。排他制御は、Ｃｅｌｌ毎に行う。
【００７７】
ｕ−ＡＩインスタンスとＣｅｌｌインスタンスとは、ＡＰの各種入力データに対する前処理、識別・予測学習により生成した識別・予測辞書及び評価辞書を参照する。
【００７８】
（前処理（ｕ−ＡＩが処理する））
データ毎に設定されたサンプリング周期毎のデータに欠損があった場合に１つ前と同じデータを入れるなどの欠損値補間処理や、データ間で数値のスケールが大きく離れている場合に後の予測値算出などで誤差が大きくなるなどを防ぐためにデータ間のスケールがある範囲に収まるようにするスケーリング処理などを意味する。
【００７９】
（識別辞書と識別（ｕ−ＡＩが処理する））
識別辞書はデータから抽出した特徴量と特徴量によるデータの状態（データを出力又は観測した対象の状態に対応）を（識別）分類に対応付ける内容のファイルである。
【００８０】
（識別（ｕ−ＡＩが処理する））
分類には識別ラベルを付す。分類は、一般的な分類アルゴリズムであるｋ−ｍｅａｎｓ法などにより行う。識別はデータから特徴量を抽出する演算処理を施し特徴量を抽出する。特徴量を抽出する演算処理の演算係数などのパラメータや分類アルゴリズムに与える分類数などのパラメータは学習データに対する分類処理結果の誤差が小さくなるように学習し、得られたパラメータも辞書を構成する一部としてストレージ１０６に格納する。抽出した特徴量に対して識別関数が識別辞書に登録された特徴量と相違判定し、識別辞書で対応付けられた（識別）分類ラベルを出力する。識別関数はデータから抽出した特徴量と識別辞書に登録された特徴量とを特徴量空間における距離を算出するなどして相違判定する。
【００８１】
（予測辞書（ｕ−ＡＩが処理する））
予測辞書は、データの状態遷移を時系列に表し、状態遷移時系列を（状態遷移時系列）分類に対応付ける内容と、状態遷移時系列区分のつながり情報を加えたファイルである。区分の予測に使用する予測演算パラメータ（例えば回帰係数や隠れマルコフモデルの状態遷移確率など）は学習データに対する予測処理結果の誤差が小さくなるように学習し、得られたパラメータも辞書を構成する一部としてストレージ１０６に格納する。時系列の長さは区分化処理結果の時間幅を基本とする。
【００８２】
（予測（ｕ−ＡＩが処理する））
予測は、上記識別で識別したデータの状態（データを出力又は観測した対象の状態に対応）を時系列化し、予測辞書の参照を上記（状態遷移時系列）分類の区分ラベルとの対応付けと同様にして行い、（状態遷移時系列）分類を行う。更に、予測辞書から、対応付けられた区分ラベルの次の区分ラベルを参照することでデータの予測を行う。
【００８３】
（状態遷移時系列（ｕ−ＡＩが処理する））
（状態遷移時系列）分類には状態遷移時系列区分ラベルを付す。区分化処理結果の時間幅の長いものは予め設定した時間幅毎に区分ラベルを付す。（状態遷移時系列）分類は、時系列の各時点の上記識別で行った距離の時系列長さ分の合計値の範囲で分ける他、分類毎にあらかじめ用意する時系列の状態遷移とのパターンとの距離（時系列の各時点の状態に付した数値ラベルの差分計算）などにより行う。
【００８４】
（評価辞書と評価（ｕ−ＡＩが処理する））
予測と実測の距離の範囲で分けるなどした差分値毎にあらかじめ評価ラベルを付した評価辞書を用意しておく。実測データが入力された時点で、予測データとの距離を算出し、差分値により評価辞書を参照して評価ラベルを得て評価として出力する。
【００８５】
ｕ−ＡＩとＣｅｌｌは次のような出力データを持つ。
・状態識別（異常検知、注意を含む）
・評価
・予測
・制御
・期待
【００８６】
状態予測システム１００は、一つの変動データＡに対して第１ｕ−ＡＩインスタンスと第２ｕ−ＡＩインスタンスとを生成し変動データＡの予測値を出力する。第１ｕ−ＡＩインスタンスは、第１関数、例えば時系列予測関数（識別モデルによる軽量高精度な機械学習）を用いて変動データＡの予測値を出力する。一方、第２ｕ−ＡＩインスタンスは、第１関数とは異なる第２関数、例えば、回帰系モデル（最小二乗法によるパラメータ推定）や近似混合ガウスモデル（少量データによる複数正規分布のパラメータ推定）を用いて変動データＡの予測値を出力する。
【００８７】
第１ｕ−ＡＩインスタンスと第２ｕ−ＡＩインスタンスとは、同一の入力がなされるものの、演算に用いる関数が異なるので出力が同じとは限らない。そこで、Ｃｅｌｌインスタンスは次のような出力を行う。下記に出力例を示す。
・データの時間的な区分毎にどちらの精度が高いかの情報を出力する。これは、どちらか精度の高い方だけの出力をするという意味ではなく、両方の結果を出力する。
・入力データの時系列のある程度以上の変化点や特徴量時系列のある程度以上の変化点で区分化した区分結果
・特徴量時系列によるデータ種別判定結果
・第１ｕ−ＡＩインスタンス、第２ｕ−ＡＩインスタンスの各々からの学習結果（パラメータ値、識別辞書、予測辞書）
・第１ｕ−ＡＩインスタンス、第２ｕ−ＡＩインスタンスの各々からの識別、予測、（状態）評価、制御推奨値などの結果
・第１ｕ−ＡＩインスタンス、第２ｕ−ＡＩインスタンスの各々からの区分毎の精度比較評価結果
・第１ｕ−ＡＩインスタンス、第２ｕ−ＡＩインスタンス各々の（予測性能）評価、クーポン（重み係数、決定係数等）
【００８８】
Ｃｅｌｌインスタンスは第１ｕ−ＡＩインスタンス、第２ｕ−ＡＩインスタンスのそれぞれの出力の比較を行い評価結果の一部として出力する。第１ｕ−ＡＩインスタンスと第２ｕ−ＡＩインスタンスとは、ｕ−ＡＩ間ＩＦ６３０でつながっている。第１ｕ−ＡＩインスタンスと第２ｕ−ＡＩインスタンスとは、予測と制御では処理に違いはあるので、ｕ−ＡＩ間ＩＦ６３０を使ってお互いの比較や学習に使用することがある。特に、高速にリアルタイム処理が必要な場合で、ＣｅｌｌやＣｅｌｌからのＤＢを介していたのでは間に合わない場合にｕ−ＡＩ間ＩＦ６３０による比較結果を使用する。
【００８９】
なお、システムＡＰプログラム１０６ｅにおいて、設定により、第１ｕ−ＡＩインスタンス、第２ｕ−ＡＩインスタンスのどちらか精度の高い方の出力をする設定を行ってもよい。
【００９０】
ＣＰＵ１０２は第１ｕ−ＡＩインスタンス、第２ｕ−ＡＩインスタンスをマルチスレッド動作させてもよい。又は、ＣＰＵ１０２はマルチコアＣＰＵにより構成し、ＣＰＵコアの其々が、各ｕ−ＡＩインスタンスを動作させてもよい。このように、状態予測システム１００の中で複数のｕ−ＡＩインスタンスを並列に動作させる。より簡易にはシステム又はアプリケーションではＣｅｌｌを設けず、ｕ−ＡＩのみを状態予測システム１００の中で複数並列に動作させてもよい。
【００９１】
ｕ−ＡＩとＣｅｌｌは別のｕ−ＡＩとＣｅｌｌの出力データの一部を入力の一部とすることにより作用を受ける。
【００９２】
別のｕ−ＡＩとＣｅｌｌの評価、予測、制御及び制御設定を機械学習し、評価、予測、制御の出力を更新する（別のｕ−ＡＩやＣｅｌｌの制御を組み合わせた制御の生成なども含む）。
【００９３】
ｕ−ＡＩとＣｅｌｌは識別モデルと予測モデルによる予測を行い予測と制御効果の精度を上げる。
例えば
・識別モデルの予測辞書探索による目標接近制御の機能とパラメータ選択
・予測モデルの分布変分による目標接近制御の機能とパラメータ選択
・両方の選択値のバランス及び結果観測による両選択の評価により探索及び変分を更新
【００９４】
ｕ−ＡＩとＣｅｌｌは同じ状態予測システムやアプリケーションもしくは別の状態予測システムやアプリケーションの別のｕ−ＡＩとＣｅｌｌとトークンを交換することにより相互評価してもよい。
【００９５】
従来技術では、クラウドシステム装置上でＩＮＴＥＬＬＩＧＥＮＣＥ  ＥＮＧＩＮＥやＭＵＬＴＩ−ＰＬＡＹＥＲ  ＰＲＯＣＥＳＳＩＮＧ  ＥＮＧＩＮＥ等が各ノードのデータの機械学習やＡＩ処理を行い各ノードに制御情報などの処理結果をノードに配信していた。機械学習やＡＩ処理は集中処理され各ノードは集中制御され、機械学習やＡＩ処理に必要なデータの収集、学習、識別、予測、評価、制御情報の生成は集中処理されていた。そのため、ノード毎に多様なデータ収集やノード毎に異なる機械学習やＡＩ処理を行うことは困難であった。またノード間の連携処理はＡＰプログラムにより行う必要があるので、ノード間の連携データの構成等の変更はＡＰプログラムの仕様変更を必要とし柔軟に変更することが困難であった。
【００９６】
これに対し、本実施形態に係る状態予測システム１００によると、データ処理のあるノード毎に、データに対する機械学習・ＡＩ処理を柔軟に実装できる。また処理の元データの収集先、データの種類、機械学習の特徴量や識別関数、識別・予測に使用する辞書、出力データの種類等を各々設定等により変えて実装し、同時並列動作することを可能とする。更に、他のノードのデータ処理との連携を、入出力データを介して実現することが可能になる。
【００９７】
図８は、店舗業務システム３００における発注業務処理の流れを示すフローチャートである。
【００９８】
店舗業務システム３００の主業務のうち例えば発注機能を実行対象として設定し、発注機能に対応するＣｅｌｌインスタンス７００を生成する（Ｓ２０１）。
【００９９】
発注業務処理毎のＣｅｌｌインスタンス７００を起動する（Ｓ２０２）。基本機能設定項目を選択もしくは設定する。設定された発注業務処理を起動する。Ｃｅｌｌクラスのサブクラスのインスタンスを起動する。基本機能設定項目（第２階層業務名）を選択もしくは設定する。設定された発注業務処理を起動する。
【０１００】
発注業務Ｃｅｌｌインスタンス７００は発注関連データを出力する（Ｓ２０３）。発注業務Ｃｅｌｌインスタンスは、上記選択（設定）に従い発注機能毎のデフォルト内容の発注関連データを出力する。
【０１０１】
発注業務Ｃｅｌｌインスタンス７００はＤＢからデータを取込む（Ｓ２０４）。発注業務Ｃｅｌｌインスタンスは、最適化したい制約条件に関連するデータをＤＢから取込む。
【０１０２】
発注業務Ｃｅｌｌインスタンス７００は最適化したい制約条件を学習、予測、評価し、期待値、推奨値により更新した発注データを出力する（Ｓ２０５）。例えば発注数量、発注日、購入価格、納期等の予測処理（予測辞書）と、評価処理（評価辞書）が実行される。
【０１０３】
発注業務処理が完了していなければ（Ｓ２０６：ＮＯ）ステップＳ２０４へ戻る。発注業務処理が完了していれば（Ｓ２０６：ＹＥＳ）処理を終了する。発注業務処理が完了しているか否かは、個別の目標値もしくは期待値と予測値の差分が目標しきい値以内で、項目全体の差分合計が最小となる等の評価基準により判定する。
【０１０４】
従来の店舗の発注業務では、同時期（年月日）の販売実績と直近の販売状況、卸し（仕入れ）価格から発注（仕入れ）数量を決定したり、発注（仕入れ）担当者の経験により発注（仕入れ）数量を決定したりしていた。そのため、直近にならないと適切な発注数量を決定できなかったり、担当者によるバラツキが大きかったり、人の手間がかかったり、例えば売上利益計画や他の商品の発注や商品陳列や倉庫管理との連携が難しいという課題があった。
【０１０５】
本実施形態に係る状態予測システムを店舗業務システム３００に適用することにより、発注（仕入れ）業務の省人化・自動化の他、上記従来課題を解決することによる売上・利益の向上の効果を得る。
【０１０６】
＜製造現場管理システム＞
図９は、ノードオブジェクト“製品品質Ａ値  予測”に対応するＣｅｌｌインスタンスの構成例を示す。Ｃｅｌｌインスタンス７１０は、製造現場管理システムにおいて製品品質管理に適用した際に、製品品質Ａ値を予測する処理で生成されるＣｅｌｌインスタンスである。図１０は、本実施形態に係る状態予測システム１００を適用した製造現場管理システムにおける作業状態管理業務処理フローを示す。
【０１０７】
製造現場管理システムに含まれる作業状態管理業務処理フローの一つとして、製品品質の予測を行う。図９は、製品品質予測で生成されるインスタンスの例である。作業状態管理業務処理フローにおいても、まず、Ｃｅｌｌクラス、ｕ−ＡＩクラスのインスタンスを生成し、その後ＤＢからデータを取り込んで作業状態データを出力する（図９参照）。
【０１０８】
作業状態管理業務処理フローでは、まず作業状態管理機能を設定（選択）し、Ｃｅｌｌインスタンス７１０を生成する（Ｓ３０１）。製造現場ＡＰに作業状態設定処理を持たせる。製造現場管理処理は機能（作業状態バラツキ、製品状態バラツキ、作業進捗、部材消費、製造機器状態、工具状態など）毎にＣｅｌｌクラスのインスタンスを生成する。
【０１０９】
作業状態管理機能処理毎のＣｅｌｌインスタンス７１０を起動し、基本機能設定項目を選択もしくは設定する（Ｓ３０２）。設定された作業状態管理業務処理を起動し、Ｃｅｌｌクラスのサブクラスのインスタンスを起動する。基本機能設定項目を選択もしくは設定する。
【０１１０】
作業状態管理業務Ｃｅｌｌインスタンス７１０は、上記選択（設定）に従い作業管理機能毎のデフォルト内容の作業状態管理関連データを出力する（Ｓ３０３）。
【０１１１】
作業状態管理業務Ｃｅｌｌインスタンス７１０は、最適化したい制約条件に関連するデータをＤＢから取込む（Ｓ３０４）。
【０１１２】
作業状態管理業務Ｃｅｌｌインスタンス７１０は最適化したい制約条件を学習、予測、評価し、期待値、推奨値により更新した作業状態データを出力する（Ｓ３０５）。本ステップでは、例えば作業状態バラツキ、製品状態バラツキ、作業進捗、部材消費、製造機器状態、工具状態等についての予測処理（予測辞書）を行う。又は、評価処理（評価辞書）を行ってもよい。
【０１１３】
作業状態管理業務処理が完了していなければ（Ｓ３０６：ＮＯ）ステップＳ３０４へ戻る。作業状態管理業務処理が完了していれば（Ｓ３０６：ＹＥＳ）処理を終了する。作業状態管理業務処理が完了しているかどうかは、個別の目標値もしくは期待値と予測値の差分が目標しきい値以内で、項目全体の差分合計が最小となる等の評価基準により判定する。
【０１１４】
＜設計業務システム＞
次に状態予測システムを設計業務システムに適用した例について説明する。図１１は、ノードオブジェクト“論理設計  デバイス制御インタフェース信号Ａタイミング  予測”に対応するＣｅｌｌインスタンスの構成例を示す。Ｃｅｌｌインスタンス７２０は、設計業務システムにおいて設計業務に含まれる設計仕様書作成に適用した際に、デバイス制御インタフェース信号Ａのタイミングを予測する処理で生成されるＣｅｌｌインスタンスである。図１２は、本実施形態に係る状態予測システム１００を適用した設計業務システムにおける論理設計処理フローを示す。
【０１１５】
業務構造の中に設計プロセスがある。設計プロセスの実現実態として設計業務システムＡＰ内に論理設計処理がある。論理設計処理では、対象となる論理回路システムを構成する論理回路デバイスの内、市販部品や既存部品のインタフェース信号タイミングの仕様は論理設計業務の制約条件として、そのインタフェース信号のタイミングデータはあらかじめＤＢ等のストレージに格納されているものとする。
【０１１６】
論理設計処理は、新規もしくは変更設計対象の論理回路の論理設計仕様書が処理対象のオブジェクトとなる。論理設計仕様書の中の変動データがノードオブジェクトとなる。ノードオブジェクト毎に、Ｃｅｌｌクラス、ｕ−ＡＩクラスのインスタンスを生成し、その後ＤＢからデータを取り込んで、ノードオブジェクト論理毎の処理結果が論理設計仕様書の変動データ（論理設計仕様書フォーマットの中の要設定データ）に反映されることで論理設計仕様書が作成され処理結果として出力される。
【０１１７】
ユーザはシステムＡＰの論理設計機能設定の初期設定等であらかじめ次のような設定を行い設定情報はＤＢに格納される（Ｓ４０１）。
【０１１８】
論理設計業務の新規設計もしくは変更設計対象となる目的信号とその信号種別、及び目的信号の変動データ（要設定データ）、目的信号、説明信号の初期設定値（例えば、ユーザ設定された基準クロックと同じ時間幅値）、及び目標値としてＤＢにあらかじめ格納されている論理回路デバイスのインタフェース信号のタイミングデータ、論理回路処理時間、消費電力などがある。
【０１１９】
目的信号とその変動データには、次のものがある。すなわち、基準クロック信号の時間幅データ、論理デバイス制御インタフェース回路信号、データ回路信号、リセット回路信号等の回路信号の時間幅を基準クロック信号時間幅に対する割合で示すタイミングデータ、基準クロック信号との位相時間を示すタイミングデータ、基準クロック信号に対する信号変化点の１基準クロック信号幅未満の時間差分データ、論理回路処理時間、消費電力、目的信号の変動を説明に使用する説明（候補）信号（目的信号が別の信号の説明（候補）信号）である。
【０１２０】
システムＡＰはユーザ設定を読出し、ユーザ設定された信号の変動データの１つ１つをノードオブジェクトに対応させてＣｅｌｌインスタンスを生成し起動する（Ｓ４０２）。
【０１２１】
ユーザ設定により目的信号の信号種別が論理デバイス制御インタフェース回路信号であれば、論理タイミング信号に対応するＣｅｌｌインスタンスを生成する。
【０１２２】
ここでは以降の処理動作の説明を、論理デバイス制御インタフェース回路信号のタイミングデータに対応して生成されたＣｅｌｌインスタンスを例に示す。
【０１２３】
Ｃｅｌｌインスタンスは生成時に設定されたユーザシステム設定情報を参照し、処理対応するデータが説明（候補）信号付きの論理タイミング信号のデータであることを判別し、単回帰系モデルに対応するｕ−ＡＩインスタンスや重回帰系モデルに対応するｕ−ＡＩインスタンスを生成し起動する（Ｓ４０３）。
【０１２４】
ＣｅｌｌインスタンスはＤＢを読出し処理対応するデータの初期値や目標値を設定する（Ｓ４０４）。
【０１２５】
ここで最初に設定される初期値はユーザ設定された基準クロックと同じ時間幅のデータであり、目標値は論理回路デバイスのインタフェース信号のタイミングデータである。
【０１２６】
初期設定後、ノードオブジェクトのＣｅｌｌインスタンスとｕ−ＡＩインスタンスは次のように学習を行う。
【０１２７】
ＤＢからユーザ設定された目的信号の変動を説明に使用する説明（候補）信号のデータ（最初は初期設定されたデフォルトデータ）を取込み説明変数とする（Ｓ４０５）。
【０１２８】
モデル化したい信号に関係する可能性のある信号のその時系列の区切り毎に対応するデータ、及び目標値を教師データとしてモデル化のための学習を行う。
【０１２９】
学習はモデルの出力である予測データと目標値との比較評価し差分が最小となるように回帰系モデル等の係数パラメータを算出することで行う。
【０１３０】
各ノードオブジェクトのＣｅｌｌインスタンスは予測データをＤＢへ出力する。また、学習において予測モデルに使用した説明信号に対する重み係数等をクーポンとして出力する。
【０１３１】
再びＤＢから目的信号の変動を説明する説明信号のデータを取込み目標値と比較評価し差分が最小となるようにする回帰系モデルの係数パラメータを更新して予測データをＤＢへ出力する。
【０１３２】
説明信号のデータが変更される毎に予測データは更新されＤＢへ出力される（Ｓ４０６）。
【０１３３】
上記動作は各ノードオブジェクトのＣｅｌｌインスタンスからの予測データの更新が収束するまで繰り返し、システムＡＰプログラム１０６ｅは各ノードオブジェクトのＣｅｌｌインスタンスからの予測データの更新が収束したことを検出し、論理設計仕様書の変動データ箇所をそれぞれの予測データと置き換えて論理設計仕様書を発行（リリース）する（Ｓ４０７）。
【０１３４】
論理設計仕様の変動データの種別により対応するＣｅｌｌインスタンス、ｕ−ＡＩインスタンスの主力は、予測データの他に、評価値データ、期待値データ、推奨値データとなる。
【０１３５】
図１３は、状態予測システムのシステム実装例の他例を示す図である。図８に示すように状態予測システムを、専用ハードデバイス１１００を用いて実装してもよい。
【０１３６】
従来の機械学習、ＡＩシステムは一度に１つの識別や予測を行うものであったのに対して、本実施形態によれば多数の識別や予測を同時に行うことができる。
【０１３７】
また、従来の機械学習、ＡＩは識別、予測の処理負荷が大きくエッジ（組込み、埋め込み）で多数の対象に対してリアルタイムに結果を出せなかった。理由は、識別モデルの精度の良いものはＳＶＭ，ＤＮＮの処理が重い、生成モデルの精度の良いものはＧＭＭやＲＮＮの処理が重いためである。更に従来の強化学習は、ＤＱＮでは非常に多くの繰り返し学習を必要とし処理が重く１つの対象の処理だけでもハイパワーな処理システムを必要としている。またＧＡＮは識別・生成共にＤＮＮを用いており処理が重い。従って、従来の機械学習、ＡＩはほとんどバッチ処理で実行され、リアルタイム処理ができていない。
【０１３８】
これに対して本実施形態によれば、識別モデルと生成モデルの競合により精度を上げる方法により、識別モデルで処理が軽く精度の良い時系列予測を用い、生成モデルは近似分布や回帰や隠れマルコフモデルで処理を軽くしてエッジでの処理を実現するのでリアルタイム動作が可能となる。
【０１３９】
従来なかった機械学習・ＡＩ間の連携を可能にすることで、従来なかった新規機能、制御の自己生成を可能にすることで、予測評価で設定済の制御による目標接近の限界を示すと共に設定されていない制御を自動的に生成して目標接近するための推奨を出力することができる。
【０１４０】
更にＡＩ処理として深層学習を用いる機械学習は、中間層が不可視で内部の処理状態が外部から確認することができないという問題があるが、ノード毎の機械学習部の相互インタフェースを備えることで外部から処理状態を把握し改良を施すことができる。
【０１４１】
上記実施形態は本発明を限定するものではなく、本発明の趣旨を逸脱しない範囲での変更態様は本発明の技術的範囲に属する。例えば、状態予測システムの適用例は上記に限らない。また、上記状態予測システムを適用した各システムは、予測値を用いて対象の制御を行うので、状態予測システムを備えた状態制御システムに相当する。
【０１４２】
例えば、状態予測システムを機械制御システムに適用してもよい。機械制御システムにおいて、ロボット等の機械制御する際には、図１４に示すように、ノードオブジェクト“機械制御モータＡ回転角度  予測”に対応するＣｅｌｌインスタンス７３０が構成されてもよい。
【０１４３】
また、状態予測システムを農業分野の農産物生産制御システムに適用してもよい。農産物生産制御システムにおいて、農産物の生産制御を行うためにＡ地点の光量値を制御する際には、図１５に示すように、ノードオブジェクト“農産物生産制御  予測”に対応するＣｅｌｌインスタンス７４０が構成されてもよい。
【０１４４】
また、状態予測システムを金融分野の投資システムに適用してもよい。投資システムでは、図１６に示すように、ノードオブジェクト“株価指数  予測”に対応するＣｅｌｌインスタンス７５０が構成されてもよい。
【０１４５】
また、状態予測システムを運輸分野の輸送計画システムに適用してもよい。輸送計画システムでは、図１７に示すように、ノードオブジェクト“移動時間  予測”に対応するＣｅｌｌインスタンス７６０が構成されてもよい。
【符号の説明】
【０１４６】
１００          ：状態予測システム
１０２          ：ＣＰＵ
１０４          ：メモリ
１０４ｂ        ：Ｃｅｌｌインスタンス
１０４ｃ        ：ｕ−ＡＩインスタンス
１０６          ：ストレージ
１０６ａ        ：ＤＢ変動データ
１０６ｂ        ：オブジェクトファイル
１０６ｃ        ：識別辞書ファイル
１０６ｄ        ：予測辞書ファイル
１０６ｅ        ：システムＡＰプログラム
１０８          ：入力インタフェース
１１０          ：出力インタフェース
１１２          ：バス
１１５          ：Ｃｅｌｌクラスプログラム
１２０          ：ｕ−ＡＩクラスプログラム
１３０Ａ        ：第１Ｃｅｌｌインスタンス
１３０Ｂ        ：第２Ｃｅｌｌインスタンス
１４０Ａ１      ：第１ｕ−ＡＩインスタンス
１４０Ａ２      ：第２ｕ−ＡＩインスタンス
１４０Ｂ１      ：第１ｕ−ＡＩインスタンス
１４０Ｂ２      ：第２ｕ−ＡＩインスタンス
２００          ：オブジェクト
２１０Ａ        ：第１ノードオブジェクト
２１０Ｂ        ：第２ノードオブジェクト
３００          ：店舗業務システム
３０１          ：行
３０２          ：列
３１０          ：オブジェクト
３１１          ：注文書商品Ａ類オブジェクト
３１２          ：注文書商品Ｂ類オブジェクト
３３０          ：記載欄
３４０          ：Ｃｅｌｌインスタンス
３６０          ：ユーザ情報システム
６００          ：Ｃｅｌｌ機能処理部
６１０          ：Ｃｅｌｌ外部ＩＦ
６２０          ：Ｃｅｌｌ内部ＩＦ
６３０          ：ｕ−ＡＩ間ＩＦ
６４０          ：第１ｕ−ＡＩ
６５０          ：第２ｕ−ＡＩ
７００          ：Ｃｅｌｌインスタンス
７１０          ：Ｃｅｌｌインスタンス
７２０          ：Ｃｅｌｌインスタンス
７３０          ：Ｃｅｌｌインスタンス
７４０          ：Ｃｅｌｌインスタンス
７５０          ：Ｃｅｌｌインスタンス
７６０          ：Ｃｅｌｌインスタンス
１１００        ：専用ハードデバイス
３４０１        ：第１ｕ−ＡＩインスタンス
３４０２        ：第２ｕ−ＡＩインスタンス
【図１】
0006966655.tif 000002
【図２】
0006966655.tif 000003
【図３】
0006966655.tif 000004
【図４】
0006966655.tif 000005
【図５】
0006966655.tif 000006
【図６】
0006966655.tif 000007
【図７】
0006966655.tif 000008
【図８】
0006966655.tif 000009
【図９】
0006966655.tif 000010
【図１０】
0006966655.tif 000011
【図１１】
0006966655.tif 000012
【図１２】
0006966655.tif 000013
【図１３】
0006966655.tif 000014
【図１４】
0006966655.tif 000015
【図１５】
0006966655.tif 000016
【図１６】
0006966655.tif 000017
【図１７】
0006966655.tif 000018