地球環境ナッシュ均衡シミュレーター Ver.1.0.2 
(GENES, GENEC, GEBEC) 使用マニュアル


2008年5月29日 上智大学地球環境学研究科 鷲田豊明

1.はじめに

このプログラムは、論文「地球温暖化対策をめぐる地域別の交渉指向性の推計 --- 統合モデルによるナッシュ均衡とナッシュ交渉解の比較分析 ---」のシミュレーションを追試するためのものです。パラメータを変更すれば、さまざまな条件でのシミュレーションが可能になります。論文についてはこちら

2.プログラムのダウンロードとインストール

(1)ダウンロード
 次の三つのファイルをダウンロードしてください。基本的に自己責任で使用願います。使用に際して生じた損害等に作者は責任を持ちません。利用した結果を発表する場合は、利用している旨を明記してください。

 GENES Genes102Setup.msi
 GENEC Genec102Setup.msi
 GEBEC Gebec102Setup.msi

(2)インストール
 ダウンロードしたファイルをクリックすればインストールが始まります。Windows XP 以前のOSの場合は、Microsoftの.NET Framework Ver.2以上がインストールされていなければなりません。 インストールの途中で、Microsoft .NET FrameWork 2 が必要ですと、言われた場合には、マイクロソフトのサイトからダウンロード(無料です)してインストールしてください。

(3)アンインストール
上記のセットアップファイルを再起動して、削除を選択するか、コントロールパネルの「プログラムの追加と削除」から、該当プログラムを選択して削除できます。

3.各プログラムの機能

インストールが正常に終了すると、次の三つのアイコンがデスクトップ上に作成されます。
  

(1)GENES: サーバー、常に起動されていなければならない。モデルの設定はここでのみ行うことができる。


(2)GENEC: ナッシュ均衡を求めるためのクライアント。一つの実行プログラムが一つの地域を担う。計算負荷を緩和するために、ネットワーク上の複数のコンピュータから立ち上げることができます。1地域、1コンピュータもOK。


(3)GEBEC: ナッシュの交渉解を求めるためのクライアント。


4.ネットワーク環境

サーバー(GENES)とクライアント(GENEC あるいは GEBEC)は、同じコンピューター上にか、アクセス可能なネットワーク上に置かれる必要がある。

5. ナッシュ均衡の求め方(基本的な手順のみ)

(1)GENESを立ち上げる。変更すべき設定があれば変更する。
(2)GENECを立ち上げて、地域を設定する。地域数だけのGENECを立ち上げる必要がある。GENESと同じコンピュータ上にない場合は、GENESに表示されているサーバーのIPアドレスを、Configuration->Networkを開いて、適切な場所に記入する。最大10台のパソコンに地域を分散させることができる。
(3)GENECのClient->Startで各地域を順次スタートさせる。
(4)すべての地域のStatusがWaitになったら、ナッシュ均衡が求まったことになる。
(5)GENESのClientComsで、ExportAllを選択する。各クライアントがデータをサーバー宛に送信する。
(6)GENESのClientComsで、ClientTerminateを選択する。各クライアントが停止する。
(7)GENESのViewでVariableListを選択する。コンソールに、各地域の結果など、すべての情報がリスト表示される。その部分をコピーして、適当なエディタ(NotePadeでよい)にペーストしてセーブする。エクセルでデータを切り分けた形で開く。

6.ナッシュ交渉解の求め方(基本的な手順のみ)

(1)ナッシュ均衡を求めた状態でGENESをそのまま立ち上げておく。
(2)GEBECを起動する。
(3)GENESと同じコンピュータ上にない場合は、ConfigurationのNetworkを設定しなおす。
(4)ConfigurationのQNewtonを開く。MainLoop Convergenceの値を1e-8程度に変更する。Quasi Newton loopを 1e-10程度に変更する。
(5)ControlのObjectiveFuncがLinear Additive Objectfuncになっていることを確認する。同じく、ControlのSetDefaultにおいて、SaveVariablesのチェックがすべて入っていること、Save to Fileにチェックが入っていることを確認する。
(6)ClientをStartにする。
(7)収束した場合は、ConfigurationのQNewtonを開く。MainLoop Convergenceの値を0.0001程度に変更する。Quasi Newton loopを 1e-5程度に変更する。
(8)ControlのObjectiveFuncでNash Product Objectfuncににチェックを入れる。同じく、ControlのSetDefaultにおいて、SaveVariablesのチェックはそのままにして、Save to Fileにチェックをはずす。
(9)LoadVariblesのすべてにチェックを入れる。Load From Fileにチェックを入れる。
(10)クライアントをスタートさせる。
(11)収束したらViewのShowVariablesで結果を表示させる。

以上