Dynamic stock and flow diagram of model New product adoption (model from article by John Sterman 2001 - True Software)
← ホームへ戻る
システムダイナミクスストックフロー因果ループ図フィードバック

システムダイナミクスによる複雑なシステムの解析とモデリング

🗓 2026年8月11日

現代社会や自然界に存在する多くのシステムは、単純な因果関係では説明できない非線形な挙動を示します。こうした複雑なシステムの時間的な変化を理解し、予測するための強力な手法が「システムダイナミクス(SD)」です。ストック、フロー、フィードバックループといった概念を用いることで、個別の要素ではなく、システム全体の「構造」がどのように振る舞いを決定づけるかを明らかにします。

Key Facts

  • 核心的な概念:蓄積される「ストック」と、その変化率である「フロー」でシステムを記述する。
  • 構造の重視:個々の構成要素よりも、要素間の相互作用やフィードバック構造が挙動に大きな影響を与える。
  • 歴史的背景:1950年代にMITのジェイ・フォレスター教授によって、企業の産業プロセス改善を目的に開発された。
  • 汎用性:企業の経営管理から都市計画、地球規模の環境問題、機械工学まで幅広い分野で応用されている。
  • 分析手法:定性的な「因果ループ図」から、定量的な「ストック&フロー図」へと発展させ、コンピュータシミュレーションで検証する。

システムダイナミクスの基礎概念

システムダイナミクスでは、システムを構成する要素の相互作用を視覚化し、数理的にモデル化します。特に重要なのが、正のフィードバック(自己強化)と負のフィードバック(均衡)の組み合わせです。これにより、指数関数的な成長や、ある一定値への収束といったダイナミックな挙動を表現できます。

因果ループ図(Causal Loop Diagrams)

因果ループ図は、システム内の変数間の関係性を矢印で結んだ簡易的なマップです。これにより、どの要素がどの要素に影響を与え、どのようなループを形成しているかという「構造」を定性的に把握できます。

例えば、新製品の普及モデルでは、「普及者が増えるほど口コミが広がり、さらに普及者が増える」という正のループ(R)と、「普及者が増えるほど潜在的な顧客が減り、普及速度が落ちる」という負のループ(B)が同時に作用します。

Causal loop diagram of New product adoption model

ストック&フロー図(Stock and Flow Diagrams)

より詳細な定量分析を行うには、因果ループ図を「ストック&フロー図」に変換します。ストックとは、時間とともに蓄積または減少する量(例:顧客数、在庫量)を指し、フローはその蓄積量を変える速度(例:新規顧客の獲得率、出荷量)を指します。

A flow is the rate of accumulation of the stock

このモデルを用いることで、時間の経過とともにストックがどのように変化するかを数式で定義し、シミュレーションすることが可能になります。

Stock and flow diagram of New product adoption model

モデルの構築とシミュレーションプロセス

システムダイナミクスの真価は、コンピュータを用いたシミュレーションにあります。これにより、「もし〜だったらどうなるか(What-if)」というシナリオ分析が可能になります。

シミュレーションのステップ

  1. 分析対象とするシステムの境界を定義する。
  2. 主要なストックと、それを変化させるフローを特定する。
  3. フローに影響を与える情報源や変数を明確にする。
  4. 主要なフィードバックループを特定し、因果ループ図を作成する。
  5. フローを決定する数式を記述する。
  6. 統計データや専門家の知見に基づき、パラメータと初期値を設定する。
  7. モデルを実行し、結果を分析して検証する。

新製品普及のシミュレーションでは、初期は緩やかに増加し、その後急成長し、最終的に市場飽和に至る「S字カーブ」のような挙動が典型的です。

Dynamic stock and flow diagram of model New product adoption (model from article by John Sterman 2001 - True Software)
Dynamic stock and flow diagram of New product adoption model
Stocks and flows values for years = 0 to 15

時間軸の扱い:離散時間と連続時間

計算手法には、一定の間隔で値を更新する「離散時間」と、より微小な時間刻みで計算する「連続時間」があります。連続時間モデルでは、オイラー法やルンゲ=クッタ法などの数値積分法を用いることで、より精緻な精度を得ることができます。

Dynamic stock and flow diagram of New product adoption model in continuous time

システムダイナミクスの歴史と展開

本手法は、1950年代にMITのジェイ・フォレスター教授が、GE(ゼネラル・エレクトリック)の工場における雇用の不安定なサイクルを分析したことから始まりました。彼は、この不安定さが外部の景気変動ではなく、企業内部の意思決定構造という「内部構造」に起因することを証明しました。

その後、1958年にはSIMPLE、1959年にはDYNAMOといった専用のモデリング言語が開発され、産業界の標準となりました。1960年代後半には、企業の枠を超えて都市問題(Urban Dynamics)や経済学へと応用範囲が広がりました。

最も有名な応用例の一つが、1972年に発表された『成長の限界(The Limits to Growth)』です。このモデルは、人口と資本の指数関数的な成長が、地球の資源量という有限の制約と認識の遅れによって、21世紀に経済崩壊を招く可能性を警告しました。

多様な応用事例

システムダイナミクスは、社会技術システム全般にわたって活用されています。

システムダイナミクスの主な応用領域
適用分野 具体的な分析対象 目的
企業経営 サプライチェーン、製品開発のリソース依存 ボトルネックの解消、意思決定の最適化
社会・環境 人口動態、疫学モデル、生態系、都市計画 政策の影響予測、持続可能性の検証
経済学 マクロ経済(Minskyモデルなど)、金融危機 経済サイクルの理解、不安定性の分析
機械工学 クランク connecting rod システムなどの物理機構 物理的な挙動の数理的再現とアニメーション化

例えば、生命保険会社の成長と衰退を分析するモデルでは、原因と結果の間に大きな時間差がある箇所を「遅延」として明示し、複雑な相互作用を可視化します。

Causal loop diagram of a model examining the growth or decline of a life insurance company.[16]

また、物理的なシステムへの応用例として、クランクとピストンの運動をストック&フローの論理でモデル化し、それを3Dプロシージャルアニメーションで再現する試みも行われています。

Stock and flow diagram for crank-connecting rod system
3D procedural animation of the crank-connecting rod system modeled in 2

Frequently Asked Questions

システム思考とシステムダイナミクスの違いは何ですか?

システム思考は、フィードバックや因果関係を用いてシステムを定性的に理解するアプローチ全般を指します。一方、システムダイナミクスは、その思考法をさらに発展させ、数式とコンピュータシミュレーションを用いて定量的に挙動を分析する具体的な手法です。

ストックとフローをどのように見分ければよいですか?

「ある瞬間にどれだけあるか」を測定できるものがストック(例:貯金額、人口)であり、「単位時間あたりにどれだけ変化したか」という速度で表されるものがフロー(例:月々の貯金額、出生率)です。フローがストックを増減させます。

なぜ単純な線形モデルではなく、非線形なモデルが必要なのですか?

現実の複雑なシステムでは、ある要素の変化が別の要素を介して自分自身に戻ってくるフィードバックが存在するため、出力が入力に比例しない非線形な挙動(急激な加速や突然の崩壊など)が頻繁に起こるためです。

システムダイナミクスを学ぶことで、どのようなメリットがありますか?

目先の事象(症状)に対処するのではなく、その挙動を生み出している根本的な「構造」に目を向ける習慣がつきます。これにより、短期的には正解に見えても長期的には悪影響を及ぼす「対症療法」的なミスを避け、効果的なレバレッジポイント(改善点)を見つけることができます。

References

  1. "MIT System Dynamics in Education Project (SDEP)".
  2. Michael J. Radzicki and Robert A. Taylor (2008). "Origin of System Dynamics: Jay W. Forrester and the History of System Dynamics". In: U.S. Department of Energy's Introduction to System Dynamics. Retrieved 23 October 2008.
  3. Forrester, Jay (1971). Counterintuitive behavior of social systems. Technology Review 73(3): 52–68
  4. Goodwin, R.M. (1982). A Growth Cycle. In: Essays in Economic Dynamics. Palgrave Macmillan, London.
  5. Di Matteo, M., & Sordi, S. (2015). Goodwin in Siena: economist, social philosopher and artist. Cambridge Journal of Economics, 39(6), 1507–1527.
  6. Sterman, John D. (2000). Business Dynamics: Systems Thinking and Modeling for a Complex World. Boston: McGraw-Hill.  .
  7. Meadows, Donella. (2008). Thinking in Systems: A Primer. Earthscan
  8. Richardson, G. P. (1986). "Problems with causal-loop diagrams". Syst. Dyn. Rev. 2 (2): 158–170. :10.1002/sdr.4260020207.
  9. Sterman, John D. (2001). "System dynamics modeling: Tools for learning in a complex world". California Management Review. 43 (4): 8–25. :10.2307/41166098.  41166098.  4637381.
  10. Hoffmann, Justin; Mai, Christopher; Hu, Bo; Buettner, Ricardo (2025). "A Systematic Literature Review on System Dynamics". IEEE Access. 13: 88871–88887. :10.1109/ACCESS.2025.3571620. Retrieved 2026-02-06.

📸 フォトギャラリー

Dynamic stock and flow diagram of model New product adoption (model from article by John Sterman 2001 - True Software)
Causal loop diagram of New product adoption model
A flow is the rate of accumulation of the stock
Stock and flow diagram of New product adoption model
Dynamic stock and flow diagram of New product adoption model
Stocks and flows values for years = 0 to 15
Dynamic stock and flow diagram of New product adoption model in continuous time
Causal loop diagram of a model examining the growth or decline of a life insurance company.[16]
Stock and flow diagram for crank-connecting rod system
3D procedural animation of the crank-connecting rod system modeled in 2