The macro economic growth model was developed by the former Socio-Economic Research Group; of the Max-Planck-Institute in Hamburg. It simulates the interaction between two actors: entrepreneurs, seeking to maximise their income, and the government, seeking to reduce both unemployment costs and climate change damages, or in other words, maximise global welfare.
To achieve their respective goals, both actors have to make decisions. While the government sets a sequence of tax rates for a fixed period of time, the entrepreneurs choose a sequence of investment rates, for the same fixed period, that quantify how they can most effectively distribute their investments into capital stock, labour efficiency, and reduction of greenhouse gas emissions. In an optimisation framework these rates are termed control variables. In this example, the optimal values of the control variables are those for which global welfare is maximised, taking into account that the entrepreneurs have maximum income.
Technically, these optimal values are found iteratively by varying the control variables. Extremely powerful gradient algorithms exist for this kind of optimisation problem. In order to apply such an algorithm the user must provide the numerical model that evaluates the function to be minimised and also a numerical model that evaluates the first derivative, i.e. the gradient of this function. Fortunately, this task can be handled automatically by the Tangent linear and Adjoint Model Compiler (TAMC). Ralf applied TAMC to generate the first predecessor of the macro economic growth model (see Hasselmann et al. 1996a) and was consequently in constant demand to assist the members of the Socio-Economic Research Group in generating the adjoints of their latest models (see Hasselmann et al. 1996b, 1997).