emr - Economic Models in R

Esta pacote tem o objetivo de possibilitar a definição e a execução de simulações de modelos de equilíbrio parcial e geral. A ideia é ser algo similar ao GAMS e GEMPACK.

A definição dos modelos segue a lógica discutida em A simple structure for CGE models by Xiao-guang Zhang.

Structure of variables and equations (Zhang, 2013)

Structure of variables and equations (Zhang, 2013)

Nessa abordagem, as variáveis exógenas e endógenas serão classificadas em dois tipos: definidas ou não-definidas. As variáveis exógenas, por definição, são definidas. As endógenas pode ser dos dois tipos. As variáveis definidas são aquelas que podem ser construídas a partir dos valores das demais variáveis, das chamadas equação de definição. Já as não-definidas são aquelas que os valores serão definidos a partir de condições de equilíbrio de mercado (MCCs).

Primeiro Exemplo - Modelo de Armington

O modelo de armington consiste no problema do consumidor que deve alocar sua renda em produtos de \(N\) diferentes origens, que chamaremos de variedades. O consumidor tem uma função de utilidade do tipo CES com elasticidade de substituição. Dessa forma, o problema do consumidor é o seguinte:

\[ \max_{{c_1,...,c_n}}U = \left[\sum_{i=1}^N\alpha_i^\frac{1-\sigma}{\sigma} c_i^\frac{\sigma-1}{\sigma}\right]^\frac{\sigma}{\sigma-1}\]

\[ s.a. \sum_{i=1}^N p_ic_i = R,\]

onde \(p_i = p_i^s(1+t_i)\) é o preço pago ao produtor adicionado de uma tarifa ad valorem \(t_i\).

Resolvendo o problema do consumidor, chega-se a seguinte equação de demanda para a variedade \(i\):

\[c_i = \left(\frac{\alpha_i p_i}{P}\right)^{-\sigma} Q\] onde \(Q=R/P\) e \(P\) é o índice de preços da CES que tem a seguinte formula:

\[ P = \left[\sum_i (\alpha_i p_i)^{1-\sigma}\right]^\frac{1}{1-\sigma}\]

Adicionalmente, pode-se definir uma função de demanda total do tipo elasticidade constante:

\[Q = k^d P^{\eta}\]

onde \(\eta < 0\) é elasticidade-preço da demanda.

Por fim, a oferta de cada variedade também é dada por uma função do tipo elasticidade constante:

\[ q_i = k^s \left(\frac{p_i}{1+t_i}\right)^{\epsilon_i}\]

Dessa forma, o sistema é formado por essas equações para as variáveis \(Q\) (definida), \(q_i\) (definida), \(c_i\) (definida), \(P\) (definida) e \(p_i\) (não-definida):

  • Demanda Total:

\[Q = k^d P^{\eta}\]

  • Oferta da variedade \(i\):

\[ q_i = k^s \left(\frac{p_i}{1+t_i}\right)^{\epsilon_i}\]

  • Demanda pela variedade \(i\):

\[c_i = \left(\frac{\alpha_i p_i}{P}\right)^{-\sigma} Q\]

  • Índice de preços:

\[ P = \left[\sum_i (\alpha_i p_i)^{1-\sigma}\right]^\frac{1}{1-\sigma}\]

  • Condição de equilíbrio (para a variável \(p_i\)):

\[c_i = q_i\]

Agora, vamos definir o modelo no R. Para isso, vamos escrever as equações em variações exatas. Isto é, a variação de uma variável \(x\) entre o equilíbrio base e o novo equilíbrio (\(x'\)) é denotada por \(\hat{x} = \frac{x'}{x}\).

Para construir o modelo, precisaremos definir os conjuntos de índices (por exemplo, o nome das regiões fornecedoras \(i\)), os parâmetros (acomoda parâmetros e variáveis exógenas), as variáveis e as equações.

Sets

Começando pelo conjunto de índices:

sets[['REG']] <-c("reg1", "reg2", "reg3")

Parâmetros

Agora iremos definir os parâmetros:

## $sigma
## $sigma$value
## sigma 
##     4 
## 
## $sigma$desc
## [1] "elasticity of substitution"
## 
## 
## $eta
## $eta$value
## eta 
##  -1 
## 
## $eta$desc
## [1] "price elasticity of total demand"
## 
## 
## $epsilon
## $epsilon$value
## reg1 reg2 reg3 
##    1   10   10 
## 
## $epsilon$desc
## [1] "price elasticity of individuals supplies"
## 
## 
## $tau
## $tau$value
## reg1 reg2 reg3 
##    1    1    1 
## 
## $tau$desc
## [1] "change in the tarrif power (1 + t)"
## 
## 
## $v0
## $v0$value
## reg1 reg2 reg3 
##   60   30   10 
## 
## $v0$desc
## [1] "initial values"

Índice de Preços

\[ \hat{P} = \left[\sum_i \pi_ip_i^{1-\sigma}\right]^\frac{1}{1-\sigma},\]

onde \(\pi_i = \frac{v^0_i}{\sum_i v^0_i}\) é o share da variedade \(i\) no dispêndio inicial. \(v^0_i\) é o dispêndio inicial em cada variedade \(i\).