Programmation dynamique en Macroéconomie moderne : Méthode numérique James Wabenga Yango Department of Economics, University of Kinshasa Kinshasa, DR. CONGO Résumé Ce petit papier montre comment résoudre un modèle de croissance néoclassique (Modèle de Ramsey) déterministe en recourant à l équation de Bellman et à la programmation dynamique qui est un outil indispensable en macroéconomie dynamique. Une fois le problème de croissance résolu, il est important de trouver les différentes valeurs des variables du système et de faire des simulations par la méthode numérique en recourant au logiciel matlab. L objet de ce petit papier est de montrer comment s y prendre. james.w.yango.econ@gmail.com http://jameswabengayango.weebly.com
Introduction. Considérons le problème du planificateur social ci-après : max {c t,k t+} t=0 U 0 = β t U(c t ) (.) t=0 Sjet à c t + k t+ ( δ)k t = f(k t ) Avec c t 0, k t 0 et k 0 > 0 où f(k t ) : la fonction de production par tête ; c t : la consommation par tête ; k t : le capital physique par tête et U : la fonction d utilité intertemporelle de l agent représentatif On suppose que l offre de travail de l agent représentatif est égale à. et que la fonction d utilité et celle de production sont données par : U(c) = c σ σ (.2) Remarquez que l équation (.2) devient une fonction logarithmique lorsque σ tend vers. f(k t ) = Ak t (.3) avec > 0 et A > 0 une constante qui capte le progrès technologique dans l économie. 2 Équation de Bellman et résolution du modèle Exprimons le modèle (.) sous forme de programmation dynamique. Pour ce faire on recourt à l équation de Bellman. Ainsi, le problème peut s écrire comme suit : V (k t ) = max {ln(c t) + βv (k t+ )} (2.) {c t,k t+} James Wabenga Yango 2 Février 204
Sjet à c t + k t+ ( δ)k t = Ak t (2.2) En laissant tomber les ternes de temps (i.e problème de programmation dynamique) et en remplaçant k t = k et k t+ = k, on peut écrire : V (k) = max {ln(ak k + ( δ)k) + βv (k )} (2.3) k 3 Résolution du modèle et calcul de l état stationnaire 3. Résolution du modèle Nous allons utiliser la technique de "Guess and verify" pour résoudre ce problème. Supposons que σ =, cela veut dire que la fonction d utilité devient logarithmique (i.e U(c) = ln(c). En effet, la démarche consiste à chercher une fonction de valeur V tel qu elle puisse constituer un point fixe de l équation de Bellman. Étant donné la forme de la fonction d utilité, on fait le Guess comme suit : V (k) = F + G ln(k) (3.) On a alors deux fonctions qui dépendent du capital physique qui est une variable prédéterminée. En substituant (3.) dans (2.3), on a : F + G ln(k) = max {ln(ak k + ( δ)k) + β (F + G ln(k ))} (3.2) k Dérivons (3.2) par rapport à k étant donnée que l agent choisit le stock de capital de la période future car celle de la période courante est prédéterminée, on a alors : Ak k + ( δ)k + βg k = 0 (3.3) Maintenant, il faut résoudre l équation (3.3) par rapport à k pour trouver ce qu on appelle la "policy function" ou "fonction de politique". k = βg + βg (Ak + ( δ)k) (3.4) James Wabenga Yango 3 Février 204
(3.3) dans (2.2) donne : c = + βg (Ak + ( δ)k) (3.5) Nous venons de trouver les expressions de c et k. Ces expressions nous permettrons d identifier les constantes E et F de la fonction de valeur (3.) que nous avons postulée. Pour ce faire, remplaçons (3.4) et (3.3) dans l équation de Bellman (3.2). On peut alors trouver c(k) et k (k). Par identification on a : [ ] F + G ln(k) = ln + βg (Ak + ( δ)k) Supposons que δ =, l équation (3.8) devient : [ ] ( β)f + G ln(k) = ln + βg (Ak ) [ ] βg + βf + βg ln + βg (Ak + ( δ)k) [ βg + βf + βg ln = ( + βg) ln(a) ln( + βg) + βg ln ] + βg (Ak ) ( βg + βg (3.6) (3.7) ) + ( + βg) ln(k) (3.8) Par idenitification, l équation (3.8) donne : G = β (3.9) l équation (3.8) implique que : ( ) βg ( β)f = ( + βg) ln(a) ln( + βg) + βg ln + βg (3.0) Ce qui donne l expression de F en substituant G dans l expression : F = ( β ) ( ) ln(a) + β ln(β) + ln( β) β β (3.) (3.9) dans (3.4) sachant que δ = : ( β k = ( + β β ) β ) Ak = βak (3.2) avec β le taux d épargne. Si β augmente l agent épargne plus. Ceci implique que l agent est plus patient lorsque β augmente et épargne plus pour consommer plus dans le futur. On peut trouver l expression de c sachant que δ = : c = ( + β β ) Ak = ( β)ak (3.3) James Wabenga Yango 4 Février 204
3.2 Solution numérique Pour résoudre numériquement ce problème, on a besoin d un logiciel informatique. On peut recourir soit au logiciel Matlab, soit Mathematica, soit R, etc... De notre côté, nous allons le faire avec Matlab. Étapes de résolution Voici quelques étapes de résolution :. choisir les valeurs des paramètres du modèle. 2. Choisir un vecteur des états possibles de k. 3. Centrer votre vecteur autour de l état stationnaire de l économie en utilisant un intervalle au dessus et en dessous de l état stationnaire. 4. Stopper les itérations lorsque la valeur absolue de la différence de la fonction de valeur V de tous les points supposés et les nouvelles valeurs de V est inférieure à 0.000. Supposons que A =, = 0.36, δ = et β = 0.99 et traçons les graphiques des fonctions de politique. La solution numérique est détaillée dans les dossier CroissancedeRamsey. En tournant ce programme matlab vous obtiendrez les figures ci-dessous. James Wabenga Yango 5 Février 204
FIGURE 3. Fonction de valeur et les fonctions de politique 57.2 Fonction valeur 0.25 Fonction de politique Consommation 0.2 57.22 57.24 consommation 0.205 0.2 Valeur 57.26 57.28 0.95 0. 0.05 0. 0.5 0.2 0.25 0.3 capital 0.3 Fonction de politique Capital 0.25 57.3 57.32 capital futur 0.2 0.5 0. 0.05 57.34 0. 0.05 0. 0.5 0.2 0.25 0.3 capital 0. 0. 0.05 0. 0.5 0.2 0.25 0.3 capital Références Flaschel, Peter, Reiner Franke, and Willi Semmler (997) Dynamic macroeconomics : Instability, fluctuation, and growth in monetary economies Stokey, Nancy, and R Lucas with e. prescott (989) : Recursive methods in economic dynamics James Wabenga Yango 6 Février 204