Journal of Evolutionary Economics

, Volume 29, Issue 1, pp 467–538 | Cite as

Macroeconomics with heterogeneous agent models: fostering transparency, reproducibility and replication

  • Herbert DawidEmail author
  • Philipp Harting
  • Sander van der Hoog
  • Michael Neugart
Regular Article


This paper provides a detailed description of the Eurace@Unibi model, which has been developed as a versatile tool for macroeconomic analysis and policy experiments. The model explicitly incorporates the decentralized interaction of heterogeneous agents across different sectors and regions. The modeling of individual behavior is based on heuristics with empirical microfoundations. Although Eurace@Unibi has been applied successfully to different policy domains, the complexity of the structure of the model, which is similar to other agent-based macroeconomic models, makes it hard to communicate to readers the exact working of the model and enable them to check the robustness of obtained results. This paper addresses these challenges by describing the details of all decision rules, interaction protocols and balance sheet structures used in the model. Furthermore, we discuss the use of a virtual appliance as a tool allowing third parties to reproduce the simulation results and to replicate the model. The paper illustrates the potential use of the virtual appliance by providing some sensitivity analyses of the simulation output carried out using this tool.


Agent-based macroeconomics Replication Reproduction Eurace@Unibi 

JEL Classification

C63 E17 

1 Introduction

What is the most fruitful approach for the analysis of macroeconomic research questions? The majority consensus among economists with respect to this challenging question has strongly varied over time and there has always been substantial heterogeneity amongst the profession. During the last decade, an increasing number of contributions1 has employed an agent-based modeling approach to macroeconomic analysis, thereby extending the modeling toolkit in this domain, which is currently dominated by Dynamic Stochastic General Equilibrium (DSGE) models. The potential for a complexity approach to macroeconomic modeling capturing the emerging aggregate effects of (local) interactions between heterogeneous agents (e.g. Kirman 2010), of bounded rational behavior or learning and adaptive expectation formation (e.g. Dawid 2015; Hommes 2013) has been discussed extensively in the literature. Agent-based macroeconomic modeling falls into this category and has proven to be very successful with respect to reproducing empirical stylized facts (see Fagiolo and Roventini 2012). These properties make agent-based models also potentially appealing for economic policy analysis in different domains (see Howitt 2012; Dawid and Neugart2011).

By their very nature, agent-based macroeconomic models are typically larger and more complex than general equilibrium models that rely on representative agents, rational expectations and intertemporal dynamic optimization to describe the behavior of decision makers. However, also within the domain of agent-based macroeconomic models there is some heterogeneity with respect to the modeling philosophy, the level of abstraction and the resulting complexity of the models. Some authors, such as Richiardi (2016) or Caiani et al. (2016), see an emerging distinction between relatively simple agent-based models which, in many respects, stay close to (analytically tractable) mainstream equilibrium models2 and closed-economy bottom-up models in which all the considered sectors of the economy are represented by (locally) interacting individual agents.3

Whereas this second type of approach might have the advantage that it is based on a consistent modeling approach at the micro level, and can be strongly grounded in empirical observations, it is prone to lead to rather complex and large models. In order to fruitfully employ such large models for the analysis of economic phenomena and policy issues, a number of challenges have to be met. In particular, pinning down empirically meaningful parameter constellations as well as systematically testing the robustness of simulation results with respect to parameter variations becomes difficult due to the large dimension of the parameter space and the computational burden associated with running very large numbers of simulation runs.4 Furthermore, appropriate statistical methods are needed to rigorously establish the effects of parameter- and policy changes. Perhaps more importantly, the mechanisms driving the obtained results should be clearly identified, which is not a trivial task in modeling frameworks characterized by the interplay between different interaction structures and (non-linear) decision rules.

Finally, the burden on readers (and reviewers) to check whether the presented results are indeed correct and can in principle be replicated tends to be high and very time-consuming. Research articles based on large agent-based models typically present the main intuitions, and the logic and assumptions of the model, without truly providing all the details that would be necessary to fully understand all aspects of the emerging dynamics, or to actually facilitate a full re-implementation of the model from scratch. Even if the source code of the model were available, it remains costly to run the simulation model properly and to reproduce the exact same setup as the analyses presented in the paper. Whereas similar issues certainly apply also to several other very active areas of economic research, e.g. experimental economics5 or empirical research based on proprietary data, a perceived lack of transparency and replicability is a relevant issue and might contribute to the perception of agent-based models as “black-boxes” (see e.g. Gilbert and Terna 2000; Lorscheid et al. 2012).

While the problem of clearly identifying and communicating the main mechanisms driving the results in complex agent-based models is certainly an important challenge, our focus in this paper is on the issues of improving model transparency as well as the ability to reproduce and to replicate simulation results. To be more precise, by model transparency we mean giving the reader sufficient information to understand the exact structure of the behavioral rules and the interaction protocols implemented in the model. By reproducibility of results we mean the possibility to reproduce the results using the original data from the original authors of a study (see e.g. Peng 2011). The term ‘original data’ can either refer to the code of an implementation of the model, or to the output data that resulted from the original authors running the simulations. In this sense, fostering reproducibility of results is also closely related to facilitating other researchers to run the model with parameter constellations that are different from the ones used by the authors, thereby checking the robustness of the reported findings. Finally, following the literature on data reproducibility, we interpret a successful replication of a model as “[..] the implementation by one scientist or group of scientists of a conceptual model described and already implemented by a scientist or group of scientists at a previous time” (Wilensky and Rand 2007, 2.6). Replicability of results then refers to the possibility for an interested group to re-implement the model.

The aim of this paper is to contribute to more transparency and to enhance the ability to reproduce and replicate results in this domain of research, using the Eurace@Unibi model as an example of a large macroeconomic agent-based model using a bottom-up approach. The Eurace@Unibi model has been designed as a framework for (spatial) economic analysis within various domains of economics. A particular focus of the model lies in understanding the effects of the interplay of the diffusion of new technologies, the evolution of skills of workers and the dynamic changes in demand within and across regions on growth, fluctuations and distributional issues. In this respect, it has been shown that macroeconomic patterns emerging from the modelled micro-level interactions resemble empirical observations in different domains, such as the characteristics of endogenous business cycles or distributional properties (e.g. Dawid et al. 2018a), and that concepts such as path dependency play an important role for understanding the evolution of the economy in such a model (Dawid et al. 2018c). Also, a wide range of policy issues has been addressed using the model. In particular, in Dawid et al. (2008) and Dawid et al. (2009), the model is used to examine the impact of the spatial allocation of policy measures improving the general skills of workers on technological change and growth. Dawid et al. (2012a) compare how different scenarios of the transition from separated to integrated labor markets between regions with differing (initial) technological endowments affect the economic dynamics in the two regions. In Dawid et al. (2014) and Dawid et al. (2018b), the Eurace@Unibi model is used to examine the effectiveness of different instruments used by the European Union as part of its cohesion policy. The model has also proven a useful tool to identify mechanisms generating wage inequality within skill groups (Dawid and Gemkow 2014) and has been used as a framework for studying what type of banking regulations are best suited to avoid deep recessions in the economy (van der Hoog and Dawid 2018; van der Hoog 2018a), and what kind of fiscal policy measures are effective in fostering recovery and growth of a lagging region with public debt problems in an economic union (Dawid et al. 2018c). A more detailed discussion of this work is given in Dawid et al. (2018a).

In the first part of the paper, a detailed description of the modeling assumptions, decision rules and interaction structures, as well as the economic rationale behind these modeling choices, is provided for the Eurace@Unibi model. The intention of this description is to allow the reader to fully grasp the different forces that are captured in the model. Such a detailed model description should not only foster a deeper understanding of the observed results but also allow for a clearer comparison with alternative agent-based macroeconomic models and potentially also enable the re-implementation of (parts of) the model. Hence, this part contributes to transparency and replicability of the conceptual model.6

The second part of the paper focuses on the issue of reproducibility of published results and the ability of third parties to work with the model. In particular, we describe how a publicly available ETACE Virtual Appliance (Böhl et al. 2014) allows us to run the Eurace@Unibi model with minimal setup costs and to reproduce in a structured way simulation experiments underlying published research papers that have used the Eurace@Unibi model. Furthermore, the potential use of the Virtual Appliance (or VA for short) is demonstrated by exploring the effects of variations of key model parameters on dynamic properties of the model using the Virtual Appliance environment. The ETACE Virtual Appliance thus functions as a kind of vehicle to communicate the various implementations of our model, and it also allows others to reproduce and gain confidence in the results obtained. An important aim of providing such an extensive software environment to the research community is to enhance the model’s credibility and acceptance as a tool for policy analysis. The purpose of Section 5 is not to present a systematic examination of the sensitivity of the model dynamics with respect to certain model parameters – such examinations have been carried out for a wide set of (policy) parameters in the contributions mentioned above. Rather, our objective is to illustrate how parameter sensitivity analyses and also relevant economic insights can be obtained using output that is automatically generated from the VA if a corresponding simulation experiment is run. Our aim is to highlight that, by using the VA, such parameter explorations and policy experiments can be carried out with minimal setup costs by any interested scholar.

Overall, this paper should be seen mainly as a methodological contribution to the growing area of Agent-based Computational Economics (ACE), providing detailed insights into a workhorse model and practical suggestions on how to improve the transparency and reproducibility of ACE research in general. A main goal is to provide a precise description of the Eurace@Unibi model to the community of researchers in the area of agent-based macroeconomics who are interested in (partially) replicating the model, either by adjusting it for their own analyses of economic questions and policy issues or by systematically comparing it to alternative models in this area. However, the paper, especially when referring to the ETACE Virtual Appliance, also intends to make the model accessible with low entry costs for an audience interested in using agent-based models as a tool for exploring economic issues and carrying out policy analysis as well as for teaching purposes. In particular, the model can be used to demonstrate to students how aggregate macroeconomic dynamics that resemble empirical stylized facts can emerge from the (local) interactions of different types of heterogeneous agents.

The paper is organized as follows. In Section 2 we give an overview of the model and in Section 3 we describe in detail the decision rules for the various agents.7 Section 4 is devoted to a description of the market interaction protocols. In Section 5 we present the ETACE Virtual Appliance as a tool for reproducing the simulation output of the Eurace@Unibi model and illustrate its application by running experiments for a number of selected parameter variations. Section 6 concludes. We relegated to an Appendix all further valuable pieces of information regarding the initialization and parametrization of the model, as well as a lists of all parameters and variables and a documentation of the C code functions.

2 Main features and overall structure

2.1 Overall structure

The Eurace@Unibi model describes an economy with an investment and a consumption goods sector, and a labor, a financial and a credit market in a regional context. A capital good firm provides investment goods of different vintages and productivities. Consumption goods firms combine this capital and labor of varying degrees of general and specific skills to produce horizontally differentiated versions of a consumption good that households purchase. Households’ saved income goes into the credit and financial markets through which it is channeled to firms financing the production of goods.

Capital goods of different quality are provided by a capital goods producer with infinite supply. The technological frontier (i.e. the quality of the best currently available capital good) improves over time, where technological change is driven by a stochastic (innovation) process. Firms in the consumption goods sector use different vintages of capital goods combined with labor as inputs. The labor market is populated with workers who have a finite number of general skill levels and acquire specific skills on the job, which they need to fully exploit the technological advantages of the capital employed in the production process. Every time consumption goods producers invest in new capital goods they decide the quality of capital goods to select, thereby determining the speed by which new technologies spread in the economy. This choice is driven by the comparison between the prices of the available vintages and their expected returns for the firm which depend on the skills of the firm’s workforce. The capital goods producer charges different prices for the different vintages based on the estimated value of the vintages for the consumption goods firms. Consumption goods offered by the different firms are horizontally differentiated. They are sold at local market platforms (called malls), where firms store and offer their products and consumers come to buy goods at posted prices.

Labor market interaction is described by a simple multi-round search-and-matching procedure where firms post vacancies, searching workers apply, firms make offers and workers accept /reject. Wages of workers are determined, on the one hand, by the employer’s expectation at the time of hiring about the level of specific skills of the worker, and, on the other hand, by a base wage variable, which is influenced by the (past) tightness of the labor market and determines the overall level of wages paid by a particular employer.

Banks collect deposits from households and firms, and give credits to firms. The interest that firms have to pay depends on the financial situation of the firm, and their credit worthiness. The size of the loan might be restricted by the bank’s liquidity and risk exposure. There is a financial market where shares of a single asset are traded, namely an index share containing all firms in the economy. Firms pay dividends to the holders of index shares. Initially, all households have the same number of index shares but may eventually trade on the financial market. The allocation of dividends to households is, therefore, determined by the wealth of households in terms of their stock of index shares. The dividend per share is simply given by the sum of all dividend payouts by all firms, divided by the number of index shares.

The Central Bank provides standing facilities for the banks at a given base rate, pays interest on banks’ overnight deposits and might provide fiat money to the government.

Firms that are not able to pay the financial commitments declare an illiquidity bankruptcy. Furthermore, if, at the end of the production cycle, the firm has negative net worth, insolvency is declared. In both cases it goes out of business, stops all productive activities and all employees lose their jobs. The firm writes off a fraction of its debt with all banks with which it has a loan and stays idle for a certain period before it becomes active again.

The model has a regional structure. Firms and households are located in a particular region and workers may commute to the neighboring region. Commuting costs can be varied from being prohibitive to a fully integrated labor market. Consumption goods firms sell their products in any of the regions. To this end, we have introduced so called malls – one in each region – at which households located in a given region shop. All consumption goods firms purchase capital goods from a single capital goods producer. Furthermore, the consumption goods firms have access to all banks regardless of the region in which they are located. Regions may differ in various respects, such as population size, human capital of their workforce, per-capita output, or size and quality of the capital stock, which allows for a large set of research questions to be addressed.

In several parts of the Eurace@Unibi model choices by decision makers are described by logit probability models. These models are well suited to capture decisions where individuals try to maximize some objective function that depends on some variables common to all decision makers and that are explicitly represented in the model, while these decisions also depend on aspects that are idiosyncratic to each decision maker and can be captured in the model by a stochastic term. The original idea of using a random utility framework in combination with logit probability models to represent discrete choice problems goes back to the seminal work by McFadden (1973), and was also used by Brock and Durlauf (2001) to model social interactions.

As will become evident in Sections 3 and 4, some agents’ characteristics and decision rules are more elaborated in our model than those of other agents. This can be explained in reference to the purpose of the model as a tool for policy analyses of various kinds. For example, areas of application have been studies on policies that foster the acquisition of general skills or give subsidies to firms that incentivize them to purchase the latest vintages of the capital goods. In this context, we are interested in better understanding the diffusion process of new technologies, and how this affects the distribution of per-capita output within and between regions. A meaningful analysis of these questions thus required us to build into the model appropriate decisions rules of the consumption goods producers on which vintages of the capital good to buy, given their estimate on what they are likely able to sell in the future, and to equip workers not only with general skills but also specific skills that allow the firm to effectively exploit the productivity advantages of the various vintages.

2.2 Decision making

In contrast to dynamic stochastic general equilibrium models, where it is assumed that the behavior of all actors is determined by the maximization of the own (inter-temporal) objective function using unbiased expectations about the behavior of the other actors, agent-based simulation models provide explicit rules that describe how different agents take different decisions heuristically. Actually, the need to provide such rules is not only based on the basic conviction that underlies these models, that, in most economic settings, the actual behavior of decision makers is far from inter-temporally optimal behavior under rational expectations.8 In fact, in most models that incorporate agent heterogeneity and explicit interaction protocols (e.g. market rules) the characterization of dynamic equilibria is outside the scope of analytical and numerical analysis. Given the need to specify explicit rules for all decisions taken by all actors in an agent-based model, the determination and motivation of the implemented rules becomes a major modeling issue. The “Wilderness of bounded rationality” (Sims 1980) is a serious concern since a large number of different approaches to model boundedly rational behavior and its adaptation have been put forward in the literature and at this point there is little indication for the emergence of a widely accepted consensus that provides empirically or theoretically well founded concepts for tackling this issue.

The choice of the decision rules in the Eurace@Unibi model is based on a systematic attempt to incorporate rules that resemble empirically observable behavior documented in the relevant literature. Concerning households, this means that, for example, empirically identified saving rules are used and purchasing choices are described using models from the Marketing literature with strong empirical support. With respect to firm behavior we follow the “Management Science Approach”, which aims at implementing relatively simple decision rules that match standard procedures of real world firms as described in the corresponding management literature. Particularly, there is a rich literature on heuristics in many areas of management science including pricing (see e.g. Nagle et al. 2011), production planning (see e.g. Silver et al. 1998), and market selection (see e.g. Wind and Mahajan 1981; Kotler and Keller 2009). Although it certainly cannot be assumed that all firms in the economy rely on such standard managerial heuristics, capturing the main features of these heuristics when modeling the firm adds a strong empirical micro foundation to the agent-based model. Generally speaking, this approach implies that a parametrized decision rule is developed for each decision each agent-type has to take. Whereas the parameter values determining the exact form of the rule might differ between individuals and these values might change over time, we do assume that all individuals share the same (empirically motivated) structure for each type of decision rule and that this structure is time-invariant. By modeling firm behavior as being determined by decision routines, our approach is related to the evolutionary view of the firm in the tradition of Nelson and Winter (1982) and the behavioral theory of the firm by Cyert and March (1963). But in contrast to these contributions, we rely more explicitly on concrete decision rules developed in different areas of the managerial literature for key firm decisions. The implications of the Management Science approach will be illustrated in the following sections, where the different parts of the model are described in more detail. A more extensive discussion of the Management Science approach can be found in Dawid and Harting (2011).

2.3 Implementation issues

For the purpose of replicating the model, it is important to know how the Eurace@Unibi model has been implemented. Large-scale agent-based macroeconomic models require suitable platforms that allow the simulation of a model in which a potentially large population of heterogeneously interacting agents act on multiple markets at different time scales. The Eurace@Unibi model was, for this reason, implemented using the Flexible Large-scale Agent Modelling Environment (FLAME, see Coakley et al. 2012 and Kiran 2017 for details). Several features make this modeling and simulation environment appealing. It has been especially designed for use with parallel computing architectures (be it clusters, grids or super computers), which is a big advantage when dealing with large agent-based simulation models. FLAME provides a very transparent and modular framework to model the information flows between agents and it also provides for a strict separation between the model code and the simulation framework. The only means to communicate private data between agents are messages, where the data an agent can transmit using a message consist of a list of values of its own state variables (e.g. wealth, income, skills, profits, expectations about certain variables). Messages are added to a centralized message board and the sending agent determines which agents can read the message(s). To allow for multi-threading and parallel execution of the simulation, each message type has its separate message board. Agents check the message boards every iteration in order to collect all the information they are supposed to obtain. Then each agent can use the collected information as input to its decision rules or as the basis for updating some of its own state variables. An important hint to any future project that would like to re-implement (parts of) the Eurace@unibi model in an effort to replicate certain results should be aware of these implementation features. It is quite likely that any future re-implementation efforts would require a modeling and simulation platform with similar features as those of the FLAME framework outlined above.

Data generation and analysis is a multi-stage process in which considerations of computation time and data storage play an important role. At the simulation design stage (before simulations are actually run), the model analyst can select to output either a complete snapshot in which all variables of all the agents are stored (very data intensive), or to select a subset of agent types for which all variables will be stored. In addition, it is also possible to select a certain frequency at which to data is being outputted, for example every n th iteration.

At the simulation stage, the data are stored as XML files. The output is then transformed into a database format (either to SQL or HDF5 format at the moment). The post-processing is done using open source statistical analysis packages from the R Project (R Development Core Team 2008), or by using home-grown Python scripts.

A set of general-purpose R scripts has been developed for post-processing the data to automatically generate a complete set of user-specified plots (e.g, time series plots, box plots, scatter plots, or histograms). These plots can be generated at two levels: plots that display aggregate macroeconomic data or plots to view disaggregated variables at the individual agent level (Gemkow and van der Hoog 2012). Finally, the R scripts also allow for the generation of plots at different levels of statistical aggregation, to visualize a single simulation run or a Monte Carlo ensemble of runs, or to study parameter variations for either local or global sensitivity analyses.

3 The model

3.1 Timing and sequence of activities

A proper understanding of the model requires knowledge of the sequence in which the various actors make their decisions. In principle, agent actions can be time-driven or event-based, where the former can follow either agent-specific or calendar time schedules. Furthermore, the economic activities take place on a hierarchy of time-scales: yearly, monthly, weekly and daily activities, see also the Listings 1 and 2.

The basic time unit in the model is one business day. Agents are activated asynchronously according to their agent-specific time schedules anchored on an individual activation day. These activation days are uniformly randomly distributed among the agents at the start of the simulation, but may change endogenously. The branching of agent activities provides the agents with a high degree of autonomy to initiate their actions independently of the actions of any other agent or central mechanism. From the model point of view, the mixture of event-based and time-driven actions leads to asynchronous behavior and a mechanism to randomly match the agents on the markets. As such it provides us with a necessary ingredient to model a decentralized market economy. In particular, this implies that there is, in general, no synchronization between different actors, although, for each type of decision or action, the time spans between subsequent activation days are identical for all firms and households, respectively. Synchronization is avoided as it is well known that artificial overshooting effects might arise if decisions, such as output determination or pricing, are always taken simultaneously by all individuals. It should, however, be noted that certain activities, such as tax collection, are synchronized for institutional reasons.
Listing 1

Frequency and sequence of firm activities

Listing 2

Frequency and sequence of household activities

Here, we describe in more detail the sequence of the firms’ and households’ decisions but refrain from doing so for the less involved sequencing for the banks, government, and the “statistical office” Eurostat that is collecting the data. Each firm proceeds through the following sequence of economic activities:
  1. 1.

    On the firm’s idiosyncratic activation day the firm starts its production cycle with production planning. The production plan consists of planned output based on historical observations and the results of market research. Based on the production plan the firm determines its planned input demand for capital and labor.

  2. 2.

    Financial management of the firm. The firm computes the costs of production and the costs for financing its commitments. If the internal resources are insufficient, the firm tries to finance externally by requesting credit.

  3. 3.

    Credit market with direct firm bank linkages opens. The banks provide credit by servicing the loan request on a first come, first served basis. The bank decides on the credit conditions for the applying firm (interest rate and amount of credit provided) depending on the firm’s financial situation. If the credit request is refused, or not fully accepted, the firm has to reduce its planned production quantity.

  4. 4.

    Bankruptcy of two types. If the firm is credit constrained to the extent that it is not able to pay the financial commitments, it becomes illiquid and illiquidity bankruptcy is declared. If, at the end of the production cycle, revenues are so low that the firm has negative net worth, the firm is insolvent and insolvency bankruptcy is declared. In both cases, it goes out of business, stops all productive activities and all employees lose their jobs. The firm writes off a fraction of its debt with all banks with which it has a loan and stays idle for a certain period before it becomes active again.

  5. 5.

    Capital goods market. Depending on the amount of financing secured by the firm, it makes physical capital investments. This consists of a vintage choice where the productivity of the capital stock is updated if new vintages are installed.

  6. 6.

    A decentralized labor market opens where firms with open vacancies are matched to unemployed job searchers. The matching is based on the firm’s wage offer and on the worker’s skill level and reservation wage.

  7. 7.

    Production takes place on the firm’s activation day. After production is completed, the output is distributed to local malls. Firms offer goods at posted prices with price revisions occurring once a year.

  8. 8.

    At the end of the production cycle, the firm computes its revenues and updates its income statement and balance sheet. It pays taxes, dividends, interest and debt installments. It checks if net worth is negative and if so, declares bankruptcy. Otherwise it continues with the next production cycle.

The households’ activity sequence is given by:
  1. 1.

    Wages are paid on the same day that the firm starts its production cycle. Dividend income on index shares is received on the first day of the calendar month.

  2. 2.

    After tax payment, households determine their consumption budget for the upcoming month, based on a target wealth to income ratio. Since wealth consists of liquid monetary assets and shares, the consumption decision affects the (planned) asset portfolio. The household first enters the financial market before the consumption goods market opens.

  3. 3.

    Financial market transactions between households consists of trades in index shares. The possibility of rationing and the resulting asset allocation may result in adjustment of the consumption budget.

  4. 4.

    Households go shopping on a weekly basis, selecting among consumption goods offered at their local mall. The consumer tries to spend its monthly budget equally over four weeks. Parts of the weekly budget that are not spent in a given week are rolled over to the consumption budget for the following week.

  5. 5.

    A household that becomes unemployed starts looking for a new job while receiving unemployment benefits.


Having described the sequence of decisions taken by the main actors, we turn to a more detailed description of how these decisions are modeled.

3.2 Consumption goods sector

3.2.1 Firms’ quantity choice

The consumption goods market consists of local malls that are serviced by all consumption goods producing firms, and visited by all households located in that region for their shopping activities. At these malls each consumption goods producer holds an inventory that is replenished once a month. The delivery volume of an individual firm in each month is the difference between a planned stock and the current inventory level. As will become clear from the description of consumer choice behavior (see Section 3.6.3), actual demand for the product of a firm in a given mall and a given month is stochastic; there are also stock-out costs, because consumers intending to buy the product of a firm will move on to buy from a different producer in case the firm’s stock at the mall is empty. In a nutshell, the firm faces a production planning problem with stochastic demand and stock-out cost.

The production planning literature has extensively dealt with problems of this type and there are numerous heuristics available in the corresponding management literature. The simplest standard heuristic prescribes to generate an estimation of the distribution of demand and choose the planned stock level after delivery such that the (estimated) stock-out probability during the following month equals a given parameter value (which is a function of the stock-out costs, inventory costs and risk attitude of the firm; see, e.g., Silver et al. 1998). Following our general Management Science approach for modeling firm behavior, a heuristic of this type is adopted by the consumption goods producers.

Specifically, we assume that the demand generated by households visiting these malls during a month can be estimated by
$$ \hat{D}_{i,r,t}(p^{\ast})=\hat{D}_{i,t}(p^{\ast})\cdot\frac{\hat{S}_{r,t}}{\hat{S}_{t}}. $$
Here, \(\hat {S}_{r,t}\) is the estimated market size of the local market r (the real consumption budget of inhabitants of region r) that is ascertained together with the total market size \(\hat {S}_{t}\). The local demand estimation in a mall is the relative share of the estimated total demand. \(\hat {S}_{r,t}\), \(\hat {S}_{t}\), and the total demand depending on the current price p, \(\hat {D}_{i,t}(p^{\ast })\), are estimated on a yearly basis within an elaborate market research procedure. For more details regarding the market research activities, the reader is referred to Section 3.2.10.
The determination of the planned delivery volumes \(\tilde {D}_{i,r,t}\) to each mall is the difference between a critical inventory stock Yi,r,t and the current mall stock \({\mathcal {S}}_{i,r,t}\),
$$ \tilde{D}_{i,r,t}= \left\{\begin{array}{ll} 0 & {\mathcal{S}}_{i,r,t}\geq Y_{i,r,t},\\ Y_{i,r,t}-{\mathcal{S}}_{i,r,t} & \text{else}. \end{array}\right. $$
Following the production planning heuristic sketched above, the replenishment level Yi,r,t is set such that the estimated firm’s demand is covered with probability χ, where χ is denoted as the service level of the firm. The firm assumes that demand follows a normal distribution and hence the replenishment level can be expressed as
$$ Y_{i,r,t}=\underbrace{\hat{D}_{i,r,t}}_{\text{Expected demand}}+\underbrace {q_{\chi}\cdot\sqrt{\hat{\sigma}_{\hat{D}i,r,t}^{2}}}_{\text{Buffer}}, $$
where \(\hat {D}_{i,r,t}(p^{\ast })\) is the expected demand, \(\hat {\sigma }_{\hat {D}i,r,t}^{2}\) the estimated variance of the demand distribution and qχ the χ-quantile of the standard Gaussian distribution with mean 0 and variance 1.
The sum of the planned delivery volumes for all malls yields the desired output
$$ \tilde{Q}_{i,t}=\sum\limits_{r = 1}^{R}\tilde{D}_{i,r,t} $$
which is the planned production quantity entering the input factor calculation and the financial planning in t.

3.2.2 Firms’ demand for labour

Consumption goods producers need physical capital and labor for production. A firm i has a capital stock Ki,t composed of different vintages of the production technology v with v = 1,...,V,
$$ K_{i,t}=\sum\limits_{v = 1}^{V}K_{i,t}^{v}. $$
The accumulation of physical capital by a consumption goods producer follows
$$ K_{i,t}=\sum\limits_{v = 1}^{V}(1-\delta)K_{i,t-1}^{v}+\sum\limits_{v = 1}^{V}I_{i,t}^{v} $$
where δ is the depreciation rate and \(I_{i,t}^{v}\geq 0\) is the gross investment in vintage v.
The production technology in the consumption goods sector is represented by a Leontief type production function with complementarities between the qualities of the different vintages of the investment good and the specific skill level of employees for using these types of technologies. Vintages are deployed for production in descending order by using the best vintage first. For each vintage, the effective productivity is determined by the minimum of its productivity and the average level of relevant specific skills of the workers. Accordingly, output for a consumption goods producer is given by
$$ Q_{i,t}=\sum\limits_{v = 1}^{V} \min\left[ K_{i,t}^{v},\max\left[ 0, L_{i,t} - \sum\limits_{k=v + 1}^{V}K_{i,t}^{k}\right] \right] \cdot\min\left[ A^{v},B_{i,t}\right] , $$
where Av is the productivity of vintage v and Bi,t denotes the average specific skill level in firms. Complementarity between the quality of physical capital and worker skills is an empirically well established fact. The fact that the considered production function takes into account the vintage structure of the capital stock and also allows firms to select among different available vintages enables us to capture the effect of workers’ skills on the incentives of firms to invest in new technologies.9
An important parameter for the input factor determination is the potential output volume that can technically be produced with the present capital stock of the firm. This feasible output level \(\hat {Q}_{i,t}\) is computed according to
$$ \hat{Q}_{i,t}=\sum\limits_{v = 1}^{V} \left\lbrace (1-\delta)K_{i,t-1}^{v}\cdot\min\left[ A^{v},B_{i,t}\right] \right\rbrace. $$
With respect to \(\hat {Q}_{i,t}\) and the desired output level \(\tilde {Q}_{i,t}\) we have to consider two cases with different implications for the capital demand to be purchased at the capital goods market:
  1. 1.
    \(\hat {Q}_{i,t}\geq \tilde {Q}_{i,t}:\) In that case the desired output can be produced with the current capital stock and no additional investments are necessary. We have Ii,t = 0 and the labor input is computed by taking the labor productivity of the last month into account:
    $$ \tilde{L}_{i,t}=\tilde{Q}_{i,t}\cdot\frac{L_{i,t-1}}{Q_{i,t-1}.} $$
  2. 2.
    \(\hat {Q}_{i,t}<\tilde {Q}_{i,t}:\) Here we have positive investments Ii,t > 0; the amount depends on the outcome of the vintage choice. If v is the selected vintage, the investment volume is
    $$ I^{v}_{i,t}=\frac{\tilde{Q}_{i,t}-\hat{Q}_{i,t}}{\min\left[ A^{v},B_{i,t}\right] } $$
    and the labor demand becomes
    $$ \tilde{L}_{i,t}=(1-\delta)K_{i,t-1}+I_{i,t}. $$

Depending on whether the firm’s labor demand exceeds or falls short of the current workforce the firm has to either hire additional workers or dismiss redundant workers.

3.2.3 Firms’ demand for capital: vintage choice

The consumption goods firm chooses from a set of vintages v = 1,...,V, which differ regarding their productivity Av. The decision in which vintage to invest depends on a comparison of the effective productivities and the corresponding prices. For this decision, the complementarity between specific skills and technology, min[Av,Bi,t], plays an important role: due to the inertia of the specific skill adaptation, the advantage of a better vintage with Av > Bi,t cannot be fully taken into account immediately, as the productivity gap is only closing over time. Therefore, the firm computes a discounted sum of estimated effective productivities over a fixed time horizon S. The specific skill evolution is estimated for each time step within this period [t,t + S] along the same formula that applies to households for their individual skill adaptation (see Eq. 15 in Section 3.2.4) , with the firm’s mean general skill level \(B_{i,t}^{gen}\) and mean specific skill level Bi,t. Formally, we have
$$ \hat{A}_{i,t}^{eff}(v)=\sum\limits_{s = 0}^{S}\left( \frac{1}{1+\rho}\right)^{s}\min[A^{v},\hat{B}_{i,t+s}(A^{v})], $$
where ρ is the discount rate. The estimated adaptation of specific skills follows
$$ \hat{B}_{i,t+s}=\hat{B}_{i,t+s-1}+\chi\left( B_{i,t}^{gen}\right)\cdot\max\left[ A^{v}-\hat{B}_{i,t+s-1},0\right] . $$
As in other parts of the model, see, e.g. Section 3.6.3, the vintage choice follows a logit specification where probabilities depend on the ratios of effective productivity and prices \(\frac {\hat {A}_{i,t}^{eff}(v)}{{p_{t}^{v}}}\). The higher is the ratio for a certain vintage, the higher the probability to buy it. Formally, we have for vintage v:
$$ \mathbb{P}[\text{Firm \textit{i} selects vintage \textit{v}}]=\frac{\exp\left( \gamma^{v} \ln \left( \frac{\hat{A}_{i,t}^{eff}(v)}{{p_{t}^{v}} } \right) \right)}{{\sum}_{\tilde v = 1}^{V} \exp \left( \gamma^{v} \ln \left( \frac{\hat{A}_{i,t}^{eff} (\tilde v)}{p_{t}^{\tilde v}} \right) \right)}. $$

3.2.4 Households’ specific skill adaptation

Each worker h has two dimensions of human capital endowments, an exogenously given general skill level \({b}_{h}^{gen}\) and an endogenously increasing specific skill level bh,t. General skills can be interpreted as formal qualifications or general embodied abilities. Specific skills are experiences or abilities obtained on-the-job. They are capabilities obtained at a particular firm that employs a capital stock of certain vintages. The specific skills of a worker are related to his capability to operate these vintages. In this sense, they can be seen as tacit knowledge of the worker and reflect the productivity of each worker to the firm at which he is employed. However, once obtained, the specific skills can be carried along to another firm. General skills are observable by firms in the hiring process while specific skills are not; they first become observable during the production process. There exist up to five general skill levels, described by different values of bgen, i.e. bgen ∈{1,2,3,4,5}. bgen = 1 is the lowest general skill level and bgen = 5 the highest.

The acquisition of specific skills in the production is faster for workers with higher general skill levels. Formally, the workers increase the specific skills over time during production by a learning process. The speed of learning depends on the general skill level \(b^{gen}_{h}\) of the worker h and the average quality of the technology Ai,t used by employer i
$$ b_{h,t + 1}=b_{h,t}+\chi\left( b^{gen}_{h}\right)\cdot\max[0,A_{i,t}-b_{h,t}]. $$
Here bh,t are the specific skills of worker h in period t and \(\chi (b^{gen}_{h})\) increases with general skills \(b^{gen}_{h}\) and \(0<\chi \left (b^{gen}_{h}\right )<1\).

3.2.5 Firms’ wage offer

If the firms plan to extend the production, i.e. their labor demand is higher than the current workforce (\(\tilde {L}_{i,t} > L_{i,t}\)), they post vacancies and corresponding wage offers. The wage offer has two constituent parts. The first part is the market driven base wage \(w^{base}_{i,t}\). The base wage is paid per unit of specific skill. If the firm cannot fill its vacancies and the number of unfilled vacancies exceed some threshold \(\overline {v}>0\), the firm raises the base wage offer by a fraction φbase to attract more workers, such that
$$ {w}_{i,t + 1}^{base}=\left( 1+\varphi^{base}\right){w}_{i,t}^{base}. $$
The second part is related to the specific skills. Since the specific skills represent the (maximal) productivity of the employees, the wage wi,t is higher for higher specific skills. For each of the general-skill groups, the firm i offers different wages \(w^{O}_{i,t,g}\) in period t. The wage offers are given by
$$ w^{O}_{i,t,g}= {w}_{i,t}^{base}\times \bar{B}_{i,t,g} $$
where \(\bar {B}_{i,t,g}\) are the average specific skills of all employees with general skill g in the firm. The underlying assumption of this determination of wage offers is that firms can observe general but not specific skills of job applicants. Therefore they use the average specific skills of all employees with general skill g in the firm in order to estimate the specific skills of an applicant with general skill level g. If the number of applicants is higher than the number of vacancies, the firms choose between all applicants with respect to their general skill levels. An applicant with high general skills is more likely to receive a job offer than an applicant with low general skill. The probability that firm i chooses applicant h is determined using a multi-nominal logit model.
$$ \mathbb{P}[\text{Firm \textit{i} selects applicant \textit{h}}]=\frac{\exp \left( \gamma^{gen}b^{gen}_{h} \right)}{{\sum}_{a\in A} \exp \left( \gamma^{gen}b^{gen}_{a}\right)}. $$
The parameter γgen steers the influence of the general skill level of an applicant on his probability of being hired.

The firm sends as many job offers as it has vacancies to fill. If the number of applicants is lower than the number of vacancies the firm sends job offers to all of the applicants.

In case of downsizing the incumbent workforce \(\tilde {L}_{i,t} < L_{i,t}\), the firm dismisses workers with lowest general skill levels first, because they have generally a lower speed of learning. In order to represent factors that lead to dismissals other than a decreased labor demand (i.e. by on-the-job-search, or through workers quitting their jobs) for a fraction of employees the work contract is randomly separated in each month. The number of such separations ρ is a random variable from the uniform distribution \([\underline \rho ,\overline \rho ]\). At the end of each month the wages of employees are increased proportional to the (regional) productivity growth (\({g}_{r,t}^{Prod}\)). This can be interpreted as a simplified collective wage bargaining.

3.2.6 Households’ labor supply

Each worker h offers one unit of labor per month (20 days). If a worker is employed, he receives a wage wh,t. If the worker is unemployed, he receives unemployment benefits from the government and is actively searching for a new job on a given day with probability \(\mathbb {P}[\text {job search}]\). This probability is determined by
$$ \mathbb{P}[\text{job search}] = \frac{\eta^{month}}{\eta^{day}\cdot 20} $$
where ηmonth is the number of applications a household is allowed to send per month and ηday is the number of maximum applications per day, and 20 is the number of business days per month. These parameters can be used to steer the intensity of search.
An unemployed job searcher h takes the wage offers posted by searching firms into consideration and compares them with his reservation wage \({w}_{h,t}^{R}\). A worker with general skills g will only apply at a firm i that makes a wage offer higher than his reservation wage
$$ {w}_{i,t,g}^{O}> {w}_{h,t}^{R}. $$
When a worker applies, he sends information about his general skill level to the firm. In case the firm is located outside of his place of residence, the unemployed worker also takes fixed commuting costs Ccomm into consideration
$$ {w}_{i,t,g}^{O}> {w}_{h,t}^{R} - C^{comm}. $$
The level of the reservation wage is determined by the current wage \({w}_{h,t}^{R}=w_{h,t}\) if the worker is employed, and in case of an unemployed by his adjusted past wage. An unemployed worker will reduce his reservation wage with the duration of unemployment. If an unemployed worker did not find a job although he was actively searching, he reduces his reservation wage by a fraction ψ, where the level of unemployment benefits constitutes a lower bound \({w}_{min}^{R}\) for the reservation wage:
$$ {w}_{h,t + 1}^{R}=\max\left[(1-\psi)w^{R}_{h,t},{w}_{min}^{R}\right] . $$

If the unemployed job searcher receives one or more job offers, he accepts the job offer with the highest wage offer. In case he does not receive any job offers, he remains unemployed.

3.2.7 Financial management

At the end of the month (the firm specific production cycle) the firm computes its income statement to determine its profits. The firm’s balance sheet and cash flow are shown in Tables 1 and 2.
Table 1

Firm balance sheet



Mi: demand deposits (liquidity)

\({\mathcal {D}}_{i}\): debt to banks

\({\mathcal {I}}_{i}\): value of inventory stock


\({\sum }_{v} p^{v} {K^{v}_{i}}\): value of physical


capital stock


Ei: net worth (equity capital)

Table 2

Firm cash flow



Ri: Sales revenues

wiLi: Labor costs

rdMi: Interest on demand deposits

\(p^{v}{I^{v}_{i}}\): Investment costs

\({\sum }_{b} {\mathcal {L}}^{b}_{i}\): New credit from banks

\(\vartheta \max \{0,\pi _{i}\}\): Tax payment


\({\sum }_{b} {\Delta } Debt_{i,b}\): Debt installment




\({\sum }_{b} {r^{b}_{i}} {\mathcal {L}}^{b}_{i}\): Interest payment


Divi: Dividend payment

The variable costs of the firm consists of the actual labor costs and a proportion of the total investments that are accounted for in this month. The amortization period of fixed capital investments equals the number of installment periods of a loan
$$ {C}_{i,t}^{Var}= w_{i,t}L_{i,t} + \frac{{p}_{t}^{v_{t}}\cdot {I}_{t}^{v_{t}}}{T^{L}}. $$
Here vtV stands for the vintage of capital selected at t (see Section 3.2.3) and TL is the duration of the loan.
The fixed costs consisting of the irreversible capital expenditures of the previous periods (tTL,…,t − 1) that are accounted for in t, plus interest on all current volumes of outstanding loans over those periods \(({\mathcal {L}}_{i,t,t-l}^{b}\) indicates the size in period t of a loan which has been raised by firm i in tl), is given by
$$ {C}_{i,t}^{Fix}= \sum\limits_{l = 1}^{T^{L}}\frac{{p}_{t-l}^{v_{t-l}}\cdot I_{t-l}^{v_{t-l}}}{T^{L}} +\sum\limits_{l = 1}^{T^{L}} r^{b}_{i,t-l} \cdot {\mathcal{L}}_{i,t,t-l}^{b}. $$
The monthly realized profit of a consumption goods producer equals the sales revenues (Ri,t) plus interest received on firm’s demand deposits (Mi,t) minus production costs in the period that just ended.
$$\begin{array}{@{}rcl@{}} \pi_{i,t} &=& R_{i,t} + r^{d} M_{i,t} - \left( {C}_{i,t}^{Fix} + {C}_{i,t}^{Var}\right) \end{array} $$
$$\begin{array}{@{}rcl@{}} &=& R_{i,t} + r^{d} M_{i,t} - \sum\limits_{l = 1}^{T^{L}}\frac{p_{t-l}^{v_{t-l}}\cdot I_{t-l}^{v_{t-l}}}{T^{L}} - \sum\limits_{l = 1}^{T^{L}} r^{b}_{i,t-l} \cdot {\mathcal{L}}^{b}_{i,t,t-l} \\ &&-~\frac{p_{t}^{v_{t}}\cdot I_{t}^{v_{t}}}{T^{L}} - w_{i,t}L_{i,t}. \end{array} $$
Here rd denotes the interest rate for deposits at commercial banks and \({r}_{i,t}^{b}\) the interest rate firm i has to pay for outstanding loans (see Section 3.4.5).
In case of positive profits, the firm pays taxes and dividends.10 The net earnings (or losses) are
$$\begin{array}{@{}rcl@{}} \pi^{net}_{i,t} &&= \min \left[\pi_{i,t}, (1-\vartheta)\pi_{i,t}\right] \end{array} $$
$$\begin{array}{@{}rcl@{}} Div_{i,t} &&= \max \left[0, d \pi^{net}_{i,t} \right]. \end{array} $$
The retained net earnings (or losses) after interests, taxes and dividends are added to a payment account Mi,t
$$\begin{array}{@{}rcl@{}} \pi^{ret}_{i,t} &=& \min \left[ \pi_{i,t}, (1-d)(1-\vartheta)\pi_{i,t}\right] \end{array} $$
$$\begin{array}{@{}rcl@{}} M_{i,t + 1} &=& M_{i,t} + \pi^{ret}_{i,t} \end{array} $$
The actual total expenditures in period t are:
$$\begin{array}{@{}rcl@{}} Exp_{i,t} &=& \underbrace{\vartheta \max \left[0,\pi_{i,t}\right]}_{\text{Taxes}} + \underbrace{d (1-\vartheta)\max \left[0,\pi_{i,t}\right]}_{\text{Dividends}} \\ &&+ \underbrace{p_{i,t}^{v_{t}}\cdot I_{i,t}^{v_{t}}}_{\text{Capital bill}} + \underbrace{w_{i,t}L_{i,t}}_{\text{Wage bill}} + \underbrace{\sum\limits_{l = 1}^{T^{L}}\frac{{\mathcal{L}}^{b}_{i,t,t-l}}{T^{L}}}_{\text{Debt installment}} + \underbrace{\sum\limits_{l = 1}^{T^{L}} r^{b}_{i,t-l} \cdot {\mathcal{L}}^{b}_{i,t,t-l}}_{\text{Interests}} \end{array} $$
Note that the expenditures in Eq. 31 differ from the costs taken into account in the profits in Eq. 26. In the expenditures the full capital bill is taken into account, whereas in the costs we only include calculatory capital costs that are an amortized proportion of the current investments in this period.

3.2.8 Firm credit demand

At the start of period t + 1, the total liquidity needs to finance the next production cycle consist of the planned production costs, i.e. the wage bill and investments. The firm also has financial commitments carried over from the previous period, such as taxes and dividends on profits, debt installment and interest payments.

The actual liquidity needs that should be financed at the start of period t + 1 are as follows
$$\begin{array}{@{}rcl@{}} {\mathcal{L}}iq_{i,t + 1} & =& \underbrace{\vartheta \max \left[0,\pi_{i,t}\right]}_{\text{Taxes}} + \underbrace{d(1-\vartheta)\max \left[0,\pi_{i,t}\right]}_{\text{Dividends}}\\ & &+ \underbrace{p_{i,t + 1}^{v_{t}}\cdot I_{i,t + 1}^{v_{t}}}_{\text{Capital bill}} + \underbrace{w_{i,t + 1}L_{i,t + 1}}_{\text{Wage bill}} + \underbrace{\sum\limits_{l = 0}^{T^{L}-1}\frac{{\mathcal{L}}^{b}_{i,t,t-l}}{T^{L}}}_{\text{Debt principal}} + \underbrace{\sum\limits_{l = 0}^{T^{L}-1} r^{b}_{i,t-l} \cdot {\mathcal{L}}^{b}_{i,t,t-l}}_{\text{Interests}}\\ \end{array} $$

Note that, at the time that liquidity needs are determined, the actual price of capital and the wages are unknown. The firm assumes \({p}_{i,t + 1}^{v}={p}_{i,t}^{v}\) and \(w_{i,t + 1}=\bar {w}_{i,t}\), the average wage of the firm.

This implies that the actual expenditures in Eq. 31 may differ from the liquidity needs determined by Eq. 32. If so, the firm may have a liquidity crisis if it turns out that capital or wages are more expensive than expected. In such a case, the firm rescales production to fit its available liquidity.

The payment account is used as primary source to cover all expenses. If a firm does not have sufficient internal financial resources, it first depletes the payment account before resorting to external financing on the credit market. This follows the pecking order theory (Liesz 2005) in which firms finance their expenditures according to a hierarchy of risk, using the least risky form of financing before more risky forms are employed.

The demand for bank loans is the remaining part of the total liquidity needs that cannot be financed internally from the payment account.
$$ {\tilde{\mathcal{L}}}^{b}_{i,t} = \max\left\{0, {\mathcal{L}}iq_{i,t + 1} - M_{i,t + 1}\right\} $$

3.2.9 Production

Once the financial management has finished and the financial commitments (i.e. taxes, interests and debt repayments, and dividends) have been paid, the firm reevaluates the financial resources available to cover all planned production expenses. If the available resources are not sufficient to cover the planned output, the firm downscales the planned output level such that the production costs can be financed with the residual funds.

Thereafter, the firm enters the factor markets: first the labor market and then the capital goods market. The firm’s activities in the labor market depend on its labor demand and the current size of the labor force (see Section 3.2.5). If the labor demand exceeds the current number of employees, the firm has to hire more workers. If the firm needs fewer workers than its current workforce, the firm dismisses workers.

The structure of the labor market allows for frictions so that even if there is persistent unemployment, firms’ labor demands are not necessarily satisfied completely. When a firm is not able to fill all its vacancies it has to adapt the production quantity to the level that can be produced with the available labor force. Moreover, we assume that the capital good is offered at infinitely elastic supply. Thus, the firm is never rationed in the capital goods market.

The actual production quantity Qi,t is determined according to the Leontief production function defined in Eq. 7. Output is distributed among the malls in proportion to the planned delivery volumes \(\tilde {D}_{i,r,t}\). The delivery volume to mall r is
$$ D_{i,r,t}=\frac{Q_{i,t}}{\tilde Q_{i,t}}\cdot\tilde{D}_{i,r,t}. $$

3.2.10 Pricing decision

Consumption goods producers set the price of their products once a year. This relatively long period between two price changes of an individual firm is consistent with survey data for US firms (Blinder 1991) and for firms located in the Euro area (Fabiani et al. 2006).

Our pricing rule is inspired by the setting described in Nagle et al.(2011, ch.7), a standard volume on strategic pricing. They define the price setting as a three-stage process with a preliminary segment pricing stage, an optimization stage and the final implementation stage. Due to the highly stylized modeling of the consumption goods firms in our model, we can abstract from the first and the last stage and let the pricing decision depend on the optimization stage only. However, we implicitly assume that firms are sufficiently large to have the capacity to actually carry out the demand estimations that underlie their pricing decisions. Firms seek a profit-maximizing price taking into account the trade-off between price, sales and costs. Due to the stochastic and complex nature of the model and the arising uncertainty of future developments, this optimization procedure can only maximize the estimated profit of the firm.

In order to estimate possible effects of price changes on the sales and the costs and finally on its profitability, the firm has to collect and process manifold information. The firm passes a sequence of activities:
  1. 1.

    A market analysis for gathering information that allows estimating how demand responds to price changes.

  2. 2.

    An output analysis for drafting a preliminary production plan for a range of prices. These plans take into account the demand estimates as well as the inventory policy of the firm.

  3. 3.

    A cost analysis for each of the preliminary output plans, including an estimate of the factor prices.

  4. 4.

    A profit analysis that leads to the final pricing decision.


We turn to each of the activities now, explaining them in detail.

Market analysis

An important aspect for the profit estimate of different candidate prices is a suitable estimation of the demand function. To obtain an estimated demand curve, the consumption goods producers carry out market research. We assume there are two steps required: the first step is to estimate the overall development of the market. This is to know the potential market size for which the firm competes with its competitors. The second step is an estimation of the market shares that the firm can achieve given the estimated price sensitivity of consumers and the firm’s expectations about the prices of the competitors.

For the determination of the expected market trend, we assume backward looking expectations. Let t be the month when the firm undertakes the market research and \(S_{t-\iota }^{Tot}\) the real market size (i.e. the observable deflated consumption budget of households) in month tι. For determining a global market trend, the firm applies a linear regression model of observed market sizes \(S_{t-\iota }^{Tot}\) for a fixed number of previous months. The expected market size in the future month t + τ, \(\hat {S}_{t+\tau }\) is then determined by
$$ \hat{S}_{t+\tau}=\hat{S}_{t}+\hat{b_{t}}^{S}\cdot\tau, $$
where τ counts the months starting from the current month t and \(\hat {b_{t}}^{S}\) the slope of the linear regression.

In the second step, firm specific market potentials are evaluated. The firm determines how its position relative to its competitors would change as it would change its price. To this end, the firm carries out consumer surveys. The procedure builds on what is known as simulated purchase surveys in the relevant literature (e.g. Nagle et al. 2011). Such surveys are performed by presenting consumers a sample of products and prices of the firm under consideration and of its competitor. The consumers are asked which product they would choose. Based on the results of such surveys, the sensitivity of buyers with respect to price changes is estimated.

In our model, the firm draws a representative sample of households. All participating households are asked to compare a firm’s product with the set of the currently available rival products. The price of the firm’s product is varied within a discrete price range; and for each price pMR in this set, the households respond whether or not to buy the good at the specified price. This decision is a simulation of households’ real purchasing decision subject to the same influencing factors as the regular weekly consumers choice: it is modeled as a random process with a probability to buy the product of firm i at price pMR, given expected competitors’ prices. This choice probability is given by
$$ \mathbb{P}[\text{Consumer \textit{h} selects product \textit{i}}]=\frac{ \exp \left( -\gamma^{c} \ln{p^{MR}} \right) } {\exp \left( -\gamma^{c} \ln{p^{MR}} \right) +{\sum}_{\forall k\neq i} \exp \left( -\gamma^{c} \ln{\hat{p}_{k}} \right)}, $$
where γc captures the consumer’s sensitivity with respect to price differences of the available goods (see Section 3.6.3 for more details). The expectations of the prices of the competing products are denoted by \(\hat {p}_{k}\).
The firm collects the yes-no answers of the participants of the survey. Dividing the number of positive responses at a price pMR by the total sample size nSample yields a first estimate of the achievable market shares. Once the firm has gathered the relative frequencies, it runs a regression to find a relation between prices and achievable market shares given the expected prices of the competitors. The actual function of expected market shares is approximated by the exponential function
$$ \hat{s}=\hat{b}^{D}\cdot e^{-\hat{a}^{D}\cdot p^{MR}}. $$
It should be pointed out that firms are not aware of the actual purchasing probabilities (36). The exponential choice in Eq. 37 is based on the observation that the market data can be explained much better by this form compared to a standard linear model.
Firms act in a dynamic environment with changing prices, but the market share estimation is a point estimation that does not take into account these dynamics. Consequently, the estimation can lose its predictive ability when the actual characteristics of the competitors significantly deviate from the assumed competitive environment. This can cause problems, particularly with regard to long planning periods. In order to alleviate this problem, a firm always carries out two surveys that differ only with respect to the expectations concerning competitors’ prices. The first includes the current market situation, while in the second the willingness to buy is queried for the expected market environment at the end of the planning phase. The estimated market shares for a price pMR for the months in between are determined by a linear combination. For a planning period of length T starting at t, we have for month t + τ an estimated market share of
$$ \hat{s}_{t+\tau}=\frac{(T-1)-\tau}{T-1}\cdot\hat{s}_{t}+\frac{\tau}{T-1} \cdot\hat{s}_{t+T-1}. $$
Based on the results of the market analysis the firm can construct the estimated demand function. The firm combines the estimated trend of the total market size \(\hat {S}_{t+\tau }\) with the expected market share \(\hat {s}_{t+\tau ,\tilde {q}}\). The expected demand curve, estimated for the τth month after t, is
$$ \hat{D}_{i,t+\tau}\left( p^{MR}\right)=\hat{S}_{t+\tau}\cdot\hat {s}_{t+\tau}\left( p^{MR}\right). $$

Preliminary output planning

In order to find a profit maximizing price, the firm does not only need an estimate of the sales but also an estimate of the production costs. Therefore, the firm requires information about the production quantities during the planning period. On that account, the consumption goods firm has to set up a preliminary production plan for the following months under consideration. The drawing up of this production plan is similar to the actual monthly production planning, as described in Section 3.2.1.

The firm derives its preliminary production plan from the estimated demand function and a buffer stock. The buffer allows the firm to serve unforeseeable demand realizations above average. The size of the buffer depends on the level of service, i.e. the percentage of the theoretically possible demand that the firm still wants to satisfy.

In contrast to the actual monthly output planning, in the preliminary output planning for the price setting the firms abstract from the local mall inventories and consider only global inventories. At the beginning of each production cycle, the firms plan to refill their inventories up to a level that corresponds to the service level of their demand. Let χ be the level of service and \(\hat {\sigma }^{2}_{\hat {D}i,t+\tau }\) be the estimated variance of the demand function in t + τ. The critical inventory stock is then determined by
$$ \hat{Y}_{i,t+\tau}= \underbrace{\hat{D}_{i,t+\tau}}_{\text{Expected demand}} + \underbrace{q_{\chi}\cdot\sqrt{\hat{\sigma}^{2}_{\hat{D}i,t+\tau}} }_{\text{Buffer}}, $$
where qχ is the χ- quantile of the normal distribution.
The expected production quantity for period t + τ is then simply the difference of the critical inventory stock \(\hat {Y}_{i,t+\tau }\) and the expected current stock. The expected current stock in t + τ can be derived from the replenished inventory of the previous period minus the expected demand in t + τ − 1. Thus we have
$$ \hat{Q}_{i,t+\tau}=\hat{Y}_{i,t+\tau}-\underbrace{\hat{Y}_{i,t+\tau-1}-\hat {D}_{i,t+\tau-1}}_{\text{Current stock at the beginning of }t+\tau}. $$
The starting value of the inventory stock in the first month of the planning period t is the total buffer that has been used in the determination of the actual production quantity in the previous period t − 1.

Cost analysis

Production costs are driven by the usage of input factors in the production process. These costs are essentially wage costs and costs arising from the use of capital. For the estimate of costs, it is important to estimate, on the one hand, the requirements for input factors and external financing over time, and, on the other hand, the development of factor prices.

The firm computes the required input factor demand for labor and capital for each period t + τ with τ ∈ {0,...,11}. The first step to determine the expected requirements of the input factors labor and capital in t + τ is the computation of the maximum output that the firm can produce with the available capital stock at the beginning of t + τ. The feasible output, derived from the Leontief production function, is the sum of the depreciated effective capital amounts of all vintages held in the former period,
$$ \tilde{Q}_{i,t+\tau}=\sum\limits_{v = 1}^{V} \left\lbrace (1-\delta)\tilde{K}_{i,t+\tau-1}^{v}\cdot \min\left[A^{v},\hat{B}_{i,t+\tau}\right]\right\rbrace, $$
where \(\hat {B}_{i,t+\tau }\) denotes the estimated mean specific skill level of firm’s workforce and Av the technical productivity of vintage v. The evolution of the prospective capital stock from period t, when the firm carries out the analysis, to the planning month before the currently considered period, t + τ − 1, is driven by depreciations and investments, and the depreciation of intermediate investments. Formally, the evolution is represented by
$$ \tilde{K}_{i,t+\tau-1}^{v}= \left\{\begin{array}{ll} (1-\delta)^{\tau-2}K_{i,t-1}^{v}+{\sum}_{l = 0}^{\tau-1}(1-\rho)^{\tau-1-l}\cdot \hat{I}_{i,t+l}^{v} & ~~\text{if }v=v_{t} ,\\ (1-\delta)^{\tau-2}K_{i,t-1}^{v} & ~~\text{else}. \end{array}\right. $$
As there are several vintages v = 1,...,V of the production technology, the firm has to decide in which vintage to invest. Here it is assumed that the vintage vt selected in the periodic vintage choice for production in t is also used for the cost planning for all months under consideration.
The mean specific skills \(\hat {B}_{i,t+\tau }\) in Eq. 42 are estimated by applying the individual specific skill adaptation formula of workers with the mean of specific skills and the productivity of the deployed capital stock in the previous period \(\hat {A}_{i,t+\tau -1},\) as well as the average of general skills of a firm’s employees as parameters (see Section 3.2.4). Put formally, we have
$$ \hat{B}_{i,t+\tau}=\hat{B}_{i,t+\tau-1}+\chi\left( B_{i,t}^{gen}\right)\cdot\max[\hat {A}_{i,t+\tau-1}-\hat{B}_{i,t+\tau-1},0]. $$
Depending on the level of feasible output, on the one hand, and the intended production quantity, on the other hand, the firm has to consider two different cases:
  1. 1.
    The feasible output \(\tilde {Q}_{i,t+\tau }\) is less than or equal to the expected output \(\hat {Q}_{i,t+\tau }\): In that case, the capital stock of the firm is not sufficient for producing the desired output and additional investments are necessary. The needed capital investments are determined by
    $$ \hat{I}_{i,t+\tau}^{v_{t}}=\frac{\hat{Q}_{i,t+\tau}-\tilde{Q}_{i,t+\tau} }{\min[A^{v_{t}},\hat{B}_{i,t+\tau}]}, $$
    and the resulting labor demand is
    $$ \hat{L}_{i,t+\tau}=\sum\limits_{v = 1}^{V}(1-\delta)\tilde{K}_{i,t+\tau-1}^{v}+\hat {I}_{i,t+\tau}^{v_{t}}. $$
  2. 2.
    In the second case, the feasible output is greater than the desired one, \(\tilde {Q}_{i,t+\tau }>\hat {Q}_{i,t+\tau }\). Here only a part of firm’s capital stock is deployed. It is assumed that the firm uses the best vintages of its production technology first. Because of the Leontief production, function the labor demand can be directly derived from the capital requirements. Labor demand is computed according to
    $$ \hat{L}_{i,t+\tau} =\sum\limits_{v = 1}^{V}\min\left[ \tilde{K}_{i,t+\tau}^{v},\max\left[0,\hat{Q}_{i,t+\tau}-\sum\limits_{k=v + 1}^{V}(\tilde{K}_{i,t+\tau}^{k}\cdot\min [A^{k},\hat{B}_{i,t+\tau}])\right] \right] . $$
    As the capital stock is used with less than its capacity, no additional investment are required, \(\hat {I}_{i,t+\tau }^{v_{t}}= 0\).
The prospective variable costs are related to the estimated labor input and, if additional investments are required, the portion of capital expenses in t + τ that is apportioned to this month. The estimated variable costs are
$$ \hat{C}_{i,t+\tau}^{Var}=\underbrace{\hat{w}_{i,t+\tau}\cdot\hat{L}_{i,t+\tau }}_{\text{Labor costs}}+\underbrace{\frac{\hat{I}_{i,t+\tau}^{v_{t}}\cdot p_{t}^{v_{t}}}{T^{L}}}_{\text{Variable capital costs}}. $$
\(\hat {w}_{i,t+\tau }\) is the estimated mean wage in month t + τ. It is determined by
$$\begin{array}{@{}rcl@{}} \hat{w}_{i,t+\tau} \!&=&\! \hat{w}_{i,t+\tau-1}\cdot\left( 1+g^{Prod}_{r}\right)\cdot\min\left[1,\frac{\hat{L}_{i,t+\tau-1}}{\hat{L}_{i,t+\tau}}\right]\\ &&\!+~w_{i,t}^{base}\min\left[\hat{A}_{i,t+\tau-1},\hat{B}_{i,t+\tau -1}\right]\!\cdot\max\left[0,\frac{\hat{L}_{i,t+\tau}-\hat{L}_{i,t+\tau-1}}{\hat {L}_{i,t+\tau}}\right] \end{array} $$
Equation 49 takes into account two different sources for increasing wages. The first term captures the wage increase that is due to the productivity growth in the economy. The wage of employed workers increases with the same monthly growth rate as the average productivity in a firm’s home region. In order to estimate the wage increase of incumbent workers, the firm determines the average regional productivity growth rate of the last 12 months, \({g}_{r}^{Prod}\). The second term captures the change in the mean wage induced by newly hired workers. If a worker accepts a job, the wage corresponds to the wage offer of his general skill group. This wage offer is computed by multiplying a base wage offer with the effective productivity of the skill group (minimum of average specific skills and firm’s technology). For the cost estimation, however, the firm abstracts from skill groups and considers only firm specific averages.
For estimating the fixed costs, the firm has to sum the portions of irreversible capital expenditures spent in previous periods, which have to be accounted for in t + τ. Furthermore, the firm estimates the credit costs by summing the interest payments for all loans which are still open in t + τ. We have fixed costs defined as
$$ \hat{C}_{i,t+\tau}^{Fix}=\underbrace{\sum\limits_{l = 1}^{T^{L}}\frac{\hat {I}_{i,t+\tau-l}^{v_{t+\tau-l}}\cdot p_{\min[t,t+\tau-l]}^{v_{t+\tau-l}} }{T^{L}}}_{\text{Fixed capital costs}}+\underbrace{\sum\limits_{l = 1} ^{T^{L}}\hat{\mathcal{L}}^{b}_{i,t+\tau,t+\tau-l}\cdot r^{b}_{i,t+\tau-l} }_{\text{Credit costs}}, $$
where vt + τl indexes the vintage selected for the investment in t + τl and for l > τ. \(\hat {\mathcal {L}}^{b}_{i,t+\tau ,t+\tau -l}\) indicates the current value of a loan in the period t + τ (second subscript) which has been raised in t + τl (third subscript). \({r}_{i,t+\tau -l}^{b}\) is the interest rate for which the loan was accepted.
The expected demand for credit in t + τ is derived from a comparison of the prospective expenses and the financial resources that are available. This information stems from an estimate of the payment account, which takes all intermediate inflows and outflows into account. At the beginning of t + τ, the expected financial resources are given by \(\hat {M}_{i,t+\tau -1}\). The firm has to pay a percentage 𝜗 of its previous profits \(\hat {\pi }_{i,t+\tau -1}\) as taxes and a percentage d of the net profits as dividends. Then it has to pay the wage bill and investments for production in t + τ, the debt installment, and interest payments. In sum, one has
$$\begin{array}{@{}rcl@{}} \hat{Exp}_{i,t+\tau} &=&\underbrace{\vartheta\cdot \max\left[0,\hat{\pi}_{i,t+\tau-1}\right] }_{\text{Taxes}}+\underbrace{d\cdot(1-\vartheta)\max\left[0,\hat{\pi }_{i,t+\tau-1}\right]}_{\text{Dividends}}+\underbrace{\hat{w}_{i,t+\tau}\cdot\hat {L}_{i,t+\tau}}_{\text{Wage bill}}\\ &&+~\underbrace{\hat{I}_{i,t+\tau}^{v_{t}}\cdot p_{t}^{v_{t}} }_{\text{Capital bill}}+\underbrace{\sum\limits_{l = 1}^{T^{L}}\left( \hat {\mathcal{L}}^{b}_{i,t+\tau,t+\tau-l}\cdot r^{b}_{i,t+\tau-l}+\frac{\hat{\mathcal{L}}^{b}_{i,t+\tau -l,t+\tau-l}}{T^{L}}\right)}_{\text{Interest and debt installment payments}}. \end{array} $$
Additional credit is required if the expenses \(\hat {Exp}_{i,t+\tau }\) are not completely covered by the available cash,
$$ \hat{\mathcal{L}}_{i,t+\tau,t+\tau}=\max\left[0,\hat{Exp}_{i,t+\tau}-\hat{M}_{i,t+\tau -1}\right]. $$
The firm adds the expected revenues \(\hat {R}_{i,t+\tau }\) and the additional credit raised on the notional payment account. At the end of the planning month, the expected payment account balance is
$$ \hat{M}_{i,t+\tau}=\hat{M}_{i,t+\tau-1}-\hat{Exp}_{i,t+\tau}+\hat {R}_{i,t+\tau}+\hat{\mathcal L}_{i,t+\tau,t+\tau}. $$
Expected revenues generated by selling the good at a price pMR in t + τ are computed by
$$ \hat{R}_{i,t+\tau}=p^{MR}\cdot\hat{D}_{i,t+\tau}. $$

Profit analysis

The firm evaluates expected profits for each of the candidate prices. As the price holds for one year, the firm compares the profitability of the alternatives with respect to the whole planning period. For month t + τ, the estimated profit associated with the price pMR is denoted by
$$ \hat{\pi}_{i,t+\tau}\left( p^{MR}\right)=\hat{R}_{i,t+\tau}\left( p^{MR}\right)-\left( \hat{C}_{i,t+\tau }^{Var}\left( p^{MR}\right)+\hat{C}_{i,t+\tau}^{Fix}\left( p^{MR}\right)\right). $$
The yearly profit is simply the sum of the monthly earnings. For the comparison of intertemporal payment flows, the firm considers the discounted sum:
$$ \hat{\Pi}_{t}=\sum\limits_{\tau= 0}^{11}\frac{1}{(1+\rho)^{\tau}}\cdot\hat{\pi }_{i,t+\tau}. $$
The firm selects the price that yields the highest discounted profit \(\hat {\Pi }_{t}\):
$$ p_{i,t+\tau}=\arg\max_{p\in\lbrack\underline{p}_{i,t}^{MR},\bar {p}_{i,t}^{MR}]}\hat{\Pi}_{t},\forall\tau= 0,...,11. $$

3.3 Bankruptcy

Two types of bankruptcy are considered:
  • Illiquidity bankruptcy: In the credit market the firm was unsuccessful in raising all its external finances. It is unable to pay its financial commitments, i.e., taxes, debt installments and interests. Firm equity is positive but it does not have enough liquidity to continue operations. It should raise enough funds to become liquid again.

  • Insolvency bankruptcy: The firm updates its balance sheet and checks for insolvency at the end of its production cycle when it has received the revenues from this month’s sales. If the firm equity becomes negative, it is insolvent and goes out of business. It has to perform a debt restructuring before it can continue operations.

3.3.1 Entry and exit

Both types of bankruptcy may occur in the model. As soon as a firm is declared bankrupt, this has the following consequences:
  1. 1.

    All current employees are fired and become unemployed. They receive unemployment benefits.

  2. 2.

    The firm suspends all production activities for a year. At the end of the period, the firm reenters and production is restarted.

  3. 3.

    The capital stock remains in the firm, but is unproductive during the idle period.

  4. 4.

    Since we have modelled the financial market as an index, the shares of the firm continue to exist in the market index, but obviously pay no dividends. The households’ portfolios of index shares are unaffected.

  5. 5.

    The local inventory stock at the malls is destroyed, representing the economic loss due to bankruptcy.

  6. 6.

    Debt renegotiation with the banks. For each loan, the firm defaults on a fraction of the loan. This leads to bad debt that should be written off from the bank’s balance sheet.


3.3.2 Debt restructuring

Debt restructuring is modelled by re-scaling the total debt, either based on the current value of total debt, or the current value of total assets, depending on the type of bankruptcy. To make it easier for re-entering firms to obtain new loans we improve their debt-to-equity ratio and lower their risk of default. This makes it more likely for a bank to accept any future loan requests from such a debt-restructured firm.

In case of bankruptcy due to insolvency, the new target debt \({\mathcal D}^{*}\) is set lower than total assets A. The debt rescaling parameter φ is assumed to be constant across all firms and over time:
$$ {\mathcal D}^{*}_{i,t} = \varphi A_{i,t} \hspace{.5cm} \text{with} \hspace{.5cm} 0\leq \varphi \leq 1 . $$

After debt restructuring, the equity of the restructured firm is positive, \(E^{*}_{i,t} = (1-\varphi ) A_{i,t} >0\). The debt-to-equity ratio after rescaling is given by the constant: \({\mathcal D}^{*}_{i,t}/E^{*}_{i,t} = \varphi /(1-\varphi )\).

In case of bankruptcy due to illiquidity, the firm does not need to renegotiate its debt per se, since \({\mathcal D}_{i,t}\) is already lower then Ai,t and equity is still positive. However, since the firm is unable to pay its financial commitments, it should raise new funds on the credit market. We also allow illiquid firms to write down part of their debt. In contrast to insolvent firms, illiquid firms do not rescale their debt as a fraction of assets, but as a fraction of the original debt:
$$ {\mathcal D}^{*}_{i,t} = \varphi {\mathcal D}_{i,t} \hspace{.5cm} \text{with} \hspace{.5cm} 0\leq \varphi \leq 1 , $$
with new equity given by \(E^{*}_{i,t} = A_{i,t} - \varphi {\mathcal D}_{i,t} > E_{i,t}\) and a new debt-to-equity ratio \({\mathcal D}^{*}_{i,t}/E^{*}_{i,t} = \varphi {\mathcal D}_{i,t}/(A_{i,t}-\varphi D)\). Since setting a lower value for the debt-to-equity ratio improves the firm’s chances of getting new loans in the future, the debt rescaling parameter φ must be set to low values φ ≤ 0.5 to ensure that the new debt-to-equity ratio is much smaller than the previous debt-to-equity ratio.

3.4 Banking sector

This section provides details that are directly related to the supply of credit to firms.

3.4.1 Bank accounting

Table 3 shows the balance sheet and Table 4 the cash flow of the bank. The bank’s cash flow position fluctuates with deposits and withdrawals by households and firms, with interest payments, tax payments, and dividend payouts. The net profits (or losses) are added to the net worth of the bank. The bank’s reserves are held at the Central Bank. Bank profits \({\pi ^{b}_{t}}\) at the end of month t are determined by
$$ {\pi^{b}_{t}} = {\sum}_{i} r^{b}_{i,t}{\mathcal L}^{b}_{i,t,t-l} - r^{d} \left( {\sum}_{h} M^{b}_{h,t} + {\sum}_{i} M^{b}_{i,t} \right) + r^{c}\left( {M^{b}_{t}} - {D^{b}_{t}} \right), $$
and the bank’s reserve at the Central Bank evolve according to
$$ M^{b}_{t + 1} = {M^{b}_{t}} + {\sum}_{h} {\Delta} M^{b}_{h,t}+ {\sum}_{i} {\Delta} M^{b}_{i,t} + (1-\vartheta)\max\left\lbrack 0, {\pi^{b}_{t}} \right\rbrack - d(1-\vartheta)\max\left\lbrack 0, {\pi^{b}_{t}} \right\rbrack. $$
The bank’s profits consist of the margin between interests on loans and interests on demand deposits, plus (minus) any interest payments by (to) the Central Bank on overnight central bank reserves (central bank reserve debt). In case of positive profits, the bank pays taxes at a tax rate 𝜗 and dividends at dividend rate d. The net changes of the demand deposit accounts for households and firms are given by \({\Delta } M^{b}_{h,t} = M^{b}_{h,t} - M^{b}_{h,t-1}\) and \({\Delta } M^{b}_{i,t} = M^{b}_{i,t} - M^{b}_{i,t-1}\), respectively. The total deposits at bank b are given by \(M^{b,TOT}_{t} = {\sum }_{h} M^{b}_{h,t} + {\sum }_{i} M^{b}_{i,t}\).
Table 3

Bank balance sheet



Mb: liquidity (cash reserves)

\({\sum }_{h} {M^{b}_{h}}\): household demand deposits


\({\sum }_{i} {M^{b}_{i}}\): firm demand deposits

\({\sum }_{i}{\mathcal L}^{b}_{i}\): outstanding loans

\({\mathcal D}^{b}\): standing facility

to firms

(debts to Central Bank)


Eb: net worth

Table 4

Bank cash flow



ΔMh, ΔMi

Deposits mutation

\(r^{d} \left ({M^{b}_{h}}+{M^{b}_{i}}\right )\)

Interest on demand deposits

\(\sum {\Delta } Deb{t^{b}_{i}}\)

Firm loan installments


\(\sum {r^{b}_{i}} {\mathcal L}^{b}_{i}\)

Firm interest payments

\(\sum {\mathcal L}^{b}_{i}\)

New loans to firms


New Central Bank (CB) debt


Reduction of CB debt


(standing facility)


r c M b

Interest received from the CB

r c D b

Interest payment on CB debt


D i v b

Dividend payout


\(\vartheta \max \left \{0,\pi ^{b}\right \}\)

Tax payment

3.4.2 Bank credit supply and risk-taking behavior

The bank’s ability to provide credit is restricted by a Capital Adequacy Requirement (CAR) and the Reserve Requirement Ratio (RRR). The bank’s risk-taking behavior depends on its current level of exposure to default risk and the capital requirement.

Consistent with the empirical literature, e.g., Ongena and Smith (2000), firms may have business relationships with several banks. Firms select banks at random in each production period. The bank records several characteristics of the applying firms: total debt, size of credit requested, firm equity, and additional risk exposure. These attributes enter into the risk assessment of the bank and the loan conditions offered to the firm, consisting of size and interest rate for the loan. Then the firm selects the bank with the lowest interest rate offer.

On a daily basis, the banks rank their stream of credit requests in ascending order of risk exposure. The least risky credit request of the current day is considered first, but different firms have different activation days during the month, so each new day sees new firms requesting loans to the same bank. If a healthy, financially sound firm requests a loan one day after an unhealthy and financially unsound firm has already obtained a loan with a large risk exposure, the healthy firm may see itself credit rationed due to limits on the banks’ risk exposure.

3.4.3 Probability of default

The bank’s assessment of the probability of default (PD) on a loan by firm i depends on the creditworthiness of that firm, and is measured by the debt-to-equity ratio (where firm debt includes the new loan). Following the internal risk-based (IRB) approach of the Basel Accords, there is a minimum risk-weight that sets a floor-level for the probability of default at three basis points (0.03 percent). We assume that the bank associates the following PD to a loan of size \({\mathcal L}^{b}_{k,t}\), if it is granted by bank b to firm i:
$$ PD^{b}_{k,t} = \max \left\lbrace 3\times 10^{-4} , 1- \exp \left( -\nu\left( {\mathcal D}_{i,t} + {\mathcal L}^{b}_{k,t}\right)/E_{i,t} \right) \right\rbrace, $$
where Di,t and Ei,t denote debt and equity of the firm i applying for the loan k.11 The rule is parameterized by a parameter ν (ν = 0.1) that weighs the impact of the debt-to-equity ratio on the probability of default.

3.4.4 Credit risk

Since we assume there is no collateral for commercial loans all firm debt is unsecured and the expected loss given default (LGD) is one hundred percent of the loan (LGD= 1). Due to this assumption, the credit risk or Exposure at Default (EAD) of the loan is simply the probability of default times the value of the loan:
$$ EAD^{b}_{k,t} = LGD^{b}_{k,t} \times PD^{b}_{k,t} \times {\mathcal L}^{b}_{k,t} = PD^{b}_{k,t}\times {\mathcal L}^{b}_{k,t}. $$
The Risk Exposure Amount of the bank is now simply the sum of the risk-weighted asset values across the entire loan portfolio:
$$ {REA}^{b}_{t} = \sum\limits_{i = 1}^{F} \sum\limits_{k = 0}^{K(i)} PD^{b}_{k,t}\cdot {\mathcal L}^{b}_{k,t}, $$
where the index i runs over all firms, and index k = 0,...,K(i) over loans of firm i with bank b.

3.4.5 Interest rate rule

The interest rate offered to a firm is an increasing function of the credit risk reflecting the risk premium that the bank charges to more risky, less financially sound firms. The credit risk posed by firm i enters into the loan conditions as a mark up on the central bank base interest rate. The weight of the credit risk in the interest rate can be calibrated by a behavioral parameter λB that is the same across all banks. Furthermore, the time-varying operating costs are captured by a random variable \({\epsilon ^{b}_{t}}\), which is uniformly distributed on the unit interval.12
$$ r^{b}_{i,t} = r^{c} \left( 1 + \lambda^{B} \cdot PD^{b}_{k,t} + {\epsilon^{b}_{t}} \right), \text{where } {\epsilon^{b}_{t}} \sim U[0,1]. $$

3.4.6 Capital adequacy requirement

Each bank is required to satisfy a minimal capital adequacy ratio, implying that banks have to observe a limited exposure to default risk. Bank equity (core capital) must be greater or equal to a fraction κ of the value of its risk-weighted assets. This assumption is based on Basel II/III capital requirements, where κ is between 4 and 10.5 percent. The bank’s total exposure to credit risk is restricted by α := κ− 1 times the equity of the bank:
$$ {E^{b}_{t}}\geq \kappa \cdot RE{A^{b}_{t}} \qquad \text{i.e.}\qquad RE{A^{b}_{t}}\leq\alpha \cdot {E^{b}_{t}} $$
Here \({E^{b}_{t}}\) is bank equity (core capital), \(RE{A^{b}_{t}}\) is the value of risk-weighted assets, κ is the capital adequacy ratio, and α := κ− 1 is the maximum leverage in terms of the ratio of equity to risk-weighted assets (\({E^{b}_{t}}/RE{A^{b}_{t}}\)). If the constraint is violated, the bank stops providing new loans. Pre-existing loans are still administered, firms continue to pay interest and debt installments, and the demand deposits of account holders continue to be serviced. From this we derive a credit risk exposure “budget” Vb that is still available to fund firms:
$$ {V^{b}_{t}} := \alpha \cdot {E^{b}_{t}} - RE{A^{b}_{t}}. $$
The supply of credit risk in the current period is restricted to this exposure budget Vb. Firm i receives its full credit whenever the bank’s total credit risk exposure remains below this limit and is fully rationed when the loan would exceed the risk limit. In terms of the exposure budget Vb, the credit offer reads:13
$$ \bar{\ell}^{b}_{i,t} =\left\lbrace \begin{array}{ll} \tilde{{\mathcal L}}_{i,t} & \text{if } PD^{b}_{k,t} \cdot \tilde{{\mathcal L}}_{i,t} \leq {V^{b}_{t}}\\ 0 & \text{if } PD^{b}_{k,t} \cdot \tilde{{\mathcal L}}_{i,t} > {V^{b}_{t}}. \end{array}\right. $$
Bank risk exposure is positively correlated to the maximum risk-based leverage ratio α (inverse capital adequacy ratio). Higher α means more risk is allowed, hence banks have at their disposal a greater budget of excess risk exposure and will tend to give out more risky loans. We assume there is no intertemporal aspect to the risk-assessment on the part of the bank, which is solely based on the current balance sheet position of the firm that is requesting the credit.

3.4.7 Reserve requirement

The banks must observe a minimum Reserve Requirement Ratio (RRR), that is, reserves must exceed a fraction 0 ≤ β ≤ 1 of total demand deposits of households and firms:
$$\begin{array}{@{}rcl@{}} {M^{b}_{t}} \geq \beta \cdot M^{b,TOT}_{t}, \text{where } M^{b,TOT}_{t} = M^{b}_{h,t} + M^{b}_{i,t}. \end{array} $$
From this equation, the “excess liquidity”-budget of the bank is derived as:
$$ {W^{b}_{t}} := {M^{b}_{t}} - \beta \cdot M^{b,TOT}_{t} \geq 0. $$
Note that \({M^{b}_{t}}\) denotes the bank’s central bank reserves, a bank asset, while \(M^{b,TOT}_{t}\) denotes the bank’s total demand deposits, which is a bank liability.
If the excess liquidity budget is sufficient to provide a firm with its requested credit, then it is serviced in full. Otherwise it is partially credit rationed such that the bank attains its minimum reserve requirement. In case of partial rationing, the granted loan size is given by:14
$$ {\mathcal L}^{b}_{k,t} =\left\lbrace \begin{array}{ll} \bar{\ell}^{b}_{i,t} & \text{if } {W^{b}_{t}} \geq \bar{\ell}^{b}_{i,t}\\ \phi^{b}_{i,t}\cdot \bar{\ell}^{b}_{i,t} & \text{if } 0\leq {W^{b}_{t}} \leq \bar{\ell}^{b}_{i,t} \\ 0 & \text{if } {W^{b}_{t}} < 0. \end{array}\right. $$
Here \(\bar {\ell }^{b}_{i,t}\) is the constrained credit demand after applying the CAR-constraint in Eq. 68. The fraction \(\phi ^{b}_{i,t}\) is such that the new loan exactly exhausts the excess reserves and this results in a binding RRR constraint:15
$$\begin{array}{@{}rcl@{}} \phi^{b}_{i,t} &&= \left\{\phi: \left( {M^{b}_{t}} - \phi\cdot \bar{\ell}^{b}_{i,t}\right) - \beta \cdot M^{b,TOT}_{t} = 0\right\}, \end{array} $$
$$\begin{array}{@{}rcl@{}} &&= \frac{{M^{b}_{t}} - \beta\cdot M^{b,TOT}_{t}}{\bar{\ell}^{b}_{i,t}} = \frac{{W^{b}_{t}}}{\bar{\ell}^{b}_{i,t}}. \end{array} $$

3.5 The capital goods producer

The supply side of the capital goods market is modeled in a simplified way. There is a monopolistic capital goods firm that offers different vintages of the capital good at infinite supply elasticity. This firm is able to satisfy all emerging capital demand required by consumption goods firms for production. Furthermore, the capital good is produced without input factor requirements and consequently without production costs. In order to close the model, all revenues are channeled back into the economy by distributing them to households in the form of dividends. Despite these strong simplifications, the model includes important aspects for a reasonable analysis of the interaction of the technological diffusion and the business cycle.

3.5.1 The development of new vintages

The capital goods producer carries out research and development leading to new vintages of the capital good. The existing vintages v = 1,..,V are the result of previous innovations, and once a new vintage is launched, it is never taken off the market. The number of available vintages is increasing over time.

Innovation is modeled as a random process. Every period with a probability \(\mathbb {P}[\text {Innovation}]>0\) there is a successful innovation of a new vintage V + 1. The productivity as the key characteristic of the technology is increased from the previous best practice by Δqinv > 0. Thus, the new frontier technology features a productivity level of
$$ A^{V + 1}= \left( 1+{\Delta} q^{inv}\right)\cdot A^{V}. $$

3.5.2 The pricing of vintages

The pricing of the vintages is modeled as a combination of cost-based and value-based pricing (see Nagle et al. (2011)). Note that the costs for producing the capital good are not explicitly modeled in the present implementation, but we assume a proxy for the costs that have to be incorporated in the price setting. These as-if costs grow, similar to the evolution of the labor costs, with the same rate as the average productivity in the economy \(B^{Eco}_{t}\). The cost-based price component has the same level for all vintages v and is denoted by
$$ p_{t}^{Cost}= \frac{B^{Eco}_{t}-B^{Eco}_{t-1}}{B^{Eco}_{t-1}}\cdot p_{t-1}^{Cost}. $$
For the value-based price component, the capital goods producer estimates the value that each vintage has for a reference firm the workforce of which consists of the economy wide average levels for the specific skills (\(B^{Eco}_{t}\)) as well as general skills \(\left (b^{Eco}_{gen} \right )\). For the benchmark firm the capital goods producer computes the discounted sums of the expected effective productivities for each vintage v. This is done in an analogous manner as the estimate of the effective productivities by the consumption goods producers for their vintage choice, i.e. the capital goods firm estimates the evolution of specific skills \(\hat {B}^{Eco}_{t+s}\) with respect to the average general skill level \(b^{Eco}_{gen}\). For vintage v, the discounted sum of effective productivities of the benchmark firm is
$$ \bar{A}^{v}_{t} = \sum\limits_{s = 0}^{S} \left( \frac{1}{1+\rho}\right)^{s} \min\left[A^{v},\hat{B}^{Eco}_{t+s}\right]. $$
\(\bar {A}^{v}_{t}\) denotes the estimated future productivity of vintage v for a average firm in the economy. The relative utility of v compared to the lowest productivity vintage v = 1 gives then the ratio between their values. By assuming that the price for vintage v = 1 quoted in the previous period corresponds to its value, the value of v entering in the pricing can be estimated by
$$ p^{value}_{v,t}= p^{1}_{t-1}\cdot \frac{\bar{A}^{v}_{t}}{\bar{A}^{1}_{t}}. $$
The price of vintage v is finally set according to the linear combination
$$ {p^{v}_{t}}= (1-\lambda) \cdot p_{t}^{cost} + \lambda \cdot p^{value}_{v,t}. $$
This rule can be interpreted as a proxy for a bargaining process, where the monopolistic capital goods producer, on the one hand, and the consumption goods producers, on the other hand, negotiate the prices for the capital goods. The weighting factor λ (0 ≤ λ ≤ 1) is a parameter indicating the bargaining power of the capital goods firm. A high λ denotes that the capital goods firm can skim off the whole value of the vintage, whereas λ close to zero denotes that the capital firm has no power and can only set the price at its costs.

3.6 Household

3.6.1 Income determination

There are four different income types that a household can possibly receive:
  1. 1.

    The most important income is the labor income i.e. the monthly wage that a household receives in case of employment.

  2. 2.

    If a household is unemployed, then he receives an unemployment benefit from the government. This is a fixed percentage (u) of households’ last earned wage.

  3. 3.

    Depending on the index share holdings, a household receives dividends that are paid by firms to a clearing house. The clearing house distributes the total dividends to the holders of the index share.

  4. 4.

    The household receives interest payments from the bank on the demand deposits.


The total income is the sum of these different income types. At the end of the month, a household has to pay income taxes on the total income.

3.6.2 Consumption and savings decision

At the beginning of period t, a consumer h decides on the budget Ch,t that he plans to spend. The consumer receives an income Ih,t, and has total wealth Wh,t, which consists of his money holdings and financial assets. The notional consumption budget is determined according to the following consumption rule
$$ C^{\star}_{h,t}=I_{h,t}^{Mean}+\kappa\cdot\left( W_{h,t}-{\Phi}\cdot I_{h,t}^{Mean}\right), $$
where \(I_{h,t}^{Mean}\) is the mean individual income of an agent over the last T periods and the parameter Φ is the target wealth/income ratio. This formulation is motivated by the “buffer stock” theory of consumption which is backed up by theoretical arguments and substantial empirical evidence (see Deaton 1991; Carroll and Summers 1991). As argued in Carroll and Summers (1991), this theory, according to which liquidity constrained consumers facing risky income desire a buffer stock equal to a certain number of months income, has the potential to explain the empirically observed correlation between income, savings and growth.

The parameter Φ describes how large the targeted buffer is relative to income, and κ indicates how sensitively consumption reacts to deviations of the actual wealth-to-income ratio to the target level.

In order to prevent the consumption budget from becoming negative or exceeding the savings account, we restrict the effective consumption budget to lie between zero and current money holdings:16
$$ C_{h,t} = \left\lbrace \begin{array}{l} 0, \hspace{1.7cm} C^{\star}_{h,t}<0,\\ C^{\star}_{h,t}, \hspace{.5cm} 0<C^{\star}_{h,t}<M_{h,t},\\ M_{h,t}, \hspace{1.15cm} C^{\star}_{h,t}>M_{h,t}. \end{array}\right. $$

Each consumer goes shopping once a week, but different households shop on different days. The monthly budget is equally split over the four weeks. Parts of the weekly budget that are not spent in a given week are rolled over to the consumption budget of the following week. This yields a weekly consumption budget Ch,t/4 for each week in month t.

3.6.3 Households’ consumption choice

Once the consumption budget is determined, the consumer collects information about the range of products provided. At the beginning of their shopping procedure, households get information about the prices of all available goods at the mall, but they get no information about the available quantities. Having a local mall in each region implies that local demand and regional supply determine the possibility of rationing for local households. Also, it allows the model to be extended in a way that consumers (if prices are identical) have a higher probability of buying goods offered by local producers, thereby incorporating a home bias (see Dawid et al. (2018c)).

The decision as to which good to buy is described using a logit-choice model with strong empirical foundation in the Marketing literature (see, e.g., Malhotra 1984; Malhotra 1984; Krishnamruthi and Raj 1988; Krishnamruthi and Raj 1988). Specifically, let Gh,t denote the set of products for which there are still positive inventory stocks when consumer h visits the regional market (the mall). A consumer h visiting the mall can observe the posted prices of all products with positive inventory and it is assumed that he selects product iGh,t with a logit probability
$$ \mathbb{P}[\text{Consumer \textit{h} selects product \textit{i}}]=\frac{\exp \left( -\gamma^{c} \ln\left( p_{i,t}\right)\right)} {{\sum}_{i^{\prime}\in G_{h,t}}\exp \left( -\gamma^{c} \ln \left( p_{i^{\prime},t}\right)\right)}. $$
For γc a situation of standard Bertrand price competition is captured, in which all firms offer a homogeneous good and each consumer always buys from the producer offering the good at the lowest price. However, for lower values of γc, the formulation (81) also allows us to capture situations in which, in spite of price dispersions across producers, those not offering the lowest price have positive sales. In accordance with standard approaches in the Industrial Organization literature we assume that the products offered by the different consumption good firms are horizontally differentiated, i.e. they are substitutes and do not differ with respect to quality, but differ with respect to product properties (such as design, color, advertising) for which consumers have idiosyncratic preferences. A way to interpret the multinomial logit formulation of consumer choice in this respect is to assume that the utility of the consumption good i for consumer h is given by
$$ u_{h}\left( p_{i,t}\right)= \bar u_{h} - \gamma^{c} \ln\left( p_{i,t}\right) + \epsilon_{h,i,t}, $$
where \(\bar u_{h}\) is the base utility of the product, which is identical across firms, and 𝜖h,i,t captures the contribution of the (horizontally differentiated) product properties of product i to the utility for consumer h in period t. Assuming that each consumer at each time chooses the product with the highest utility and that 𝜖h,i,t is stochastic and follows an appropriate distribution, the probability that the consumer selects product i, is given by Eq. 81, see e.g. Ben-Akiva and Lerman (1985). The parameter γC governs the price sensitivity of consumers and therefore the intensity of competition between the consumption goods producers.

The consumption requests for the horizontally differentiated goods are collected by the mall. If the total demand for one good exceeds the mall’s inventory level, the mall rations the demand. It sets a rationing quota corresponding to the percentage of the total demand that can be satisfied with the available goods. Each household receives the indicated percentage of the requested consumption good.

After the shopping activity, rationed households may still have parts of their consumption budget available. Those households have the opportunity to spend the remaining budget for another good in a second shopping loop. In this case, the shopping process is repeated as described above.

The production of the consumption goods firm follows a fixed time schedule with fixed production and delivery dates. Even if the mall stock is completely sold out, it can only be refilled at the fixed delivery date. Consequently, all the demand that exceeds the expected value of the monthly sales plus the additional buffer cannot be satisfied.

3.6.4 Financial asset allocation

Households decide on their asset allocation after their consumption budget is determined. This may lead to a re-adjustment of their current asset portfolio.

Since we do not assume that capital markets are perfectly liquid, the agents may not be able to execute their transactions. There is the possibility of rationing, also on the financial markets.17 Therefore, we introduce a distinction between the anticipated and the realized values of variables such as the consumption budget and asset allocations. The anticipated values are planned at the start of period t, while the realized values are known after the financial market is closed. The agents then know their asset transactions and the status of their money holdings after trading. Afterwards, they visit the market for consumption goods where they spent their actual consumption budget that may deviate from the ex ante planned budget.

A household first determines its anticipated consumption budget \(C^{e}_{h,t}\) based on its current total wealth Wht at the start of the period, consisting of liquid money holdings and the value of the risky asset portfolio. Subtracting this planned but not yet realized consumption budget from the total wealth, the remaining “asset budget” is allocated to the assets.

In a second step, the household determines the asset allocation between the risky asset (the index share) and the risk-free asset (the bank deposits). Since the issue of households’ asset allocation is not a focus of this model, we use an extremely simple approach to model how much is invested in index shares, which is the only risky asset traded on the financial market. In particular, we assume that there is a randomly determined share of the total assets allocated to the risky asset. More formally, given the planned asset budget \(X^{e}_{h,t}\), the total value allocated to the risky asset is \(A^{e}_{h,t}=\theta _{h,t}X^{e}_{h,t}\), where 0 ≤ 𝜃h,t ≤ 1 is the proportion to invest, and \(M^{e}_{h,t}=(1-\theta _{h,t})X^{e}_{h,t}\) are anticipated money holdings, and 𝜃h,t is a uniformly distributed random variable.18 Our assumption is sufficient to obtain different values for 𝜃h,t, and to ensure that households are on opposite sides of the market. The formulation captures in a reduced form the heterogeneity of traders beliefs leading to different allocations between the risky and the risk-free asset.

This simple rule of randomly dividing up the total assets into a risky asset class and risk-free money holdings results in the following sequence of equations that describe how the state variables related to the financial decisions of the household evolve:
$$\begin{array}{@{}rcl@{}} X_{h,t} &=& M_{h,t-1} + A_{h,t-1}-C_{h,t-1} \end{array} $$
$$\begin{array}{@{}rcl@{}} W_{h,t} &=& M_{h,t} + A_{h,t} \end{array} $$
$$\begin{array}{@{}rcl@{}} X^{e}_{h,t}&=& W_{h,t}-C^{e}_{h,t} \end{array} $$
$$\begin{array}{@{}rcl@{}} A^{e}_{h,t} &=& \theta_{h,t}X^{e}_{h,t} \end{array} $$
$$\begin{array}{@{}rcl@{}} M^{e}_{h,t} &=& (1-\theta_{h,t})X^{e}_{h,t} \end{array} $$

Actual asset allocation at end of period t − 1, start of period t.


Total wealth of agent h at the start of period t.


Anticipated consumption budget at time t..


Anticipated asset budget to be allocated at time t.


Asset allocation to risky asset, planned at time t.


Anticipated money holdings, planned at time t.

\({\Delta } X_{h,t}=X^{e}_{h,t}-X_{h,t-1}\):

Planned change in asset allocation.

ΔAh,t = Ah,tAh,t− 1:

Actual change in risky assets, resulting from transactions.

ΔMh,t = Mh,tMh,t− 1:

Actual change in money holdings, resulting from transactions.

Since the change in the total asset allocation can have either sign, we have to capture both investment and disinvestment into the risky asset. Overall several cases have to be distinguished (see Table 5):
  1. 1.
    ΔXh,t > 0: The asset budget is anticipated to increase with respect to the current state (note that \({\Delta } X_{h,t}={\Delta } A^{e}_{h,t}+{\Delta } M^{e}_{h,t}\)). Subcases are:
    1. (a)

      ΔAh,t > 0: Buy risky assets and withdraw money. This is a net investor who wants to invest in the risky asset. Some money from bank deposits are reallocated to the asset portfolio.

    2. (b)

      ΔAh,t ≤ 0, ΔMh,t > 0: Sell risky assets and deposit money. This is a seller who wants to liquify risky assets to reallocate wealth from the portfolio to demand deposits, possibly without affecting the total allocation to assets.

    3. (c)

      ΔCh,t < 0: Buy risky assets and deposit money.

  2. 2.
    ΔXh,t < 0: The asset budget is anticipated to decrease with respect to the current state. This can be achieved either through a decrease in both terms or by an overall decrease and a reallocation between the risky and risk-free asset. Subcases are:
    1. (a)

      ΔAh,t < 0 and ΔMh,t ≤ 0: a seller plans to withdraw money from his bank account and sell risky assets to consume more.

    2. (b)

      ΔAh,t < 0 and ΔMh,t > 0: a seller wants to increase money holdings and consumption by selling risky assets.

  3. 3.

    Ch,tMh,t: A special case occurs if the agent’s consumption budget is larger than current money holdings and the household is rationed so it cannot liquify its assets. There are still risky assets in the portfolio to finance the difference ChtMht, but now it turns out that it has to downscale the consumption budget. We assume that the consumption budget is set equal to the actual payment account, and the household completely depletes its current money holdings.

Table 5

Household asset allocation: Possible cases that occur at run-time







Consume more, buy assets, withdraw money (reallocate)



Consume more, sell assets, deposit money (reallocate)


Consume more, sell assets, withdraw money (reduce assets)



buy assets, withdraw money (reallocate)



sell assets, deposit money (reallocate)



Consume less, buy assets,, deposit money (increase assets)


Consume less, sell assets, deposit money (reallocate)


Consume less, buy assets, withdraw money (reallocate)

3.7 Government

The government mainly has redistributive functions. It levies an income tax on households and a corporate tax on firms. Outlays of the government include unemployment benefits and various transfers and subsidies to firms and households which may be switched on or off depending on the kind of policy experiment one wishes to run. For example, the model allows for subsidies to be paid for training that raises the general skills of workers. These subsidies may be paid to firms residing in a specific region or to all firms populating the model.

The government calculates its budget on the basis of naive expectations at the start of every year. It projects the revenues and expenditures by multiplying last year’s income and expenditure with an anticipated growth rate, respectively.

The government computes its budget once per month. Should the government run a budget surplus, it is deposited at the Central Bank. For simplicity we assume that a deficit is financed through monetization, i.e. the Central Bank creates fiat money.

3.8 Eurostat

The Eurostat agent collects and aggregates microvariables to construct macrovariables. These variables are computed online whenever there is a need for any of the agents to know about these macrovariables.

4 Market mechanisms

4.1 Credit market interaction

The protocol for matching the firms and banks in the credit market consists of a completely decentralized, bilateral matching algorithm. Firms submit credit requests with multiple banks to apply for loans. The banks receive and rank all incoming credit requests on a daily basis, and the ranking is based on the risk exposure of the new loan, taking into account the debt-to-equity ratio of the firm. The less riskier credit requests are served first.

However, if on a particular day many risky firms request a loan, and these loans deplete the bank’s “risk-exposure” budget of its “excess-liquidity” budget (see Section 3.4.2), then the next day some non-risky firms may find themselves credit rationed, even though they are less risky than the firms of the previous day.

In processing the accepted credit requests, the bank takes into account the firm-specific credit risk and its own total risk-weighted assets, i.e. the exposure of its entire loan portfolio according to stylized Basel II standards (capital adequacy ratios). If the credit request is refused, or not fully accepted, the firm has to reduce its planned production quantity up to the point where the planned expenditures (wage bill, capital investments, other financial commitments) can be financed.

If the firm is credit constrained to such extent that it is not able to pay the financial commitments, it goes out of business. It goes bankrupt if the firm’s equity becomes negative. In case of bankruptcy, employees lose their jobs, and the firm writes off a fraction of its debt and stays idle for a certain period before it becomes active again.

4.2 Labor market interaction

The labor market is also modelled as a completely decentralized system, with bilateral matching between firms with open vacancies and job seekers. According to the procedures described in the previous sections, consumption goods producers review once a month whether to post vacancies. Job seekers check for these vacancies, and if the wage offer exceeds their reservation wage, then the vacancy appeals to them, and they apply for the job. The matching between vacancies and job seekers functions according to the following protocol.
  1. Step 1:

    The firms post vacancies including wage offers for each general skill group.

  2. Step 2:

    Every job seeker extracts from the list of vacancies those postings to which he fits in terms of his reservation wage \(w^{R}_{h,t}\) net of commuting costs that may arise if he applies for a job in a region where he does not live. Then, he sends an exogenously determined number of applications to randomly chosen firms.

  3. Step 3:

    If the number of applicants is smaller or equal to the number of vacancies, the firms send job offers to every applicant. If the number of applicants is higher than the number of vacancies, firms send job offers to as many applicants as they have vacancies to fill. Applicants with higher general skill levels \(b^{gen}_{h}\) are more likely to receive job offers.

  4. Step 4:

    Each worker ranks the incoming job offers according to the wages net of commuting costs. Each worker accepts the highest ranked job offer at the advertised wage rate. After acceptance, a worker ignores all other job offers and outstanding applications.

  5. Step 5:

    Vacancy lists are adjusted for filled jobs and the labor force is adjusted for new employees.

  6. Step 6:

    If the number of unfilled vacancies exceeds some threshold, the firm raises the base wage offer. If an unemployed job seeker did not find a job, he reduces his reservation wage.

This cycle is aborted after two iterations even if not all firms may have satisfied their demand for labor. This may lead to rationing of firms on the labor market and therefore to deviations of actual output quantities from the planned quantities.

4.3 Consumption market interaction

The consumption goods market is also modelled as a decentralized system, but not as a bilateral matching protocol. Instead, we use some form of local centralization, in which local consumer markets are represented by regional outlet malls in the model, at which the consumption goods producers offer their products at posted prices. This reflects the separation of the production and distribution of consumer products. The malls sell the products to the consumers, and report back the sales returns to the firms. While firms are free to serve all malls regardless of their spatial proximity, the households are limited to choosing the market places located in their region.

Households go shopping once a week and try to spend their entire weekly consumption budget on the product of a single firm. At the beginning of their shopping procedure they receive information about the prices of all available goods at the mall, but they do not receive any information about the available quantities. The decision as to which product to select is based on a multinomial choice problem with logit probabilities, described in Section 3.6.3.

Households have asynchronous shopping days (there are five days per week, and 20 days per month). Thus, on each day of the month there may be some shopping activity in the malls, but by different consumers. The consumption requests for the different goods are collected by each mall on a daily basis, and, if the total demand for a particular product exceeds the mall’s inventory level then the mall will apply a proportional demand rationing scheme: the mall sets a consumption quota corresponding to the share of total demand that can be satisfied with the products available. Each household then receives its quota. In case a rationed household did not spend all of its consumption budget at the end of this first round of shopping activity, the left-over budget can be spend on a different product in a second round of shopping on the same day, but with a different firm. Any left-over budget at the end of the week is carried-over to the next week, and gets added to the household’s new weekly-budget.

The production of the consumption goods firm follows a fixed time schedule with fixed production and delivery dates. Even if the mall stock is completely sold out, it can only be refilled at the fixed delivery date. Consequently, all the demand that exceeds the expected value of the monthly sales and the buffer stock cannot be satisfied.

4.4 Financial market interaction

The financial market model closes the macroeconomic simulation model by providing the linkage between the real and financial sectors. Center to the financial market modeling is a clearinghouse which organizes the trade of a market index share.

The clearinghouse aggregates the total dividends during the calendar month and computes the dividend that is paid on the market index shares, based on the information it received from the firms and banks on the total dividend payments. There are two assets: risk-free demand deposits at a bank, and a risky asset, a stock market index, composed of the equity shares of the individual firms.

Firms have a fixed number of outstanding equity shares, but do not issue new shares. They pay out a dividend on their shares that depends on their profits. Banks also have a fixed number of outstanding equity shares that can be traded and pay dividends. Households can trade shares of the market index (see Section 3.6.4 for households asset allocation). Firm profits are channelled back into the economy via the dividend payments on the stock market index.

4.4.1 Asset pricing mechanism for the market index shares

We do not assume that the price of the market index at a given point in time leads to market clearing. Furthermore, there is no market maker, and no limit-order book. This is a simplifying assumption made for the reason that the focus of the model is on the macroeconomic dynamics of the real side of the economy. All that is needed is a mechanism to close the model, to redistribute the profits of the firms back into the economy through dividends, and to allow households to trade the ownership rights of the capital stock embedded in the firms.

The price \(p^{ix}_{t}\) of a share in the market index depends on the asset trading of households and is computed by the clearing house. Instead of an equilibrium pricing rule, we use a cautious price adjustment rule with a restriction on the maximal rate of price increases or decreases, reflecting so called circuit breakers on financial markets:19
$$\begin{array}{@{}rcl@{}} {\Theta}_{t} & =&\left( \frac{D^{ix}_{t}}{S^{ix}_{t}}\right)^{{\lambda}^{ix}}, \end{array} $$
$$\begin{array}{@{}rcl@{}} p^{ix}_{t + 1} & =&\left\{ \begin{array}{ll} (1-\underline c) p^{ix}_{t}, & {\Theta}_{t}\leq (1-\underline c),\\ {\Theta}_{t} p^{ix}_{t}, & (1-\underline c) \leq{\Theta}_{t}\leq (1+\overline c),\\ (1+\overline c) p^{ix}_{t}, & (1+\overline c)\leq{\Theta}_{t}. \end{array} \right. \end{array} $$
where λix > 0 is the price adjustment speed, and \(\overline c\) and \(\underline c\) are limits on the upward and downward price changes of the financial asset, respectively.

4.4.2 Asset allocation mechanism for the market index shares

The clearing house determines the transactions in the market index shares using a simple proportional rationing mechanism that is based on the ratio Θt between demand and supply. Given a monetary value zh that an investor wants to invest, ⌊zh/pt⌋ are the corresponding units of shares to trade, where ⌊x⌋ is the floor operator defined by the largest integer not greater than x. We assume a zero supply of outside shares. If a trader wants to invest a lot and buy many units at the current price, these units simultaneously have to be offered by sellers.

Let sht represent the individual sell orders (in negative units) and dht represent the individual buy orders (in positive units). Further, let \(D^{ix}_{t}\) and \(S^{ix}_{t}\) denote the aggregate demand and supply (in positive units), respectively. Then buy and sell orders for shares of the market index are given by
$$ d_{ht} = \left\lbrace \begin{array}{ll} \lfloor z_{h}/p_{t}\rfloor, & z_{h}>0\\ 0, & z_{h}\leq 0 , \end{array}\right. $$
$$ s_{ht} = \left\lbrace \begin{array}{ll} \lfloor z_{h}/p_{t}\rfloor, & z_{h}<0\\ 0, & z_{h}\geq 0 , \end{array}\right. $$
$$ D^{ix}_{t} = \sum\limits_{h} d_{ht} , $$
$$ S^{ix}_{t} = -\sum\limits_{h} s_{ht}. $$
The rationed demand, or transacting buy orders, \(B^{ix}_{ht}\) and the rationed supply, or transacting sell orders, \(S^{ix}_{ht}\) are determined by using a proportional rationing mechanism:
$$ B^{ix}_{ht} =\left\lbrace \begin{array}{ll} d_{ht}, & \left( \frac{D^{ix}_{t}}{S^{ix}_{t}}\right)\leq 1,\\ \left\lfloor\left( \frac{D^{ix}_{t}}{S^{ix}_{t}}\right)^{-1}d_{ht}\right\rfloor, & \left( \frac{D^{ix}_{t}}{S^{ix}_{t}}\right)>1. \end{array}\right. $$
$$ S^{ix}_{ht} =\left\lbrace \begin{array}{ll} s_{ht}, & \left( \frac{D^{ix}_{t}}{S^{ix}_{t}}\right)\geq 1,\\ \left\lfloor \left( \frac{D^{ix}_{t}}{S^{ix}_{t}}\right)s_{ht}\right\rfloor, & \left( \frac{D^{ix}_{t}}{S^{ix}_{t}}\right)<1. \end{array}\right. $$

As has become evident in describing the model, it hosts a sizeable number of parameters and variables. In the Appendix we give an overview of all of these, explaining in more detail how the parameter values have been chosen and how the variables are initialized. Moreover, the Appendix describes how agents’ characteristics and decision rules – and the markets on which they interact – have been implemented in the C code by providing a listing of all functions.

In the next section we discuss the ETACE Virtual Appliance (referred to as VA in the following). The VA allows researchers to run the simulation model in order to reproduce published results and, in addition, also facilitates them to running of their own simulation experiments. Moreover, the VA constitutes a further step towards lowering the barriers for other scholars to replicate or re-implement the model, since it provides access to the full C implementation of the model.

5 Reproducibility of simulation results

As indicated in the Introduction, the reproducibility of simulation results is an important issue in agent-based computational economics for several reasons. It is essential for scientific quality assurance and the peer-review process that third parties are, in principle, able to check the findings reported in research articles using agent-based models. Furthermore, it is desirable to test the robustness of the results, that is, to check the limits of the parameter ranges under which the insights communicated by researchers remain valid. It is also of importance that these parameter ranges are not only explored by the authors of the paper itself, but can also be examined and verified by other researchers who are interested and willing to critically examine, or maybe even to extend, the existing results. Ideally, such a critical examination would involve an independent implementation on a different simulation platform, since it is well-documented that even if serious software verification and validation methods (such as unit testing) are applied, the developed software is prone to implementation bugs and also numerical issues can not be excluded. Even bugs in the simulation platform itself might influence the simulation results. Whereas such independent re-implementations of existing computational models would certainly be desirable, they are associated with very high costs for scholars who do the reimplementation and it brings relatively little personal gain since the confirmation of existing research results are hardly publishable in major research outlets.

Given these obstacles, it would already by an important step forward if a wider research community were able to run existing simulation models, which have been developed in the field and are the basis of research papers, without prohibitive set-up costs. This would not only foster the critical examination of research in this area, but could also help to alleviate the current fragmentation of the research landscape in agent-based computational macroeconomics, which is characterized by a relatively large set of similar models where each of them typically is only used by a rather small group of scholars somehow associated with the developers. Arguably, the actual and perceived set-up costs for working with such a model are also important for this fragmentation. Reducing these actual and perceived costs appears especially important for allowing young researchers, in particular doctoral students, to work in the domain of agent-based macroeconomics by building on existing work and focusing more on the economic aspects of their analyses rather than on the implementation of complex software and data analysis tools.

5.1 The ETACE Virtual Appliance

The ETACE Virtual Appliance (cf. Böhl et al. 2014) is an attempt to provide a simulation platform that allows the simulation and analysis of computational results of a well-established agent-based macroeconomic model with minimal setup costs. In its current form, the VA contains the standard version of the Eurace@Unibi model, as described in the previous two sections, but it should be stressed that, in principle, other simulation models running on different simulation platforms could also be integrated into the VA apart from the Eurace@Unibi model. The VA is a stand-alone Linux-based simulation platform that provides a full suite of programs and tools for agent-based modeling and simulation. It runs as a virtual machine on the user’s computer, so all that the user really needs is a client such as Oracle’s Virtual Box or VMWare’s View Client to import and start the Virtual Appliance. This implies that the use of the VA is completely independent from the actual platform and operating system of the user. Within the virtual machine the core modeling environment is already pre-installed and pre-configured. For the Eurace@Unibi model this is the Flexible Large-scale Agent Modeling Environment (FLAME, as described in Section 2.3), as well as some additional programs such as graphical user interfaces for agent-based model design and an integrated solution for data visualization using R.20

The settings for the simulation experiment to be carried out and the graphical output to be produced is input in a single Graphical User Interface (GUI) called the Simulation GUI. In this GUI, the value of each parameter of the model can be altered, experiments based on systematic changes of parameters can be easily set up and the number of batch runs carried out for each parameter constellation can be chosen. Upon running an experiment, the system generates a large set of PDF files showing different aspects of the simulation results. In particular, graphs with time series of key statistics (e.g. population mean or median) averaged across runs in each batch for the considered parameter variation as well as the full set of time series for each batch and also for each single run are produced for a set of variables, which is chosen by the user. Also, the time window to be shown in the graphs is chosen by the user and data filters for the selected variables (e.g. with respect to region, worker skills etc.) can be added to select more precisely what is plotted. Furthermore, graphs exhibiting distributions of selected variables at chosen points in time are generated. The standard parameter setting, used in most of the papers that employ the Eurace@Unibi model, consists of 1600 households, 80 firms, and 20 banks. A set of 20 Monte Carlo runs over a time period of 85 years (20.000 iterations) takes between 20 and 30 minutes on standard CPUs.21

Overall, the VA allows the systematic exploration of the dynamics of the model as well as the carrying out of policy experiments (by varying policy parameters in the model) and provides a detailed analysis of the (statistical) effects of such parameter changes by performing local sensitivity analyses. On the one hand, this allows researchers to examine their own research questions within the framework of this model. On the other hand, the VA allows to reproduce with little effort the main findings reported in several published papers, and to examine the sensitivity with respect to parameter variations and to generate additional experiments building on the published work. To foster such work the VA includes separate subfolders in which the exact variant of the model, the parametrizations, as well as initializations underlying the research papers, by Dawid et al. (2014), Dawid and Gemkow (2014), and Dawid et al. (2018b) are implemented. Furthermore, for Dawid et al. (2018b) different institutional environments for which the policy experiments have been carried out are pre-configured and also some scripts for producing special graphs of the paper (which go beyond the standard functionality of the Simulation GUI) are included.

Although the functionality to reproduce existing results is an important feature of the VA, demonstrating this functionality is not the main focus of this paper. Rather, in the following subsection we illustrate how the VA can be used to obtain a better understanding of the dynamic properties of the model and to carry out sensitivity analyses. All figures presented in this section are included in the set of graphs that can be automatically generated by the Simulation GUI if the corresponding parameter variation experiments are launched. The ETACE Virtual Appliance thus functions as a kind of vehicle to communicate the various implementations of our model; it also allows others to reproduce and gain confidence in the results obtained. The overall aim of providing such an extensive software environment to the research community is that this heightens the model’s transparency, its credibility, and finally the model’s acceptance as a tool for policy analysis.

5.2 Exploring properties of the model using the virtual appliance

Whereas extensive discussions of dynamic and distributional properties of the output generated by the Eurace@Unibi model and their relationship to empirical stylized facts have been provided, for example in Dawid et al. (2018a), Dawid et al. (2012b), and Dawid et al. (2018b), here we only consider the effects of the variation of a few key parameters. Since the degree of competition between firms is a crucial driver for growth, economic fluctuations and industry evolution, we consider first a variation of the parameter γc. This parameter governs the impact of the firms’ price differences on the consumers’ choices between the products and, therefore, should be interpreted as a measure of the differentiation between the products offered by the various consumption goods producers (see Section 3.6.3). It can also be interpreted as a measure for the intensity of price competition between the firms.

Higher values of γc can be associated with more sensitive consumer responses to price differences and therefore to stronger price competition between the consumption goods firms. Figure 1 shows the dynamics of the mean across all runs in a batch of runs for increasing values of γc. It shows total output of the consumption goods, the unemployment rate, the average quality/productivity of the capital stock, and the total firm debt. The graphs show the evolution over a time horizon of 5000 (business) days corresponding to 250 months after an initial transient phase of 1500 days. Different qualitative implications that result from increasing the intensity of competition can clearly be observed.
Fig. 1

Dynamics of batch run means of a total output quantity, b unemployment rate, c average productivity of the employed capital stock and d total debt of consumption goods firms for γc = 10 (black, solid), γc = 13 (red, fine dashed), γc = 16 (green, dash-dotted) and γc = 17 (blue, dashed). The unit of time corresponds to one day

The evolution of the means in different batch runs, which are shown in Fig. 1, give an indication of the effect of the parameter change on (the dynamics of) different variables. However, to make reliable statements about the significance of such effects a statistical analysis is needed, relying either on statistical tests comparing distributions of variables at certain periods generated by different batch runs (e.g. a Wilcoxon Signed Rank Test) or on the estimation of dynamic statistical models (e.g. penalized spline models, see Dawid et al. 2014). Within the VA, data files of all the time series are generated to carry out such analyses using standard statistical packages. Furthermore, the VA allows us to generate boxplots across the batch runs for user-selected time periods and variables. These boxplots give clear indications of which effects of parameter changes are indeed significant. We have used such boxplots generated in the VA to check the statistical significance of the differences shown in Fig. 1 for t = 5500 and t = 6500, and found all shown differences to be significant, apart from the ones in output, unemployment and productivity between γc = 16 and γc = 17 at t = 6500 and the difference in firm debt at t = 6500 between γc = 10 and γc = 13. (For both parameter values firm debt is essentially zero.) For reasons of brevity we do not present the corresponding boxplots here.

A stronger price sensitivity of the firm’s own residual demand function to changes in the firm’s own price, relative to price changes by its competitors (i.e. a higher own-price elasticity of the own residual demand), is associated with a higher initial growth rate in the economy and a lower unemployment rate (Panels (a) and (b)). As can be seen in Panel (c), these effects are only to a very small extent driven by differences in firm productivity, but rather by the aggressiveness of (credit financed, debt-led) capital expansion of the firms. Under stronger competition firms tend to price more aggressively (see below) and invest more heavily since they expect a stronger growth of their sales. Such behavior comes at the risk of regular over-investments of firms, which induces stronger fluctuations, and also a high debt level (Panel (d)). The case of γc = 17 illustrates that too large debt levels and the associated interest costs eventually restrict the ability of firms to engage in expanding investments and leads to volatile stagnation in the long run. For even larger values of γc (not depicted here), the boom based on external financing eventually results in severe crashes (see also van der Hoog and Dawid 2018; van der Hoog 2018a).

Apart from time series information, the VA also automatically generates distributional plots of variables selected by the user at selected time periods both for each single run carried out and also for the average over all runs in a batch (i.e. for each rank the mean value of the considered variable across the runs in the batch is depicted on a log-log scale). In Fig. 2 we show distributions for different values of γc, of the output and prices of the consumption goods firms, averaged over each batch, and considered for the last period of the simulation’s time interval.
Fig. 2

Distribution of a firm size (measured in output units) and b consumption goods price as well as c the evolution of the standard deviation of firm size in the industry for γc = 10 (black, solid), γc = 13 (red, fine dashed), γc = 16 (green, dash-dotted) and c = 17 (blue, dashed)

The figure clearly shows that stronger price sensitivity of demand in the long run results in less equal firm size distributions, with a few firms holding a large market share, in other words, showing a strong market concentration effect. Intuitively, this effect is driven by the emerging heterogeneity of firms’ productivity and unit costs, which for larger γc results in stronger demand differences across firms. The larger spread of prices, in particular at the lower end of the distribution, for γc = 17 compared to the lower values, can be clearly seen in panel (b) of Fig. 2. This figure also shows that the average price level for high intensity of competition (γc = 16,γc = 17) is actually higher than for low intensities (γc = 10,γc = 13). This is mainly due to a cost effect. As discussed above, for high values of γc firms are more aggressive in expanding their output. This results in stronger competition on the labor market and a faster wage dynamic. Firms keep increasing their base wage offers as long as they are rationed on the labor market, thereby leading to higher unit costs of firms. Panel (c) of Fig. 2 shows the dynamics of the standard deviation of firm output across the population of firms. This highlights that, for small values of γc, the industry concentration remains stationary and at a relatively low level, whereas more intensive price competition yields a widening distribution in the firm sizes over time. For γc = 17, this upward trend is stopped once the economy stops growing and enters the stagnation phase.

Having illustrated how the effect of a demand related parameter can be examined using the functionality of the VA, we now briefly turn to an analysis of the effect of another key parameter, namely, the replacement rate (u), determining the payment an unemployed worker receives as a fraction of his last wage (see Section 3.6.1). In Fig. 3, the effect of an increase of the replacement rate from 50% to 60% and 70% on output, unemployment, the price level and total firm debt as well as on productivity and government debt is shown.22
Fig. 3

Dynamics of batch run means of a total output quantity, b unemployment rate, c total debt of consumption goods firms, d average productivity of the employed capital stock, e price index and f government debt for u = 0.5 (black, solid), u = 0.6 (red, fine dashed) and u = 0.7 (green, dash-dotted). The unit of time corresponds to one day

An increase in the replacement rate leads to higher output (Panel a) and a lower unemployment rate (Panel b). Firms’ debts rise (Panel c) but productivity is not affected (Panel d). What we, additionally, can observe is an increase of the price level in the economy (Panel e) but hardly any effect on government debt (Panel f). The simulation exemplifies the important role demand plays in determining the dynamics of output and other key variables in our model. Higher unemployment benefits foster the purchasing power of the unemployed households. Consequently, firms face a larger demand for their products and, therefore, employ more workers and, as indicated by the level of firm debts, purchase new machinery. Although firms increase investments and expand their stock of capital goods, this does not have a significant effect on the technology of the overall employed capital stock, because the vintage choice of firms is not affected by this demand driven expansion. The price level in the economy increases as firms have to pay higher wages, which translates into the prices they charge for the consumption goods they produce. Wages increase as the higher replacement rate pushes up the workers’ reservation wages and because, in order to fill vacancies, firms have to adjust upwards their base wage offer due to the lower number of unemployed job searchers. Interestingly, the higher unemployment benefits appear to be self-financing. While the government pays more for a single unemployed, benefits have to be paid out to fewer unemployed job searchers in total given the demand-driven increase in output and the fall in unemployment.

A more extensive examination of the effect of a change in the replacement rate is beyond the scope of this paper. However, it should be pointed out that using the ETACE Virtual Appliance a systematic analysis of the implications of changes in this parameter on the dynamics and the distribution of key variables across different parameter scenarios and across different time horizons can be carried out with minimal effort of the user, thereby obtaining a detailed and extensive picture of the effects of such policies in the framework of the Eurace@Unibi model.

6 Conclusions

Over the last decade, various contributions to agent-based macroeconomics have been made. They have been proposed as an alternative tool to better understand macroeconomic dynamics and, by now, are actually able to reproduce a large set of important stylized facts. While all these agent-based macroeconomic models are grounded on the assertion that an appropriate account of the macroeconomy should include bounded rational, interacting, and heterogeneous agents, in addition to less unrealistic descriptions of the economic institutions and market mechanisms, the degree to which the various contributions differ in terms of their modeling set-up remains substantial. Moreover, these models do not only depart from the standard assumptions of household and firm behavior (REH and optimization) and the notion of markets in equilibrium, they are also implemented with the help of rather intricate software platforms. Consequently, a reiterated claim has been made by scholars in the field that the accessibility and reproducibility of the results produced by these models needs to be improved for at least two reasons.

First, in order to lower the access costs for young researchers to start working with the agent-based approach that would, in the end, speed up the dissemination of the methodology, and secondly, in order to strengthen the credibility of the models and to increase the acceptability and trust in the research findings that stem from agent-based macroeconomic models. A tool that would allow the reproduction of the simulation results without having to re-implement the entire model from scratch and that allows one to conduct sensitivity- and robustness analyses with the simulation model by varying several key parameters is generally considered a necessary step forward.

In this paper we attempt to move into this direction. First of all, we provide a very detailed description of the Eurace@Unibi model we have developed over the past decade and have applied to various macroeconomic policy questions. Moreover, we introduce and demonstrate the ETACE Virtual Appliance as a tool to work with the Eurace@Unibi model. The VA allows reproducibility of results and robustness tests with our agent-based macroeconomic model at very low set-up costs. The VA contains the standard version of the Eurace@Unibi model we described in this paper. In a nutshell, it is a stand-alone Linux-based simulation platform that comes pre-installed with all the software required to simulate and analyze our agent-based macroeconomic model. By importing and running it as a virtual machine on the user’s own computer, anyone who wants to run our model can now do so, independent of the computer platform or operation system that is used. Graphical user interfaces and integrated solutions for data analysis of the simulation output make it an easy-to-use and flexible tool to run simulation experiments. Parameters of the model can be changed, the number of batch runs, as well time horizons can be set. Plots are outputted as PDF files including various statistics such as means across runs. Most importantly, for our default settings, the simulation experiments can be performed at reasonable run-times. We hope that this endeavor helps to disseminate the agent-based simulation approach to which we – as well as many other researchers – have contributed over the past decades; and which, as we believe, remains an interesting and fruitful research agenda for many years to come.

7 Supplementary information


The simulations for this paper were performed using the simulation framework FLAME (Flexible Large-scale Agent Modelling Environment, Coakley et al. 2012.). This work contains information using the FLAME Xparser and Libmboard library, which are made available under the Lesser General Public License (LGPL v3), and can be downloaded from:

R Project

This paper has made use of software provided by the R Project (R Development Core Team 2008).

Source code of the Eurace@Unibi Model

The results in this paper make use of source code of the Eurace@Unibi Model (Gemkow et al. 2014), and of R scripts written specifically for the purpose of data post-processing (Gemkow and van der Hoog 2012).

ETACE Virtual Appliance

The ETACE Virtual Appliance is available as a Data Publication (Böhl et al. 2014) from the Bielefeld University Publication Server:

Data to reproduce the plots in this paper

The data for reproducing the plots in this paper is available as a Data Publication (Dawid et al. 2017) from the Bielefeld University Publication Server:


  1. 1.

    Recent contributions include (Ashraf et al. 2016; Dawid et al. 2014; Dosi et al. 2015; Mandel et al. 2015; Russo et al. 2016; Sinitskaya and Tesfatsion 2015; Seppecher and Salle 2015). See also the survey by Dawid and Delli Gatti (2018).

  2. 2.

    See e.g. Arifovic et al. (2013), Assenza and Delli Gatti (2013), and De Grauwe and Macchiarelli (2015).

  3. 3.

    Apart from the Eurace@Unibi model covered in this paper, the main representatives of this type of models are the ’Schumpeter meeting Keynes’ model (Dosi et al. 2010; Dosi et al. 2015) and the Lagom model by Mandel et al. (2010).

  4. 4.

    Recent contributions addressing such issues are Grazzini and Richiardi (2015), Barde (2016), Barde (2017), Barde and Van der Hoog (2017), and van der Hoog (2018b).

  5. 5.

    For example, Camerer et al. (2016) report that for only 11 out of 18 experimental results published in top five economics journals the results could be independently reproduced by third parties.

  6. 6.

    A detailed documentation of the implementation of (a previous version of) the model is provided in Dawid et al. (2011).

  7. 7.

    Parts of Section 2, in particular Sections 2.1 and 2.3 have already been formulated for the description of the Eurace@Unibi model in Dawid et al. (2018a). Parts of Section 3, in particular Section 3.4 on the credit market, has already been developed and used in van der Hoog and Dawid (2018) and in van der Hoog (2018a).

  8. 8.

    In this respect, our modelling approach builds on a rich literature starting with work of Herbert Simon (Simon 1959).

  9. 9.

    Empirical evidence that firms’ technology choices are indeed influenced by the skill level of their work force can, for example, be found in Piva and Vivarelli (2009).

  10. 10.

    A slightly altered dividend rule is used if a firm is hoarding cash. If its payment account exceeds a certain threshold level \(\bar {m}\) that depends on the average revenues over the last four months, \(\bar {m}= 0.25 {\sum }_{\tau = 1}^{4} R^{f}_{t-\tau }\), the dividend rate is given by \(d^{\star }=d\cdot {\mathbb I}[ M_{i,t}\leq \bar {m}] + 1\cdot {\mathbb I}[M_{i,t} > \bar {m}]\). This rule states that if the payment account of the firm is below the threshold level \(\bar {m}\) then it pays out the default dividend rate d = 0.70, while if the payment account exceeds the threshold level \(\bar {m}\) then the firm’s dividend payout equals 100% of it’s average net earnings over the last four months. This rule was installed in order to prevent firms from hoarding money on their payment account, which led to detrimental economic performance due to the absence of a back-channelling of the profits to households.

  11. 11.

    Note that we index the loans by k and not by i, implying that a firm may have a portfolio of loans, possibly with different banks. The probability of default (PD) refers to the default on a specific loan k, not necessarily to the default of the entire firm i.

  12. 12.

    A similar specification for the interest rate rule can be found in Delli Gatti et al.(2011, p. 67). The difference with our specification is that we use the probability of default of the firm, while they use the leverage ratio of the bank. Such an interest rate rule could lead to the unfortunate situation that a bank with a worsening financial position, i.e., a higher leverage ratio, will price itself out of the market by asking a higher interest rate.

  13. 13.

    This rule will be denoted as the “full rationing” rule. An alternative behavioral rule for the bank that we have tested is the “partial rationing” rule: when the credit risk exceeds the risk exposure budget Vb, the firm i would only receive a proportion of its credit request, exactly filling-up the bank’s constraint. This rule would imply that the bank would always exhaust its “excess risk exposure”-budget in Eq. 67. This does not result in a viable economy. It leads to more credit rationing rather than less, since firms requesting credit from the bank after a high-risk firm has already secured a loan will not be able to receive any credit since the bank has already exhausted its entire risk budget. Hence, in the interest of macrofinancial stability, we have opted for applying the “full rationing” rule in relation to the excess exposure budget \({V^{b}_{t}}\).

  14. 14.

    Note that, in relation to the “excess liquidity”-budget in Eq. 70, we apply the “partial rationing” rule. Hence, a bank will typically deplete all its excess liquidity and will be “at” the RRR constraint.

  15. 15.

    This implies the bank behaves as if it believes the reserve requirement is in fact an a priori constraint on its credit supply. An alternative would be to model more explicitly the expected future cash flows that results from supplying a loan, see e.g., Caiani et al. (2016).

  16. 16.

    The consumption budget could exceed the savings account in case the financial market is illiquid and the household cannot sell enough financial assets if it wants to consume more than its savings account. On the other hand, the consumption budget could also become negative if the last term is negative, i.e. if current financial asset wealth is smaller than the target wealth, and the household wants to invest more in financial assets.

  17. 17.

    The problem of market illiquidity can be softened somewhat by introducing a market maker into the model, but this does not solve the issue entirely. It could still occur that this market maker is not willing to take the counter-party risk that all market participants are trying to sell.

  18. 18.

    To derive the household’s orders for shares in the market one could have also followed a more elaborate route and apply the literature on artificial financial markets that use the mean-variance maximization framework of the capital asset pricing model with wealth based portfolio dynamics (Chiarella and He 2003; 2001; Hommes et al. 2006)

  19. 19.

    See Weddepohl (1995) for a related model with cautious price adjustments in discrete tâtonnement processes, for which it is proven that, under restrictions on the maximal rate of price increases or decreases, the trajectory of prices converges to a neighborhood of an equilibrium. However, still any type of erratic dynamics remains possible, including quasi-periodic and chaotic orbits. Hence, imposing restrictions on the growth rate of prices does not guarantee that prices will converge to a steady state equilibrium.

  20. 20.

    The VA is available at the dedicated webpage This webpage also provides an installation guide and user manual for the VA, in which the few steps needed to install the VA are described.

  21. 21.

    The Simulation GUI allows the user to determine how many cores are used during the simulation.

  22. 22.

    The intensity of competition parameter is set to γc = 16 in these simulations.



The authors gratefully acknowledge the substantial contributions of Simon Gemkow to the development and implementation of the Eurace@Unibi model and the associated R-scripts and of Gregor Böhl to the development and implementation of the ETACE Virtual Appliance. The paper has profited from helpful comments from two anonymous referees.

Funding Information

This research has been supported by the European Union Horizon 2020 grant No. 649186 - Project ISIGrowth.

Compliance with Ethical Standards

Conflict of interests

The authors declare that they have no conflict of interest.


  1. Arifovic J, Bullard J, Kostyshyna O (2013) Social learning and monetary policy rules. Econ J 123:38–76CrossRefGoogle Scholar
  2. Ashraf Q, Gershman B, Howitt P (2016) How inflation affects macroeconomic performance: An agent-based computational investigation. Macroecon Dyn 20:558–581CrossRefGoogle Scholar
  3. Assenza T, Delli Gatti D (2013) E Pluribus Unum: Macroeconomic modelling for multi-agent economies. J Econ Dyn Control 37:1659–1682CrossRefGoogle Scholar
  4. Barde S (2016) Direct comparison of agent-based models of herding in financial markets. J Econ Dyn Control 73:329–353CrossRefGoogle Scholar
  5. Barde S (2017) A practical, accurate, information criterion for Nth order Markov processes. Comput Econ 50:281–324CrossRefGoogle Scholar
  6. Barde S, Van der Hoog S (2017) An empirical validation protocol for large-scale agent-based models, Studies in Economics 1712, School of Economics, University of KentGoogle Scholar
  7. Ben-Akiva M, Lerman SR (1985) Discret choice analysis. MIT Press, CambridgeGoogle Scholar
  8. Blinder A (1991) Why are prices sticky? Preliminary results from an interview study. Am Econ Rev 81:89–96Google Scholar
  9. Böhl G, van der Hoog S, Harting P (2014) ETACE Virtual Appliance, Data Publication Bielefeld University.
  10. Brock WA, Durlauf SN (2001) Discrete choice with social interactions. Rev Econ Stud 68:235–260CrossRefGoogle Scholar
  11. Burda M, Mertens A (2001) Estimating wage losses of displaced workers in Germany. Labour Econ 8:15–42CrossRefGoogle Scholar
  12. Caiani A, Godin A, Caverzasi E, Gallegati M, Kinsella S, Stiglitz JE (2016) Agent based-stock flow consistent macroeconomics: Towards a benchmark model. J Econ Dyn Control 69:375–408CrossRefGoogle Scholar
  13. Camerer C, Dreber A, Forsell E, Ho T-H, Huber J, Johannesson M, Kirchler M, Almenberg J, Altmejd A, Chan T, Heikensten E, Holzmeister F, Imai T, Isaksson S, Nave G, Pfeiffer T, Razen M, Wu H (2016) Evaluating replicability of laboratory experiments in economics, Science, March, 18–37Google Scholar
  14. Carroll C, Summers L (1991) Consumption growth parallels income growth: Some new evidence, in national saving and economic performance. In: Bernheim B, Shoven J (eds). University of Chicago Press, Chicago, pp 305–348Google Scholar
  15. Chiarella C, He X (2001) Asset price and wealth dynamics under heterogeneous expectations. Quant Finan 1:509–526CrossRefGoogle Scholar
  16. Chiarella C, He X-Z (2003) Heterogeneous beliefs, risk, and learning in a simple asset-pricing model with a market maker. Macroecon Dyn 7:503–536Google Scholar
  17. Coakley S, Chin L-S, Holcomb M, Greenough C, Worth D (2012) Flexible large-scale agent modelling environment (FLAME), University of Sheffield and Rutherford Appleton Laboratories, STFC, License: Lesser GPL v3.
  18. Cyert RM, March JG (1963) A behavioral theory of the firm. Prentice Hall, Englewood CliffsGoogle Scholar
  19. Dawid H (2015) Modeling the economy as a complex system. In: Alves-Furtado B, Sakowski P, Tovolli M (eds) Modeling Complex Systems for Public Policies. IPEA, Brasilia, pp 191–216Google Scholar
  20. Dawid H, Delli Gatti D (2018) Agent-based macroeconomics. In: Hommes C, LeBaron B (eds) Handbook of Computational Economics vol. 4: Heterogeneous Agent Modeling. North-Holland, pp 63–156Google Scholar
  21. Dawid H, Gemkow S (2014) How do social networks contribute to wage inequality? Insights from an agent-based analysis. Ind Corp Chang 23:1171–1200CrossRefGoogle Scholar
  22. Dawid H, Gemkow S, Harting P, Neugart M (2009) On the effects of skill upgrading in the presence of spatial labor market frictions: an agent-based analysis of spatial policy design. Journal of Artifical Societies and Social Simulation – JASSS 12:4Google Scholar
  23. Dawid H, Gemkow S, Harting P, Neugart M (2012a) Labor market integration policies and the convergence of regions: The role of skills and technology diffusion. J Evol Econ 22:543–562Google Scholar
  24. Dawid H, Gemkow S, Harting P, Neugart M, Kabus K, Wersching K (2008) Skills, innovation and growth: an agent-based policy analysis. J Econ Stat 228:251–275Google Scholar
  25. Dawid H, Gemkow S, Harting P, van der Hoog S, Neugart M (2011) Eurace@Unibi Model v1.0 User Manual, Technical Report Bielefeld UniversityGoogle Scholar
  26. Dawid H, Gemkow S, Harting P, van der Hoog S, Neugart M (2018a) Agent-based macroeconomic modeling and policy analysis: The Eurace@Unibi model. In: Chen S-H, KM (eds) The Oxford Handbook of Computational Economics and Finance. Oxford University Press, chap. 17, pp 490–519Google Scholar
  27. Dawid H, Harting P (2011) Capturing firm behavior in agent-based models of industry evolution and macroeconomic dynamics. In: Bünstorf G (ed) Applied Evolutionary Economics, Behavior and Organizations. Edward-Elgar, pp 103–130Google Scholar
  28. Dawid H, Harting P, Neugart M (2014) Economic convergence: Policy implications from a heterogeneous agent model. J Econ Dyn Control 44:54–80CrossRefGoogle Scholar
  29. Dawid H, Harting P, Neugart M (2018b) Cohesion policy and inequality dynamics: Insights from a heterogeneous agents macroeconomic model. J Econ Behav Organ 150:220–255Google Scholar
  30. Dawid H, Harting P, Neugart M (2018c) Fiscal transfers and regional economic growth. Rev Int Econ 26:651–671Google Scholar
  31. Dawid H, Harting P, van der Hoog S, Neugart M (2012b) The Eurace@Unibi model: an Agent-Based macroeconomic model for economic policy analysis, Bielefeld Working Papers in Economics and Managment No. 05–2012Google Scholar
  32. Dawid H, Harting P, van der Hoog S, Neugart M (2017) Data for the paper: Macroeconomic Analysis with a Heterogeneous Agent Model: Fostering Transparency Reproducibility and Replicability, Data publication, Bielefeld University.
  33. Dawid H, Neugart M (2011) Agent-based models for economic policy design. East Econ J 37:44–50CrossRefGoogle Scholar
  34. De Grauwe P, Macchiarelli C (2015) Animal spirits and credit cycles. J Econ Dyn Control 59:95–117CrossRefGoogle Scholar
  35. Deaton A (1991) Saving and liquidity constraints. Econometrica 59:1221–1248CrossRefGoogle Scholar
  36. Delli Gatti D, Desiderio S, Gaffeo E, Cirillo P, Gallegati M (2011) Macroeconomics from the bottom-up. Springer, BerlinCrossRefGoogle Scholar
  37. Dosi G, Fagiolo G, Napoletano M, Roventini A, Treibich T (2015) Fiscal and monetary policies in complex evolving economies. J Econ Dyn Control 52:166–189CrossRefGoogle Scholar
  38. Dosi G, Fagiolo G, Roventini A (2010) Schumpeter meeting Keynes: A policy-friendly model of endogenous growth and business cycles. J Econ Dyn Control 34:1748–1767CrossRefGoogle Scholar
  39. Fabiani S, Druant M, Hernando I, Kwapil C, Landau B, Loupias C, Martins F, Matha T, Sabbatini R, Stahl H, Stokman A (2006) What firm surveys tell us about price-setting behavior in the euro Area. International Journal of Central Banking 2:3–47Google Scholar
  40. Fagiolo G, Roventini A (2012) Macroeconomic policy in DSGE and agent-based models. Revue de l’OFCE 124:67–116Google Scholar
  41. Gemkow S, Harting P, van der Hoog S (2014) Eurace@Unibi Model v1.0 Source Code, Bielefeld University, Bielefeld, License: EULA.
  42. Gemkow S, van der Hoog S (2012) R data analysis scripts, Bielefeld university, Bielefeld, unpublished, License: GPL v3Google Scholar
  43. Gilbert N, Terna P (2000) How to build and use Agent-Based models in social science. Mind and Society 1:57–72CrossRefGoogle Scholar
  44. Grazzini J, Richiardi M (2015) Estimation of agent-based models by simulated minimum distance. J Econ Dyn Control 51:148–165CrossRefGoogle Scholar
  45. Hommes C (2013) Behavioral rationality and heterogeneous expectations in complex economic systems. Cambridge University Press, CambridgeCrossRefGoogle Scholar
  46. Hommes CH, Tesfatsion L, Judd KL (2006) Heterogeneous agent models in economics and finance. In: Handbook of Computational Economics, Vol. 2: Agent-Based Computational Economics. Elsevier, North-Holland, pp 1109–1186Google Scholar
  47. van der Hoog S (2018a) The limits to credit growth: Mitigation policies and macroprudential regulations to foster macrofinancial stability and sustainable debt. Comput Econ 52:873– 920Google Scholar
  48. van der Hoog S (2018b) Surrogate modelling in (and of) agent-based models: A prospectus. Comput Econ.
  49. van der Hoog S, Dawid H (2018) Bubbles crashes and the financial cycle: The impact of banking regulation on deep recessions, Macroeconomic Dynamics.
  50. Howitt P (2012) What have central bankers learned from modern macroeconomic theory? J Macroecon 34:11–22CrossRefGoogle Scholar
  51. Kiran M (2017) X-Machines for agent-based modeling: FLAME perspectives. Computer and Information Science Series. Chapman & Hall/CRC Press, Boca Raton Fla.CrossRefGoogle Scholar
  52. Kirman A (2010) Complex economics: Individual and collective rationality. Graz Schumpeter Lectures. Routledge, LondonCrossRefGoogle Scholar
  53. Kotler P, Keller K (2009) Marketing management, 9th edn. Prentice Hall, Upper Saddle RiverGoogle Scholar
  54. Krishnamruthi L, Raj SP (1988) A model of brand choice and purchase quantity price sensitivities. Mark Sci 7:1–20CrossRefGoogle Scholar
  55. Liesz TJ (2005) Why pecking order theory should be included in introductory finance courses, School of Business & Professional Studies, Mesa State CollegeGoogle Scholar
  56. Lorscheid I, Heine B-O, Meyer M (2012) Opening the ‘black box’ of simulations: increased transparency and effective communication through the systematic design of experiments. Computational and Mathematical Organization Theory 18:22–62CrossRefGoogle Scholar
  57. Malhotra N (1984) The use of linear logit models in marketing research. J Mark Res 11:20–31CrossRefGoogle Scholar
  58. Mandel A, Jaeger C, Fuerst S, Lass W, Lincke D, Meissner F, Pablo-Marti F, Wolf S (2010) Agent-based dynamics in disaggregated growth models, CES Working PaperGoogle Scholar
  59. Mandel A, Landini S, Gallegati M, Gintis H (2015) Price dynamics, financial fragility and aggregate volatility. J Econ Dyn Control 51:257–277CrossRefGoogle Scholar
  60. McFadden D (1973) Conditional logit analysis of qualitative choice behavior. In: Zarembka P (ed) Frontiers in Econometrics. Academic Press, New YorkGoogle Scholar
  61. Nagle T, Hogan J, Zale J (2011) The strategy and tactics of pricing: a guide to growing more profitably. Pearson Prentice Hall, Upper Saddle RiverGoogle Scholar
  62. Nelson RR, Winter SG (1982) An evolutionary theory of economic change. Belknap Press, Englewood CliffsGoogle Scholar
  63. Ongena S, Smith DC (2000) What determines the number of bank relationships? Cross-country evidence. J Financ Intermed 9:26–56CrossRefGoogle Scholar
  64. Organization for Economic Co-operation and Development (2004) Benefits and Wages: OECD indicators. OECD, ParisGoogle Scholar
  65. Peng R (2011) Reproducible research in computational science. Science 334:1226–1227CrossRefGoogle Scholar
  66. Piva M, Vivarelli M (2009) Corporate skills as an ex-ante incentive to R&D investment. Int J Manpow 30:835–852CrossRefGoogle Scholar
  67. R Development Core Team (2008) R: a language and environment for statistical computing, R Foundation for Statistical Computing, Vienna, AustriaGoogle Scholar
  68. Richiardi M (2016) The future of agent-based modelling. East Econ J 34:11–22Google Scholar
  69. Russo A, Riccetti L, Gallegati M (2016) Increasing inequality, consumer credit and financial fragility in an agent based macroeconomic model. J Evol Econ 26:25–47CrossRefGoogle Scholar
  70. Seppecher P, Salle I (2015) Deleveraging crises and deep recessions: a behavioural approach. Appl Econ 47:3771–3790CrossRefGoogle Scholar
  71. Silver E, Pyke D, Peterson R (1998) Inventory management and production planning and scheduling. Wiley, New YorkGoogle Scholar
  72. Simon H (1959) Theories of decision-making in economics and behavioral science. Am Econ Rev 49:253–283Google Scholar
  73. Sims C (1980) Macroeconomics and reality. Econometrica 48:1–48CrossRefGoogle Scholar
  74. Sinitskaya E, Tesfatsion L (2015) Macroeconomies as constructively rational games. J Econ Dyn Control 61:152–182CrossRefGoogle Scholar
  75. Vandenbussche J, Aghion P, Meghir C (2006) Growth, distance to frontier and composition of human capital. J Econ Growth 11:97–127CrossRefGoogle Scholar
  76. Weddepohl C (1995) A cautious price adjustment mechanism: chaotic behavior. J Econ Behav Organ 27:293–300CrossRefGoogle Scholar
  77. Wilensky U, Rand W (2007) Making models match: Replicating an Agent-Based model. Journal of Artificial Societies and Social Simulation 4:2Google Scholar
  78. Wind J, Mahajan V (1981) Designing product and business portfolios. Harv Bus Rev 59:155–165Google Scholar

Copyright information

© Springer-Verlag GmbH Germany, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Chair for Economic Theory and Computational Economics (ETACE), Department of Business Administration and Economics and Center for Mathematical EconomicsBielefeld University, Universitaetsstr. 25BielefeldGermany
  2. 2.Chair for Economic Theory and Computational Economics (ETACE), Department of Business Administration and EconomicsBielefeld University, Universitaetsstr. 25DarmstadtGermany
  3. 3.Department of Law and EconomicsTechnische Universität DarmstadtDarmstadtGermany

Personalised recommendations