Cisco Advent Calendar 2021 第18日目!
1. はじめに
パンデミックも2年目となると「新しい日常」に慣れてきた感もありますが、先の読めない不確実性は強まっているように思えます。こんな時にはシステム理論が有用です。年に一度仲間たちと紡ぐAdvent Calendarに、システム理論をテーマにした記事を書くことが恒例化し、今年で5回目になりました。継続は力なり!、と言えるかはわからないけれども、過去4回のエントリーもご覧いただけると嬉しいです。
- 2017年 ネットワーク・エンジニアリングから学ぶこと − システム理論の見地から
- 2018年 システム理論の続き - 生命モデルの限界と克服
- 2019年 システム理論の続き - 宣言的ネットワーキング
- 2020年 システム理論の続き - 音楽をネットワーク分析してみた
2. システム理論とシステム思考
システム理論では、システムを「構成要素同士や外界との間において常に動的な相互作用を行う系」として扱い、要素還元的ではなく、ひとまずシステムを全体的に捉え観測・分析するアプローチを取りますが、そのための思考法を「システム思考(System Thinking)」と呼びます。システム思考では、起こっていることを体系的に理解するために、異なる次元・階層・捉え方を行き来して、システム要素間のつながりやその相互作用も含めて状況を徹底的に観測・分析することが重要になります。
異なる次元を行き来する例:微分積分がまさにそれで、次元を下げてその都度の変化を見極め、変化の積み重ねによって起こりうる現象を予測したり、数量を見積もったりすることができます。一般的に、次元が高くなると複雑になりますが、一つ高い次元から低い次元を観測すると、物事をシンプルに捉えられます。
異なる階層を行き来する例:日常的な例ですが、例えば自分と相手の意見が相容れずに対立し、そのままどんなに言い合っても解決できないことがあります。その場合、自分の立場も相手の立場もインスタンス化し、自分は一段階層を上がってハイパーバイザーやオーケストレーターになったつもりで考えると、お互いの主張の共通点や異なる点、そしてその背景や原因が分かり、すんなり解決できたりします。
異なる捉え方を行き来する例:巨視的(マクロスコーピック)と微視的(ミクロスコーピック)、弁証法の「正」「反」「合」など。慣用的にも「鳥の目」「魚の目」「虫の目」などがあります。
一人で思考するときも、できるだけ異なる次元・階層・捉え方を行き来するよう心がけますが、やはりそれだけだと限界があるので、「良いチームには多視点・多様性が必要」というのは道理に適っていると言えますね。
またシステム思考のためには、観測・分析を行うためのツールやフレームワークも必要です。例えば「補助線を引く」だけでも有用ですし、軸を設定して4象限で整理するということは、シンプルながら非常に強力なフレームワークです。さらに、要素間のフィードバック構造をモデル化し、問題の原因解析や解決策を探る「システム・ダイナミクス」という方法もシステム思考のためのフレームワークと言えます。MIT教授 J.Sterman の「システム思考―複雑な問題の解決技法」[1]では、全編でシステム・ダイナミクスを解説しています。
3. そして量子コンピューティング!
Gartner社の先進テクノロジーに関するハイプサイクル2021年版 [2] に、注目すべきテクノロジとして「量子コンピューティングを使った機械学習」が入りました。「普及までには10年以上かかる」とされているものの、最近また量子コンピューティングの話題が増えて来ました。これまで「テレメトリ」「モニタリング」「可視化」などと言っていたものごとを今「オブザーバリティ(可観測性)」という用語に置き換えているのも、きっと量子コンピューティングにインスパイアされてのことに違いない、と勘繰っています。(こうやってバズワードが生成されて行く。。「オブザーバブル」とは、「観測可能な物理量」のことで、ディラックが量子力学を一つの理論体系にまとめ上げる際に導入したものです。)
量子コンピューティングは、量子力学の次の原理をコンピューターの原理に応用しようというものです。
(1) 重ね合わせ
光は粒子と波動の二重性を持つ
→ 状態関数を重ね合わせて、量子的状態を示す状態関数とする
(2) 不確定性
物理量A (例えば位置) を観測したときの不確定性と、同じ系で別の物理量B (例えば運動量) を観測したときの不確定性が同時に0になる事はない
→ 量子的状態を、割合・確率で表す
ということで、通常のコンピュータでは bit という情報単位が 0 or 1 を表しますが、量子コンピューターの世界では、情報単位が単なる 0 or 1 ではなく、重ね合わせの状態も含む Qubit というものに拡張されます。n 個の bit では 2^n 通りの組み合わせのうちの一通りしか表すことができませんが、n 個の Qubit で 2^n の状態を同時に計算し、2^n の重ね合わされた結果を得ることができます。
量子力学は超微視的な世界特有の現象であり、日常感覚からすると「ちょっと何言ってるのかわからない」という感じですが、こう言った日常感覚を超える感覚は、思考のフレームワークを拡張してくれるのではないかと思います。その理由を次に書きます。
4. 思考のフレームワークを拡張する
システム思考の方法の一つとして、次元の行き来をすることを述べました。高い次元から低い次元を観測すると、物事をシンプルに捉えられますが、逆に言うと、シンプルに見えるものでもそれを説明しようとすると、より高い次元が必要になる、ということになります。
例えばフィボナッチ数列。フィボナッチ数列は、「2つ前の項と1つ前の項を足し合わせていくことでできる数列」のことで、0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55…と続きます。項数が多くなるほど黄金比に近づくとされ、自然界や美術作品、音楽にも観測されています。
この単純な数列も一般項を示そうとすると、無理数が必要です。これがトリボナッチ数列(3つ前の項、2つ前の項、1つ前の項を足し合わせていくことでできる数列)になると、何と虚数が必要になります。
このような何気ないことについても、シンプルに記述するためには、無理数や、日常感覚には必要ない複素数(虚数)が必要、ということがわかった時は、驚きでした。
だから、日常感覚を大きく超える量子コンピューティングを知ることにより、私たちの思考のフレームワークは大いに拡張されるのではないかと考えました。
実際(自分の思考のフレームワークの話とは桁違い過ぎる例で恐縮ですが)、量子力学の基礎方程式(シュレーディンガー方程式)を提唱し、思考実験「シュレーディンガーの猫」でも有名な、物理学者エルヴィン・シュレーディンガーは、その量子物理学のフレームワークによって生物細胞を考察、「生命とは何か」[3]という書を著し、それが分子生物学に大きな影響を与えた、というのだから驚きです。
5. おわりに
というわけで、量子コンピューティングについて、有志で勉強会を始めることにしました。
まだまだ実務で扱うようになるのはずっとずっと先と思われるし、皆それぞれに多忙な時間を縫ってのことなので、遅々としたものになってしまいそうですが、それでも、日常では思い付きもしないようなことを考えることによって、きっと思考のフレームワークが広がると思います。今から楽しみにしています。
References
[1] ジョン・スターマン (2009) 「システム思考―複雑な問題の解決技法」 東洋経済新報社
[2] https://www.gartner.com/en/newsroom/press-releases/2021-08-23-gartner-identifies-key-emerging-technologies-spurring-innovation-through-trust-growth-and-change
[3] シュレーディンガー (2008) 「生命とは何か: 物理的にみた生細胞 (岩波文庫) 」 岩波書店