<?xml version='1.0' encoding='Shift_JIS' ?>
<doc xml:lang='ja'>
	<head>
		<title>基礎モデルとは</title>
	</head>
	<body><section title="1-1. エージェントベースモデルのための枠組み">
			<p>
				エージェントベースによるアプローチでは、経済社会を多数のエージェント(自律的主体)のミクロ的な相互作用からなるシステムとしてモデル化します
				。モデル化というのは、その対象を体系的なまとまりとして写し取るということを意味していますが、通常その写し取り方には個人差があります。このことは、モデルの粒度や要素の捉え方がさまざまに異なってしまい、モデルの融合やモデル部品の再利用ができなくなってしまうという問題を引き起こします。そのため、モデルの融合やモデル部品の再利用を行うためにも、なんらかの指針が求められます。このような問題意識から、私たちは「Boxed
				Economy 基礎モデル」を提案しています。</p>
			<p>「Boxed Economy 基礎モデル」（Boxed Economy Foundation
				Model：以下、基礎モデル）は、現実の経済社会をオブジェクト指向分析によって抽象化したもので、エージェントベースによる経済社会モデルの基本デザインを提供するものです。基礎モデルを用いることで、経済社会の認識・分析の参考となるだけでなく、そのモデル要素を基本語句としてモデルを記述できるようになります。また、基礎モデルに基づいて作成されたモデルはBoxed
				Economy Simulation
				Platform（以下、BESP）上でシミュレートしてその振る舞いを観察することができるため、モデルのシミュレーションによる分析の効率性も高まります。さらに、基礎モデルに基づいて作成されたモデルは、その部品の共用・再利用も可能となるため、複雑なモデルの共同開発や累積的発展を可能とします。また、基礎モデルにおける「財」や「関係」といったモデル要素を共有可能な語彙として用いることで，研究者同士がシミュレーション実行における実装形態にとらわれずにコミュニケーションできるようになります。</p>
		</section>
		<section title="オブジェクト指向と基礎モデル">
			<p>基礎モデルは現実世界を体系化して整理する方法としてオブジェクト指向を採用しています
				。オブジェクト指向とは、物理的あるいは概念的なもの＝オブジェクトがそれぞれ役割を分担しながら相互作用することで世界が動いていると捉える考え方です
				。オブジェクトは「属性」と「振る舞い」をひとまとめにカプセル化したものであり、個別の具体的なものを表わしています。</p>
			<p>
				オブジェクト指向では、概念的なまとまりをクラスによって表現することができます。クラスという型によってオブジェクトを分類し、効率的に記述できるのです。日常的にも私たちは「クラス」という言葉を、複数のものを共通の性質によって分類したまとまりを指す言葉として使っていますが、それに似た考え方です。例えば、車の種類のセダンクラスやワゴンクラス、スポーツカークラスというのもそうですし、爬虫類、鳥類、哺乳類というクラスもある共通項で生き物を分類したまとまりです。同じように、オブジェクト指向におけるクラスは、「属性」と「振る舞い」を共通項として、オブジェクトを分類したものなのです。複数のクラスを抽象化して上位クラスを作成することによって、より効率的な分類と記述も可能です。</p>
			<p>
				クラスという考え方を導入する利点は、具体的なオブジェクトについて個別に考えなくても、クラスで一括して共通項を表現できるようになることです。モデル化の対象となる現実世界は、さまざまなものから構成されているわけですが、これらを個別にモデル化しようとすると非常に時間と手間がかかってしまうでしょう。共通のオブジェクトをまとめて定義できるクラスの考え方を用いれば、モデル化が効率的になるのです。</p>
			<p>基礎モデルは、経済社会を抽象化したものですから、個別具体的なオブジェクトではなく、クラスを用いて記述されています。</p>
		</section>
		
		<section title="２つの基礎モデル">
			<p>
				基礎モデルを用いてモデルを記述すれば、モデルの要素が実際にどのようなメカニズムで動作するのかという詳細は意識しなくて済むことになります。例えば，ユーザは「財」や「関係」というような基礎モデルの要素を語彙としてモデルを記述するだけで，シミュレーションすることが可能になります。しかし、シミュレーションをコンピューターソフトウェアとして見た場合、これだけでは充分ではありません。ソフトウェアコンポーネントとして基礎モデルに基づくモデルの各要素が実装されている必要があります。このため、基礎モデルのソフトウェアフレームワークとして、私たちは基礎モデルフレームワークを提案します。</p>
			<p>
				こうして、基礎モデルと呼ばれるものに2つのレイヤーができました。概念モデルとしての基礎モデルとソフトウェアフレームワークとしての基礎モデルです。</p>
			<dl>
				<dt>概念モデルとしての基礎モデル</dt>
				<dd>
					概念モデルとしての基礎モデルはモデル作成時の分析に利用され、図のように基礎モデルとしての要素及びそれらの関係以外には定義を含まず、抽象度の高いモデルとなっています。そのためのこのモデルだけでは、基礎モデルは実際にコンピューター上で実行可能な形でモデルを作成することはできません。</dd>
				<dt>基礎モデルソフトウェアフレームワーク</dt>
				<dd>
					概念モデルとしての基礎モデルに、操作や属性及びソフトウェアとして動作するための処理などを加えて、BESPに含まれるソースコードとして実装された基礎モデルです。このフレームワークに基づいて作成したモデルを実行します。</dd>
			</dl>
		</section>
	</body>
</doc>
