システムダイナミックス(SD)

“システム・ダイナミックスはパースペクティブおよび概念のツールのセットで、私たちが複雑なシステムの構造およびダイナミックスを理解することを可能にします。システム・ダイナミックス(SD)はさらに正確なモデリング・メソッドで、複雑系システムのフォーマルなコンピューター・シミュレーションを構築し、より有効なポリシーおよび組織を設計するためにそれらを使用することができます。これらのツールは、スペースと時間を圧縮、遅延し、Management flightsimulators-microworldsを作成することを可能にします。 したがって、私たちは、決定、速度学習、複雑系システムの理解、設計構造、成功のための戦略等の長期的な影響を体験することができます。”

John Sterman, “Business Dynamics: Systems Thinking and Modeling for a Complex World”

System Dynamicsシステム・ダイナミックス(SD)方法論は、長期戦略のモデルの中で良く用いられ、モデル化されるオブジェクトのハイ・レベルの集合体を仮定します。人々、製品、イベントおよび他の個別のアイテムは、それらの数ずつで、SDモデルにおいて表記されます。したがって、それらは、いかなる個人財産、歴史あるいはダイナミックスも持ちません。このアブストラクションがあなたの問題に適切な場合、SD使用は正しい手法かもしれません。しかしながら、個体詳細(People, products, events等)が重要な場合、常にエージェント・ベースあるいはディスクリート・イベント(プロセス中心)のメソッドを使用して、モデルのすべてあるいは一部分を再概念化することができます。

ANYLOGICにおけるシステムダイナミックス(SD)モデリング

AnyLogicは、ほとんどのSDモデル製作者が使用する、フィードバック構造(ストック、フローダイアグラム、デザインルール、および配列変数AKA "subscripts"を含む)のデザインおよびシミュレーションをサポートします。 次のことができます:

  • Stock and flowstock と flow変数あるいは"flow tool"の使用を定義
  • 式の中で自動 "code completion"を使用
  • モデルの読みやすさのために "shadow"変数を定義
  • 線形で、ステップを持ったテーブル関数(look up tables)を使用する、あるいはスプライン補間
  • 表および領域タイプの両方のディメンションを定義
  • sub-dimensionsとsub-rangesを定義
  • ディメンションの任意の数を持った配列変数を定義
  • 乗数公式を配列変数の異なるパーツに使用
  • SD及び標準Java数学関数を使用

階層的・オブジェクト指向のSDモデリング

AnyLogicは、無理なくシステム・ダイナミックス・モデル製作者にOOアプローチの利点をすべて提供します。ストックとフロー・ダイアグラムの論理上個別のパーツが異なるアクティブなオブジェクトに含まれており、それらのインターフェース変数だけ(入力または出力)を表示する場合、階層的なやり方で複雑モデルを定義することができます。さらに、頻繁に遭遇するSDパターンを、アクティブなオブジェクト・クラスに埋め込み、それを1つのモデル内で、あるいはモデル間で何回も再使用することができます。

ウェブ環境へのSDモデルの発行

SDモデルは、AnyLogicの他のモデルと同様に、視覚的・対話型ソリューションです。モデルをアニメーションにするために図表あるいは任意のグラフィックスを加えることができます。また、ランタイムでモデルの実行をコントロールするためにスライダー、ボタンおよびテキスト入力を加えることができます。

AnyLogicは他の競合するSDツールより多くのグラフィックス・ツールおよびコントロールをサポートします。AnyLogicモデルが100%のJavaアプリケーションであるので、モデルを容易にウェブ・アプレットとして発行することができます。他のツールは、ウェブサーバ上でモデルをセット・アップし、かつ遠隔のクライアント・インターフェースとモデルの間の相互作用を維持することが必要です。 AnyLogicでは、クライアントマシン上のJAVAアプレットとして動作します。シミュレーション結果をJAVAアプレットとして送付すれば、ブラウザの動作環境があるユーザーは、直ちにシミュレーションを体験できます。もちろん、ユーザにモデルのどの部分を公開するかを決めることができます。AnyLogicによって生成された多くのSDアプレットが、このウェブサイト上でご覧いただけます。

エージェントベース、離散系イベント・モデルとSDモデルを組み合わせ

AnyLogicは、エージェント・ベースまたはディスクリート・イベントのメソッドを使用して開発されたコンポーネントとSDモデル・コンポーネントを組み合わせることを可能にするただ一つのツールです。これは多くの異なる方法で行うことができます。例えば、SDを使用する消費市場、およびABアプローチを使用するサプライ・チェーンをモデル化することができます。都市の人口(エージェント)およびSDスタイルの内在する経済又はインフラストラクチャーのバックグラウンドをモデル化することができます。さらにエージェント内部にSDダイアグラムを置くことができます。例えば、SDは、会社の内部の生産工程をモデル化することができます。しかし、会社はより高いレベルのエージェントかもしれません。技術的に、SDとABあるいはDEの間のインターフェースおよびフィードバックは非常に容易です。いくつかのSD変数は、エージェントの決定論理の中で使用するか、プロセスのフローチャートのパラメーターになりえます。また、後者は次には他のSD変数を修正するかもしれません。

AnyLogicシステム・ダイナミックスで作成した、オンライン・モデル・ギャラリーのアプレットご覧ください。

Combination of methods