# Agent-based dynamics in disaggregated growth models

Antoine Mandel, Carlo Jaeger, Steffen Fürst, Wiebke Lass, Daniel Lincke, Frank Meissner, Federico Pablo-Marti, Sarah Wolf

## ► To cite this version:

Antoine Mandel, Carlo Jaeger, Steffen Fürst, Wiebke Lass, Daniel Lincke, et al., Agent-based dynamics in disaggregated growth models. 2010. halshs-00542442

HAL Id: halshs-00542442

https://shs.hal.science/halshs-00542442

Submitted on 2 Dec 2010

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
<figure><img src="image_2.png" /></figure>

<figure><img src="image_3.png" /></figure>

Agent-based dynamics in disaggregated growth models

Antoine MANDEL, Carlo JAEGER, Steffen FUERST, Wiebke LASS, Daniel

LINCKE, Frank MEISSNER, Federico PABLO-MARTI, Sarah WOLF

2010.77

<figure><img src="image_4.png" /></figure>
Agent-based dynamics in disaggregated growth
models

Antoine Mandel†‡§, Carlo Jaeger¶, Steffen Fuerst‖, Wiebke Lass‖,
Daniel Linckel‖, Frank Meissner**, Federico Pablo-Marti†† Sarah
Wolf‖ ‡‡

Abstract

This paper presents an agent-based model of disaggregated economic sys-
tems with endogenous growth features named Lagom GeneriC. This model is
thought to represent a proof of concept that dynamically complete and highly
disaggregated agent-based models allow to model economies as complex dynam-
ical systems. It is used here for “theory generation”, investigating the extension
to a framework with capital accumulation of Gintis results on the dynamics of
general equilibrium.

**Key Words:** Agent-Based Model, Economic Growth.

JEL Codes: C63, C67, O12, O42, O52

<footnote>†Centre d'économie de la Sorbonne, Université Paris1-CNRS</footnote>

<footnote>§Corresponding author: antoine.mandel@univ-paris1.fr</footnote>

<footnote>¶Potsdam Institute for Climate Impact Research and European Climate Forum</footnote>

<footnote>‖ Potsdam Institute for Climate Impact Research</footnote>

<footnote>**Frame solution</footnote>

<footnote>††Universidad de Alcalá</footnote>

<footnote>‡‡The authors have greatly benefited from discussions within the European Climate Forum.</footnote>
# 1 Introduction

In this paper, we present an agent-based model of disaggregated economic systems with endogenous growth features (named Lagom generiC). The objectives motivating the development of this model are twofold. First, following the pioneering work of Gintis, (Gintis 2007), on evolutionary foundations of general equilibrium in exchange economies, we aim at investigating how the economic dynamics triggered by the interactions of a population of boundedly rational agents, improving their behavior via imitation and random innovations, relate to the trajectories of optimal growth models. Second, we aim at paving the way for the development of large-scale agent based models fit for policy evaluation (see e.g (Farmer and Foley 2009)).

On the theoretical side, we build on two contributions of Gintis, (Gintis 2006) and (Gintis 2007), who obtain strong properties of convergence towards general equilibrium, in an agent-based framework where agents use private prices as conventions in the sense of (Peyton-Young 1993). Gintis acknowledges the limitation of his model "There is no inter-industry trade and there is only one financial asset. Consumers do no life-cycle saving and labour is homogeneous.[...]" Also as pointed out by (Bilancini and Petri 2008) his model lacks capital accumulation. We try to address part of these issues by developing a "Gintis-like" model of a growing economy with heterogenous capital.

With regards to the economic policy oriented literature, the features of our model have a lot of commonalities with a number of ongoing projects in the field (see e.g (Deissenberg and al. 2008), (Dosi and al. 2010), (Seppecher 2010)) which, building upon (Kirman 1992) critique, aim at developing microfounded macroeconomic models going beyond the representative agent hypothesis (see (Lebaron and Tesfastion 2008), (Colander 2006)) and allowing the occurrence of non-optimal trajectories (models with features such as unbalanced growth among sectors, involuntary unemployment, price rigidities). The particularity of our approach is that we provide an explicit link to data, describing an initialization scheme on the basis (mainly) of input-output tables (see (Duchin and Steenge 2007)). We moreover remain in a framework where we can use as a benchmark standard optimal growth models.

As far as convergence to general equilibrium is concerned, we report the results of simulations which extend the results of Gintis to a framework with capital accumulation, inter-industry trade and life-saving behavior: prices tend towards their competitive values and the labor market equilibrates at a level where there is no involuntary unemployment. In this framework, the long-term dynamics of output is exponential growth at a rate determined by the speed of change of agents expectations, while at shorter time-scale non-linearity of firms investment decisions produce quasi-periodic fluctuations. Complementary simulations also show that the speed at which agents adjust their prices is crucial for the convergence results (see (Leijonhufvud 2006)) and that a Taylor rule based monetary policy might induce indeterminacy on the dynamics of output (see (Benhabib and al. 2001)).

As far as applied macro-economic modeling is concerned, we claim that
Lagom generiC, though far from comprehensive, can be seen as a proof of concept that dynamically complete and highly disaggregated agent-based models can be used to model economies as complex dynamical systems.

The paper is organized as follows. We present the model using the ODD protocol<fnref n="1" /> (see (Grimm and al. 2006)), that is section 2 gives an overview of the model, section 3 comments on the design concepts used and section 4 gives the details of the implementation. Section 5 presents the results of simulations on the dynamics of prices and section 6 concludes.

# 2 Overview

## 2.1 Purpose

Lagom generiC is an agent-based model designed to represent the evolution of economic systems over a time horizon of one to several decades. On the basis of a specification of the agents microeconomic behavior (e.g pricing and investment behavior of firms, savings and consumption behavior of households), it determines the dynamics of macroeconomic aggregates (e.g : output, GDP, unemployment, savings). It hence provides the opportunity to test microfondations specified outside the representative agent paradigm (see (Kirman 1992)) and a virtual laboratory to qualitatively assess the effects of economic policy. Our central concern in this respect is to develop a dynamically complete model (as opposed to a description of economic dynamics as optimal trajectories) so as to be able to investigate questions like the effects of (green) stimulus policies on economies undergoing a credit crisis.

Still, the framework in which we represent economic dynamics is very much in line with the tradition of general equilibrium theory à la Arrow-Debreu (see (Debreu 1959)) (and the practice of statistical offices). Indeed, we use the notion of goods, firms (endowed with production functions) and households (endowed with utility functions) as primitives. We can then derive, as in optimal growth or computable general equilibrium models, a notion of feasible paths or admissible dynamics. Namely, we consider that there is a finite number $N_G$ of goods and labor of an homogeneous quality which are produced, exchanged, and consumed in the course of the economic process. Each of the goods can be stored as inventories, used as fixed capital or intermediary input in the production process or consumed. There are as many sectors as goods and firms are partitioned into sectors according to the nature of their output.

There is at finite number $N_F \in \mathbb{N}$ of firms<fnref n="2" /> The technical production possibilities of firm $f \in \{1, \dots, N_F\}$ are given by a production function with constant returns to scale:

<footnote n="1">¹For sake of conciseness, some implementation details are omitted in this text. They can be retrieved from the model documentation available in the Lagom section of the european climate forum website: http://www.european-climate-forum.net</footnote>

<footnote n="2">²All firms are not necessarily active at all time, we represent an inactive firm by letting all its states variable assuming a null value.</footnote>
$$ \phi_f : \mathbb{R}_+^{N_G} \times \mathbb{R}_+^{N_G} \times \mathbb{R}_+ \to \mathbb{R}_+ \quad (1) $$

which associate to a vector of intermediary input $j \in \mathbb{R}_+^{N_G}$, a vector of fixed capital $k \in \mathbb{R}_+^{N_G}$, and a quantity of labor $l \in \mathbb{R}_+$ (measured in terms of productivity units, see below) the maximal quantity of output $\phi_f(j, k, l)$ of good $g_f$, firm $f$ can produce. Considering the production functions as representing the technological frontier at the level of an industry, we shall assume that all the firms of a sector share the same production function.

There is a constant number $N_H$ of households. Household $h \in \{1, \dots, N_H\}$ have preferences represented by an utility function<fnref n="3" /> $u_h : \mathbb{R}_+^{N_G} \to \mathbb{R}$. Each household can provide one unit of labor. Moreover, each sector $g \in \{1, \dots, N_G\}$ is characterized by a labor productivity index $\omega_g \in \mathbb{R}_+$, so that a household providing a share $\alpha$ of its labor to a firm in sector $g$ in fact contributes to $\omega_g \alpha$ productivity units. Endogenous growth is triggered by an AK-like engine: the evolution of the labor productivity index proportionality to net investment. That is denoting by $k_f^t \in \mathbb{R}_+^{N_G}$, the capital stock held by firm $f$ in period $t$, the labor productivity in sector $g$ has its evolution governed by:

$$ \omega_g^{t+1} \le \frac{\sum_{\{f | g_f = g\}} \|k_f^t\|}{\sum_{\{f | g_f = g\}} \|k_f^{t-1}\|} \omega_g^t \quad (2) $$

Moreover the total labor supply to firm is constrained by the number of households. That is denoting by $l_f^t$ the labor employed by firm $f$ in period $t$, one has:

$$ \sum_{j=1}^{N_F} l_f \le N_H \quad (3) $$

Finally, the evolution of goods stocks is constrained by the technological constraints (1) and the fact that fixed capital (resp. inventory) in the form of good $g$ depreciates at a rate $\delta_g$ (resp. $\delta'_g$). That is denoting respectively by $i_f^t \in \mathbb{R}_+$, $j_f^t \in \mathbb{R}_+^{N_G}$, $k_f^t \in \mathbb{R}_+^{N_G}$, $l_f^t \in \mathbb{R}_+$ the inventory, intermediary inputs, fixed capital, and labor input of firm $f$, $c_h^t$ the consumption of household $h$ in period $t$ we have<fnref n="4" />:

$$ \sum_{f=1}^{N_F} i_f^{t+1} e_{g_f} + j_f^{t+1} + (k_f^{t+1} - (1-\delta) \otimes k_f^t) + \sum_{i=1}^{N_H} c_h^{t+1} \le \sum_{f=1}^{N_F} (1-\delta') \otimes i_f^t + \phi_f(j_f^t, k_f^t, \lambda_{g_f} l_f^t) e_{g_f} \quad (4) $$

Given initial values for firms stocks $S = (i_f^0, k_f^0, j_f^0)_{j=1...N_F}$ and labor productivitys $\Lambda = (\lambda_g)_{g=1...N_G}$ equations (2) to (4) define a set of feasible paths,

<footnote n="3">³In order to simplify the implementation of imitation processes and of the initialization scheme, we shall assume that all households use the same utility function. Relaxing this assumption does not raise difficulties other than technical, see (Gintis 2007).</footnote>

<footnote n="4">⁴Where $\delta = (\delta_1, \dots, \delta_{N_G})$, $\delta' = (\delta'_1, \dots, \delta'_{N_G})$, $e_g$ denotes the $g$th vector of the canonical basis of $\mathbb{R}^G$ and $\otimes$ multiplication coordinatewise in $\mathbb{R}^G$.</footnote>
$\mathcal{F}(S, \Lambda)$ for firms inventories, fixed capital, intermediary inputs and labor input, households consumption, labor productivity index<fnref n="5" />.

In the optimal growth literature, the trajectory of the economic system would then be determined by choosing utility weights $(\gamma_h)_{h=1...N_H} \in \mathbb{R}_+^{N_H}$, a discount factor $\nu \in \mathbb{R}_+$ and by solving the intertemporal optimization problem of maximizing the discounted sum of weighted utilities, that is:

$$ \left\{ \begin{array}{l} \max \sum_{t=1}^{+\infty} \nu^t \left( \sum_{h=1}^{N_h} \gamma_h u_h(c_h^t) \right) \\ s.t. \left( (i_f^t, k_f^t, j_f^t, l_f^t)_{f \in 1...N_F}, (c_h^t)_{h \in 1...N_H}, (\lambda_g^t)_{g \in 1...N_G} \right)^{t=1...+\infty} \in \mathcal{F}(S, \Lambda) \end{array} \right. \quad (5) $$

Hence economic dynamics would be represented as an optimal trajectory (which is moreover unique in almost all practical applications thanks to an appropriate choice of the primitives). Our approach is to explore a larger set of possible trajectories using agent-based dynamics.

## 2.2 Entities, State variables and scales

We shall indeed explore, in the framework defined by equations (2) to (4), the dynamics generated by the interactions between a population of agents consisting of $N_F$ firms (at most), $N_H$ households, a government and a financial system. There are $N_G$ sectors, which are meso-level entities grouping all firms producing the same good. Finally, two directed networks whose evolution is time dependent structure the interactions between agents: a network of trade relationships links buyers (firms and households) and sellers (firms) and a network of labor relationships links employers (firms) and employees (households). The state variables characterizing those entities are summarized in tables (1) to (6).

<table><caption>Table 1: State variables of households</caption><thead><tr><th>Variable</th><th>Symbol</th><th>Type</th></tr></thead><tbody><tr><td>identity</td><td><i>h</i></td><td>{1, ..., <i>N<sub>H</sub></i>}</td></tr><tr><td>goods stock</td><td><i>c</i></td><td><i>R</i><sub>+</sub><sup><i>N<sub>G</sub></i></sup></td></tr><tr><td>consumption technology</td><td><i>γ</i></td><td><i>R</i><sub>+</sub><sup><i>N<sub>G</sub></i></sup></td></tr><tr><td>monetary holdings</td><td><i>m</i></td><td><i>R</i><sub>+</sub></td></tr><tr><td>savings</td><td><i>s</i></td><td><i>R</i><sub>+</sub></td></tr><tr><td>wage fallback</td><td><i>σ</i></td><td><i>R</i><sub>+</sub></td></tr><tr><td>income</td><td><i>i</i></td><td><i>R</i><sub>+</sub></td></tr><tr><td>income forecast</td><td><i>ī</i></td><td><i>R</i><sub>+</sub></td></tr><tr><td>income trend forecast</td><td><i>ī̄</i></td><td><i>R</i><sub>+</sub></td></tr></tbody></table>

<footnote n="5">⁵Hence $\mathcal{F}(S, \Lambda)$ is a subset of $((\mathbb{R}_+^{N_G} \times \mathbb{R}_+^{N_G} \times \mathbb{R}_+^{N_G} \times \mathbb{R}_+)^{N_F} \times (\mathbb{R}_+^{N_G})^{n_H} \times (\mathbb{R}_+)^{N_H})^{1+\cdots+\infty}$</footnote>
<table><caption>Table 2: State variables of firms</caption><thead><tr><th>Variable</th><th>Symbol</th><th>Type</th></tr></thead><tbody><tr><td>identity</td><td>f</td><td>{1, ..., N<sub>F</sub>}</td></tr><tr><td>inventory</td><td>i</td><td>R<sub>+</sub></td></tr><tr><td>intermediary inputs</td><td>j</td><td>R<sub>+</sub><sup>N<sub>G</sub></sup></td></tr><tr><td>fixed capital</td><td>k</td><td>R<sub>+</sub><sup>N<sub>G</sub></sup></td></tr><tr><td>labor employed</td><td>l</td><td>R<sub>+</sub></td></tr><tr><td>production technology</td><td>(&iota;, &kappa;, &lambda;)</td><td>R<sub>+</sub><sup>N<sub>G</sub></sup> &times; R<sub>+</sub><sup>N<sub>G</sub></sup> &times; R<sub>+</sub></td></tr><tr><td>actual production</td><td>q</td><td>R<sub>+</sub></td></tr><tr><td>target production</td><td>q&#773;</td><td>R<sub>+</sub></td></tr><tr><td>target employment</td><td>l&#773;</td><td>R<sub>+</sub></td></tr><tr><td>sales</td><td>s</td><td>R<sub>+</sub></td></tr><tr><td>sales forecast</td><td>s&#773;</td><td>R<sub>+</sub></td></tr><tr><td>sales trend forecast</td><td>s&#773;&#773;</td><td>R<sub>+</sub></td></tr><tr><td>monetary holdings</td><td>m</td><td>R<sub>+</sub></td></tr><tr><td>debt</td><td>d</td><td>R<sub>+</sub></td></tr><tr><td>profit</td><td>&pi;</td><td>R<sub>+</sub></td></tr><tr><td>costs</td><td>c</td><td>R<sub>+</sub></td></tr><tr><td>last period costs</td><td>c'</td><td>R<sub>+</sub></td></tr><tr><td>price</td><td>p</td><td>R<sub>+</sub></td></tr><tr><td>mark-up</td><td>&mu;</td><td>R<sub>+</sub></td></tr><tr><td>reservation wage-index</td><td>&sigma;</td><td>R<sub>+</sub></td></tr><tr><td>investment rate</td><td>&tau;</td><td>R<sub>+</sub></td></tr></tbody></table>

<table><caption>Table 3: State variables of the Government</caption><thead><tr><th>Variable</th><th>Symbol</th><th>Type</th></tr></thead><tbody><tr><td>monetary holdings</td><td>m</td><td>R<sub>+</sub></td></tr><tr><td>unemployment wage</td><td>u</td><td>R<sub>+</sub></td></tr><tr><td>tax rate</td><td>&tau;</td><td>R<sub>+</sub></td></tr></tbody></table>

<table><caption>Table 4: State variables of the Financial system</caption><thead><tr><th>Variable</th><th>Symbol</th><th>Type</th></tr></thead><tbody><tr><td>interest rate</td><td>r</td><td>R<sub>+</sub></td></tr></tbody></table>
<table><caption>Table 5: State variables of Sectors</caption><thead><tr><th>Variable</th><th>Symbol</th><th>Type</th></tr></thead><tbody><tr><td>benchmark wage</td><td>w</td><td>R<sub>+</sub></td></tr><tr><td>labor productivity index</td><td>ω</td><td>R<sub>+</sub></td></tr><tr><td>number of active firms</td><td>m</td><td>R<sub>+</sub></td></tr></tbody></table>

<table><caption>Table 6: Networks</caption><thead><tr><th>Variable</th><th>Symbol</th><th>Type</th></tr></thead><tbody><tr><td>Trade Network</td><td>T</td><td>{1, ..., N<sub>H</sub> + N<sub>F</sub> + 1} × {1, ..., N<sub>F</sub> + 1} → R<sub>+</sub></td></tr><tr><td>Labor Network</td><td>L</td><td>{1, ..., N<sub>H</sub>} × {1, ..., N<sub>F</sub>} → R<sub>+</sub></td></tr></tbody></table>

## 2.3 Process overview and scheduling

The simulation proceeds along discrete periods of time within which agents actions and interactions take place in a stepwise fashion. Certain steps take place every period, others have a variable periodicity which the user can set in order to implement assumptions on the relative speeds of change of (e.g) technologies, prices or wages. Within a period, the relative order of steps is as follows.

1. Every period starts with a *Preparatory step* during which firms profits, costs and sales are set to zero.

2. The *Exchange of Goods* takes place every period. Buyers observe the stocks and prices of the sellers to which they are connected (new connections might be formed and old connections might also be broken at this point). They then determine a demand on the basis of their current production (resp. consumption for households) technologies, stocks of goods, production target (firms) and monetary holdings (households). This demand is matched with supply via a rationing scheme based on bilateral trading.

3. The *Labor market* takes place periodically. On the basis of firms reservation wage-indexes and households fallbacks, work contracts (connections of the labor network) specifying a certain share of the benchmark wage to be paid by a firm to an household in exchange of a certain share of its workforce are formed and broken.

4. *Production and consumption* take place every period. On the basis of their stocks of intermediary inputs, fixed capital and of their workforce, firms try to realize their target production using their current production technology. Meanwhile, households consume their entire stock of goods.
5. *Accounting* takes place every period. Firms pay wages and dividends to households, interests on their debt to the financial system. If their account is unbalanced at this point, they subscribe a new debt towards the financial system. Apart from wages and dividends paid by firms, households receive interests on their savings from the financial system. The government taxes part of households income in order to pay an unemployment insurance to (partly) unemployed households.

6. *Expectations updating* takes place every period. Using exponential smoothing, firms update their sales expectations. On this basis, they update their target production and decide of future investments in fixed capital. Using exponential smoothing, households update their income expectations. On this basis, they allocate their wealth between monetary holdings and savings using Deaton thumb rule (see (Deaton 1992)).

7. *Labor productivity updating* takes place every period. The labor productivity in a sector increases proportionally to net investment. The benchmark wage is indexed on the labor productivity.

8. *Price Updating* takes place periodically. Firms fix their price as a function of their current mark-up rate and production costs.

9. *Interest rate updating* takes place periodically. The financial system updates the interest rate according to a Taylor rule.

10. *Firms Entry, Exit and Bankrupcy* take place periodically on the basis of a sector specific profitability threshold given as a risk-premium above the interest rate. Firms are deleted in sectors whose average profit rate is below the threshold. Firms are created/activated (up to the maximal number of firms $N_F$) in sectors whose average profit is above the threshold. Independently of their sector, firms whose profit rate is below the interest rate are liquidated and start anew with optimal characteristics.

11. *Genetic evolution of firms technologies* takes place periodically. With some probability, each firm observes the technology of a sample of its peers and adopts the one with the lowest unit production cost. Also, each firm mutates its technology with some probability (i.e randomly adopts a new technology).

12. *Genetic evolution of households technologies* takes place periodically. With some probability, each household observes the (consumption) technology of a sample of its peers and adopts the most efficient one according to its utility. Also, each household mutates its technology with some probability.

13. *Genetic evolution of firms mark-ups* takes place periodically. With some probability, each firm observes the mark-ups of a sample of its peers and adopts the one of the most profitable firm. Also, each firm mutates its mark-up with some probability.
14. Genetic evolution of firms reservation wage-indexes takes place periodically. With some probability, each firm observes the reservation wage-indexes of a sample of its peers and adopts the one of the most efficient firm on the labor market. Also, each firm mutates its reservation wage-index with some probability.

# 3 Design Concepts

## 3.1 Emergence

From these interactions macro-economic features emerge: the dynamics of output, consumption and investment in each sector, the evolution of prices, wages and interest rates in the whole economy. We are concerned with the mechanisms (dis-)equilibrating markets for credit, labor and goods and the spreading of conventions (in the sense of (Peyton-Young 1993)) about prices, real wages and technologies.

## 3.2 Adaptation

Agents adapt their behavior partly in a rule-based fashion, partly in a genetic fashion. The rule-based adaptation concern mainly the management of stocks (investment and production of firms, saving of households), the genetic one, variables which can be seen as strategies in a game-theoretic sense (mark-ups, reservation wage-indexes, production and consumption technologies).

## 3.3 Objectives

Firms aim at extending their market shares and increasing their profits. They rely therefore on a set of fitness functions measuring the profit rate, the growth rate of sales, the ratio between target and actual investment, unit-production costs.

Households aim at optimizing, according to an utility function, the composition of their consumption basket given prevailing prices. They also aim at controlling their income stream using Deaton thumb rule.

The use of the Taylor rule by the financial system underlines a dual objective for the financial system: controlling inflation and unemployment.

## 3.4 Learning

There is no second order evolution for behavioral rules in this version of the model.

## 3.5 Prediction

Using extrapolation methods (Winter-Holt forecasting), firms forecast future sales and households future income.
## 3.6 Sensing

Generically, agents are fully informed about their internal state and, when interacting with peers, observe the state variables relevant for the interaction (see below). Agents might also observe aggregate features of the model “computed” by the financial system and the government (e.g inflation, average price, unemployment rate, tax rate)

## 3.7 Interaction

Firms and households interact in a bilateral fashion on the labor and goods markets on the basis of the corresponding networks and of their dynamics. The genetic evolution mechanisms form a more complex type of interactions which involve sampling population of peers and ordering them according to some fitness criteria.

## 3.8 Stochasticity

There are two major sources of stochasticity: randomness of the matching processes which govern agents interactions on the goods and labor markets, random innovations during the genetic evolution processes which lead to stochastic dynamics for prices, wages and technologies.

## 3.9 Collectives

Sectors form collective entities which aggregate all the firms producing the same output. These entities have specific state variable (e.g benchmark wage and labor productivity index) whose evolution influence their counterparts at the individual level.

## 3.10 Observation

We provide a graphical interface based on Mason (see (Luke and al. 2005)) which allows the representation of the dynamics of agents individual state variables and of a set of aggregates indicators at the sectoral of global level (e.g inflation and interest rates, investment, intermediary and final consumption).

# 4 Details

## 4.1 Initialization

The initialization process aims at assigning initial values to the agents state variables and to fix the parameters which will govern their evolution. We aim at having clear empirical counterparts for the state variables and therefore use a data format close to the practice of national accounts whereas the choice of parameters should be seen as the implementation of assumptions characterizing the agents behavior and the institutional setting.
### 4.1.1 Data

The data requirements are reported in table (7) : the value of stocks is thought to be this at the starting date of the simulation, the value of flows this measured during the time interval corresponding to the first period of the simulation. These assumptions govern the interpretation of time in the model: the length of a period is thought to correspond to the time interval used to measure flows in the data.

As far as units of measurements are concerned, data on quantities are assumed to correspond to values computed using prices at the initial date. Hence, in the course of a simulation, quantities will be measured in terms of value at this base-year prices <fnref n="6" />.

<table><caption>Table 7: Data requirements</caption><thead><tr><th>Variable</th><th>Symbol</th><th>Type</th></tr></thead><tbody><tr><td>input-output matrix</td><td>(A<sub>g,g'</sub>)<sub>g=1...N<sub>G</sub>,j=1,...N<sub>G</sub></sub></td><td>R<sup>N<sub>G</sub>×N<sub>G</sub></sup><sub>+</sub></td></tr><tr><td>Total output</td><td>(Q<sub>g</sub>)<sub>g=1...N<sub>G</sub></sub></td><td>R<sup>N<sub>G</sub></sup><sub>+</sub></td></tr><tr><td>Final consumption of households</td><td>(C<sub>g</sub>)<sub>g=1...N<sub>G</sub></sub></td><td>R<sup>N<sub>G</sub></sup><sub>+</sub></td></tr><tr><td>Total wages paid</td><td>(W<sub>g</sub>)<sub>g=1...N<sub>G</sub></sub></td><td>R<sup>N<sub>G</sub></sup><sub>+</sub></td></tr><tr><td>Capital stock</td><td>(K<sub>g,g'</sub>)<sub>g=1...N<sub>G</sub>,j=1,...N<sub>G</sub></sub></td><td>R<sup>N<sub>G</sub>×N<sub>G</sub></sup><sub>+</sub></td></tr><tr><td>Gross investment</td><td>(I<sub>g,g'</sub>)<sub>g=1...N<sub>G</sub>,j=1,...N<sub>G</sub></sub></td><td>R<sup>N<sub>G</sub>×N<sub>G</sub></sup><sub>+</sub></td></tr><tr><td>Growth rate</td><td>(G<sub>g</sub>)<sub>g=1...N<sub>G</sub></sub></td><td>R<sup>N<sub>G</sub></sup><sub>+</sub></td></tr><tr><td>Capacity utilization rate</td><td>(B<sub>g</sub>)<sub>g=1...N<sub>G</sub></sub></td><td>R<sup>N<sub>G</sub></sup><sub>+</sub></td></tr><tr><td>Number of employees</td><td>(N<sub>g</sub>)<sub>g=1...N<sub>G</sub></sub></td><td>N<sup>N<sub>G</sub></sup></td></tr><tr><td>Total debt per sector</td><td>(D<sub>g</sub>)<sub>g=1...N<sub>G</sub></sub></td><td>R<sup>N<sub>G</sub></sup></td></tr><tr><td>Total households savings</td><td>S</td><td>R<sub>+</sub></td></tr><tr><td>Unemployment rate</td><td>U</td><td>R<sub>+</sub></td></tr><tr><td>Interest rate</td><td>R</td><td>R<sub>+</sub></td></tr></tbody></table>

### 4.1.2 Sectors

First, the sectors are initialized. The labor productivity index is set equal to one in every sector. In order to ensure consistency with the data, $(1 - U) * N_h$ households shall be initially employed and a fraction $\frac{N_g}{\sum_{i=1}^{G} N_i}$ of those shall be working in sector g. The benchmark wage is then set such that (assuming an average reservation wage-index of one) total wages paid to households in the

<footnote n="6">⁶In particular the coefficient $A_{g,g'}$ of the input-output matrix specifies the value of the output of sector g used as intermediary inputs by sector g' (see (Duchin and Steenge 2007)), the coefficient $K_{g,g'}$ of the fixed capital matrix represents the value at current prices $K_{g,g'}$ of the stock of fixed capital of sector g' in good g (i.e output of sector g) and the term $I_{g,g'}$ of the gross-investment matrix specifies the value of gross investment made by sector g' in the form of good g.</footnote>
first period of a simulation equal total wages paid to households according to the data. That is:

$$b_g^0 := \frac{W_g}{(1 - U) * N_H \frac{N_g}{\sum_{i=1}^{G} N_i}}. \qquad (6)$$

The number of firms in each sector is initialized proportionally to the total value of output produced in the sector, that is

$$m_g^0 := \frac{q_g}{\sum_{g'=1}^{N_g} q_{g'}} N_F^0. \qquad (7)$$

where $N_F^0$ is a user-chosen parameter representing the initial number of active firms.

Finally, parameters giving the firms entry and exit rates, the clustering properties of the genetic processes (peers sampling rate and imitation rate), and the sector-specific risk-premium should be specified.

<table><caption>Table 8: Sectors Parameters</caption><thead><tr><td>Variable</td><td>Type</td></tr></thead><tbody><tr><td>Firms entry rate</td><td>[0, 1]</td></tr><tr><td>Firms exit rate</td><td>[0, 1]</td></tr><tr><td>Risk premium</td><td>[0, 1]</td></tr><tr><td>Peers sampling rate</td><td>[0, 1]</td></tr><tr><td>Imitation rate</td><td>[0, 1]</td></tr></tbody></table>

### 4.1.3 Firms

The firms are initialized sectorwise. For each firm an household is drawn at random to be the owner of the firm. For each sector $g$, a distribution of firms size $(\alpha_f)_{f=1...m_g^0}$ is drawn at random$^7$. The target production of firm $f$ is then set equal to $\bar{q}_f = (1 + G_g)\alpha_f Q_g$, so as to ensure consistency with the data on growth rate and total output. The sales forecast is set equal to the target production and the trend forecast to the growth rate.

In order to ensure consistency with input-output data, the average production technology $(\iota_g, \kappa_g, \lambda_g) \in \mathbb{R}_+^{N_G} \times \mathbb{R}_+^{N_G} \times \mathbb{R}_+$ should be equal to:

$$\iota_g = \frac{1}{(1 + G_g)Q_g} (A_{1,g}, \dots, A_{N_G,g}), \qquad (8)$$

$$\kappa_g = \frac{1}{(1 + G_g)Q_g} (K_{1,g}, \dots, K_{N_G,g}). \qquad (9)$$

<footnote>$^7$it shall satisfy $\sum_{f=1}^{m_g^0} \alpha_f = 1$</footnote>
$$ \lambda_g = \frac{1}{(1 + G_g)Q_g} \left( \frac{(1 + U) \sum_{i=1}^{N_G} N_i}{N_H} \right). \qquad (10) $$

The initial technology of firm $f$, $(\iota_f, \kappa_f, \lambda_f)$, is then drawn at random according to a distribution with mean $(\iota_g, \kappa_g, \lambda_g)^8$. The stocks of intermediary inputs is set to zero and the labor employed are set equal to zero (they will be constituted during the first exchange and labor market steps) while the inventory is set as a multiple of the target production given by the inventory ratio and target employment is set equal to $\bar{l}_f := \lambda_f \bar{q}_j$. The initial distribution of fixed capital among firms and the investment rate are jointly determined so as to ensure consistency with the data on gross investment and capacity utilization rates. That is the investment rate and the stock of fixed capital must be such that investment in the first period coincide with the data and, assuming the goods markets equilibrate in the forthcoming periods, investment grows at the constant rate $G_g$ in every sector<fnref n="9" />.

Given the definition of the benchmark wage and the convention on quantities measurement, it is a building assumption that prices and reservation wage-indexes have mean one, they are consequently drawn according to a random distribution with mean one. Under those assumptions, one can infer the unit production cost of firm $f$ as:

$$ \gamma_f := \sigma_f b_{g_f} \lambda_f + \sum_{g=1}^{N_G} \iota_f + \delta_g \kappa_f. \qquad (11) $$

The mark-up $\mu_f$ of firm $f$ is then set by solving $(1 + \mu_f)(\gamma_f) = p_f$ and its “last-period” costs as $c'_f := \gamma_f q_f$.

As a whole, one obtains a population of firms among which the total output of the sector is allocated, and whose reservation wage-indexes, prices, technologies and mark-ups are randomly distributed and consistent with the initial data.

<table><caption>Table 9: Firms Parameters</caption><thead><tr><th>Variable</th><th>Type</th></tr></thead><tbody><tr><td>Suppliers sampling rate</td><td>[0, 1]</td></tr><tr><td>mutation rate</td><td>[0, 1]</td></tr><tr><td>Minimal labor capacity</td><td>[0, 1]</td></tr><tr><td>Dividend rate</td><td>[0, 1]</td></tr><tr><td>Sales forecast rate of change</td><td>[0, 1]</td></tr><tr><td>Inventory ratio</td><td>[1, +&infin;]</td></tr></tbody></table>

Finally, parameters controlling the expectations (Sales forecast rate of change), the workforce (Minimal labor capacity) and the financial (dividend rate) man-

<footnote n="8">⁸For details, see the method Sector.initMutateInputCoefficients() in the online documentation</footnote>

<footnote n="9">⁹See the method Sector.getInitCapacityUtilizationRate() in the documentation for details.</footnote>
agement, the strength of competition on the goods market (suppliers sampling rate) should be specified according to table (9).

### 4.1.4 Households

The households are not thought to hold any durable goods. Hence their stocks of goods are initialized to zero. Their consumption technology and monetary holdings are initialized so as to be consistent with the consumption data: the mean consumption technology is computed as $\frac{1}{\sum_{g'=1}^{N_G} C_{g'}} (C_g)_{g=1...N_G}$ and mean

monetary holding as $\frac{\sum_{g'=1}^{N_G} C_{g'}}{N_H}$. Individual households consumption technologies and monetary holdings are drawn at random according to an uniform distribution whose mean coincide with the empirical one. In a similar manner, household savings are drawn according to a random distribution with mean $\frac{S}{N_H}$.

Finally, the wage fallback is drawn according to the uniform distribution in $[0, \frac{1+U}{1-U}]$, so as to ensure that the unemployment rate corresponds to the share of households with fallback above one.

Control parameters for the households are reported in table (10). The saving rate and the expected income change rate will be key drivers of final demand.

<table><caption>Table 10: Households Parameters</caption><thead><tr><td>Variable</td><td>Type</td></tr></thead><tbody><tr><td>Suppliers sampling rate</td><td>[0, 1]</td></tr><tr><td>Employers sampling rate</td><td>[0, 1]</td></tr><tr><td>Peers sampling rate</td><td>[0, 1]</td></tr><tr><td>Imitation rate</td><td>[0, 1]</td></tr><tr><td>mutation rate</td><td>[0, 1]</td></tr><tr><td>Saving rate</td><td>[0, 1]</td></tr><tr><td>Expected income change rate</td><td>[0, 1]</td></tr></tbody></table>

### 4.1.5 Government

The monetary holdings of the government are set equal to zero. The unemployment wage and the tax rate will be determined during the first accounting step. The initialization of the government only consist in setting the value of the parameter giving the unemployment insurance rate (i.e the percentage of the average wage the unemployed households receive as insurance payment).
### 4.1.6 Financial system

The inflation and interest rates are set according to the initial data provided. The initialization of the financial system mainly consist in specifying the features of the monetary policy by assigning values to the target inflation, unemployment and interest rates as well as the magnitude of adjustment coefficients( see table (11)).

<table><caption>Table 11: Financial system Parameters</caption><thead><tr><td>Variable</td><td>Type</td></tr></thead><tbody><tr><td>Target unemployment rate</td><td>[0, 1]</td></tr><tr><td>Target inflation rate</td><td>[0, 1]</td></tr><tr><td>Target interest rate</td><td>[0, 1]</td></tr><tr><td>Unemployment adjustment coefficient</td><td>[0, 1]</td></tr><tr><td>Inflation adjustment coefficient</td><td>[0, 1]</td></tr></tbody></table>

### 4.1.7 Trade network

The trade network is initialized in such a way that rationing (if any<fnref n="10" />) in the first period is uniform among agents. For each good $g \in \{1 \cdots N_G\}$, total initial demand is $D_g = C_g + \sum_{g'=1}^{N_G} A_{g,g'} + \sum_{g'=1}^{N_G} I_{g,g'}$, total output $Q_g$. The ratio of total demand vis-à vis output hence is $\beta_g = \frac{Q_g}{D_g}$. The initialization process aims at obtaining approximately, using a focal price of one, that the total demand in good $g$ in the first period sum to $D_g$ while total supply is proportional to $Q_g$. Therefore, the trade network is initialized in such a way that for each good, each buyer is connected to sellers whose output represent $\beta_g$ times its demand (what implies, given the construction of $\beta_g$ that every seller is connected to households whose demand represent $\frac{1}{\beta_g}$ its supply) <fnref n="11" />.

### 4.1.8 Employment network

The employment network is initially void, it will be initialized in the first labor market step (see below).

## 4.2 Submodels

### 4.2.1 Exchange of goods

As in (Gintis 2006) and (Gintis 2007), the exchange process is organized around a random queuing mechanism and trade proceeds in a bilateral fashion, on the

<footnote n="10">¹⁰There shall not be rationing in the first period if the data used for initialization come from actual accounts for which one shall have for all $g: C_g + \sum_{g'=1}^{N_g} I_{g,g'} + A_{g,g'} \le Q_{g,g'}$</footnote>

<footnote n="11">¹¹See the method foundation.initTradeNetwork in the documentation for details</footnote>
basis of private prices.

However, in a framework where the main input to production is accumulated capital, rather than “self-reproducing” natural resources, accidental failures of the market process may have drastic consequences on the dynamics. In order to avoid the occurrence of major rationing shocks due to stochastic mismatches between supply and demand, we aim at implementing some form of permanence of commercial relationships between sellers and buyers via the trade network.

So as to ensure that deliveries can be made regularly in the forthcoming periods, supply is constrained to the level corresponding to the production feasible using the fixed capital at full capacity. Priority to old<fnref n="12" /> consumers is implemented, despite the randomness of the queuing mechanism, by restraining supply to new consumers to the margin between full-capacity production and the sales forecasted. More precisely, the supply of a firm to a regular consumer is:

$$ \min(i, q_{\max} - s) \qquad (12) $$

where $q_{\max} := \min(\frac{k_1}{\kappa_1}, \dots, \frac{k_n}{\kappa_n})$, and this to a new consumer is given by:

$$ \min(i, q_{\max} - \bar{s}, q_{\max} - s). \qquad (13) $$

Competition is implemented through the evolution of the trade network, buyers replacing most expensive suppliers before trading <fnref n="13" />.

The other point where we depart from Gintis is that agents visit all the markets “simultaneously,” that is place their orders on a given market taking into consideration the situation prevailing on others.

More precisely, a household with monetary holdings $m$ and consumption technology $\gamma$ determines its demand as a function of the average price $p$ among its suppliers:

$$ d(m, \gamma, p) = m(\frac{\gamma_1}{p_1}, \dots, \frac{\gamma_{N_G}}{p_{N_G}}) \qquad (14) $$

In case its supply is rationed at levels $(r_i)_{g=1...N_G}$, it does not substitute among goods but eventually demands

$$ (\min(d_1(m, \gamma, p), r_1), \dots, \min(d_{N_G}(m, \gamma, p), r_{N_G})). \qquad (15) $$

As far as firms are concerned, the demand in intermediary inputs of a firm with production target $\bar{q}$ and production technology $\gamma$ is given by:

$$ d_i(\bar{q}, \gamma) = \bar{q}\gamma - c \qquad (16) $$

<footnote n="12">¹²i.e those to whom the seller was connected via the trade network at the beginning of the period.</footnote>

<footnote n="13">¹³See the method Suppliers.updateSuppliers() in the online documentation for details</footnote>
Moreover if its production capacity is less than the sales it forecasts for the next period (i.e if $\frac{k}{\kappa} \le \bar{s} + \bar{\bar{s}}$), the firm additionally demands fixed capital, so as to increase its production capacity according to its investment rate $\tau$:

$$d_k(\bar{q}, \gamma) = (1 + \tau)\bar{q}\kappa - k \quad (17)$$

In case of rationing at levels $(r_i)_{g=1...N_G}$, the firm restricts its demands according to the maximal feasible production given the resources constraints:

$$q_r = \max_{a_i+b_i \le r_i} \min(\frac{k_1+a_1}{\kappa_1}, \dots, \frac{k_{N_G}+a_{N_G}}{\kappa_{N_G}}, \frac{c_1+b_1}{\gamma_1}, \dots, \frac{c_{N_G}+b_{N_G}}{\gamma_{N_G}}) \quad (18)$$

and hence demands circulating capital:

$$q_r \gamma \quad (19)$$

and fixed capital:

$$\min((1 + \tau)\bar{q}\kappa - k, r - (\gamma q_r - c)). \quad (20)$$

Note that the firm demand is not constrained by its monetary holdings. It may run a deficit in the course of the exchange process. If this deficit is not compensated by sales occurring during the remaining of the exchange process, the firm will have to subscribe a debt towards the financial system during the accounting step (see below). On the other hand, the demand of households is bounded by their monetary holdings: households have no access to credit.

Now, the exchange process proceeds according to the following algorithm. After the buyers (firms and households) have been randomly ordered, each buyer:

* reorganizes its trade network: it deletes connections to suppliers which have a zero supply, observe a sample of new suppliers (given by the suppliers sampling rate) and while the cheapest observed supplier is cheaper than one of the current ones, it replaces the former by the latter;

* computes its demand on the basis of the prices of its suppliers;

* while it is rationed, there are available sellers with positive supply and it has room for new suppliers( the maximal number of suppliers is given as a share of the total number of firms in each sector by the Suppliers sampling rate), adds new suppliers to its list;

* computes its final demand taking into consideration the rationing it faces;

* purchase its final demand from its suppliers starting with the cheapest<fnref n="14" />.

<footnote n="14">¹⁴N.B: The purchase of $q$ units to a supplier with price $p$ involves the following operations: the stock of the buyer is incremented of $q$ units and the inventory of the seller is decremented of the same amount; the monetary holdings of the buyer are decremented of $q \times p$ units (if the buyer is a firm its costs are incremented of the same amount) and those of the seller, as well as its profits, are correspondingly incremented.</footnote>
4.2.2 Labor market

Employment relations are summed up by work contracts which specify a share
of the benchmark wage to be paid by a firm to an household in exchange of a
certain share of its workforce. The interactions on the labor market are deter-
mined by firms wage indexes which specify the share of the benchmark wage
a firm proposes and the fallback of households which specifies the share of the
benchmark wage an household accept. A work contract from a firm with reserva-
tion wage-index w<sub>f</sub> is acceptable by an household with fallback w<sub>h</sub> if w<sub>h</sub> ≥ w<sub>f</sub>.
At any point in time, the labor demand of a firm is given by the difference
by its target employment and its current workforce (given by its current work-
contracts). The labor capacity of an household is normalized to one, its current
employment level is given by the sum of its work-contracts, and its available
labor supply by the difference between the labor capacity and the employment
level.

Now, the labor market is organized according to a “matching process” which
operates as follows:

* Each household checks if all his work contracts are acceptable (his fallback or the reservation wage-index of one of his employers might have changed since the last labor market step, during the genetic evolution of wages). Labor contract which are no longer acceptable are broken. If the household is not fully employed (that is his level of employment less than one), he tries a number of times (given by the employers sampling rate) to increase its employment level by drawing a firm at random and engaging in a work contract with it (up to the minimum between its available labor supply and the firm demand) if it offers an acceptable wage<fnref n="15" />. .

* Each firm updates its target employment at the level sufficient to produce its target production and to maintain a minimum ratio between production capacity and workforce. That is it sets $\bar{l} = \lambda \max(\bar{q}, \Delta \min(\frac{k_1}{\kappa_1}, \dots, \frac{k_{N_G}}{\kappa_{N_G}}))$ where $\Delta$ is the minimum labor capacity.

If the firm has vacancies (i.e its target employment is greater than its
current workforce), it proposes work contracts to (partly) unemployed
workers, starting with those with the smaller fallback. This labor search
process is iterated until the firm has filled all its vacancies or all the house-
holds have been approached.

If there is over-employment (i.e the firm target employment is smaller than
its current workforce), the firm fires workers, starting with those providing
the lesser amount of work, until the actual employment has reached the
target value <fnref n="16" />.

<footnote n="15">¹⁵See the method household. adjustEmploymentStatus() in the documentation for details</footnote>

<footnote n="16">¹⁶See the method FirmadjustEmployees() in the documentation for details</footnote>
### 4.2.3 Production and Consumption

Given its technological and resource constraints, each firm produces up to its target production. The maximal production with resources $(k, c, l) \in \mathbb{R}_+^{N_G} \times \mathbb{R}_+^{N_G} \times \mathbb{R}_+$ (in fixed capital, intermediary inputs and labor respectively) for a firm using the technology $(\kappa, \gamma, \lambda) \in \mathbb{R}_+^{N_G} \times \mathbb{R}_+^{N_G} \times \mathbb{R}_+$ is

$$q_{\max} = \min(\frac{k_1}{\kappa_1}, \dots, \frac{k_{N_G}}{\kappa_{N_G}}, \frac{c_1}{\gamma_1}, \dots, \frac{c_{N_G}}{\gamma_{N_G}}, \frac{l}{\lambda}). \quad (21)$$

Hence the firm produces:

$$q = \min(q_{\max}, \bar{q}) \quad (22)$$

This output is added to the firm inventory. Meanwhile the intermediary inputs are consumed and the fixed capital is depreciated:

$$k := k - \delta \otimes \kappa q \quad (23)$$

$$c := c - \gamma q \quad (24)$$

The value (computed according to the average trade price that period) of the depreciated fixed capital is added to firms costs.

In parallel, households consume their whole stock of goods.

### 4.2.4 Accounting

Wages, interests and dividends payment occur at this stage, profits, costs and monetary holdings are accordingly updated.

More precisely, firm f adds to its costs and subtract from its monetary holdings the wages $w = \sum_{h=1}^{N_h} \mathcal{L}(f, h)w_f b_{gf}$ it pays to its employees. Interests, computed according to the value of the interest rate currently posted by the financial system, are added to the amount of the outstanding debt. If the firm runs a deficit (i.e its monetary holdings are negative) its debt towards the financial system is increased of the corresponding amount and its monetary holdings set back to zero. Otherwise, the debt is reimbursed up to the level of the monetary holdings. If there remains a benefit, a share of it (given by the dividend rate) is distributed as dividends to its owner, the remaining being held by the firm for self-financed investment.

The firm profit is computed by subtracting last period costs to the revenues of this period sales. The profit rate as the ratio between profits and last period costs.

The gross income of an household h consists in the sum of its wages $w = \sum_{f=1}^{N_F} \mathcal{L}(f, h)\sigma_f b_{gf}$, its unemployment (partial employment) insurance $(1 - \sum_{f=1}^{N_F} \mathcal{L}(j, h))w_a$ (where $w_a$ is the average wage in the economy), the dividends of firms it owns and the interests on its savings.

This gross income $gi_h$ is taxed by the government so as to cover the payment of unemployment insurance. That is the government determines the tax rate as
$$ \tau = \frac{\nu N_H w_a}{\sum_{h=1}^{H} g i_h} \qquad (25) $$

Household h net income for the period then is $i_h = (1-\tau)gi_h$. He determines the repartition of this income between savings and monetary holdings to be spent on consumption next period applying Deaton thumb rule (see (Deaton 1992)) using the saving rate parameter $\tau$. If the income is greater than the expected income $\bar{i}_h$, the monetary holding are set to $\bar{i}_h + (1-\tau)(i_h - \bar{i}_h)$, the remaining income (as well as residual money not spent on consumption during the elapsed period) is added to the savings. If the income is smaller than expected, all the income is allocated to monetary holdings and up to $e_h - i_h$ are unsaved (depending on the level of savings) so as to have monetary holdings as close as possible to the expected income.

### 4.2.5 Expectations updating

Firms forecast their expected sales using exponential smoothing:

$$ \bar{s}^{t+1} := \alpha_s s^t + (1 - \alpha_s)(\bar{s}^t + \bar{s}^t) \qquad (26) $$

$$ \bar{s}^{t+1} := \alpha_s (\bar{s}^{t+1} - \bar{s}^t) + (1 - \alpha_s) \bar{s}^t \qquad (27) $$

where $\alpha_s$ is the rate of change of sales forecast. The target production is then set equal to the value of the forecast for next period.

Households update their expected income using exponential smoothing:

$$ \bar{i}^{t+1} := \alpha_i i^t + (1 - \alpha_i)(\bar{i}^t + \bar{i}^t) \qquad (28) $$

$$ \bar{i}^{t+1} := \alpha_i (\bar{i}^{t+1} - \bar{i}^t) + (1 - \alpha_i) \bar{i}^t \qquad (29) $$

where $\alpha_i$ is the rate of change of expected income.

### 4.2.6 Labor productivity updating

The labor productivity is updated in every sector according to:

$$ \omega_g^{t+1} = \frac{\sum_{\{f|g_f=g\}} \|k_f^{t+1}\|}{\sum_{\{f|g_f=g\}} \|k_f^t\|} \omega_g^t \qquad (30) $$

and the benchmark wage according to:

$$ w_g^{t+1} = \frac{\omega_g^{t+1}}{\omega_g^t} w_g^t \qquad (31) $$
### 4.2.7 Price Updating

Each firm updates its price. Using a pure mark-up over costs, the unit price shall be given by $(1 + \mu)\frac{c'}{q}$. Still, the speed of evolution of prices is adjusted by setting the price using a convex combination between the old price and the actual marked-up cost. That is, using the equation:

$$p^{t+1} := 0.95p^t + 0.05(1 + \mu)\frac{c'}{q} \quad (32)$$

### 4.2.8 Interest rate updating

The financial system updates the interest rate according to the Taylor rule. Based on the inflation rate $\iota \in [0, 1]$ (one of its state variable) and the unemployment rate $v \in [0, 1]$ (a state variable of the government it observes), the interest rate $r \in [0, 1]$ is updated according to:

$$r = r^* + \iota^* + \alpha_{\iota}(\iota - \iota^*) + \alpha_{v}(v^* - v) \quad (33)$$

where $v^*$ is the target unemployment rate, $\iota^*$ the target inflation rate, $r^*$ the target interest rate, $\alpha_v$ the unemployment adjustment coefficient and $\alpha_\iota$ the inflation adjustment coefficient.

### 4.2.9 Firms Entry, exit and bankruptcy

* In a sector, when the average profit rate (since the last entry and exit step) is below the sum of the interest rate and of the risk premium, one can assume, given the mark-up behavior, that there is over production. The less profitable firms are hence deleted until the aggregate target production is lower than last period sales or a maximal number (given as a share of the current number of firms in the sector by the firms exit rate) of firms have been deleted. When a firm is deleted, its debt is lost for the financial system and its fixed capital lost for production. Remaining monetary holdings (if any, which implies the firm had no debt) are transferred to the owner.

* When the average profit rate (since the last entry and exit step) in the sector is greater than the interest rate plus the risk premium, there are incentives to entry. The number of entering firms in a sector is given as a share of the number of firms currently active in the sector, taking the minimum between the firms entry rate and the differential between profits and interest rates.

When a new firm is created, its reservation wage-index is set equal to this of the most efficient firm on the labor market (see below), its technology equal to this of the firm with the least production cost, and its mark-up at the “minimal admissible value” equal to the interest rate plus the risk premium. The household with the largest savings is set to be the owner
of the firm. He “sets” the target production of the firm at the minimum between the average desired production and the production feasible with a capital stock corresponding to the value of its savings. He henceforth transfers to the firm the corresponding share of its savings.

* In each sector, firms whose average profit rate (since the last entry and exit step) is below the interest rate are bankrupted. Its debt is cancelled (if it has no debt, the remaining monetary holdings are transferred to the owner). A new owner is drawn at random and the behavioral characteristics are reset as these of newly created firms.

### 4.2.10 Genetic evolution

All the variables subject to “genetic evolution”: households consumption technology, firms production technologies, reservation wage-indexes and mark-ups are updated according to a similar process:

* A subset of imitating agents (whose size is given by the imitation rate). Each of thee imitating agents observes a random sample (whose size is determined by the peer sampling rate) of its peers: other households, firms of the same sector. It then copies the value of the variable of the agent with the highest fitness (see below).

* With a positive probability (given by the mutation rate), each agent randomly picks a new value for the variable under consideration.

The fitness function used is specific to the variable under consideration.

* Firms evaluate production technologies according to the unit production cost. That is:

$$ (\gamma, \kappa, \lambda) > (\gamma', \kappa', \lambda') \Leftrightarrow \frac{p \cdot (\gamma + \kappa) + w\lambda}{\phi_f(\gamma, \kappa, \lambda)} \le \frac{p \cdot (\gamma' + \kappa') + w\lambda'}{\phi_f(\gamma', \kappa', \lambda')} \quad (34) $$

where p is the average price.

* Firms evaluate mark-ups according to a convex combination between the growth rate of profits and sales. That is:

$$ \mu > \mu' \Leftrightarrow \left( \frac{\pi}{\pi_{\text{last}}} - 1 \right) + \frac{s}{s_{\text{last}}} - 1 \ge \left( \frac{\pi'}{\pi'_{\text{last}}} - 1 \right) + \left( \frac{s'}{s'_{\text{last}}} - 1 \right) \quad (35) $$

where $\pi_{\text{last}}$ and $s_{\text{last}}$ denote the profit and the sales of the firm during the last genetic evolution of prices step.

* Firms evaluate reservation wage-indexes according to the share of vacancies filled.
$$ \mu' \succ \mu' \Leftrightarrow \frac{l}{l'} \ge \frac{l'}{l'} \qquad (36) $$

(if both firms have all their vacancies filled, the lower reservation wage-index is preferred)

* Finally, households evaluate consumption technologies according to the ratio between utility and cost:

$$ \gamma \succ \gamma' \Leftrightarrow \frac{u_h(\gamma)}{p \cdot \gamma} \ge \frac{u_h(\gamma')}{p \cdot \gamma'} \qquad (37) $$

The random mutations of technologies are obtained by drawing uniformly in a square around the current technology and normalizing using the production (resp. utility) function.

# 5 Simulations with a single sector

In a first round of simulations, we analyze the behavior of the model with a single sector where each firm uses the same C.E.S production function:

$$ \phi(j, k, l) = (a_j j^s + a_k k^s + a_l l^s)^{\frac{1}{s}} \qquad (38) $$

This is nothing but (Frankel 1962) model (who as a matter of fact uses the particular case of Cobb-Douglas production functions). In this setting, given that the external effects on labor productivity are strictly proportional to investment, it is clear that the equilibrium dynamics at the aggregate level are those of the AK model: exponential growth of output at a constant rate (given an exogenous fixed saving rate). Moreover, the equilibrium payment to labor and capital shall equal their marginal productivity.

## 5.1 Benckhmark experiments

Initializing the model according to the scheme described in the supplementary material<fnref n="17" />, we typically observe, after a transient period, an exponential growth pattern (see figure 1).

Meanwhile, competition among firms via entry and exit drive the mark-up towards its equilibrium value (approximately this of the risk-premium) and the price accordingly stabilizes itself (see figure 2). The lack of inflation is consistent with the fact that monetary holdings grow at the same rate as output underlined in figure 3 (in alternative experiments, sustained inflation can be triggered e.g by indexation of the benchmark wage).

The labor market, whose evolution is summarized in figure 4 equilibrates itself at given wage-index and level of unemployment. This ought to be driven on the one-hand by the genetic evolution of technologies which lead to a demand

<footnote n="17">¹⁷see file Sec1R15.csv online</footnote>
<figure><img src="image_5.png" /><figcaption>Figure 1: Output (blue) and Consumption (pink), log. scale</figcaption></figure>

<figure><img src="image_6.png" /><figcaption>Figure 2: 10*Mark-Up (orange) and Price (yellow)</figcaption></figure>

<figure><img src="image_7.png" /><figcaption>Figure 3: Monetary holdings (blue) and savings (pink), log. scale</figcaption></figure>
of labor corresponding to the ratio of labor to capital minimizing the production
cost while on the other hand the interactions between the fallback behavior of
households and the genetic search for efficient wages lead to a point where there
is no involuntary unemployment.

<figure><img src="image_8.png" /><figcaption>Figure 4: Unemployment (magenta) and average wage reference (green)</figcaption></figure>

In summary, these experiments (also see below) suggest that Gintis’ conclu-
sions on the attainability and stability of equilibrium, with boundedly rational
agents improving their behavior via imitation and random innovations, extend
to a framework with capital accumulation. Once these equilibrium relations are
established, the long-term dynamical features (mainly the growth of output) are
very much in line with these of an AK-model driven by an exogenously given
saving rate.

Still, the determinants of the growth rate in our framework are of a much
more keynesian nature. Output and investment are determined by the final
demand expected by firms, consumption and savings by the revenues anticipated
by households. “Animal spirits” are hence embedded in firms sales forecast and
households expected income forecast. As illustrated by figure 5, the rate of
change of these forecasts are key drivers of the growth rate.

<figure><img src="image_9.png" /><figcaption>Figure 5: Output for expectations rate of change of 0.05 (green), 0.1(red), 0.2 (blue), log. scale</figcaption></figure>

The evolution of firms expectations also lead to “business-cycles like” quasi-
periodic fluctuations of output at shorter time-scale (whose magnitude increase
with the rate of change of expectations as one can observe in figure 5). The non-
linearity of firms investment behavior make the investment much more volatile
than intermediary or final consumption (see figure 6). This leads to fluctuation
of output and unemployment at corresponding periodicities (see figures 7 to 9).
<figure><img src="image_10.png" /><figcaption>Figure 6: Intermediary consumption (green) and Investment (magenta), log. scale</figcaption></figure>

<figure><img src="image_11.png" /><figcaption>Figure 7: Output (rate of expectations change 0.2), log. scale from $10^7$ to $7.10^7$</figcaption></figure>

<figure><img src="image_12.png" /><figcaption>Figure 8: Unemployment, scale from 0 to 0.2</figcaption></figure>

<figure><img src="image_13.png" /><figcaption>Figure 9: Investment, moving average over 5 periods, log. scale from $2.10^6$ to $6.10^7$</figcaption></figure>
## 5.2 "Out-of-equilibrium" experiments

### 5.2.1 Time-scales

In a second-round of simulations, we investigate the influence of the time-scales at which the different processes take place. As hinted at by (Leijonhufvud 2006), their role is crucial. In the benchmark experiment above, the adjustment speed of the labor market is higher than this of the goods market. Decreasing the speed of adjustment of wages, the labor market might fail to equilibrate<fnref n="18" /> (see figure 10).

<figure><img src="image_14.png" /><figcaption>Figure 10: Unemployment (magenta) and average wage reference (green)</figcaption></figure>

Rationing shocks can consequently occur on the labor market (e.g in figure 10 the pick of average wage reference consecutive to labor shortage around period 600). Those might have lasting consequences on output (see figure 11).

<figure><img src="image_15.png" /><figcaption>Figure 11: Output, log. scale</figcaption></figure>

### 5.2.2 Monetary policy

In a third set of experiments, we introduce an additional source of feedback effects by increasing the sensitivity and the intensity of controls by the financial system (see Sec1R15Monetary.csv file online). One then observes increased volatility of the price and on the labor market (see figures 12 and 13).

Also one observes long-term fluctuations (see figure 19 14) between high and low growth rate regimes. This hints at analytical results on the indeterminacy

<footnote n="18">¹⁸see file Sec1R0WS15 online</footnote>

<footnote n="19">¹⁹n.b : the time-span of figures 12 to 14 is much larger than this of the preceding ones</footnote>
<figure><img src="image_16.png" /><figcaption>Figure 12: Mark-up</figcaption></figure>

<figure><img src="image_17.png" /><figcaption>Figure 13: Unemployment (magenta) and average wage reference (green)</figcaption></figure>

of growth equilibrium in presence of a monetary authority following a Taylor rule (see (Benhabib and al. 2001) and (1)). To say the least, it seems that a strong monetary policy alters the stability of firms expectations. Those results are much too preliminary to propose a detailed explanation, still it seems that periods of high growth rate end-up with an increase of price (mark-up) followed by a pick in the interest rate (see figure 15) which in turn announces the transition to the low growth rate regime. As the price and the interest rate stabilize, the high growth rate regime reestablishes itself.

<figure><img src="image_18.png" /><figcaption>Figure 14: Output, log. scale</figcaption></figure>

# 6 Simulation with multiple sectors

As we increase the number of sectors, convergence to equilibrium prices, long-term exponential growth and persistent short-term fluctuations driven by in-
<figure><img src="image_19.png" /><figcaption>Figure 15: Interest rate, moving average</figcaption></figure>

vestment volatility remain the benchmark picture (for appropriate adjustment speeds on goods and labor markets). Figures 16 and 17 illustrate convergence properties of mark-ups towards their equilibrium values holds in frameworks with different production structures and heterogenous risk-premiums (see files Sec2RVar and Sec4RVar online). Figures 18 and 19 show similar results for the labor market.

<figure><img src="image_20.png" /><figcaption>Figure 16: 2*Mark-up (Orange) and Price (yellow)</figcaption></figure>

<figure><img src="image_21.png" /><figcaption>Figure 17: 2*Mark-up (Orange) and Price (yellow)</figcaption></figure>

Figure 20 and 21 shows that the exponential growth properties of output are accordingly conserved. In particular figure 21 pictures an economy in which the two first sectors only produce investment goods and intermediary inputs while the two last sectors produce consumption goods. It illustrates the influence on total output of investment volatility: the volatility of output is much greater in the sectors producing investment goods.
<figure><img src="image_22.png" /><figcaption>Figure 18: Unemployment (magenta) and average wage reference (green)</figcaption></figure>

<figure><img src="image_23.png" /><figcaption>Figure 19: Unemployment (magenta) and average wage reference (green)</figcaption></figure>

<figure><img src="image_24.png" /><figcaption>Figure 20: Output (blue), log. scale</figcaption></figure>

<figure><img src="image_25.png" /><figcaption>Figure 21: Output (blue), log. scale</figcaption></figure>
# 7 Concluding remarks

Though far from perfect, we shall claim that the model presented here can be seen as a “proof of concept” that large-scale agent-based macro-model are feasible. As a first step further, we have used this model for “theory generation”, investigating the extension to a framework with capital accumulation of Ginotis results on the dynamics of general equilibrium. Our result suggest that, indeed, boundedly rational agents improving their behavior via imitation and random innovations, can drive the complex dynamics of an economic system to a stochastically stable state with equilibrium features.
References

Arrow, K. (1962) "The economic Implications of Learning by Doing," The Review of Economic Studies, Vol. 29, No. 3, pp 155-173.

Benhabib, J. , Meng,Q. and Nishimura,K. (2000) “Indeterminacy under Con-
stant Returns to Scale in Multisector Economies” Econometrica, Vol. 68, No.
6 ,pp. 1541-1548

Benhabib, J. , Schmitt-Grohé,S. and Uribe,M. (2001) “The Perils of Taylor Rules” Journal of Economic Theory,Vol. 96, pp 40-69

Bilancini, E. and Petri, F. (2008) “The Dynamics of General Equilibrium: A Comment on Professor Gintis” Quaderni del dipartimento di economia politica, n. 538, Universita degli studi di siena.

Colander, D. (2006) “Post-Walrasian Macroeconomics: Beyond the Dynamic Stochastic General Equilibrium Model.” Cambridge University Press, Cambridge, U.K., 2006.

Deaton, A (1959) “Household saving in LDCs: Credit markets, insurance and welfare ”, Scandinavian journal of economics 94(2), 253-273.

Debreu, G (1959) “Theory of Value. An axiomatic analysis of economic equi-
librium ”, Cowles Foundation Monograph 17.

Deissenberg, C., van der Hoog, S., Dawid, H., 2008, “EURACE : A Massively Parallel Agent-Based Model of the European Economy”, Applied Mathematics and Computation 204 (2), 541-552.

Dosi, G. , Fagiolo, G. and Roventini, A. “Schumpeter Meeting Keynes: A Policy-Friendly Model of Endogenous Growth and Business Cycles”, Journal of economic dynamics and control.

Duchin, F. and Steenge, A. (2007) “Mathematical Models in Input-Output Economics”, Rensselaer Working Papers in Economics 0703.

J. Farmer and D. Foley "The economy needs agent-based modelling" Nature
460, 685-686.

Frankel (1962) “The Production Function in Allocation and Growth: A Syn-
thesis” American Economic Review, Vol. 52(5), pp. 996-1022.

Freidlin, M. , and Wentzell,A. (1984) “Random Perturbations of Dynamical Systems” Springer Verlag, New York.
Franklin, S. and Graesser, A. (1997), "Is it an Agent, or just a Program?: A Taxonomy for Autonomous Agents." Proceedings of the Agent Theories, Architectures, and Languages Workshop, Berlin 1997" Springer Verlag, pp 193-206.

Fujisaki, S. and Mino, K (2007). "Generalized Taylor Rule and Determinacy of Growth Equilibrium." Economics Bulletin, Vol. 5(11), pp. 1-7.

Gintis, H. (2006): "The Emergence of a Price System from Decentralized Bilateral Exchange" B. E. Journal of Theoretical Economics, Vol. 6, pp 1302-1322.

Gintis, H. (2007): "The Dynamics of General Equilibrium." Economic Journal Vol. 117, No. 523, pp. 1280-1309.

Grimm, V., Berger, U., Bastiansen, F., Eliassen, S., Ginot, V., Giske, J., Goss-Custard, J., Grand, T., Heinz, S., Huse, G., Huth, A., Jepsen, J. U., Jørgensen, C., Mooij, W. M., Müller, B., Pe'er, G., Piou, C., Railsback, S. F., Robbins, A. M., Robbins, M. M., Rossmanith, E., Rüger, N., Strand, E., Souissi, S., Stillman, R. A., Vabø, R., Visser, U., DeAngelis, D. L., (2006). "A standard protocol for describing individual-based and agent-based models". Ecological Modelling 198, pp.115-126.

Haas, A. and Jaeger, C. (2005) "Agents, Bayes, and Climatic Risks – a modular modelling approach" Advances in Geosciences, Vol. 4, pp 3–7, 2005.

Jaeger, C. (2005) "A Long-Term Model of the German Economy: lagom d_sim" PIK-Report No.102, 2005.

Kirman, A. (1992) "What or whom does the representative individual represent?", Journal of Economic Perspectives, Vol. 6(2), pp. 117-36.

Lebaron, B. and Tesfashion, L. (2008) "Modeling Macroeconomies as Open-Ended Dynamic Systems of Interacting Agents", American Economic Review, Vol 98, pp. 246-250.

Leijonhufvud, A. (2006) 'Agent-Based Macro" in Tesfatsion, L. and Judd, K. (eds.), Handbook of Computational Economics, pp 1625-1636.

Luke, S., Cioffi-Revilla C., Panait L., Sullivan, K. and Balan, G (2005) "MASON: A Multi-Agent Simulation Environment''', Simulation Vol. 81, pp 517-527.

Ngai, L., Pissarides C. (2007) "Structural Change in a Multisector Model of Growth''', American Economic Review, Vol. 97, pp 429-443.

Peyton-Young, H. (1993): "The Evolution of Conventions." Econometrica, Vol. 61, pp 57-84.
Ramsey, PF.P. (1928) "A Mathematical Theory of Saving", Economic Journal, Vol. 38, pp 543-59.

Romer, P. (1990) "Endogenous Technological Change." Journal of Political Economy. Vol 98, pp 71-102.

Solow, Robert M. (1956) "A Contribution to the Theory of Economic Growth." Quarterly Journal of Economics Vol. 70, pp 65-94.

Seppecher, P. (2010) " Dysfonctionnement bancaire, bulle du crédit et instabilité macroéconomique dans une économie monétaire dynamique et complexe, " Revue économique, 2010(3).

Sonnenschein, H. (1973) " Do Walras' identity and continuity characterize the class of community excess demand functions?" Journal of Economic Theory, Vol. 6, pp 345-354

Taylor, J. (1993): "Discretion versus Policy Rules in Practice", Carnegie-Rochester Conference Series on Public Policy, Vol 39, pp 195-214.