もどる


環境政策評価のための応用一般均衡モデルEPAM(ver.0.2)の使い方

鷲田豊明
2004年2月14日
目次

 0.はじめに
 1.インストール
 2.ファイルの説明
 3.シミュレーションのやり方
 4.epam.cfgの使い方
 5.epamの基本動作
 6.問題が発生した場合

0.はじめに

 以下では、コンピュータの使い方も少し解説せざるを得ないのですが、コンピュータコマンドの使い方については、身近な人にお尋ねください。そうした質問にはお答えできません。EPAMに関わることについては まで、メールいただければ、お返事しようと思っています。
 まだ、試用版ですので(いずれ有料化するという意味ではない)、いろいろバグもあるかもしれませんが、改良していきたいと思っています。
 EPAMの理論的な内容については、論文を参照してください。

1.インストール

(1)使っているオペレーティングシステム(Windows, MacOSX, Linux)応じたファイルをダウンロードしてください。圧縮については、いろいろありますので、自分のシステムで使える版をダウンロードしてください。ファイルはとても小さくなっています。ファイルが加わる以外、インストールによってシステムに変更を加えることは一切ありません。

(上記以外のOSでは動きません。MACもクラシックでは動きません。つまり上記三つ以外はだめだということです。ただし、MacはDurwinというFreeBSD上で動いてるので、FreeBSDでもEPAMのMACバージョンが動くかもしれません。試みてはいませんが。)

(2)ダウンロードしたファイルを、これから動かしたいフォルダ、ディレクトリに移動させてください。フォルダがない場合は、作成してください。そこで解凍します。圧縮ファイルにはディレクトリ、フォルダはくっついていません。(ただし、解凍ソフトによっては、さらにその中にディレクトリ、フォルダを作ってそこにファイルを置く場合もあるので、確かめてください。)

 初心者の方は次のようにフォルダを作ってください。
 Windws利用の方は、ファイルシステムC:\の直下に、epam02というフォルダを作成してそこで解凍します。
 MaxOSX利用の方は、ファインダーを起動し、自分のホームディレクトリ(私の場合はtoyoakiとなっている)の下にepam02というフォルダを作ってください。
 Linuxユーザーの方に初心者はいないと思いますが、自分のホームディレクトリ(私の場合は/home/toyoaki)の下にepam02というディレクトリを作ってください。

(3)解凍すると、五つのファイルができます。

[Windowsの場合]
epam.exe
epam.cfg
epam-org.cfg
epam.tbl
co2.tbl

[MaxOSXの場合]
epam
epam.cfg
epam-org.cfg
epam.tbl
co2.tbl

[Linuxの場合]
epam
epam.cfg
epam-org.cfg
epam.tbl
co2.tbl

以上でインストールは完了しました。

2.ファイルの説明

(1)epam.exeはWindowsの実行ファイル。ただのepamは、MacあるいはLinuxの実行ファイルです。Windowsはコンソールモードでしか動きません。MACおよびLinuxもターミナル上でしか動きません。近いうちにWindows版については、グラフィックユーザーインターフェースを作って使いやすくする予定です。
 MacOSXのターミナルは、UNIXで動いています。その点、Linuxと同じです。

(2)epam.cfgはコンフィギュレーションファイルで、システムや政策変数の設定、EPAMの動作設定をおこないます。
  epam.cfgはテキストファイルで、エディタで編集できます。
  Windowsの場合は、「メモ帳」(アクセサリにアル)で十分編集できます。wordなどのワープロソフトでも編集できますが、かならず「テキストのみ」で保存してください。
 Macの場合は「テキストエディット」で編集できます。(ファイルは改行がUNIXモードになっています。なにしろ、MACOSXはUNIXの上で動いているので)
 いずれの場合も、テキストファイルで保存することが必要です。
  epam-org.cfgは、epam.cfgを書き換えているうちに、おかしくなってしまった場合などに、epam.cfgにコピーして利用するためのもので、書き換えないようにしましょう。(Windowsの設定ファイルはこんなものです epam.cfg

(3)epam.tblは、EPAMの基本データセットファイルです。テキストファイルですからエディタやEXCELなどで内容を確認することができます。また、自分でデータセットを作れば、それを動かすこともできます。ただし、その場合は、設定ファイルepam.cfgの中の、税率パラメータや、政府支出・投資の総額単位のパラメータなどの調整をしなければなりません。(論文を読めばわかるかもしれませんが、興味のある方が多ければ、データセットの作り方マニュアルを付加してもいいかと思っています。)

(4)co2.tblは二酸化炭素排出に関る係数が入ったデータファイルです。テキストファイルです。

3.シミュレーションのやり方

 以下、いずれもウィンドウモードで実行すると、一瞬コンソールがあらわれて終われば消えてしまいます。以下のインストラクションに沿って、コンソールモード、ターミナルモードで実行してください。

(1) Windowsの場合は、MS-DOSプロンプト(XPではコマンドプロンプト、アクセサリかどこかに入っている)を起動して、ダウンロードファイルを解凍したフォルダに移動します。MS-DOSプロンプトを起動すると、たいがい次のようなカーソルの状況になります。
C:\WINDOWS>
 そこで、初心者の方で、先ほど私が言ったところに解凍している場合は、上のプロンプトのあとにcd \epam02と入れます。すなわち、
C:\WINDOWS>cd \epam02
とやると、
C:\epam02>
とプロンプトが変わるはずです。(画面イメージ
  まず、動かしてみようという方は、
C:\epam02>epam
とうってENTERしてください。シミュレーションがスタートします。実行中の画面イメージ。収束した場合の画面イメージ。結果は、epam.outに出力されます。(出力ファイルの一部、内容イメージ
 epam.cfgファイルの内容を変えると、結果が変わります。

(2)MacOSXの場合は、「ターミナル」起動してください。ターミナルは、「アプリケーション」の「ユーディリティ]というフォルダにあります。起動したら、自動的に、自分のホームディレクトリに入っていることになります。左上にプロンプトが表示されるはずです。私の場合は設定を変えているので、
MacOSX:toyoaki ~/$
となってカーソルが点滅しますが、システムによっていろいろあるので、一概に言えません。
  次に、cd epam02とコマンドをうってください。すると、カーソルが解凍したディレクトリで点滅します。たとえば、私の場合は
MacOSX:toyoaki ~/epam02/$
となって、カーソルが点滅します。
すぐに実行する場合、./epam とコマンドをうってください。最初の./(ドットとスラッシュは必要です。)

(3)Linuxの場合も、MACとおなじです。なぜなら、MACもLINUXもUNIXとしては双子のようなものですから。

4.epam.cfgの使い方

 epam.cfgファイルは、シミュレーションをコントロールする多くのパラメータが含まれています。テキストファイルなので編集が可能です。漢字を扱えるエディタ(メモ帳やテキストエディットなど)を起動して、中を見ると、そこに詳しい説明が書いてあります(Windowsの設定ファイルはこんなものです epam.cfg

 配布時は、基準均衡を出力する設定になってます。

 なお、生産関数、効用関数の弾力性パラメータは1にすると、理論的には、CES関数はコブ・ダグラス型の生産関数や効用関数になりますが、シミュレーションでは確実にエラーになります。(笑)
 何をやっても、実行が失敗するだけですから、構わないのですが。

5.epamの基本動作

(1) まず、設定ファイルを読み込みます。設定ファイルの名前はepam.cfgですが、オプションで変えられます。
> epam hogehoge
とすると、hogehogeを設定ファイルとして読み込んで実行します。
(2)データセットファイル、epam.tblファイルと二酸化炭素排出係数ファイルco2.tblを読み込み、初期化を終えます。
(3) 設定ファイルの値に基づいて、生産関数と、消費関数のパラメータを決定し、エネルギー財以外の投入係数を計算します。
(4)価格の初期化をした後に、メリルアルゴリズムに動作が移ります。(画面イメージ
(5)単体上の価格ベクトルを超過需要計算プログラムに渡します。
(6)超過需要が指定された誤差以下になるまで繰り返し計算します。
(7)収束しない場合や、失敗した場合は、計算を放棄します。
(8)収束した場合(画面イメージ)は、結果を実行したフォルダのアウトプットファイルに書き出します。(出力ファイルの一部、内容イメージ
 この最後の点に関しては、WindowsとほかのOSで異なっています。Windowsは、デフォルトでepam.outに出力します。このファイル名は、設定ファイルで変えられます。MacとLinuxの場合は、epamXXX.outというファイル(XXXには000から999までの数字が入る)に書き出されます。同じ数字XXXのファイルがあると、一つ値を増やしたファイル名になって出力されます。そのままやっていると、999回までは出力ファイルなどの名前を気にせずにシミュレーションできます。
 Windowsの場合は、名前を自動的には変えないので、前のファイルを上書きします。結果を残したい場合は、dos-promptのrenコマンドで名前を変えるか、設定ファイルで名前を変えるかしてください。WindowsもMacやLinuxの用にしたかったのですが、マイクロソフトのVISUAL C++では、ディレクトリ操作のライブラリが使えなかったのでやむを得ません。

6 .問題が発生した場合


(1)いつまでも収束しない
 エラーになります。本体の繰り返しは2000回(設定によって変更可能)で強制的に終了されます。それよりも早くやめたいときは、コントロールキーを押しながらCキーを押すと強制的に止められます。
 たとえば、輸入関数か、輸出関数のどちらかの弾力性をゼロにして固定比率にすると、均衡を見つけにくくなり、収束に2000回以上の繰り返しが必要になる時があります。そういう場合には、設定ファイルの該当繰り返し数を増やしてください。(弾力性を輸出入ともに0にすると収束しません)

(2)メリルのアルゴリズムが途中で失敗する
 収束条件をゆるめてください。 ConvDelta を1にしても、収束しない場合は、ほかの設定に問題があります。また、Improve を2から5の範囲で変えてみてください。より小さな誤差値で収束する場合もあります。
 エラーの最後のメッセージに、実行途中で計算した最小超過需要の絶対値が示されている場合は、その少し大きな値をConvDeltaの値に設定してください。ただし、その絶対値が、ゼロになっている場合は、この方法は使えません。
 価格システムの反復法が収束しなかったり、逆行列(ホテリング法で計算している)がSingularエラーを出す場合がありますが、それは、モデル全体の設定が間違っている場合です。

(3)生産にマイナスのものが出てくる。
 弾力性を、非現実的なものにすると、そのような事態が発生します。正になる範囲でシミュレーションしてください。

(4)等価変分が、基準均衡にもかかわらず、正の値になっている。
 弾力性を極端にすると、そういう場合が発生する。もともと、効用関数が階層性のある複雑な形をしているので、誤差がでがち。その正の値の桁数を誤差とみなしてシミュレーションするか、弾力性を変える。

(5)そのほか、EPAMに関わることで、問題があると思われたらメールください。