Prev Up Next
Go backward to 2.1 The Dataset
Go up to 2 The Dataset and Static Model
Go forward to 2.3 The Algebraic Formulation

2.2 The MPSGE Formulation

Table 9 contains variable declarations for the GTAPinGAMS model as implemented in MPSGE.15 The model includes sectors related to production by commodity and region (Y(i,r)); Armington aggregatation across imports from different trading partners (M(i,r)); Armington aggregation between domestic and imported varieties by market segment (A(d,i,r) in which d refers to intermediate, public and private demand); public demand by region (G(r)); private demand by region (C(r)); and the provision of international transport margins (YT).

The production activities for public and private demand are associated with outputs which represent the marginal cost of public and private consumption, PG(r) and PC(r). For each commodity and region there are six different price indices. PD(i,r) represents the cost index for a unit of domestic output; PX(i,r) represents the cost index for exports; pm(i,r) represents the cost of a unit of imports (aggregated across all trading partners), and PA(d,i,r) represents the cost index of a unit of composite Armington supply by submarket. Primary factor prices are represented by PF(f,r), and the market price of a unit of international transport services is represented by PT.

The final class of variables in the MPSGE model are consumers, and in this model there is one representative consumer for each region. In a solution RA.L(r) returns the equilibrium expenditure on household consumption by region r.

Table 9: Variable Declarations for GTAP Implemented in MPSGE

 
$MODEL:GTAP
 
$SECTORS:
        Y(i,r)          ! Output
        A(d,i,r)        ! Armington aggregation of domestic and imports
        M(i,r)          ! Import aggregation
        C(r)            ! Private consumption
        G(r)            ! Public provision
        YT              ! Transport
 
$COMMODITIES:
        PG(r)           ! Public provision
        PC(r)           ! Private demand
        PD(i,r)         ! Output price
        PX(i,r)         ! Export price
        PM(i,r)         ! Import price
        PA(d,i,r)       ! Armington composite price
        PF(f,r)         ! Factor price
        PT              ! Transport services
 
$CONSUMERS:
        RA(r)           ! Representative agent
 

An MPSGE model is specified by a sequence of function "blocks", one for each production sector and consumer in the model. In this model there are six classes of production sectors. (See Table 10.) The first of these refers to production by commodity and region, Y(i,r). This production activity has a nested-CES cost function with a Leontief aggregation across intermediate inputs at the top level (see s:0) and unity within the value-added aggregate (va:1), and an elasticity of transformation across outputs equal to 2 (see T:2). There are inputs and outputs associated with the Y(i,r) production function. Outputs correspond to production for the domestic market, O:PD(i,r), and production for the export market, O:PX(i,r). The reference quantity entries for these coefficients are the benchmark values of domestic and export sales. A tax at an ad-valorem rate ty(i,r) is applied to both domestic and export sales.16

There are two types of inputs to the Y(i,r) production function, corresponding to goods and factors. Intermediate inputs are taken from the market for Armington aggregates into production. Substitution between factor inputs is created by assigning those inputs to the va: input aggregate.17

Table 10: Function Declarations for GTAP Implemented in MPSGE

 
$PROD:Y(i,r)  S:0  T:eta  va:1
        O:PD(i,r)       Q:vdm(i,r)    A:RA(r) T:ty(i,r)
        O:PX(i,r)       Q:vxm(i,r)    A:RA(r) T:ty(i,r)
        I:PA("i",j,r)   Q:vafm(J,i,r) P:pi0(j,i,r) A:RA(r) T:ti(j,i,r)
        I:PF(f,r)       Q:vfm(f,i,r)  P:pf0(f,i,r) A:RA(r) T:tf(f,i,r) va:
 
$REPORT:
        V:FD(f,i,r)     I:PF(f,r)       PROD:Y(i,r)
        V:YD(i,r)       O:PD(i,r)       PROD:Y(i,r)
        V:YX(i,r)       O:PX(i,r)       PROD:Y(i,r)
 
$PROD:A(d,i,r)          S:esubdm
        O:PA(d,i,r)     Q:va(d,i,r)
        I:PD(i,r)       Q:vd(d,i,r)
        I:PM(i,r)       Q:vm(d,i,r)
 
$PROD:M(i,r)            S:esubmm   s.TL:0
        O:PM(i,r)       Q:vim(i,r)
        I:PX(i,s)       Q:vxmd(i,s,r)  P:px0(i,s,r)     s.TL:
+                       A:RA(S) T:TX(i,s,r) A:RA(r) T:(tm(i,s,r)*(1+tx(i,s,r)))
        I:PT#(s)        Q:vtwr(i,s,r)  P:pt0(i,s,r)     s.TL:
+                       A:RA(r) T:tm(i,s,r)
 
$PROD:G(r)  S:1
        O:PG(r)         Q:vg(r)
        I:PA("g",i,r)   Q:vgm(i,r)  P:pg0(i,r)  A:RA(r) T:tg(i,r)
 
$PROD:C(r)  S:1
        O:PC(r)         Q:vp(r)
        I:PA("c",i,r)   Q:vpm(i,r)  P:pc0(i,r)  A:RA(r) T:tp(i,r)
 
$PROD:YT  S:1
        O:PT            Q:vt
        I:PX(i,r)       Q:vst(i,r)
 
$DEMAND:RA(r)
        E:PF(f,r)       Q:evoa(f,r)
        E:PC(num)       Q:vb(r)
        E:PD(cgd,r)     Q:(-vi(r))
        E:PG(r)         Q:(-vg(r))
        D:PC(r)         Q:vp(r)
 

Taxes are levied on intermediate demand inputs at net rate ti and taxes apply to primary factor inputs at net rate tf. For example, the market value of primary factor services purchased by firms is vfm(f,i,r), but the total cost to firms equals vfm(f,i,r)*(1+tf(f,i,r)), of which vfm(f,i,r) is paid as wages or dividends to factor owners while vfm(f,i,r)*tf(f,i,r) is paid as a tax to RA(r).18

The Armington aggregation activity A(d,i,r) generates three functions for each commodity in each region. For simplicity I have specified a domestic-import elasticity of substitution equal to 4 for all goods, commodities and Armington submarkets.

The import aggregation activity, M(i,r), is the most complex component of the model. First, it defines the aggregation of imports by trading partner. Second, it applies export taxes and import tariffs on all bilateral trades.19 Third, it applies transportation margins which are proportational to quantities traded. The output market PM(i,r) serves as an input to the Armington aggregation sectors. There are two types of inputs to the M(i,r) activity. The I:PX(i,s) input represents fob payments to producers in region s.

The I:PT#(s) input represents multiple inputs of transportation services, one for each element of set s. There are multiple inputs of transportation services into each imported good simply because every bilateral trade flow demands its own transportation services. Using a Leontief aggregate on each bilateral trade flow assures that transport costs and imports remain strictly proportional to the base year level, tau(i,r,s)= vtwr(i,s,r)/vxmd(i,s,r).

The function declaration indicates a top-level substitution elasticity equal to esubmm (S:esubmm), and it also indicates a vector of second level input nests, each with an elasticity of substitution equal to zero (s.tl:0).20

Final consumption by consumers and producers in region r is characterized by production activities c(r) and g(r), respectively. The elasticity of substitution across goods in final demand is specified to be unity (S:1).

The yt production activity provides international transportation services as a Cobb-Douglas composite of goods provided in the domestic markets of each region.

The model statement concludes with a specification of endowments and preferences for each region's representative agent ($DEMAND:RA(r)). Each agent is endowed with primary factors and capital inflows. They are also "endowed" with a fixed negative quantities of the domestic cgd commodity and public sector outputs representing exogenously-specfied demands for investment and public sector output. All remaining income is allocated to private consumption.

The closure adopted here in which investment and public demand are both exogenous is adopted for simplicity, and also because the welfare estimates from this closure seem to most closely match the infinite-horizon model (see Rutherford and Tarr 1998). In the MPSGE model it is quite simple to adopt alternative assumptions regarding investment. For example, investment could be modeled by a constant marginal propensity to save as:


$DEMAND:RA(r)  s:1
        E:PF(f,r)       Q:evoa(f,r)
        E:PC(num)       Q:vb(r)
        E:PG(r)         Q:(-vg(r))
        D:PD(cgd,r)     Q:vi(r)
        D:PC(r)         Q:vp(r)

As stated above, the MPSGE formulation of an equilibrium model follows Mathiesen's modeling format in which intermediate demand and supply functions can be captured as functions of prices and activity levels. The computational advantage of this approach is that fewer variables are needed, and it is considerably less costly to solve the resulting smaller system of equations.21

Table 11: Computing Demand Quantities from an MPSGE Equilibrium

 
parameter       cd(i,r) Private demand
                gd(i,r) Public demand
                td(i,r) Transportation demand;
 
cd(i,r) = vpm(i,r) * C.L(r) * PC.L(r) * pc0(i,r)
                        / ( PA.L("c",i,r) * (1 + tp(i,r)) );
gd(i,r) = vgm(i,r) * G.L(r) * PG.L(r) * pg0(i,r)
                        / ( PA.L("g",i,r) * (1 + tg(i,r)) );
td(i,r) = vst(i,r) * YT.L * PT.L / PX.L(i,r);
 

Intermediate demands and supplies from MPSGE models can be computed by the modeller using equilibrium prices and activity levels. For example, in this model it is quite simple to compute private, public and transportation demands from the solution of an MPSGE model, because all of these activities are Cobb-Douglas. (See Table 11.) It is, however, possible to extract equilibrium demands directly from the MPSGE function evaluation through use of the $REPORT: statement, listed in Table 10 immediately after the Yir production block. In this model three demand and supply quantity variables are declared, representing primary factor demand by sector, supply to the domestic market and supply to the export market. These values are returned in FD.L(f,i,r), YD.L(i,r), and YX.L(i,r) respectively.


October 23, 1998

Prev Up Next