Nobel Laureate Thomas J. Sargent can’t get enough of Julia.
Professor Sargent is the founder of QuantEcon, a platform that advances pedagogy in quantitative economics using both Julia and Python. His team at NYU uses Julia for macroeconomic modeling and contributes to the Julia ecosystem.
Speaking at JuliaCon at MIT in June 2016, Professor Sargent explained that the reason Julia is so important for his work is because the next generation of macroeconomic models is very computationally intensive with large datasets and large numbers of variables. These macroeconomic models and their forecasts help solve large constrained optimization problems using massive datasets to inform policy analysis.
The complexity stems from a large number of different economic actors - including individuals, governments and businesses – each with a different welfare maximization function, plus a number of different resource and information constraints. Consider that each economic actor makes decisions based on expectations of the future, which means that each economic actor also has their own forecasting model.
It may come as no surprise that such models can become very complicated mathematically. According to Professor Sargent, this is why he and his team require Julia.
Why are macroeconomists like myself so interested in and excited by Julia? Because our models are complicated. It’s easy to write the problem down, but it’s hard to solve it – especially if our model is high dimension. That’s why we need Julia.
These models tend to involve a number of discrete dynamic programs (Discrete DPs), which are the workhorses of macroeconomics. One such Discrete DP is the Bellman Equation, which is a functional equation and is often used to solve discrete time optimization problems. Bellman equations, though easily parallelizable, often run into higher dimensions, which makes them relatively hard to solve. More elaborate models that solve and predict financial crises involve an even more complicated paradigm called dynamic programming squared (DP²).
DP² models involve Bellman equations within Bellman equations. The inner Bellman equations describe responses of people whose incentives are affected by government policies. Solving this DP² problem would not only involve higher dimensions, but would also involve solving large numbers of simultaneous inequalities in order to fit the data.
According to Professor Sargent,
Julia is a great tool for doing this. This is a walking advertisement for Julia.
Thomas J. Sargent is among a new generation of professors using Julia both for teaching, and to conduct cutting edge research. Professor Sargent hinted that he would look to solve more important dynamic programming problems in his research, such as Dynamic Programming Cubed (DP³).