Cours théorique sur les MEGA –Initiation au logiciel GAMS

Transcription

Cours théorique sur les MEGA –Initiation au logiciel GAMS
Cours théorique sur les MEGA –Initiation au logiciel GAMS
7 séances de 3 h, 2 ECTS
Les modèles d'équilibre général appliqués (MEGA) proposent une analyse quantitative de
problèmes de politique économique qui concernent des champs d'application aussi divers
que la fiscalité, les retraites, l'environnement, les programmes d'ajustement structurel, la
finance, le commerce international et qui concernent aussi bien des économies développées
que des pays en développement.
Lec
omme
r
c
ei
nt
e
r
na
t
i
ona
le
tl
’
é
c
onomie du développement occupent néanmoins une place
pr
i
vi
l
é
g
i
é
e
.Le
sMEGA r
e
pr
é
s
e
nt
e
nte
ne
f
f
e
tunout
i
ld’
a
na
l
y
s
epa
r
t
i
c
ul
i
è
r
e
me
nta
da
pt
éà
l'étude des politiques économiques qui modifient la structure de l'économie, comme c'est le
cas de la plupart des politiques commerciales.
Pa
rr
a
ppor
tàunmodè
l
et
hé
or
i
qued’
é
q
ui
l
i
br
egé
né
r
a
l
,unMEGAal
’
a
va
nt
a
gedel
as
oupl
e
s
s
e
.
Pa
rs
ave
r
s
i
onnumé
r
i
que
,i
lpe
r
me
td
epr
e
ndr
ee
nc
ompt
eunegr
a
ndeva
r
i
é
t
éd’
é
l
é
me
nt
ss
a
ns
qu’
i
ls
oi
tn
é
c
e
s
s
a
i
r
ededé
t
e
r
mi
ne
runes
ol
ut
i
onanalytique.
C’
e
s
tun out
i
ld’
anal
ys
eau mê
met
i
t
r
equel
’
é
c
onomé
t
r
i
emai
squir
é
pond à de
s
questions différentes :
Aus
e
i
nd’
unMEGA,ce sont les mécanismes économiques qui sont mis en évidence
l
or
s
qu’
unep
ol
i
t
i
queé
c
onomi
quee
s
te
nga
g
é
e
.L’
é
t
udepor
t
enotamment sur les canaux par
l
e
s
que
l
sl
a pol
i
t
i
que a
f
f
e
c
t
el
as
i
t
u
a
t
i
on é
c
onomi
que d’
un pa
y
s
.Di
ve
r
ss
c
é
na
r
i
oss
on
t
e
nvi
s
a
gé
se
tf
onta
l
or
sl
’
obj
e
td’
uneé
va
l
ua
t
i
on.Pl
us
i
e
ur
sc
r
i
t
è
r
e
spe
uve
ntê
t
r
er
e
t
e
nuspour
sélectionner la « meilleure » politique économique mais le plus courant est le bien-être des
agents.
Plan du cours :
I-
Introduction aux MEGA
- Structure et fondements théoriques
- Du modèle théorique au modèle appliqué
- Les développements récents des MEGA
II-
Modèle 1 : Economie fermée sans Etat - Introduction au logiciel GAMS
- Règles et langage GAMS
- Structure des programmes
- Gestion des erreurs
- Construire un scénario et simuler une politique économique
- Fichier sortie et interprétation des résultats
III-
Modèle 2 : Economie fermée avec Etat
- Introduction de variables de politique fiscale (impôt sur les revenus des
ménages,i
mpôtàl
apr
oduct
i
on…)
- Prise en compte des dépenses publiques
IV-
Modèle 3 : Economie ouverte avec Etat
2
-
Introduction de variables de politique commerciale (droits de douane)
Introduction de variables de politique de change
Moded’
éval
uat
i
on: Examen (100% de la note) en salle machine.
Bibliographie indicative :
Epaulard, A. (1997) Les Modèles Appliqués de la Macroéconomie (chapitre 4 : les modèles
d’
équi
l
i
br
egénér
al
cal
cul
abl
es)
,c
ol
l
ect
i
onTopos,Dunod.
Ginsburgh, V. et Keyzer M.(1997) The Structure of Applied General Equilibrium Models, The
MIT Press.
Mage-Ber
t
omeu,S.(
2006) Les modèl
es d’
équi
l
i
br
e génér
alappl
i
qués à l
a pol
i
t
i
que
commerciale : développements récents. Revued’
Economi
ePol
i
t
i
que, 117 (3), pp. 357-381.
Schuber
t
,K.(
1993)Lesmodèl
esd’
équi
l
i
br
egénér
alcal
c
ul
abl
e: une revue de la littérature,
Revued’
Économi
ePol
i
t
i
que, 103 (6), pages 775-825.
Tallon, J.M. (1997) Équilibre Général, Vuibert.
Ressource Internet :
http://www.gams.com
Pour télécharger une version gratuite de GAMS, cliquer sur :
Download current GAMS system
Vous remplissez alors un formulaire (nom, prénom,...) dans lequel vous pouvez inscrire
Student Université Dauphine en facedel
’
or
gani
s
at
i
on.GAMSv
ousenv
oi
eal
or
sparmai
lun
nom d’
ut
i
l
i
sat
euretunmotdepasse.Ensui
t
e,i
ln’
yaqu’
àsui
v
r
el
esi
nst
r
uct
i
ons.
3
INTRODUCTION au langage GAMS
GAMS « Generalized Algebraic Modeling System »
GAMSes
tunex
écut
abl
e.L’
écr
i
t
ur
edumodèl
esef
ai
tparl
’
i
nt
er
médi
ai
r
ed’
unf
i
c
hi
er
d’
ent
r
éeav
ecl
’
ex
t
ensi
on«.gms » et transcrit les résultats dans un fichier sortie avec
l
’
ex
t
ensi
on«.lst ».Lemodèl
epor
t
el
emêmenom enf
i
chi
erd’
ent
r
éeetdesor
t
i
e.
Fichier input : nom.gms
Fichier output : nom.lst
Déf
i
ni
t
i
ondupr
obl
ème(
st
r
uct
ur
ed’
unmodèl
eGAMS)
On spécifie un modèle GAMS en donnant à la fois sa structure et des données
proprement dites dans un fichier séquentiel. On trouve de manière générale les
sections suivantes :
1)
2)
3)
4)
5)
6)
7)
Les ensembles : SET
Les données : PARAMETERS, SCALARS, TABLES
La déclaration des VARIABLES
L’
écr
i
t
ur
edesEQUATIONS
Définition du MODEL (en fonction des équations choisies)
Commande de résolution du modèle SOLVE
Calcul de certains paramètres ou variables DISPLAY
Les commentaires
Les commentaires peuvent facilement être introduits dans le modèle :
Soit en commençant la ligne par une *
Soit en utilisant les mots clés
$ONTEXT
texte
$OFFTEXT
Soit au sein des énoncés de GAMS
Titre
Pour en donner un, on utilise la commande $TITLE suivi du nom du modèle
Ponctuation
Chaque unité doit être terminée par un point virgule ;
Les affectations doivent être suivies par un point virgule ;
La virgule , ou le « retour »sépar
entl
esél
ément
sd’
unel
i
st
e
Le / i
ndi
quel
edébutoul
af
i
nd’
unel
i
st
ed’
él
ément
sd’
unensembl
e
ATTENTION : GAMS ne comprend pas les accents
GAMS ne distingue pas les majuscules des minuscules
Règle importante
Onnepeutpasf
ai
r
er
éf
ér
enceàunél
éments
ansl
’
av
oi
rdécl
ar
éav
ant
4
1) LES ENSEMBLES : SET
Cette commande permet de définir les ensembles sur lesquels sont définies les
variables et les paramètres
Exemple :
Pour déclarer les secteurs de production
SET i secteurs de production
/ agr agriculture
ind industrie
ser services /
;
Ceci équivaut à i={agr, ind, ser}
Sous-ensemble : on doit parfois définir un ensemble dont les éléments sont ceux
d’
unensembl
epl
usgr
and.Ex
empl
e: SET r(i) secteurs hors services /agr, ind/ ;
Autre mot clé important : ALIAS qui permet de donner un autre nom à un ensemble
qui a été défini précédemment
Exemple :
ALIAS (i,j) ;
ALIAS (m,n);
2)LESDONEESetl
’
ét
al
onnage des paramètres
Lemotcl
éut
i
l
i
sépourannoncerl
’
i
nt
r
oduct
i
ondedonnéesestPARAMETERS (
qu’
i
l
s
s’
agi
ssentde par
amèt
r
es,de v
ar
i
abl
es endogènes ou ex
ogènes sur l
e pl
an
théorique).
On commence par déclarer les paramètres puis ensuite les variables pourl
’
annéede
référence
Exemple :
Alpha Part de la rémunération du capital dans le produit
Beta Part de la rémunération du travail dans le produit
Y0
;
Revenu des ménages
Lesdonnéespeuv
entêt
r
ei
nt
r
odui
t
ess
ousf
or
mesdescal
ai
r
e(
l
or
squ’
unensemble
n’
estpasass
oci
é)
.Lemotcl
éestal
or
sSCALAR
Exemple :
SCALAR
Y0 /200/ ;
5
Les données peuvent être introduites sous forme de tableaux.
Le mot clé est alors TABLE
Exemple :
TABLE MCS (m,n)
agr
ind
men
gov
;
agr
100
100
100
0
ind
150
350
400
0
men
150
125
0
25
gov
0
25
50
0
Où MCS désigne le nom du tableau et (m,n) son domaine avec m les lignes et n les
colonnes.
Sil
et
abl
eaun’
es
tpascar
r
é,onut
i
l
i
seTABLEDP(
*
,
i
)
agr
1
256
P0
XS0
;
ind
1
451
Enfin, il est possible de faire une « assignation directe » : étalonnage des paramètres
Exemple :
Pms = s/Y0 ;
Alpha =R*K0/p0*Y0 ;
3) Les VARIABLES
On commence par déclarer les variables du modèle (toute variable en GAMS doit
êt
r
edécl
ar
éeav
antd’
appar
aî
t
r
edansuneéquat
i
on)
Exemple :
XS(i) offre du secteur i
4) Les EQUATIONS
Les équat
i
ons doi
v
entd’
abor
d êt
r
e décl
ar
ées av
antd’
êt
r
e déf
i
ni
es.Le nom de
l
’
équat
i
ondoi
têt
r
edi
f
f
ér
entdunom del
av
ar
i
abl
equ’
el
l
ec
her
cheàex
pl
i
quer
.La
déf
i
ni
t
i
ondel
’
équat
i
onsuppose:
-
le nom de l
’
équat
i
on
l
’
ensembl
es
url
equelel
l
eestdéf
i
ni
e
les deux points « .. »pourannoncerl
’
équat
i
on
expression du côté gauche
l
’
opér
at
eur=e=
expression du côté droit
6
-
le point virgule
Exemple :
EQXS(i).. XS(i)=e=ld(i)**a(i)*k(i)**(1-a(i));
Après la définition des variables et des équations, on donne les conditions initiales
au modèle.
Pour les variables endogènes, on utilise .L (pour level) et pour les variables
exogènes, on utilise .FX (pour fixed)
5) Le modèle et son mode de résolution
Il faut dire àGAMSquelestl
emodèl
e(
c’
estàdi
r
el
egr
ouped’
équat
i
ons)qu’
i
ldoi
t
résoudre et comment il doit le résoudre.
MODEL nom /all/ ;
SOLVE nom USING NLP maximizing utility ; (Résous en utilisant la programmation
non linéaire –NLP pour Non Linear Programming –etenmax
i
mi
santl
’
ut
i
l
i
t
édes
agents)