HOME

特集:今あらためて“モデル”

数式処理とモデリング

電気通信大学 電気通信学部 システム工学科 教授 新 誠一 氏

1.はじめに

昔は単純でした。自動車のボンネットを開けてもエンジンやオルタネータなどの部品を手で触れる空間がありました。しかし、現在の自動車のエンジンルームは手も入りません。20世紀から続くダウンサイジングとエレクトロニクス化の流れは自動車だけでなく身の回りの製品を小型化し、複雑化し、分かりにくくしています。これは機械が人を排除しているとも解釈できます。このトレンドは、若者の物離れという形で物造り大国の未来の大きな障害となっています。

この物離れに対して、CAD(Computer Aided Design)化の流れが期待されています。複雑な物の理解に計算機能力の助けを借りるものです。3次元の実装、熱の分布、電磁波の漏えい、強度解析に部品の協調動作設計。物造りに苦労してきたおじさま達にとってCADは強力な助っ人です。それどころか、現在の人の理解を越えた複雑さと小型化を実現した原動力がCADです。

おじさま達は物への知識があった上で、CADという情報技術を習得しました。習得には大変な苦労をしました。もちろん、習得できずに設計業務から脱落した人も多数いました。それ以前にCADを導入できずに敗退した企業もありました。CADの出現は、それだけエンジニアリングの世界ではドラスティックでした。もっとも、現在CADを使いこなしているおじさま達もCADの情報部分や理論部分の仕組みをどれだけ知っているか定かではありません。

一方、栄枯盛衰の激しい情報技術を手中にしているかに見える若者がいます。しかし、多くの今の若者は実物を知りません。若者の実物に対する関心が薄いと同時に、先に論じたようにCADで出来上がった物自体が若者を含む人全体を拒否しています。そのため、情報に馴染んでいる若者はCADを利用するというよりは、CADに使われている感もあります。これは危険です。そうはいっても、おじさまの生き方を一からなぞる時間はありません。そこで、CADの能力増強が必要です。一つは3次元CADとの結びつき、一つはMulti Physicsへの対応、そして、一つが数式処理への拡大です。計算機がもたらした不幸は計算機によって解決するという流れであり、計算機を捨てて原始に戻ることはしないという流れです。

これがエンジニアリングの置かれた現状です。ここではキーワードをモデルと数式処理に絞り込み、両者の製品開発における立ち位置を再考してみます。

2.モデル

現在の自動車は数万点の部品から成り立っているそうです。製品を部品の集まりと再帰的に定義し、部品は部品から成っているという階層化する考えは複雑なものを理解する一つの方法です。製品レベルではなく、部品レベルで考えれば問題は簡単になります。しかも、階層で切り分け各階層は同じ原理で動いていると考えれば、物事はとても単純にみえます。しかし、少なくとも一つの階層において一つのものとして切り分けられる自律性を持つ部品を定義し、その部品間の連携を行うという新たな問題を考えなくてはなりません。これを自律分散システム理論と呼んでいます。

一番ベーシックな動かし方は全ての部品を把握しているマスターの存在を想定するものです。マスターは全ての情報を集め、全ての部品に指示を出すというものです。もちろん、マスターは全ての部品の特性を知っています。だから、部品は単に区別が付けばよい。通常、番号が割り当てられます。この番号はID(Identification)と呼ばれます。

計算機プログラムも通常、モジュールやサブルーチンと呼ばれるソフトウェア部品から構成されます。全ての機能をメインプログラムに集約するのは無駄であり、再利用ができないからです。そして、モジュール化されたプログラムを機械語に翻訳すると、各モジュールにはIDが割り当てられて、IDで呼び出されます。これをID駆動と呼びます(第1図)。これはとても効率的です。しかし、クリエイティブではありません。なぜなら、全ての動作はマスターの支配下だからです。全知全能の存在であるマスターは予想外の動きを好みません。それはバグと呼ばれます。

ID駆動に相当する社会システムは刑務所です。ここでは名前や経歴は剥脱されます。これは効率性だけでなく、新たな犯罪を生まないためです。コンピュータプログラムのほとんどは、刑務所の効率で動いてます。ここでも、予想外の動きは好まれません。当然、クリエイティブな動作は求められません。


第1図 連携は自己紹介から

もちろん、一般社会はID駆動よりましな形で人々の連携を図ってます。それがプロファイルに基づく連携です(第1図)。簡単にいえば、自己紹介です。出身地や趣味、特技の紹介です。大学でも、新入生には自己紹介をお願いします。それで、クラスが始まります。同様の仕組みが計算機にも取り入れられてます。たとえば、USB(Universal Serial Bus)のPlug & Play機能です。USBポートにメモリやモデムをつなぐと自動的にドライバをインストールして、メモリやモデムなどの役割を果たします。この裏には、自分の素姓を表すプロファイルの存在があります。

同様の仕組みは産業用ネットワークに当たり前に導入されてきています。たとえば、CANopenのEDS(Electric Data Sheet)であり、他の産業用ネットワークも同様の仕組みを持ってます。プログラムの世界でいえば、IDL(Interface Description Language)です。これは、ミドルウェアの標準化グループであるOMG(Object Managing Group)が標準化したCORBA(Common Object Request Broker Architecture)の特色の一つです。プログラム中のモジュール中の入出力変数の並びなどを記述する仕組みです。これにより、言語や計算機システムにより変数のビット列での表現が違っても連携することが可能になりました。同じ仕組みは、Windows OSのミドルウェアにも取り入れられています。


このプロファイルをビットレベルから文字レベルに格上げするとWSDL(Web Service Description Language)となります。これは今流行りのWeb 2.0, SOA(Service Oriented Architecture)、SaaS(Software as a Service)の基本技術です。プロファイルを各々のサービスを持っているから、必要なサービスを探し、連携することができます。言い換えれば、SOAとはIDからプロファイルへの変化を象徴していると言っても過言ではありません。


第2図 UML


第3図 Model Based Development

もっとも、一般社会の生活の視点から見れば、プロファイルもレベルが低い。同じ出身地でも性格は違い、同じ学歴でも能力は違います。「レッテルではなく、おれ自身を見てくれ」と悲痛な叫びを聞くことがあります。

その通り、家族、課内、クラスなどの少人数組織ではIDやプロファイルを越えたレベルでの連携を行っています。それは、それぞれの性格や性向を見極めた上での連携です。それがモデル連携であり、クリエイティブな社会です。

モデルという言葉は頻繁に使われています。OMGが制定したUML(Unified Modeling Language)では10枚から20枚の設計図(第2図)であり、自動車業界が熱心なMBD(Model Based Development)では、Matlab/Simulinkという制御系設計CAD(Computer Aided Design)で書かれた機能ブロック(第3図)です。

ここでは、これらの概念を統括してシミュレーション可能なものをモデルと呼びます。実際、気心が知れた仲間内では常にシミュレーションをしています。「こう言えば、ああ言う。」、「命令しては駄目、お願いすればOK。」というように、結果を予測した上で会話を行っています。予測は連携をスムーズに進めるだけでなく、相手の異常を検知することにも効果があります。たとえば、「身ぎれいな人がだらしない格好をしている。温厚だと思っていた人が声を荒げる。これは何かあったに違いない。」ということです。

社会だけでなく、ソフトウェアや部品の連携でもモデルに基づく高度な連携が必要です。もっとも、計算機は数式しか分かりません。シミュレーションとは計算です。つまり、計算機におけるモデルとは数学モデルということになります。連立方程式であり、差分方程式、微分方程式などに制約式を加えた表現がモデルです。


3.数学モデル

もっとも現在のモデルの主流は数値モデルです。つまり、式は全て数値で埋まっているものです。パラメータや変数などの未定の値が残っていると数値解析、シミュレーションはできない。逆に言えば、数値解析、シミュレーションのためには数値モデルでOKです。

しかし、設計や開発でモデル利用がシミュレーション止まりでは情けない。設計・最適化という以上、何か自由度がなければなりません。これをパラメータと呼んでいます。設計パラメータであり、最適化パラメータです。これらは数値ではありません。数値モデル止まりの開発では、このパラメータを何らかの手法で決定し、そしてシミュレーションをします。不満足なら設計しなおしてシミュレーションというプロセスを繰り返します。

一つの部品でも、このプロセスに繰り返しが必要です。それだけでも大変なのに、複数部品それぞれが設計パラメータを持っていると事態は深刻となります。極端に言えば新たな部品が加わるたびに全部の部品のパラメータの再設計を行うのか、それとも新たな部品だけが残りの部品群に合わせるかの選択となります。前者は手間が大変、後者は品質が落ちます。

日本の強みは擦り合わせにあり、モジュール化は日本の強みを殺すと言われています。これも極端な話で、擦り合わせとモジュール化を両立させなければならない。それが再調整可能なパラメータを内包するモデル群です。

パラメータをパラメータとして扱えるものが数式処理であり、パラメータをモデル内に持つものが数式モデルです。言い方を変えれば、解析・シミュレーション止まりが数値モデル、設計・最適化レベルとなると数式モデルが必要となります。

もっとも、モデルは沢山あり、それが互いに干渉しあっています。数式モデルでいえば、多数のパラメータが複雑に干渉しています。これは人間の理解を越えています。複雑となる数式処理はツールに任せたい。それでは、ツールが解析・シミュレーション、設計・最適化をすべてやってくれるかと言われると、それは危ない。

人は細かいことが把握できなくなると、大枠でとらえます。これは人の知です。それを法則と呼んでいます。物質保存、エネルギー保存、エントロピー保存などなどの法則です。もちろん、法則はモデル造りやモデルの干渉度合の記述の原点です。この細かい法則と、先ほどの大きな規模での保存則との係わりが数式モデルであり、その動作は一つのパラメータの動きと大枠の保存則の関係から理解できます。

そのような関係を記述し、関係を理解し、設計・最適化をチェックできるものが数式処理のツールです。もっとも、そのような使われ方はされていません。それ以前に、そのような能力を現在の数式処理ツールは持ち合わせていません。まだまだ発展途上です。ただ、幸運な人はいます。上手くツールが複雑な問題の最適解を見つけてくれたり、問題を見つけてくれたりすることはあります。もっとも、その裏では幸運と呼ばれる人は、大変な工夫や苦労をしています。ツールが見つけたというよりは、ご本人の努力で探し出したという方が的を射ています。しかし、探し出した人はツールに未来を感じています。

4.公開


第4図 Profile

部品連携はIDの公開、プロファイルの公開と進んできています。次はモデルの公開です。第4図に示すようにUMLやMATLAB/Simulinkのモデルを他者に公開することで効果的な連携を生むことは、誰しも認めます。懸案は、公開したモデルの知的所有権、モデルを公開することによる危険性、そしてモデル連携で動く処理能力でしょう。最後の問題は情報技術の進展に委ねることにしても、最初の二つは本質的な問題を提起しています。それは、オープンソースの是非にも関わる話です。

モデルは公開する以外にも作ることができます。それは、少しずつ他人を知っていくことと等価です。実際、制御の分野では入出力データからのモデリングと呼ばれる技術があります。挙動から部品を自動的にモデル化するものです。この手法で大まかなモデルはできます。しかし、未知な状態における挙動は保証できません。

プロファイルも文字で記述された一つのモデルと見ることもできます。そして、UMLやMATLAB/Simulinkのブロック図をXML(eXtensible Markup Language)でプロファイルとして持たせることもできます。その意味では、モデルと言っても簡単なモデルから複雑なモデルまで存在します。プロファイル、数値モデル、数式モデルの順かもしれません。数式モデルは金型、設計パラメータを内包する数式モデルは沢山の数値モデルを生み出すことができます。数値モデルから数式モデルを構築することは難しい。これは、プレスされた部品から金型を作りだすことが難しいのと同等です。このように考えれば、数値モデルは公開しても良い情報かもしれません。


5.まとめ


第5図 現在、過去、未来

以上、現在の複雑な製品の設計・開発をモデルと数式処理という二つのキーワードから再考してみました。自分を隠していては高度な連携を図れません。しかし、自分を晒せば、攻撃され、秘密を盗まれる可能性が増えます。どこまで自分を晒し、どこから自分を守るのか。そのような、現代人も解を見つけていない問題がモデル連携に立ちふさがっています。

IDからプロファイル、プロファイルからモデル。これは、情報連携が進む連続的なステップです。同時に、第5図に示すように可視化からロギング、そして解析、シミュレーション、最適化というのも情報技術を使ったシステム改善のステップです。ここでは、これらの流れの中で、数値モデルから数式モデルへの遷移を論じました。もちろん、ステップだから、流れはあっても必然性がなければ進みません。今がその時かは、断定できません。しかし、多数の部品連携の問題で行き詰っている産業は存在します。そこは、次のステップを求めて足掻き始めています。そして、一つの産業が新たなステップを踏めば、それは大きな流れとなって他の産業に波及していきます。面白い時代です。


3/5

(3/15)