見出し画像

154. モデル、モデル図 ~ 一考

前回の記事                        次回の記事

はじめに

今回、Microsoft Fabric の Digital Twin Builder の続きを書く予定だったのですが、後回しにすることにしました。期待していた方、申し訳ありません。理由は、この記事を書いている10月中、イベント満載のため、試用期間60日を有効に使えないというのが第一点。せっかくなので、Digital Twin Builder だけでなく、RealTime Intelligence や AI 関連も調べたいので、それらに必要な期間を考慮しました。また、Microsoft Ignite が11月に予定されていて、Microsoft Fabric は多分沢山アップデートがあるだろうと予想される、もしかすると、Digital Twin Builder のプレビューがとれる(最悪無くなるかも)可能性もあるので、ちょいと様子見をしようと思ったわけです。

そんなかんなで、今回はちょっと寄り道することにします。ネタは、Digital Twins で必須のモデリングに関するものです。Digital Twin Builder はモデル記述のツールだし、最近偶然、OMG が SysML 1.2 をリリースしたという情報も小耳にはさんだので、良いかなと。

また、
SaG of Modeling for Real World|Knowledge & Experience|note
のマガジンでも詳細を書こうと思っているのですが、最近読んでいる、マルクスガブリエルの“考えるという感覚/思考の意味” で得た知見も交えて、モデル、モデル図についての私の一考察を述べてみようと思います。

なんというか、最近の私の考察の内容が、市井の一考察家が扱うレベルを超えている気がするんですよね…ちゃんとした研究室とかで、ちゃんと研究したほうが良いレベルな気がしています。哲学、数学、論理学、物理学、情報工学を網羅的にできて、社会人(半分引退してますが)が研究できる良い大学の研究室、どこかないですかねぇ…

著者のつぶやき

モデルとは

これについては、

等の雑文で散々書いてきましたが、私の理解と想像はさらに深まってきたので、現時点での見解をまとめてみようと思います。

マルクスガブリエルによれば、“考える”ということは、感覚の一種であり、“考覚”と呼べるとされています。また、“思考”とは現実のモデルを作ることだと述べられています。マルクスガブリエルは新実在論の人なので、そのモデルは、当然ですが、意味の場ごとのモデルになるはずです。また、モデルを作る過程が”思考”であるならば、”思考”=”モデリング”だと言ってよいでしょう。意味の場を通じて、考覚の内容に向き合うことが、志向的と言ってよいのではないでしょうか。このあたり、ウィトゲンシュタインの哲学論考の言説とも矛盾はないように思えます。ウィトゲンシュタインの言語哲学(論理学)を合わせて考えれば、”モデル”は、意味の場を通じて現出している、事柄と、事柄の間の意味的関係(事柄+述語+事柄)の集まりと言ってよいでしょう。

人間の考覚により人間の脳内に形成されるのは、対している世界の像と1対1なので、圏I のモデルであると言ってよいでしょう。圏Iのモデルは、そのスキーマである圏C のモデルによって意味の構造が規定されます。この時、対しているのが全くの初見の世界ならば、意味の構造はごくごく基本的なスキーマであるはずです。例えば、BridgePoint の xtumlschema.sql のスキーマや、cogito/models/minimal_concceptual_model.yaml at main · kae-made/cogito · GitHub や、Azure Digital Twins の Twin Model を記述する DTDL のような、概念情報モデルの最小なミニマルメタモデルと自然同値なスキーマです。もしくは、視覚、聴覚、触覚、嗅覚などが総合されて、物理的に存在する物やその色、空気の流れなど空間的な配置や質に関するスキーマを基にした圏I のモデルであることも考えられます。

論理学や数学、物理学の世界も含め、人間は、初見だった世界を何回か考覚で感じ取っていると、半自動的に、あるいは、意識的に、様々な意味の場を発見していくことになります。これもまた、思考であり、圏Iのモデルからその意味の構造を規定するスキーマ(≅概念モデル)の明確化がそれにあたります。一旦明確になったスキーマを基に、人間は、対している世界を圏Iのモデルとして認識することができます。明確化されたスキーマを基にした圏Iモデルの構築・認識もまた、思考であると言ってよいでしょう。 
武術やスポーツにおける反射的な判断や、暗算、ある種の頭脳労働(私の場合は、ある程度自動的に概念モデルが頭に浮かぶ)が自動的に行われることから、この思考は、脳内で考覚の一部に組み込まれることもあるでしょう。

以上述べてきたように、思考=モデリング です。思考とは、

  • 圏I から 圏C を発見する

  • その過程で意味の場を発見する

  • 圏C をスキーマとして圏I を認識する

であり、モデルとは、意味の場ごとの

  • スキーマとしての圏C のモデル

  • 圏C 二より意味的構造が規定された圏I のモデル

です。

“発見する”としていますが、“構築する”と言うのが正しいのではと感じる読者がいるかもしれません。しかし、数学や論理学は、ア・プリオリだし、物理学は対象が自然現象だし、これらは人間の思考が在っても無くても存在することに間違いはありませんし、1+1 = 3 だというスキーマを作ったり、光は波であって粒子ではない、というモデルを作ったところで、現実はそうはいきません。人文的な商取引や法律についても、理想は作られるものではなく探し出されるものと思った方が歴史との整合性が良いように感じます。人間が意味構造を構築したから現実がそうなのだという構築主義的な捉え方は適切ではないということなので、”発見する”という言葉を使っています。

著者の補足

Digital Twin Builder は、スキーマである圏C のモデルを記述するツールという位置づけです。Digital Twin Builder が対象とする Digital Twins ソリューションや IoT、DX、AI に限定するまでもなく、システム開発は当然、そして日常生活においても、思考することは必須です。つまり、”モデリング”は必須だということになります。

思考の結果としてのモデルは、意味の場に立ち現れた現象(あるいは、“意味の場を通じた現象”かもしれない)から

“意味の場に立ち現れた”と“意味の場を通じた”の違いは、前者が、“現象とは意味の場があって始めて現出するものだ”というテーゼであり、後者は、“そもそも現出している現象は一つであり人間が認識できるのは意味の場を通じた像にすぎない”というテーゼ。どちらが適切なのか、現時点ではよくわかりません。モデリングに関して言えば、どちらにしても、現出後の現象が相手であり、特定の意味の場に関する話なので、この考察はペンディングにしていても問題ないと思われます。

著者の補足
  • 拾い上げた事柄

  • 事柄の特徴

  • 事柄(a)と事柄(b)の間の意味的つながり

    • 意味的つながりとは、a ー Rab → b、b ー Rba → a という述語を持ったつながりを指す

で構成されます。

ただ事柄が在るだけでは無意味で、上に記したような意味的つながりがあって初めて意味の世界が確定するというのは、“述定実在論”によっています。

著者の補足

意味の場の現象の状態と自然同値な圏I のモデルと、その分類(概念)である圏C のモデルの記述体系は、基本的にどちらもこの構成になっています。概念モデリングは、これを基にモデリング体系が構築されています。

このことは、ある意味、とても興味深いことなのかもしれません。今のところ、このあたりを明確に論じた哲学的言説には出会ったことがありません。どなたか、適切な言説をご存じの方、教えていただけるとありがたいです。

著者の補足

ただ、一般的な日常生活を送るうえでは、概念モデリングのような厳密なモデリング体系が無くても、たいていの場合、何とかなってしまうものです。
しかし、コンピュータテクノロジーを使いこなすためのソフトウェア開発では、そうはいきません。生成系 AI を活用するにしても、それが生成したコードの妥当性を判断するにも、ある程度の厳密さがあって、かつ、適切なモデリング技法が必要なのは間違いないでしょう。

モデルの妥当性

人間はよく間違う生き物です。思考により出来上がったモデルは、間違ったモデルかもしれません。

※ ”間違った”という意味は、事柄と述語から作られた命題が意味の場に現出した状態と合致していない、ということ。

著者の補足

間違ったモデルは、時に、人間社会に悲劇をもたらすこともあります。最近世の中を跋扈する様々な極端な主張も、このことに起因すると思われます。

概念モデリング的な考察からは、間違いには三種類あるように思えます。

  1. モデルが論理的に破綻している

  2. モデルが現実世界に即していない

  3. モデルはある意味の場からみた現実世界に即しているものの、別の意味の場からみた現実世界のモデルと整合がとれていない

最初については、これまで述べてきたモデリング体系の基本要素を使ってモデルを記述することはできないので、モデリングの過程で間違いが判明します。ある事柄の特徴だと思っていたら別の特徴だったり、事柄間の意味的つながりが無意味だったり、複数の意味的つながりの間で矛盾があったり、分類(概念)が違ったりといった事態がないかどうか、判断しながら、ちゃんとしたモデルを作ってみればよい、それだけのことです。
“それだけのこと”とは言ってみましたが、この作業は言語なしにはできないことは明らかです。

二番目は、人間の思考の特性が絡んできます。現実世界に即しているかどうかは、それを思考している人の意味の場に依存します。ある人にとっては間違ってはいなくても、別の人からすると間違っていることはあり得ることです。この解決策としては、フッサールのエポケーが有効でしょう。どちらにせよ、ある人の脳内に浮かんでいるモデルを、別の人も理解できるように表現する作業が必要です。

表現するには何らかの記述方法が必要なのは言うまでもありません。記述方法は、原理的には無限に存在します。見せる相手や目的に対して適切な方法を選択することになります。

頭に浮かんでいるモデルを図で表現したもの、それが、”モデル図”です。
“モデリング”というと、“モデル図”を書くこと、と思っている人が大勢いるようですが、違います。“モデリング”とは“思考すること”であり、“モデル図”とは、思考の結果である“モデルを図示化する”ことです。もちろん、人間の論理的思考のキャパシティはそれほど大きくはないので、図にかきつつ、思考を進めながらモデルを作っていくという過程は正しいのですが。

最後に

一応、“モデルとは何ぞや”が書けたので、今回はここまでとします。
次回は、モデル図に焦点を当てた、見解を述べることにします。

今回、
kokusaitetsugaku別冊11_053-064.pdf
こちらも参考にさせていただきました。ありがとうございました。

ここから先は

0字
説明では、Microsoft Azure 中心‼…になっていますが、最近は、Azure に限らず、IoT・Digital Twins、加えて、AI、DX 等のシステム構築に関するもっと本質的な話題を書いています。なんちゃってから卒業したい技術者の皆さんぜひ、ご購読くださいませー

IoT・Digital Twins を極めよう!

¥200 / 月 初月無料

2022年3月にマイクロソフトの中の人から外の人になった Embedded D. George が、現時点で持っている知識に加えて、頻繁に…

この記事が気に入ったらチップで応援してみませんか?