制御工学とAI分野の関係。強みを比較すれば役割分担は明らか!

制御工学の全体像

制御とは「この世界を意のままに操ること」ですが、そのための手法は制御工学だけでなくAI分野でも様々に考案されています。AI技術を用いたロボット制御などが代表的ですね。

複雑なタスクをバリバリこなすロボット

日々すさまじいスピードで進化しているAI分野を見ると、こう思う人もいるのではないでしょうか。

…もう全部AI制御でいいんじゃない?というか制御工学との違いって何なんだ?

そんな疑問に答えるために、このページでは制御工学とAI制御の強み弱みを比較しながら、両者の使い分けについて解説していきます。

※以降、表記を簡潔にするために「従来の制御工学的な制御」を「制御工学」、「AI技術を用いた制御」を「AI制御」と呼びます。

このページのまとめ
比較項目制御工学AI制御
メインの守備範囲モデルベースド制御モデルフリー制御
制御性能(突き詰めやすい)(突き詰めにくい)
細かい分析(しやすい)(しにくい)
信頼性(保証しやすい)(ほぼ保証できない)
適用範囲(モデル化できるものだけ)(モデルがなくてもOK)
  • 制御工学は「性能の追求」が得意なイメージ
  • AI制御は「上位の意思決定」が得意なイメージ
  • それぞれをうまく組み合わせることで、より高度な制御システムを実現することも可能
スポンサーリンク

制御界における制御工学とAI制御

一般に制御工学とAI制御は別分野とされがちですが、「制御」という大きな観点で見るとどちらも「制御の1ジャンル」くらいの違いでしかありません。

制御工学もAI制御も、「制御」という大きなくくりの中にある1ジャンル

両者が別分野とされがちな要因としては、それぞれの理論が成立した歴史が異なることや、教わるカリキュラムが異なることが挙げられます。

ただ、制御工学もAI制御も「対象を意のままに操る」という共通の目標を持っているため、根底にある思想理論には共通する部分が多いのも事実です。

制御工学とAI制御には、「共通するベース」がある

実際、制御工学をしっかり理解していれば、AI制御も「制御工学の延長線上にある1手法」というノリで学習可能です(もちろん全部ではありませんが)。

ベースが同じだから、制御工学とAI制御、それぞれの分野を行き来しやすい!

よって今後は、両者の境界はどんどん曖昧になっていくことでしょう。

実際、制御ガチ勢たちが集う学会や研究機関では、冒頭で述べた通り両者を「制御の1ジャンル」くらいにしか区別していません。

スポンサーリンク

制御工学とAI制御の比較

ほーん。

…で、それぞれどう違うわけ?

ここからは、制御工学とAI制御の強みと弱みを様々な観点から比較し、それぞれの違いを明確化していきましょう。

メインの守備範囲

制御工学

制御工学の主な守備範囲は、モデルベースド制御です。

モデルベースド制御は、制御対象の特性を表す数式モデルを用意しておき、それに基づいて制御器を設計する手法です。

制御対象の数式モデルで、制御器設計!

数式モデルの精度が悪いと制御性能も低下してしまうため、数式モデルはモデルベースド制御の命であると言えます。

AI制御

一方、AI制御の主な守備範囲は、モデルフリー制御です。

モデルフリー制御は、制御対象のモデルを用いずに制御器を設計する手法です。AI制御の場合は、膨大なシステムの動作データを元に、制御器を設計(学習)することがほとんどです。

制御対象の動作データで、制御器設計!

もちろん、制御工学もAI制御も非常に広いジャンルであるため、上記に当てはまらない手法も様々に存在します。

ただそれでは比較が難しいので、以降では両者のエッセンスを簡潔に比較するために、それぞれのメインストリームである下記を前提として、解説していきます。

  • 制御工学:物理法則に基づく数式モデルを用いた、モデルベースド制御(例:最適制御)
  • AI制御:ディープニューラルネットワークなどの大規模な仕組みを使って学習された、モデルフリー制御(例:深層学習や、それを用いた強化学習)
スポンサーリンク

制御性能

制御工学

それでは最も気になるであろう、制御性能を比較していきましょう。

結論から言うと、「全く無駄のない制御」のような高い制御性能を突き詰めやすいのは、制御工学です。

全く無駄のない制御をするロボット

例えば制御工学の代表的な手法である最適制御は、制御対象の特性と制御目的を数式で表現し、それに基づいて文字通り最適な制御則を導出できます。

これは、制御工学が「普遍的な物理法則から理論的な最適解を導出する」という演繹的なアプローチの手法であるためだと言えます。

普遍的な法則(この世のルール)から演繹的に解を得るのが制御工学

AI制御

一方、AI制御は「膨大なデータ(経験則)を学習し、適した解を導出する」という帰納的なアプローチだと言えます。

膨大なデータから帰納的に解を得るのがAI制御

よって、精度の良い数式モデルがある場合は、AI制御が制御工学に勝つことはまずありません。経験則よりも、理論的な最適解のほうが良いのは当たり前ですよね。

もちろん、数式モデルの精度が悪いと制御工学の性能も低下しますが、ちょっと精度が悪いくらいなら制御工学のほうが断然高性能を出しやすいのが現実です。

制御工学はざっくりとでもルールを知っている。AI制御はルールを知らないまま頑張る。

それくらい、AI制御で「超いい制御」を達成するのは難しいとイメージしておけばよいでしょう(後述の通り、AI制御は設計も大変なので)。

スポンサーリンク

細かい分析のしやすさ

制御工学

制御工学は数式モデルに基づくため、システム全体の性質を数学的に分析しやすいことも大きな利点です。

制御器・制御対象の両方が数式で表されるので、全体も数式で表せる。よって分析しやすい!

例えばシステムに不具合が生じた場合に「システム内で何がどうなってそうなったのか」という因果関係を詳細に分析しやすいため、デバッグや改善を効果的に行えます

不具合が生じたロボットを前にした設計者「システム内の計算過程を追ってみようか」

AI制御

対してAI制御の制御器は、複雑な要素(数式やプログラム)を大量に組み合わせた構成をすることがほとんどです。ニューラルネットワークが代表的な例ですね。

大規模なニューラルネットワーク内で信号が複雑に流れる図

このようなシステムはほとんどブラックボックスであり、その性質を隅々まで分析することは困難です。よって不具合が生じたメカニズムを分析することもかなり難しいのが現実です。

不具合が生じたロボットを前にした設計者「システムの中を見てもほとんど分からんしなぁ…」

信頼性

制御工学

制御工学的な制御器は、想定外の条件で動作しても「暴走しないほどの最低限の性能」を保つ場合がほとんどです。

普遍的な物理法則に基づいて設計されているため、根本的な動作原理が崩れない限りは、ある程度の性能を確保できるわけですね。

めちゃくちゃな指令を与えられたロボット「何その命令!?まぁ、とりあえず物理法則に従ってやってみるか…」

また、数式モデルに基づいて理論的に安定性を保証できるため、設計した制御器を安心して使うこともできます。

スポンサーリンク

AI制御

対してAI制御は、当然ですが「学習したこと」しかできません。よって、学習した動作データにない条件では使い物にならなくなることがほとんどです。

めちゃくちゃな指令を与えられたロボット「何その命令!?そんなの知らない!どうしたらいいの!?アワワワワワ」

さらに、前述の通り細かい分析がしにくいので、安定性の保証はほとんどできません

以上より、暴走が絶対に許されないような信頼性が重視される用途には、制御工学が適していると言えるでしょう。

適用範囲

…と、ここまでAI制御の欠点ばかりが挙げられてきましたが、AI制御にはもちろんそれを補って余りある超すごい強みがあるため、盛んに研究が進められています。

その強みとは、「どうしても数式モデルで表せないけど超重要なもの」を扱えるという適用範囲の広さです。

例えば「制御対象の特性」や「制御の目的」が数式で表せないほど複雑多岐な場合は、それを制御工学の枠組みで取り扱うのはかなりキビシイと言えます。一方AI制御では、学習に十分なデータさえ用意できれば、問題なく取り扱えます。

制御工学「モデルがない!?どうしたらいいの!?アワワワワワ」AI制御「モデルがない?いいよいいよ、いつも使ってないし。」

また、「人間の勘と経験に基づく熟練の技を制御で再現したい」という場合にもAI制御が力を発揮します。

そもそも数式に落とし込めるようなシロモノではないから「熟練の技」として残っていることがほとんどなので、上記と同じ理由で制御工学よりもAI制御が適しているというわけですね。

熟練者「長年の勘を数式になんかできんよ。とにかくワシがやってるのを見て学べ!…えっ、できたの?スゴイネ…」
スポンサーリンク

制御工学とAI制御の使い分け

ここまで、制御工学とAI制御を比較してきました。結局上記に基づいて、両者を「制御の1手法」として適材適所で使い分ければよいわけですね。

超ざっくり言うと、数式モデルが用意できるなら制御工学「どうしても数式で表せないけど超重要な何か」が絡む場合はAI制御を使えばよいとイメージすればOKです。

以下、よくある使い分けの形態を紹介していきます。

制御階層に応じた使い分け

使い分けにあたっては、一口に「制御」といっても色んな階層が存在することに留意しておきましょう。

例として、電車の自動運転制御を考えます。この電車は時刻表に従うのではなく、その時々の状況に応じて適切な時間に適切な駅に自動で向かう、次世代の電車だとしましょう。

次世代の電車!!

この制御、「自動運転制御」と一言で表されていますが、実際には次のように様々な階層の制御を組み合わせなくては実現できませんよね。

1,最上位の目的(目的地)設計。2,目標速度の制御。3,機械部(車体)の制御。4,電動部(モーター)の制御

このように、現実の高度な制御システムは、複数階層の制御を組み合せて実現されることがほとんどです。

上図を見ると、上の階層に行くほどAI制御が向いてそうですよね。上位の制御では「精度の追求」というよりは「状況に応じた判断や意思決定」が重要となるためです。

反対に、下の階層に行くほど制御工学が向いてそうです。下位の制御では「物理法則に基づいて動作精度や信頼性を突き詰めること」が重要となってきますからね。

スポンサーリンク

補助としての使い分け(組み合わせ)

上記は、制御工学とAI制御それぞれが独立して動作するような使い分けでした。その他にも、それぞれを協力させるように組み合わせ、高度な制御を達成させる方法も様々に研究されています。

制御工学の補助としてAIを使う例

物理法則で数式モデル化しきれない部分を、AIで補助的に学習(モデル化)し、制御工学の手法で扱う構成が代表的な例です。

「数式モデル+AIが学習した誤差モデル」をまるごと1つのモデルとして制御工学で扱う

※このケースで用いられるのはAI制御ではなく、純粋なAI・機械学習分野の学習手法です。

AI制御の補助として制御工学を使う例

AI制御の学習初期では、学習効率を向上させるために、制御工学のモデルや制御器を学習元として用いることがあります。

制御工学はざっくりとでもルールを知っているので、AI制御は最初は制御工学をお手本に頑張る。

また、AI制御の学習が不十分な動作条件では、補助的に制御工学の制御器を併用することで信頼性を高めることもあります。

学習してない条件でのAI制御「アワワワワワ」制御工学「バトンタッチだ!」

以上のように、制御工学とAI制御がタッグを組むことで、それぞれ単独では実現が難しい高度な制御システムを実現することも可能なわけですね!

制御工学「ケンカしないよ」AI制御「互いの良さを活かし合おう!」

制御工学とAI制御 特有の苦労

最後に、制御工学とAI制御のイメージをより具体化するために、現実に直面しがちな特有の苦労(キモとなる部分)について紹介しておきます。

スポンサーリンク

制御工学の苦労:モデリング

制御工学特有の苦労としては、制御対象のモデリングが挙げられます。制御工学はモデルが命なので、モデリングは非常に重要な工程となります。

この工程のカギは、モデルの精度シンプルさのバランスを取りながら、制御対象のエッセンスを適切に抽出したモデルを作ることです。こう書くとアッサリ聞こえますが、これが結構難しく、ここが設計者の腕の見せどころとなります。

ロボット「俺の本質を、無駄なく、精度よく、いい感じに表現してくれ!」設計者は白目

当然、モデルが悪ければ後の工程も全て台無しになるため、設計者はモデリング制御器設計両方のセンスが問われるわけですね。

AI制御の苦労1:データの準備

一方、AI制御特有の苦労としては、学習元となるデータの準備が挙げられます。具体例で見ていきましょう。

深層学習の例

例えばAI制御でよく用いられる深層学習(ディープラーニング)は、「AIに膨大なデータを与え、根本にある本質を学習させる」というイメージの手法です。制御の場合は、制御の手本となるような動作データを与えることになります(もちろんそれ以外にも色々ありますが)。

当然、与えたデータしか学習しないので、汎用的な制御器を構築するためには「広範囲な動作条件でのデータ」をたくさん準備する必要があります。

膨大な動作データを学ぶ深層学習

制御工学でもモデル作成のためにそれなりのデータを準備する必要がありますが、それと比べて桁違いの量が必要だとイメージすればOKです。

スポンサーリンク

強化学習の例

また、AI制御のもう1つの代表手法である強化学習は、「AIに膨大な数の試行錯誤をさせ、最適な制御器を学習させる」というイメージの手法です。「必要なデータを、試行錯誤によって自分で獲得させる手法」とも解釈できます。

膨大な試行錯誤で学ぶ強化学習

この膨大な試行錯誤はシミュレーション上で高速に行うこともできますが、シミュレーションには必ず誤差が入るので、そのままでは現実世界で使い物になりません。よって、必ず現実のシステムでもかなりの数の試行錯誤を行うことになります。

実際のところ、学習完了までに現実のシステムを数ヵ月間回しっぱなしにすることも普通にあるため、それができる環境を構築するのがまず大変です。さらに、学習初期の制御器は暴走状態に等しいので、安全確保にも結構苦労します。

暴れまわるロボット「コレ、いつまでするんですか…?え、数ヵ月…」

AI制御の苦労2:学習条件設定

AI制御特有のもう一つの苦労として、学習条件の設定が挙げられます。

深層学習の例

例えば深層学習は、「どのようなデータをどのように学習させるか」によって得られる制御性能が大きく変わります。

よって対象に応じて、「どんなデータを準備するか」「それをどのように加工するか」「どんな順番で与えるか」「どう学習させるか」を人間が適切に設定する必要があります。もちろんこのあたりの設定に普遍的な解はないため、ここが設計者の腕の見せ所となります。

深層学習「学習したいんで、いい感じの教材と、いい感じの勉強法を教えてくださ~い」設計者は白目

強化学習の例

また、強化学習も「どのような動作条件で、どのように試行錯誤させるか」という条件設定しだいで、得られる制御性能が大きく変わります。そのあたりの設定も非常に難しく、設計者の腕の見せ所となります。

強化学習「学習したいんで、いい感じの練習法と、いい感じの勉強法を教えてくださ~い」設計者は白目

さらに、どちらの手法も学習には結構な時間がかかります。例えば強化学習は前述の通りですね。

つまり、AI制御は試行錯誤の1ループを回すだけでもかなりの時間がかかるわけです。制御工学も設計にそこそこ時間はかかりますが、ほとんどの場合はAI制御ほどではありません。

以上、制御工学とAI制御の比較と使い分けについての解説でした!

このページのまとめ
比較項目制御工学AI制御
メインの守備範囲モデルベースド制御モデルフリー制御
制御性能(突き詰めやすい)(突き詰めにくい)
細かい分析(しやすい)(しにくい)
信頼性(保証しやすい)(ほぼ保証できない)
適用範囲(モデル化できるものだけ)(モデルがなくてもOK)
  • 制御工学は「性能の追求」が得意なイメージ
  • AI制御は「上位の意思決定」が得意なイメージ
  • それぞれをうまく組み合わせることで、より高度な制御システムを実現することも可能

コメント