GAMSで記述したGTAPモデルのプログラム

https://shirotakeda.github.io/en/research/gtap-model.htmlにGTAPモデルをGAMSで記述したシミュレーションのプログラムを置いています。

GTAPモデルはGTAP(global trade analysis project)が提供している貿易政策分析用のCGEモデルです。GTAPモデルはGEMPACK (http://www.monash.edu.au/policy/gempack.htm) というソフトの言語で記述されており、実行するにはGEMPACKが必要になります。

このGEMPACKで記述されたオリジナルのGTAPモデルにはいいところもありますが、短所・欠点もあります。

  • GEMPACKのプログラムの記法は特殊です
    • 記法が普通の数値計算ソフトとは大きく異なります。
    • 特に違うのは、式をlinearizeした形(全微分した形)で記述しないといけないという部分です。
    • 式を表現するのに自分でlinearizeした形式を導出しなければいけないです。
  • 扱えるモデルのタイプが限定的
  • プログラム編集・実行手順が煩雑
    • 「プログラムを書く→コンパイルする→実行」というように実行するまでに何段階も必要になります。
  • GEMPACK本体に加え,Fortranコンパイラも必要となる場合がある。

以上のような短所から、CGE分析をするのにGEMPACKではなく、GAMSを利用したいと考える人がかなりいます。私もそうです。

上のページにあるプログラムは、元々はGEMPACKで記述されているGTAPモデルをGAMSで記述しなおしたプログラムです。ただし、GTAPモデルと全く同じモデルではないです。

  • 価格指数、数量指数の変更
    • GEMPACKで記述されたGTAPモデルは、linearizeされた式で記述されています。
    • そして、価格指数、数量指数としてDivisia指数が利用されている部分があります。
    • GAMSでは全ての式は普通の形式で記述しなければいけないので、Divisia指数を利用することができないです。
    • そこで、Divisia指数の離散型の近似であるTornqvist指数を利用しています。
  • 厚生効果(EV)の分解
    • GTAPモデルのプログラムの一つの大きな利点は、政策変化が厚生に与える影響の要因分解をしてくれるという点です。
    • 例えば、関税の引き下げという政策をGTAPモデルで実行すると、その厚生に対する効果は、1) 関税引下げの直接的な効果(資源配分効果)、2) 交易条件効果、3) 他の歪みに与える影響を通じた効果の3つに分けられます。GTAPのコードでは、厚生への効果を上の3つの要因にそれぞれ定量的に分解をしてくれます。これは政策の分析をする際に非常に有用な情報になります。
    • 私が書いたGAMSのコードではこの厚生効果の分解はしていないです。

作成した本人が言うのもなんですが、このプログラムの使い途はあまりないと思います。実際、私自身は使っていないです。理由は次の2つです。

  • GTAPと同じモデルを利用したいのなら、GEMPACKで書かれたGTAPモデルを利用する方がずっとよい。
  • GTAPとは違うモデルを利用したいのなら、GTAPモデルにこだわる必要はなく、自由にモデルを作成すればよい。さらに、それをGAMSで記述するなら、MPSGE等を利用して記述する方がずっと楽。

このコードを修正して自分用に直すというのは、CGE分析のやり方としてあまり効率的ではないと思います(できるだけオリジナルのGTAPモデルに近くなるようにということだけを優先して書いたコードですので)。 ただし、

  • GAMSでCGEモデルを作成する勉強をしたい人
  • GTAPモデルの構造について深く理解したい人
には参考になるかもしれません。