制御システムへのAI導入 ー最適化から自律化までー

2020.11.12 AI


1. はじめに

 AI活用において広く掲げられるスローガンの一つに「自動化から自律化へ」がある[1]。従来のITでは、業務効率化を目的として、ルール化可能な業務を機械によって代替する「自動化」が試みられてきた。AIによってもたらされる高度な判定/予測等の機能は、ルール化の困難な業務についても機械による代替を可能とし、この領域にブレークスルーを引き起こしている。これは「自律化」と呼ばれる1文脈により、「自律性」を異なる定義で運用する場合もあるため注意されたい。外部環境のセンシングに基づくイベント駆動な振る舞いを指すなど[2]。


出典: [18]

 本稿では制御システムへのAI導入、特に制御システムのパラメータ調整の自動化(パラメータ最適化)とその発展形としてのパラメータ調整自律化に注目する。達成を目指す自律化のレベルに応じたシステム化対象範囲の確定方法の紹介からはじめて、統計手法/機械学習手法の選定方法までを紹介していく。
 制御システムへのAI導入が求められる現場の関係者、あるいは制御システムへのAI導入に際して機械学習手法の選定に携わる関係者など、ご参考にいただければ幸いに思う。

 

【次節以降の構成】
 次節以降の構成は以下のとおり。全体として、達成を目指す自律化のレベルに応じたシステム化対象範囲の確定から統計手法/機械学習手法の選定に至るまでの流れを順に解説していく。プラットフォーム/ソリューション等の選定には言及しない。
「2. 事例紹介」

– 制御システムへのAI導入事例、特に制御システムのパラメータ調整(以下、「制御パラメータ調整」と言う。)に関わる事例を紹介し、広く認められるビジネス価値を要約する。

「3. 制御パラメータ調整業務の一般的な説明」

– 制御パラメータ調整業務に一般的な説明を与え、用語/前提を整理する。

「4. 制御パラメータ調整のシステム化対象範囲」

– 制御パラメータ調整へのAI導入プロジェクトを開始する前提として、制御パラメータ調整のシステム化対象範囲を決定する必要がある。

– システム化対象範囲を決定するための具体的な手順として、4節では、自律化レベルを選定する方法を示す。

「5. 制御パラメータ調整の数理的定式化」

– 制御パラメータ調整へのAI導入を進める上で核となる決定事項に、統計手法/機械学習手法の選定がある。

– これに先立ち、制御パラメータ調整の数理的定式化が必要となる。

- 最適化問題としての定式化を紹介する。

「6. 最適化手法選定におけるFit&Gap分析の構成」

– 5節で紹介した最適化問題としての定式化を前提として、Fit&Gap分析により最適化手法を選定する際の構成例を示す。

「7. 制御パラメータ調整へのAI導入における特有の考慮事項」

– 6節で説明した構成に基づきFit&Gap分析を実行する上での、制御パラメータ調整自律化特有の考慮事項を挙げる。

「8. まとめ」

– 2節-7節のまとめ。

 


2. 事例紹介

はじめに、制御システムのパラメータ調整へのAI導入事例を紹介する。
ビジネス事例 ■ ロボットアーム制御事例[4]。
■ ディープラーニングを用いる。
■ エレベータの保守管理業務におけるパラメータ調整最適化事例[5][6]。
■ 火力タービン設計のパラメータ最適化、ウィンドファームの風車配置最適化、創薬や新機能材料の組成探索等にも応用可とされている。
■ ベイズ最適化を用いる。
学術事例 ■ DCモーターのPIDコントローラのパラメータ調整最適化事例[7]。
■ 自己教師付き学習の一種であるCohort Intelligenceを用いる。
 いずれも、従来手動で運用していた制御パラメータ調整を機械によって代替した事例である。共通の背景として、制御パラメータ調整の難易度が高いこと、ルールベースの自動化が困難であったことが挙げられる。
 各事例においてもたらされたビジネス価値は固有の事情に応じて様々ではあるが、広く認められるビジネス価値は概ね以下のとおり要約できる。

■ 業務の属人性低減
■  業務のリードタイム短縮
■ 品質管理基準の明確化

これらのビジネス価値に基づき、制御パラメータ調整へのAI導入のニーズは近年急速に高まっている。

 


3. 制御パラメータ調整業務の一般的な説明

 ここでは、本稿で注目する制御パラメータ調整業務に一般的な説明を与え、前提/用語を整理する。制御パラメータ調整業務とは、以下に示す状況下において制御パラメータ調整者の遂行する業務を指すこととする。
項目 説明
対象制御システム ■ パラメータ調整の対象となる制御システム。
■ 実行条件に応じた、適切なパラメータ調整の下での利用を前提する。
■ 典型的には、対象制御システムは高度なドメイン固有知識に基づいて設計されており、(パラメータ調整の不要ないし容易な)より利便性の高いアプリケーションへのリプレイスが困難。
実行条件 ■ 対象制御システムを実行する際の環境や周辺システムに関する条件。
■ 典型的には、対象制御システムのユースケースにおいて多様な実行条件が想定され、それぞれの実行条件に応じたパラメータ調整が必要となる。
制御パラメータ調整者 ■ 与えられた実行条件に応じたパラメータ調整を遂行する。
■ 実行条件に関する情報(以下、「実行条件情報」と呼ぶ。)を受け取り、これに基づいてパラメータを調整する。
■ 典型的な実行条件情報として、入力値/理想出力値のサンプルデータセットが挙げられる。
【制御パラメータ調整業務に見られる課題】
 制御パラメータ調整業務に見られる一般的な課題に以下が挙げられる。
課題 概要
属人性 熟練担当者に依存した属人性の高い業務となること。
リードタイムの長さ 熟練担当者による制御パラメータ調整のリードタイムの長さが業務フロー全体におけるボトルネックとなること。
品質管理基準の曖昧さ 制御パラメータ調整が熟練担当者の経験や直感に強く依存し、品質管理管理基準が曖昧となること。
 制御パラメータ調整業務へのAI導入は、こうした組織課題を解決するための有効な対策となる。

 


4. 制御パラメータ調整のシステム化対象範囲

 制御パラメータ調整にAIを導入する際のシステム化対象範囲を決定する上では、どの程度の自動化、ないし自律化を目指すか、予め目標定義する必要がある。ここでは左記目標定義の指標として、制御パラメータ調整の自律化レベル定義の一例を示す。より高い自律化レベルを目標とすることで、システム化対象範囲がより広範となるよう整理している。
 先立っていくつか用語を整理する。
レベル 対応LoA 概要
監督者補助付き制御パラメータ調整 レベル2-3 ■ 監督者による実行条件情報のインプット及びハイパーパラメータの設定を受けて、制御パラメータを調整、調整済みパラメータを監督者に報告する。
■ ここで、ハイパーパラメータの設定は監督者による手動運用として残す。適切なハイパーパラメータの設定自体が一定の複雑性を持つ可能性があり、その場合、制御パラメータ調整の処理は監督者の試行錯誤に基づき反復的に実行され得る。
監督者補助なし制御パラメータ調整 レベル4-5 ■ 監督者による実行条件情報のインプットを受けて、制御パラメータを調整、調整済みパラメータを監督者に報告する。
【監督者補助付き制御パラメータ調整レベル】と比較して、制御パラメータ調整システムの責務範囲にハイパーパラメータの自己設定を含む点が異なる。このレベルの自律性は、例えば、制御パラメータ調整の品質を安定させ、リードタイムを短縮しようとする過程で求められる。
■ ここで、調整済みパラメータを実際に採用するかどうかには、監督者の判断の余地を残す。
調整済み制御パラメータ設定 レベル6-6.5 ■ 制御システム実行環境監督者からの実行条件情報のインプットを受けて、制御パラメータを調整、調整済みパラメータを設定したアプリイメージを配布する。設定した制御パラメータは監督者に報告される。
【監督者補助なし制御パラメータ調整レベル】と比較して、実行条件情報のインプット主体が制御システム実行環境監督者である点、及び調整済み制御パラメータの設定に監督者の意思が関与しない点が異なる。このレベルの自律性は、例えば、制御パラメータ調整システムの運用コストを低減しようとする過程で求められる。
■ ここで、実行条件情報のインプットはアプリ利用者の本意であり、特に、調整済み制御パラメータの設定はアプリ利用者の関知を伴う。
実行条件の能動的取得に基づく調整済み制御パラメータ動的設定 レベル7-8 ■ 対象制御システムが実行条件情報を能動的に収集し、制御パラメータ調整システムと通信することで、調整済み制御パラメータを取得、次いで自己設定する。一連の処理内容は、監督者による問い合わせに応じて報告されなくてはならない。
【調整済み制御パラメータ設定レベル】と比較して、実行条件情報収集から調整済み制御パラメータ設定までの一連の流れにおいて、アプリ利用者/監督者の意思が関与しない点が異なる。このレベルの自律性は、例えば、制御システム実行環境ごとの実行条件が動的に変化し制御パラメータ調整が高頻度で必要な場合に求められる。
 以下にシステム化対象範囲の観点で各自律化レベルを視覚化した図を示す。

 


5. 制御パラメータ調整の数理的定式化

 制御パラメータ調整自律化に用いる統計手法/機械学習手法の選定に先立ち、数理的定式化を明確にする必要がある。ここでは最適化問題による定式化を紹介する。
 最も基本的な最適化問題は以下のとおり定式化される[9]。
    最適化問題は以下のデータで規定される。

    ■ 許容領域\( X \)
    ■ 目的関数\( f:X\rightarrow\mathbb{R} \)

    最適化問題\( (X, f) \)の最適解とは、任意の\( x \in X \)に対し\( f(x_0) \leq f(x) \)を満足する\( x_0 \in X \)を指す2厳密には、これは最小解と呼ばれ、その双対概念を最大解と呼ぶ。一般に最適解は最小解または最大解を指す。

例えば許容領域\( X \)が空でないコンパクト位相空間、目的関数\( f \)が連続関数で与えられるとき、極値定理により必ず最適解が存在する[10]。制御パラメータ調整自律化の文脈では、許容領域は制御パラメータのなす空間に該当し、目的関数に対する最適解の探索は特定の実行条件に対する制御パラメータ調整処理に該当する。
 実際の制御パラメータ調整自律化においては、具体的な状況に応じて、より一般的な最適化問題の定式化を採用する必要がある。例えば3節にも記した、実行条件情報として入力値/理想出力値のサンプルデータセットが採用される場合においては、確率的最適化やロバスト最適化の形で定式化を与えることが自然な方針となる。

 


6. 最適化手法選定におけるFit&Gap分析の構成

 ここでは、制御パラメータ調整の最適化問題としての定式化を前提として、制御パラメータ調整を実装するための最適化手法をFit&Gap分析により選定する際の構成、すなわち最適化手法の分類及び評価観点の一例を示す。
 はじめに最適化手法の分類例を記載する。ごく一般的な分類体系であり、詳述しない。また最適化手法については数理最適化手法の例示に止めた。
大分類 小分類 最適化手法 概要
離散最適化
数理最適化 勾配法 DNN ■DNNの学習による最適化。
◇DNN = Deep Neural Network
◇広義にはFFNNのうち特に階層の深いネットワークを指す。
◇狭義にはRBM(= Restricted Boltzman Machine)やAE(= Auto Ecoder)など、学習/最適化の初期値を計算するための基礎構造を連結したネットワークを指す[11]。
WNN ■WNNの学習による最適化。
◇WNN = Wide Neural Network
◇広義にはWNNのうち特に階層が浅く、階層ごとのノード数の大きいネットワークを指す。
◇狭義にはChenらの提案したBLS(= Broad Learning System)を指す[12]。
準ニュートン法 ■古典的な勾配法であるニュートン法を改良した手法。
◇特に時間複雑性を大きく低減している。
■ アルゴリズムには多くの変種が知られ、確率的最適化への応用も研究されている[13]。
DFO(=Derivative-Free Optimization) 遺伝的アルゴリズム ■代表的な進化計算アルゴリズムの一つ[14]。
差分進化 ■代表的な進化計算アルゴリズムの一つ[15]。
■遺伝的アルゴルズムなどと比較して、制御が容易かつ最適解への収束が比較的速い等の利点を持つ[16]。
ベイズ最適化 ■ ベイズ推定に基づく最適化手法。
■ 一般にガウス過程回帰を用いる[17]。
 次に評価観点一覧の例を記載する。冗長さを廃するため、MECEとすることよりも、(弊社実績に基づき)現実的な調査コストで評価可能な一覧とすることを優先した。
分類 評価観点 概要
モデル特性 収束性 ■ 目的関数の複雑性に対する最適化過程の収束性。
■ 目的関数の複雑性には、線形性/非線形性、滑らかさ/非滑らかさ、区分線形領域の数、区分凸領域の数といった様々な指標が候補となる。
■ 必ずしも同一の複雑性指標ですべての最適化手法の収束性を評価する必要はない(多くの場合困難であり有効でない)。
モデル構造の複雑性 ■ 目的関数の複雑性に対して必要となるモデル構造の複雑性。
■ 例えばFFNNによる最適化の場合、層の数、各層におけるニューロンの数といった指標が候補となる。
■ 必ずしも同一の複雑性指標ですべての最適化手法のモデル構造の複雑性を評価する必要はない(多くの場合困難であり有効でない)。
確率論的特性 少数標本での精度 ■ 少ない標本数の精度向上性能、ないしこれを強化するための補助手法を評価。
汎化性能 ■ 汎化性能、ないしこれを強化するための補助手法を評価。
実装コスト ライブラリ/アプリフレームワークの充実度 ■ 対象手法を実装したライブラリ、ないし対象手法をサポートするアプリフレームワークの充実度を評価。
インテグレーションコスト アプリフレームワークをサポートするSaaSの充実度 ■ 対象手法をサポートするアプリフレームワークがあるとき、当該アプリフレームワークでの実装をサポートするSaaSの充実度を評価。
■ 実際のプロジェクトで評価する際には、システム要件に鑑みて、最適化過程の並列実行等に関する機能などより詳細な評価観点まで洗い出すことが望ましい。
オンプレミス/IaaS/PaaS上での実行環境構築コスト ■ SaaSを利用しない前提での実行環境構築コストを評価。
先行事例 先行事例の豊富さ ■ 先行事例の豊富さを評価。
ハイパーパラメータチューニングの有効性 ■ 自律化レベルとして【監督者補助付き制御パラメータ調整レベル】しか求めない場合は不要。
■ ハイパーパラメータチューニングの対象手法に対する有効性を、先行事例での評価を基にメタ評価する。
■ ハイパーパラメータチューニングの有効性は、基本的はモデル構造の複雑性で決定するが、実際の有効性は机上での予測が困難のため先行事例を参考とすることが望ましい。
 以上に示した構成をはじめ、実際のプロジェクトの要件に照らして適切なFit&Gap分析の構成を採用することで、より有望な手法を選定できる。


7. 制御パラメータ調整へのAI導入における特有の考慮事項

 制御パラメータ調整へのAI導入における特有の考慮事項として、最適化手法の選定に対象制御システムの入出力関数の振る舞いが関係してくることが挙げられる。
 例えば3節にも記した、実行条件情報として入力値/理想出力値のサンプルデータセットが採用される場合において、対象制御システムの入出力関数が偏微分可能かが問題となり得る。
 具体的には、FFNNによる最適化を実装する際の基本的なアプリケーションアーキテクチャは以下のように図示できる。
さらに評価器には以下の内部構造を想定する。
このとき、対象制御システムの入出力関数が偏微分不可能であれば、厳密な意味では勾配ベクトルを計算できない。そうした場合には、上記の勾配ベクトルを劣微分法や近接勾配法で置き換える対応が必要となり、具体的な最適化アルゴリズムにはFTRL-ProximalやFOBOSを用いる。
 このように、各種の最適化手法に基づく実装を与える上では、対象制御システムの入出力関数の振る舞いに応じて適切な設計、適切なアルゴリズムを選択する必要が生じる。対象制御システムの振る舞いの詳細がプロジェクトの実行計画に影響を及ぼす点で、特別の注意を要すると言える。

 


8. まとめ

 本稿では、制御システムへのAI導入、特に制御システムのパラメータ調整の自動化(パラメータ最適化)とその発展形としてのパラメータ調整自律化に注目し、これの自律化を実現するための機械学習手法、及びその選定方法を紹介した。特に、プロジェクトスコープの策定から機械学習手法の選定に至るまでの流れを順に解説することで、機械学習手法による制御パラメータ調整自律化の実際のプロジェクト遂行に必要な要素を概観した。
 具体的な最適化手法のある程度一般的な比較や、プラットフォーム/ソリューションの選定など、ここでは触れていない内容も多々あるが、機械学習の実りある応用領域の一つとして、制御パラメータ調整自律化がより注目されることの一助になればと思う。

 


参考文献

[1] U. Pagallo. From Automation to Autonomous Systems: A Legal Phenomenology with Problems of Accountability. https://www.ijcai.org/Proceedings/2017/3. 2017.
[2] Wei Xu. From Automation to Autonomy and Autonomous Vehicles: Challenges and Opportunities for Human-Computer Interaction. https://www.researchgate.net/publication/340270485_From_Automation_to_Autonomy_and_Autonomous_Vehicles_Challenges_and_Opportunities_for_Human-Computer_Interaction. 2020.
[5] 桐淵 大貴, 西川 武一郎, 横田 怜, 楢崎 亮太, 小池 聡. ベイズ最適化を用いたシミュレーションモデルのキャリブレーション効率化. https://ipsj.ixsq.nii.ac.jp/ej/index.php?active_action=repository_view_main_item_detail&page_id=13&block_id=8&item_id=191378&item_no=1. 2018.
[6] シミュレーション最適化 -TOSHIBA-. https://www.toshiba.co.jp/tech/ai/catalog017.htm.
[7] A. Bhambhani, P. Shah. PID parameter optimization using Cohort intelligence technique for D.C motor control system. https://ieeexplore.ieee.org/document/7877629. 2016.
[8] T. B. Sheridan and W. L. Verplank. Human and computer control of undersea teleoperators. https://apps.dtic.mil/dtic/tr/fulltext/u2/a057655.pdf. 1978.
[9] Mathematical optimization – Wikipedia. https://en.wikipedia.org/wiki/Mathematical_optimization.
[10] Extreme value theorem – Wikipedia. https://en.wikipedia.org/wiki/Extreme_value_theorem.
[11] S. Srihari. Deep Learning. https://cedar.buffalo.edu/~srihari/CSE676/. 2020.
[12] C. L. Philip Chen and Z. Liu. Broad Learning System: An Effective and Efficient Incremental Learning System Without the Need for Deep Architecture. https://ieeexplore.ieee.org/document/7987745. 2016.
[13] X. Wang, S. Ma and W. Liu. Stochastic Quasi-Newton Methods for Nonconvex Stochastic Optimization. https://www.researchgate.net/publication/269116686_Stochastic_Quasi-Newton_Methods_for_Nonconvex_Stochastic_Optimization. 2014.
[14] Genetic Algorithm – Science Direct. https://www.sciencedirect.com/topics/engineering/genetic-algorithm.
[15] S. Das and P. N. Suganthan. Differential Evolution: A Survey of the State-of-the-Art. https://www.researchgate.net/publication/220380793_Differential_Evolution_A_Survey_of_the_State-of-the-Art. 2011.
[16] K.V. Price, R. Storn and J. Lampinen. Differential Evolution: A Practical Approach to Global Optimization. Springer-Verlag, London. https://www.springer.com/gp/book/9783540209508. 2005.
[17] Peter I. Frazier. A Tutorial on Bayesian Optimization. https://arxiv.org/abs/1807.02811. 2018.
[18] ITメディアエンタープライズ. コレ1枚で分かる「自動化と自律化の違い」. https://www.itmedia.co.jp/enterprise/articles/1709/28/news025.html. 2017.