システムとモデリング

SysML, Matlab/Simulink,他モデリング全般について。たまにプロジェクトマネジメント。

モデルをどのように記述するか?

こんにちは!Otepipiです!
前回は「モデルとは何か」について記事を書きましたので、今回は「モデルを記述する方法」について書きたいと思います。

 前回の記事は↓

otepipi.hatenablog.com

まずはモデルにはどのような種類があるのか見ていきたいと思います。
 

図形モデル

前回の記事でも登場しましたが↓は「宇宙」の図形モデルです。

 

f:id:Otepipi:20180114170254p:plain

このように実際の「宇宙」を抽象化して図形に落とし込むことができます。これが一般的な「モデル」のイメージでは無いでしょうか?最近は2次元の図形だけではなく3DCAD・3Dプリンタを使用して3次元図形でモデリングすることもできます。

 

 

数理モデル

↓は物質の拡散の様子を数式でモデリングした、有名なフィックの拡散法則です。


上記のように、「現象(フィックの拡散法則の場合は拡散現象)」のある一面を抽象化して数式で表現することができます。これは一般に日本語で「数理モデル」と呼ばれています。

 例えば小学校・中学校・高校のテストで出てきた所謂「数学(算数)の文章題」は、「日本語の文章を数式でモデリングする」作業を実質的にこなしています。数理モデルは我々にとっても馴染みのあるものです。

 

自然言語

自然言語とは日本語や英語など我々人類が使用している言語のことですが、自然言語によるモデルの記述とはつまり「文章」です。言葉による説明で事象をモデリングしています。先程数学の文章題の例を出しましたが

『ヒロシさんが家から6km離れたスーパーに時速3kmで~』のような文章題の「文章」自体が現象を自然言語で表現したモデルとなっています。

 

モデリング記述の問題点

通常、モデルはこれら3つ(図形・数式・自然言語)の複合となっていますが、これらのうち自然言語で記述されたモデルには大きな弱点があります。
・解釈の仕方がモデルを見る人によって異なる
ということです。文章でどのようにモデルを記述するか、については規定がなく各人によってバラバラですので、言葉が省略されていたり、違った意味で言葉が使われることが多くあります。

 

モデリング言語の登場

自然言語でのモデリングは解釈のバラつきが大きいため、バラつきの少ない言語でモデリングしたいというニーズがあり、そこで生まれたのがフローチャートUML、SysMLなどモデリング言語です。

 

今日はここまでに致します。