Presentation is loading. Please wait.

Presentation is loading. Please wait.

経済社会のモデルフレームワークと シミュレーションプラットフォームの構築

Similar presentations


Presentation on theme: "経済社会のモデルフレームワークと シミュレーションプラットフォームの構築"— Presentation transcript:

1 経済社会のモデルフレームワークと シミュレーションプラットフォームの構築
Boxed Economy Project のアプローチ 井庭 崇 千葉商科大学政策情報学部 専任教員(助手) フジタ未来経営研究所 リサーチフェロー 慶應義塾大学政策・メディア研究科 Good afternoon, In this presentation, I would like to give you a quick overview of our research in Boxed Economy Project. Today, I would like to show what we have done and what kind of progress we have made during the last several years. BESP is the platform of our model. It is not the simulated model itself but it is something we always need to conduct a simulation based research.

2 Agenda 1 2 3 4 出発点 動的で複雑なモデルを作成するための方法と戦略 シミュレーションの作成と共有のための仕組み
Boxed Economy Project の取り組み 「経済社会のモデルフレームワークと シミュレーションプラットフォームの構築」

3 The Gap エージェントベースによる社会・経済のモデリングとシミュレーションは、二つの側面をもっている。
具体的な 応用分野 社会科学 相互作用 による社会 意思決定・ 学習 コンピュータ サイエンス シミュレーション マルチ エージェント システム モデリングと分析の新しい方法 エージェントベース による社会・経済の モデリングと シミュレーション In each scientific field, there are some primitive terms which are not defined in the system, but some of them become a basic term to define other terms. As an example of the primitive terms, there are the terms ``point'' and ``line'' in Euclidean geometry, ``position'', ``time'' and ``particle'' in classical mechanics, and ``goods'' in economics. However, when building an agent- based model, it would be necessary to define those terms each time they build the model. エージェントベースによる社会・経済のモデリングとシミュレーションは、二つの側面をもっている。 これら二つの分野からのアプローチの融合が求められるが、現状としては十分とはいえない。

4 The Gap 社会科学 相互作用 による社会 意思決定・ 学習 コンピュータ サイエンス モデリングと分析の新しい方法 マルチ エージェント システム 具体的な 応用分野 エージェントベース による社会・経済の モデリングと シミュレーション エージェントベースアプローチによって社会・経済を記述するための基本語句 (primitive terms)とフレームワークの整備が必要。 コンピュータ シミュレーション In each scientific field, there are some primitive terms which are not defined in the system, but some of them become a basic term to define other terms. As an example of the primitive terms, there are the terms ``point'' and ``line'' in Euclidean geometry, ``position'', ``time'' and ``particle'' in classical mechanics, and ``goods'' in economics. However, when building an agent- based model, it would be necessary to define those terms each time they build the model.

5 The Gap 動的で複雑なモデルとシミュレーションを、効率的に 設計・実装・保守できる仕組みが必要。 コンピュータ 社会科学 サイエンス
具体的な 応用分野 社会科学 コンピュータ サイエンス シミュレーション マルチ エージェント システム モデリングと分析の新しい方法 相互作用 による社会 エージェントベース による社会・経済の モデリングと シミュレーション 意思決定・ 学習 動的で複雑なモデルとシミュレーションを、効率的に 設計・実装・保守できる仕組みが必要。 In each scientific field, there are some primitive terms which are not defined in the system, but some of them become a basic term to define other terms. As an example of the primitive terms, there are the terms ``point'' and ``line'' in Euclidean geometry, ``position'', ``time'' and ``particle'' in classical mechanics, and ``goods'' in economics. However, when building an agent- based model, it would be necessary to define those terms each time they build the model.

6 The Gap → Our Solution コンピュータ 社会科学 サイエンス エージェントベース による社会・経済の モデリングと
具体的な 応用分野 社会科学 相互作用 による社会 意思決定・ 学習 コンピュータ サイエンス シミュレーション マルチ エージェント システム モデリングと分析の新しい方法 エージェントベース による社会・経済の モデリングと シミュレーション モデルフレームワーク シミュレーションプラットフォーム In each scientific field, there are some primitive terms which are not defined in the system, but some of them become a basic term to define other terms. As an example of the primitive terms, there are the terms ``point'' and ``line'' in Euclidean geometry, ``position'', ``time'' and ``particle'' in classical mechanics, and ``goods'' in economics. However, when building an agent- based model, it would be necessary to define those terms each time they build the model.

7 Agenda 1 2 3 4 出発点 動的で複雑なモデルを作成するための方法と戦略 シミュレーションの作成と共有のための仕組み
Boxed Economy Project の取り組み 動的で複雑なモデルを作成するための方法と戦略 出発点 「経済社会のモデルフレームワークと シミュレーションプラットフォームの構築」

8 社会科学=社会諸科学の歩み 社会科学は、ヨーロッパの社会構造が老朽化した18世紀になってから成立
[高島 64] [Wallerstein 91, 96] 社会科学は、ヨーロッパの社会構造が老朽化した18世紀になってから成立 15, 16世 紀:ルネサンスと宗教革命による近代の誕生→ 「個人の発見」 18世紀末: フランス革命と産業革命の元での社会科学の誕生 19世紀:知識の学問分野への細分化と専門職業化 哲学部において新講座がたくさん設けられ学科の原形となる 19世紀末までに、いくつかが「学問分野」として定着 20世紀:専門深化と、反動としてのインターディシプリナリ, トランスディシプリナリ 「個別学問分野を超越した超学際的 (transdisciplinary) 研究」[Myrdal 75] 21世紀:・・・?

9 インターディシプリナリとトランスディシプリナリ
Inter-disciplinary (学際的) Trans-disciplinary (超学的, 超領域的) discipline economics sociology politics

10 社会諸科学は現実の一側面を抽出して理論化する

11 前提が異なるためにそのままでは融合できない

12 現実的構成の社会モデルに照射し、 そのレベルでの融合なら可能性はある。

13 トランスディシプリナリな社会科学の基礎論
「社会科学の全貌を見渡すことを可能にするような基礎論がどうしても必要になってくる」 [西部 89] 「基礎論のもつべき最も基本的な性格は、各個別科学の根底にある人間観・社会観をそれぞれ統一的な視野の下に相対化するということ」 [西部 89] ホモ・ロクエンス(言語人) 「ホモ・ロクエンスという包括的な基礎をまずおいて、そのうえでこれまでの個別学問が採用してきた様々な人間観・社会観を相対化するという論理の仕組みである」[西部 89] エージェントベースモデル =社会が人や組織の相互作用によって成り立っている

14 何を表現したいのか? → どう記述するのか?
モデルは、体系化された何らかの言語を用いて記述される。 モデルで表現したいものの特徴によって、適切な記述方法は変わってくる。 モデルの記述や蓄積を考えると、そのドメインに合った語彙や体系を整備する必要がある。

15 何を表現したいのか? = 社会における制度・組織・知識・技術の生成と進化を内生的に表現したい。
経済学のコンテクストでは「複雑系経済学」や「進化経済学」といわれるカテゴリー。 そのようなモデルのためには、以下の4点が組み込まれることが重要。 ① 社会が、異質性と多様性のある主体から構成されているということ。 ② 主体が原子論的な意味でのアトムではなく、 内部状態をもっているということ。 ③ 情報や知識が生成され、伝達され、解釈されるということ。 ④ 主体間の関係やその意味が動的に変化するということ。 = 内部状態

16 ここでは、計算的モデル、その中でも特にオブジェクト指向パラダイムに注目。
どう記述するか? 前述の①~④を実現するためには、適用する記述方法が次の3つの要件を満たす必要がある。 モデルの構成要素それぞれが多様に状態を保持できること。 構成要素間の関係といった「構造的な側面」と、時間とともに変化するという「振舞い的な側面」をともに扱えること。 モデルの中で知識や情報を扱うための記号処理ができること。 モデル化の容易さや可読性の観点から、人間の経験的感覚との対応が取りやすいということ。 モデルの操作が容易であり効率的であること。 ここでは、計算的モデル、その中でも特にオブジェクト指向パラダイムに注目。

17 どう記述するか?→ オブジェクト指向 オブジェクト指向では、世界を構成するもの(thing)のひとつひとつを「オブジェクト」という基本単位で捉え、その状態変化や関係変化によって現象を表現する。 それぞれ振舞い(機能)をもち自分の状態を保持しているオブジェクトがたくさん存在し、それらが相互作用しているという点が、オブジェクト指向のポイント。 複雑性に対処するメカニズムによって、効率的記述も可能 「クラス」による体系化や一括記述 汎化や集約といったクラス間関係の記述 オブジェクト指向の記法は、近年、UML(Unified Modeling Language: 統一モデリング言語)として標準化されている。 プログラミング言語に置き換えて、コンピュータ・シミュレーションを行うことができる。

18 フレームワークの戦略的導入 現実世界を分析・体系化する際に、毎回白紙の状態から行うのは大変な作業となる。
このような問題への戦略的なアプローチとしては、 科学的研究では、概念や用語、理論などを定義し、共有する。 ソフトウェア工学では、ドメインに特化したフレームワークを定義し、共有するということが行われている。 「モデルフレームワーク」

19 モデルフレームワークの役割 現実世界の認識のための準拠枠 モデルを記述するための語彙 モデル作成者間のコミュニケーションのためのコード

20 モデルフレームワークの役割(ソフトウェアの側面)
モデルフレームワークに基づいたアーキテクチャのソフトウェアを作成することもできる。

21 私たちの提案するモデルフレームワーク: Boxed Economy基礎モデル
現実の経済社会のもつ構造をオブジェクト指向分析によって抽象化し作成したモデルフレームワーク エージェントベースによる社会・経済のモデルのための基本デザインを提供する we proposed ``Boxed Economy Foundation Model'‘. It is a model framework for agent-based economic/social models. This model framework defines the set of concepts for modeling economy/society, and it supports to recognize, describe, and share the objects in the model through the modeling process. BEFM is an abstract of the real society from the viewpoint of economy, and consists of 12 major elements. Their class definitions and the relations between them are described. Since we don’t have an enough time to describe the design in full detail To execute the simulation based on BEFM, there is a platform called ``Boxed Economy Simulation Platform'' to control the actual execution and manage the results. Boxed Economy 基礎モデルの中心的なクラス図

22 Boxed Economy基礎モデルにおけるBehavior
外界のイベント(オブジェクトに影響を及ぼすさまざまな出来事)が発生すると、現在の自分の状態に応じてエージェントの振舞いが決まる。 基礎モデルではエージェントの持つBehaviorを状態機械(state machine)として定義している。 状態機械とは、何らかのトリガーとなるイベントを受け取って状態を遷移させながら動くシステムである。 例: SendRequestBehaviorのステートチャート図 状態 遷移 イベント (トリガー) アクション

23 Agenda 1 2 3 4 出発点 動的で複雑なモデルを作成するための方法と戦略 シミュレーションの作成と共有のための仕組み
Boxed Economy Project の取り組み 動的で複雑なモデルを作成するための方法と戦略 出発点 シミュレーションの作成と共有のための仕組み 「経済社会のモデルフレームワークと シミュレーションプラットフォームの構築」

24 シミュレーションによるモデル操作の課題 シミュレーションによる研究方法には特有の問題が存在する。
コンピュータ・シミュレーションが一種のコンピュータ・プログラムであるため、モデルだけでなくプログラムについても注意を払う必要があるということである。

25 シミュレーションによるモデル操作の前提 シミュレーションをコンピューター上で行うためには社会モデルをプログラムに変換しなければならない。
シミュレーションの作成における「ソフトウェア危機」!? 動的で複雑なモデルを、いかに迅速に低コストで作れるか? 社会モデル コンピューター上のモデル (プログラム) プログラミングによって変換

26 参考: 先行研究におけるエージェントと行動の種類
井庭崇, 「エージェントベース経済シミュレーションのためのエージェント設計論」, 『オペレーションズ・リサーチ:経営の科学』, 日本オペレーションズ・リサーチ学会, 10月号, 2001年10月

27 井庭崇, 「エージェントベース経済シミュレーションのためのエージェント設計論」, 『オペレーションズ・リサーチ:経営の科学』, 日本オペレーションズ・リサーチ学会, 10月号, 2001年10月

28 社会科学におけるシミュレーション利用促進の鍵
プログラミングの支援 プログラム部品の再利用のための仕組み 研究プロセスを一貫して支援する統合環境

29 私たちの提案するシミュレーション環境: Boxed Economy Simulation Platform (BESP)
エージェントベース経済社会モデルのシミュレーションを、作成・実行・分析するためのプラットフォーム プログラミングを軽減する仕組みの提供 プログラム部品を再利用するための仕組みの提供 研究プロセスを支援する統合環境の提供 Many parts of the programs that are necessary to run agent-based economic/social simulations are already implemented in BESP. These enable us to build the simulation with a less knowledge and skill about the software design and programming. It will contribute to remove factors that have been making difficulties for social scientists to participate in and conduct the agent-based simulation study.

30 Boxed Economy Simulation Platformの基本構造
BESPでは、コンポーネントとフレームワークの考え方に基づく設計がなされている。シミュレーションのモデルや実行環境をコンポーネントとして分割して定義するため、それらを組み替えることによってユーザー独自のシミュレーションを柔軟かつ容易に構築できる。 Boxed Economy 基礎モデル Model Components Presentation Components BEFM provides the design of the software architecture of social simulation for sharing and reusing of the components among the simulation builders. Frameworks keeps the components on track by defining the rule for designing the components developed in the future, although it is usually difficult to combine the components developed by independent groups due to the inconsistency. Note that the frameworks proposed so far do not support to share the simulation models among two or more simulation builders. The modular simulation program is the program which can be divided into components (pieces of modules) and but also organized well under the framework. It enables us to reuse the components among the simulation builders, so that it will accelerate the P2P sharing of the models and components. Model Container BESP Boxed Economy Simulation Platform Presentation Container Box Operating System (BOS) Java VM

31 プログラミングを軽減する仕組み① BESP モデルコンポーネントビルダー
package SampleMarket; import org.boxed_economy.foundationmodel.*; import org.boxed_economy.foundationmodel.behavior.*; import org.boxed_economy.besp.foundationmodelframework.*; import org.boxed_economy.besp.foundationmodelframework.behavior.*; /** * OrderBehavior */ public class OrderBehaviorB extends AbstractBehavior { // decide order Action action_id_13 = new anon(); public Action getAction_id_13(){ return action_id_13; } public void start() { // Setting the state machine BehaviorState state_id_6 = new DefaultBehaviorState(this, ""); currectState = state_id_6; // This sets pseudo-initial state BehaviorState state_id_8 = new DefaultBehaviorState(this, "waiting market opening"); BehaviorState state_id_11 = new DefaultBehaviorState(this, "order determined"); Transition trans_id_7 = new Transition(); ((DefaultBehaviorState)state_id_6).addTransition( trans_id_7); trans_id_7.setTransitionTo(state_id_8); Transition trans_id_9 = new Transition(); // receivedEvent trans_id_9.setAcceptEvent(AutoTransitionEvent.class); Transition trans_id_10 = new Transition(); public void exit() { class anon extends Action{ * decide order public void doAction(Event event){ // Write the code for custom action here. BESP モデルコンポーネントビルダー この部分はモデルコンポーネントビルダーが生成する。 モデルコンポーネントビルダーは、シミュレーションにおけるエージェントの行動を記述し実装するための支援ツールである。ユーザがGUIによってこの行動モデルコンポーネントの「ステートチャート図」を記述することで、モデルコンポーネントのJavaコードが出力される。これにより、シミュレーションの作成者が書かなければならないソースコードの量を減らすことができる。 この部分に必要なカスタムのプログラムを書く。

32 プログラミングを軽減する仕組み② BESP モデルコンポーザー
モデルコンポーザーは、GUIを用いてモデルコンポーネントを組み合わせることによってシミュレートしたいモデルを構成・設定するためのプレゼンテーションコンポーネントである。プログラミングをまったく行わずに、視覚的にモデルを作成・設定することができる

33 Boxed Economy Simulation Platform
プログラム部品の再利用のための仕組み we proposed ``Boxed Economy Foundation Model'‘. It is a model framework for agent-based economic/social models. This model framework defines the set of concepts for modeling economy/society, and it supports to recognize, describe, and share the objects in the model through the modeling process. BEFM is an abstract of the real society from the viewpoint of economy, and consists of 12 major elements. Their class definitions and the relations between them are described. Since we don’t have an enough time to describe the design in full detail To execute the simulation based on BEFM, there is a platform called ``Boxed Economy Simulation Platform'' to control the actual execution and manage the results. Boxed Economy 基礎モデルに基づいて作成されたモデル部品は粒度やモデル化の基準が等しいため、研究者間のモデル部品の共有や再利用が可能となる.. BESP Boxed Economy Simulation Platform

34 研究プロセスを支援する統合環境 「制御パネル」 「空間表示ウィンドウ」 「時刻表示ウィンドウ」 「データ登録ウィンドウ」、
「グラフ表示ウィンドウ」 「モデルコンポーザー」 「モデルコンポーネントビルダー」 など

35 Agenda 1 2 3 4 出発点 動的で複雑なモデルを作成するための方法と戦略 シミュレーションの作成と共有のための仕組み
Boxed Economy Project の取り組み 動的で複雑なモデルを作成するための方法と戦略 出発点 シミュレーションの作成と共有のための仕組み 「経済社会のモデルフレームワークと シミュレーションプラットフォームの構築」

36 Boxed Economy Project 慶應義塾大学 千葉商科大学 フジタ未来経営研究所 合資会社ニューメリック 井庭崇 中鉢欣秀
政策・メディア研究科 総合政策学部 環境情報学部 SFC研究所 千葉商科大学 政策情報学部 フジタ未来経営研究所 合資会社ニューメリック 井庭崇 中鉢欣秀 海保研 松澤芳昭 上橋賢一 山田悠 津屋隆之介 田中潤一郎 永見世央 森久保晴美 青山希 水鳥敬満 高部陽平 北野里美 廣兼賢治 浅加浩太郎

37 Boxed Economy Project への準備・立ち上げ
Sep. 1997 - Mar.1999 Apr.1999 - Mar.2000 Apr.2000 - Aug.2000 『複雑系入門』(NTT出版)の出版 市場シミュレーション研究 (井庭崇, 修士論文) 家庭用VTRにおける規格競争とWinner-Take-All現象 株式市場におけるバブルの生成と崩壊 社会シミュレーションの部品の共有化を目指した「 In-The-Boxプロジェクト」を立ち上げる。 経済全体を組み込んだアドホックなシミュレーションモデルを作成。 その結果、経済全体はあまりにも複雑なので、ゼロから作成することは困難であることを実感。 コンポーネントとフレームワークの重要性を認識。 「Boxed Economy Project」という新しい名称のもとで再スタート Boxed Economy 基礎モデルの初期バージョンの開発 オブジェクト指向による分析と設計 UML (Unified Modeling Language: 統一モデリング言語)の導入

38 Boxed Economy Projectによる研究開発
Sep. 2000 - Dec.2000 Jan.2001 - Jun.2001 Aug.2001 - Dec.2001 Boxed Economy 基礎モデルの初期バージョンの整理・体系化 Boxed Economy Simulation Platformのプロトタイピング Java Beansによる実装 Boxed Economy 基礎モデルの初期バージョン改良版の実装 Boxed Economy Simulation Platformの初期バージョンの開発 デザインパターンの適用 ラショナル統一プロセス(RUP)の一部導入 ユースケース駆動 エクストリーム・プログラミング(XP)の一部導入 ペア・プログラミング ユニットテスト Boxed Economy Simulation Platformの初期バージョンのリファクタリング。 Boxed Economy Simulation Platform バージョン1.0βの開発 モデルコンポーザー モデルコンポーネントビルダー いくつかのプレゼンテーションコンポーネント デザインパターン、RUP、XPの導入

39 社会モデリングをめぐる2つの道 さらなる科学的進展へ 科学の外へ よりよい記述モデルの構築を目指す よりよいメンタルモデルの獲得を目指す
現実を反映したいわゆる科学的モデル 科学の外へ よりよいメンタルモデルの獲得を目指す 記述モデルは、あくまでメンタルモデルの修正・共有のための表現・コミュニケーション手段 複雑系における「構成的理解」 シナリオ・プランニング

40 表現・コミュニケーション手段としての社会モデル
For most of you, I believe that there are no need to explain what an agent is and what Simulation is like.

41 経済社会のモデルフレームワークと シミュレーションプラットフォームの構築
Boxed Economy Project のアプローチ 2 動的で複雑なモデルを作成するための方法と戦略 3 シミュレーションの作成と共有のための仕組み 1 出発点 4 Boxed Economy Project の取り組み Good afternoon, In this presentation, I would like to give you a quick overview of our research in Boxed Economy Project. Today, I would like to show what we have done and what kind of progress we have made during the last several years. BESP is the platform of our model. It is not the simulated model itself but it is something we always need to conduct a simulation based research. 井庭 崇


Download ppt "経済社会のモデルフレームワークと シミュレーションプラットフォームの構築"

Similar presentations


Ads by Google