AIで設計は自動化できるか(3) 〜機械にできる仕事、人間が果たすべき仕事
「佐藤さん。AIを使って、設計を自動化することができると思われますか?」
――おやおや。何かご相談があるという話でしたが、いきなり難しい質問ですね。どうしてそんなことを考えておられるのですか。
「自分はこのところずっと技術部門で、いわゆるPLMと呼ばれるような設計用のITツールに関わる仕事をしています。ただ、単に設計図面や部品表を共有するだけではなく、もっと画期的に設計の生産性を向上するには、AIの力が必要だろうと思って調べはじめたんです。そうしたら佐藤さんの会社の、『ITグランドプラン2030』構想が検索に引っかかりました。その中に『AI設計』という活動があって、興味を持ったんです。」

日揮ホールディングスHPより引用(https://www.jgc.com/jp/news/assets/pdf/20181218_1.pdf)
――なるほど。ただ、我々のようなプラント・エンジニアリング会社と御社では、設計業務も随分違うと思います。御社では、なぜAIに自動設計させたいのですか? 狙いはなんでしょう。
「それは…ですから、設計生産性の画期的な向上です。」
――と言うと? 御社では設計の生産性がこまるほど低いのですか?
「いえ、そう言うと語弊がありますが…ただ設計のミスとかは、案外多いですね。出図の後の、変更のフォローも悩みの種です。」
――つまり、省力化と正確性の向上を図りたいから、AIに設計をやらせたいと。そういうことですか?
「佐藤さんの会社では、違う狙いがあるんですか?」
――正確性の向上も、目的の1つにはありますよ。でもそれは部分に過ぎません。他に、例えば大量で単調な設計作業を肩代わりさせたいから、ということもあります。プラントの世界では、追いかけなければならない設計対象品目の数が、半端なく多いですからね。でも、一番最終的な狙いは、これまでの人間では発想できなかった設計を得たいから、です。
「そこなんです! 自分が言いたかったことも。今まで思いつかなかったような形状の製品を設計する。これができれば凄いじゃないですか。佐藤さんの会社が発表されているロードマップを見ると、『革新的なプロセス機器の自動設計』が最終ゴールに描かれています。これがそういう意味ですよね?」
――その通りです。非常にクリティカルな操作条件の反応器や熱交換器などを、まったく新しい形状で設計できるようになることを、目指してます。でもそのためには、3D Printerや新素材の開発も同時に必要でしょうがね。それも同じロードマップに入っています。
「なるほど。ただ、そこに至る道筋とステップが、よく分かりません。なんだか一本道ではなくて2つの線が合流した形になってますよね。これはどういう意味ですか?」
――それを説明するには、まずこのロードマップ図の見方を説明しなければなりません。ロードマップの横軸は、図中のそれぞれのテーマの狙いを示しています。図の左側に位置するのは、短期的な狙いです。ここではキャパシティーアップと書いていますが、これは私たちの組織の生産性を上げると言う意味です。」
「生産性。まさに私たちの課題と同じです。」
――図の真ん中へんに位置するのは、品質向上・リスク低減です。すなわちプロジェクトをより可視化して、突然問題が吹き出すことを防ぐのが目的です。そして1番右側にするのは、新しいデザインや価値を、顧客に提供することです。つまり左側にあるのは短期的な課題、真ん中が中期的で、一番右はより長期的な狙いになります。
「AI設計は、比較的左側に寄っていますね。」
――その通りです。そして縦軸は、それぞれの取り組みの難易度を表しています。上に行けば行くほど、難しい。ですから、このロードマップの全体配置で言うと、左下のほうにある取り組みは、短期的な狙いで、かつ、難易度も低いですから、すぐ着手べき、となります。逆に右上のほうにあるテーマは、長期的な狙いで、難しいですから、当然将来の取り組みになります。ですから、全体としては、左下から右上に向かって、我々のいわば「デジタルジャーニー」の道筋があるわけです。
「なるほど、図の構造はよくわかりました。」
――それで、AI設計に話を戻します。出発点になるのが1番左下の、単純作業の自動化です。先程言ったように、私たちの設計業務には、多量で単調な作業がかなり含まれています。チェック作業とか、ツールや図面間の転記作業とか。そこでRPAなどを使って自動化し、エンジニアをつまらない作業から解放する。
「RPAはAIとは言えないですが。」
――もちろんです。ただ、こうやって設計作業を棚卸しし、最初に整理しておく必要があります。その上でAIの応用を考えねばならない。ところで、AIのエンジンと言うのは、買ってくれば、そのままポンと使える道具ではありません。そこには設計の知識やルールの埋め込みが必要になります。そのためには、ベテランのエンジニアが持っている暗黙知を、形式知化して、AIのエンジンが理解できる形に埋め込んでやらなければいけません。
「それが左上にある、『シニア技術の形式知化・ルール化』なんですね。ただ、どうしてこれは、こんな外れた場所にあるんでしょうか?」
――われわれはこのテーマに、昔から何度も取り組んできたんです。ところが、なかなかうまくいきませんでした。難易度が高いので、図の左上にあるのです。
「実は、うちの会社でも、同じような問題に突き当たっています。なぜこれって難しいのでしょうね?」
――理由はいくつかあると思います。単純に、シニアが忙しすぎて、時間を捻出できない、から始まって、センスや感覚論で説明してしまう傾向があるとか、いろいろです。でも1つの問題は、設計プロセスを形式化するための、方法論なり技術が、曖昧だったことにあります。そこで我々は、DSMという手法を導入して取り組むことにしました。
「DSMって、なんですか?」
――Design Structure Matrixの略で、米国のD. V. Stewardが1981年に、設計プロセスのモデル化のために提案した技法です。設計変数(設計諸元)をマトリクスの縦横に取って、設計における依存関係を表現します。Bという設計変数を導出するのに、設計変数Aが必要だったら、マトリクスのB行のA列に1を記入します。記法は単純ですが、複雑な設計プロセスを形式知化し、設計上の問題を抽出することができます。
「というと?」
――通常の順次導出関係は、対角線よりも左下にある”1″で示されます。逆に、対角線よりも右上に1があったら、それは設計の後工程から前工程へのフィードバック(つまり手戻り)を示すのです。そこで設計変数の順序入れ替えやグルーピングを行って、マトリクスを整理し、プロセスを改善するのです。もちろん、1のマス目で表される、それぞれの設計変数間の導出関係の後ろには、計算ロジックがある訳です。
「なるほど」
――わたし達は、シニア技術の形式知化から、メインのAI設計の流れに合流する点を、「AIローディング・ポイント」とよんでいます。これをちゃんとやらないと、設計へのAIの活用は成り立ちません。
「その次にある『プロットプラン自動設計』というのは何ですか?」
――プロットプランとはプラントの配置計画のことで、空間設計の基礎になるものです。化学プラントの設計では、最初にプロセスシステム、つまり全体の機能的な設計をします。電気工学で言う回路設計だと思ってください。それから、システムを構成する個々の要素、つまり機器や配管などの空間的な配置を決めます。これがプロットプランです。プロットプランは全体コストに大きな影響を及ぼすので、エンジニアリング会社の競争力の源泉ですが、考慮すべき要素も多く、現在はベテランにかなりを頼っています。
「そこでAIの登場ですね」
――うーん、そうなんですが、話はそう単純じゃありません。プロットプランはコストを左右する、といいましたが、じゃあ単に、敷地面積や配管の物量だけを最小化すればいいかというと、そうではないんです。施工性であるとか、地下埋設物の存在とか、操業時のアクセス性とか、かなりいろいろな要素が関わります。つまり、評価尺度が複数あって、しかもあちらを立てればこちらが立たず、というトレードオフ関係が生じやすいのです。
「そうなると、最適化問題という訳ですか」
――そうです。それも多目的最適化問題になります。多目的最適化ではパレート・フロンティアとか、いろんな概念とテクニックが登場しますが、要するに答えは一つとは限らないのです。しかも、配管長とかケーブル長とか敷地面積などは、明示的に計算できますから、最適化エンジンの中に組み込めますが、施工性とか操作性は、ある意味とても定量化しにくいものです。だから、エンジンには組み込めない。
「じゃあ、どうするんですか?」
――出てきた答えを、人間が評価するしか無いのですよ。多目的最適化エンジンに、制約条件と目標値を与えて、複数のケースを計算させてみる。その結果を、エンジニアが評価して、部分的には修正して、またエンジンを動かす。こういった、一種のマン・マシン・ループの生じる仕事になります。
「それは、あまりうれしくないですね」
――そうでしょうか。でも、現在はすべてのプロットプラン設計作業を、ベテラン技術者がやっていますから、限られた納期の中では1ケースのプランを作るのが精一杯です。それが、複数ケースを比較評価して、ベターなものを選べるのだったら、十分うれしいと思います。
「なるほど、省力化は図れるのですね」
――いや、省力化よりも大事なことがあります。それは、技術者が『評価』という、価値ある仕事に集中できることです。さまざまな観点・尺度から、設計成果物を評価し、必要に応じて改善する。この部分は、AIにはできません。計算機には価値観も思想もありませんからね。人間の大事な仕事なんです。従来は設計のバルキーな計算や作図作業にほとんどの時間を取られ、せいぜい設計結果のチェック&レビューくらいしかできませんでした。評価尺度についても、十分意識化してこなかった。そこは大きな前進になります。
「ふーん。そうなると、AIの出番はどうなるのですか?」
――まあGartner社などは、最適化もAIの領域内に含めていますが、技術的には以前からあったものです。それで、現在、世の中でAIと呼ばれているものは、ほぼ機械学習、それも深層学習です。その中心機能は、パターン認識、つまり類似性の判別と判定にあります。具体的には、画像認識による個人の顔の特定や、音声認識などのアプリケーションですね。もちろん、故障の予知保全なんかも応用分野の一つです。
「そこは弊社でも注目しているところです」
――そうですか。ところで、パターン認識技術って、設計に応用できると思いますか?
「できるんじゃないでしょうか。過去の設計事例から類似パターンを引っ張り出して、サジェスチョンしてくれるとか、でるといいなと思っています。」
――たしかに、サジェスト機能くらいなら、ありえるでしょう。保証はないけど、おおよその答えを言うだけですから。でもね、いやしくも科学法則に縛られた理工学領域の設計では、ベストの類似パターンを探し出してきたって、その計算結果が制約条件を満たさなければ、アウトですよ。設計の世界では、yesかnoかは白黒はっきりしています。耐荷重が100kgの条件なのに、出てきた答えが98kgしかなかったら、アウトプットには使えないのです。そこは、SFじゃないけど「冷たい方程式」が支配する領域なんです。
「だったら、シミュレーション機能と統合して、条件を満たす順に類似結果を表示したらどうですか。PLMの中に過去の設計図面をすべて登録し、PLM得意のシミュレーションI/Fを使って計算すればいいでしょう。そこから人間が、いいものを選ぶ」
――はい。だから、機械学習は、わたしのいう「選択的設計問題」だったら使いやすいと思うのです。もちろん、過去の設計成果物が、きちんとデジタル化され、かつ、設計変数や制約条件などのメタデータも、標準形式化され登録されている前提ですが。
「まあ、そこはちょっとハードルが高いですけれど、頑張れば可能ですね」
――ですね。で、そのとき課題になるが、設計ルールや、設計変数間の関係、つまり設計知識の扱いなんです。過去の図面は、頑張ればデジタル化できるでしょう。ただ、メタデータやルールや知識を、扱いやすい形式にする部分がポイントです。今の深層学習系AIソフトと、一世代前のルール型AIや知識ベースの両方が、じつは設計の自動化には必要なのです。
「ふーむ。でもIBM Watsonなんかは、何でも知っているという話ですが」
――クイズ番組に出るような知識ならね(笑)。ただ、御社の設計作業に関する知識は、知らないんじゃないですか。それをインプットするのは、御社の仕事のはずです。
「たしかに。」
――しかも、今のAIが活用できるのは、選択型問題や、演繹的決定による設計問題に限られます。先ほど説明したプロットプランのような最適化問題は、パターン認識ではアプローチできません。ましてや、形状や構造を設計する、システム合成問題は、なお難しいでしょう。
「じゃあ、AIでの設計は不可能、と思われるのですか?」
――そうは言いません。今の深層学習とパターン認識によるアプローチの最大の問題は、過去の設計データの蓄積に依存している点です。深層学習は、万の単位の教師データを必要とします。しかし、設計という行為は、つねに一回限りです。製造では全く同じ製品を繰返し作ります。だからパターン認識による欠陥検出や故障予知などがきくのです。他方、設計は、全く同じ図面を再生産することはしません。毎回、必ず何かが違うのです。エンジニアリングには「個別性の罠」があるのです。
「ますます、不可能に思えてきましたが」
――それは、過去の設計結果に頼ろうとするからです。そうではなくて、計算機が、自分で設計結果を生み出していけば良いのです。少しずつ、設計パラメータを変えて、結果を計算する。そして、評価関数を与えてやって、良いものを選んでいく。計算機は飽くことなく、いくらでもランダムな組合せで設計をジェネレートします。そこから、よりベターなパラメータ群を選んでいく。
「それって、強化学習ですね」
――そうです。AIで設計を自動化したかったら、強化学習しかないのですよ。このように、計算機が自分でベターな設計を生成していく手法を、Generative Designといいますが、その代表例が、「トポロジー最適化」の技術です。これは、機械部品などの形状について、人間がある初期値を与えてやり、そこから自動的に肉付けを変えていって、もっとも重量が少なく強度の高い結果を求めていくような手法です。すでに商用のソフトウェアも存在します。
「やっと、トンネルの向こうに光が見えてきたような気がします」
――そうですか。ただね、強化学習では、設計をジェネレートするたびに、その評価をしなければならないのです。単純な構造部品なら、重量と強度の計算程度ですみます。しかし、たとえば熱交換器程度でも、ちゃんと評価しようとすると、毎回、熱伝導計算と計算機流体力学の両方を解かなければなりません。かなりマシンパワーを食う計算です。
「でも、マシンパワーはクラウドと並列化技術のおかげで指数関数的に進化し続けています。そういう意味では、強化学習による設計も、楽観視して良さそうですね。」
――まあ、そうだといいですね。ただ、ちょっと気になる点もあります。現在のAIコミュニティを見ていると、強化学習の分野は倒立振子問題から始まって、ロボットアームの制御みたいな、連続変数の制御問題の枠組みばかりを注視しているように感じられます。トポロジー最適化のような、形状の連続的変形の問題は、それでもいい。連続変数の最適化制御問題は、非線形性が強くても、最後は偏微分方程式を力づくで解く方向に進めます。
「はあ。」
――ところが、形状の設計ではなくシステム構造の設計となると、問題は離散的な設計変数の組になります。離散系の最適化問題は、連続系とは全く異なる難しさがあるんです。詳しい話は省きますが、NP完全になりやすいので、経験的なヒューリスティックが必要になる。そのことを、ORの分野の人はよく知っていますが、まだAI系の人は無頓着に思えます。
「というと、結局、AIは設計をどこまで自動化できるんでしょうか?」
――将来に渡って、設計エンジニアは不要にはならない、ということです。要求を分析し問題構造を理解する、設計の知識ベースを入力・更新する、複数の目的関数を設定する、でてきた結果を評価する、必要に応じてそれを修正する、そして設計のツール自体を進化させる。こうした仕事は、相変わらず人間に残ります。もしAIが将来、設計技術者を不要にすると思うなら、それは無用な心配です。むしろ今のAIは、設計に活用しようとすると、ずいぶん寸法が足りない。一寸法師のようなものです。
一寸法師だって、大勢を上手に使えば、エンジニアの退屈な仕事はそれなりに手助けしてくれます。ただ、それを上手に進化させられるかは、わたし達にかかっているのです。
<関連エントリ>
(2020-05-07)
(2020-05-15)
“AIで設計は自動化できるか(3) 〜機械にできる仕事、人間が果たすべき仕事” に対して1件のコメントがあります。
コメントを残す
コメントを投稿するにはログインしてください。

はじめまして。以前PMP関係の調べ物をしているときに偶然このブログを見つけました。取り扱う話題の興味深さと親しみのある語り口がとても好きです。実は佐藤さんが筆者だと気づかずに今までブログを読んでいたのですが、たまたま先ほど「BOM/部品表入門」を読み直していたときに筆者と同一人物だと気づきました。
私は某コンサルティングファームで経営コンサルタントをしているのですが、BOM領域に携わる最初のプロジェクトに備えて読んだのが「BOM/部品表入門」でした。それまでいくつかの専門書を読んできましたが、主人公?がクライアント相手に飄々とBOMをレクチャーするという構成が斬新で印象に残っていました。私の本棚の中でも特にお気に入りの1冊です。ちなみに弊社のBOM関係プロジェクトに携わる若手コンサルは、誰もがこの本を読んでいます。
お気に入りの本の筆者がこんな良質なブログを書いていらっしゃったという驚きで、ついコメントさせていただきました。今後も更新を楽しみにしています。