+
+ Visualizing the model, namely output as a function of capital,
+ provides helpful intuition before solving it.
+
+
+ Letting \((L_t,\alpha)=(\bar{L}, \frac{1}{3})\), it follows that
+ \(Y_t=F(K_t,L_t)=\bar{A}K_t^{\frac{1}{3}}
+ \bar{L}^{\frac{2}{3}}\). Utilizing this simplification and its
+ graphical representation below, output is clearly characterized
+ by the cube root of capital:
+
+
-
-
+
+
+ When investment is completely disincentivized by depreciation
+ (in other words, \(sY_t=\bar{d}K_t\)), the economy equilibrates
+ at a so-called "steady-state" with equilibrium
+ \((K_t,Y_t)=(K_t^*,Y_t^*)\).
+
+
+ Using this equilibrium condition, it follows that:
+ \[Y_t^*=\bar{A}{K_t^*}^\alpha\bar{L}^{1-\alpha} \rightarrow
+ \bar{d}K_t^*=\bar{s}\bar{A}{K_t^*}^\alpha\bar{L}^{1-\alpha}\]
+ \[\rightarrow
+ K^*=\bar{L}(\frac{\bar{s}\bar{A}}{\bar{d}})^\frac{1}{1-\alpha}\]
+ \[\rightarrow
+ Y^*=\bar{A}^\frac{1}{1-\alpha}(\frac{\bar{s}}{\bar{d}})^\frac{\alpha}{1-\alpha}\bar{L}\]
+
+
+ Thus, the equilibrium intensive form (output per worker) of both
+ capital and output are summarized as follows:
+ \[(k^*,y^*)=(\frac{K^*}{\bar{L}},\frac{Y^*}{\bar{L}})
+ =((\frac{\bar{s}\bar{A}}{\bar{d}})^\frac{1}{1-\alpha},
+ \bar{A}^\frac{1}{1-\alpha}(\frac{\bar{s}}{\bar{d}})^\frac{\alpha}{1-\alpha})\]
+
-
- Playing with the sliders, this graph may seem underwhelming in
- comparison to the Solow Model. However, on a logarithmic scale,
- small changes in the parameters lead to massive changes in the
- growth rate of ideas and economices:
-
-
-
+
+
analysis
+
+
+
+ Using both mathematical intuition and manipulating the
+ visualization above, we find that:
+
+
+ -
+ \(\bar{A}\) has a positive relationship with steady-state
+ output
+
+ -
+ Capital is influenced by workforce size, TFP, and savings rate
+
+ -
+ Capital output share's \(\alpha\) impact on output is twofold:
+
+ - Directly through capital quantity
+ - Indirectly through TFP
+
+
+ -
+ Large deviations in capital from steady-state \(K^*\) induce
+ net investments of larger magnitude, leading to an accelerated
+ reversion to the steady-state
+
+ -
+ Economies stagnate at the steady-state
+ \((K^*,Y^*)\)—this model provides no avenues for
+ long-run growth.
+
+
+
+ Lastly (and perhaps most importantly), exogenous parameters
+ \(\bar{s}, \bar{d}\), and \(\bar{A}\) all have immense
+ ramifications on economic status. For example, comparing the
+ difference in country \(C_1\)'s output versus
+ \(C_2\)'s using the Solow Model, we find that a difference
+ in economic performance can only be explained by these factors:
+ \[
+ \frac{Y_1}{Y_2}=\frac{\bar{A_1}}{\bar{A_2}}(\frac{\bar{s_1}}{\bar{s_2}})^\frac{\alpha}{1-\alpha}
+ \]
+
+
+ We see that TFP is more important in explaining the differences
+ in per capital output
+ (\(\frac{1}{1-\alpha}>\frac{\alpha}{1-\alpha},\alpha\in[0,1)\)).
+
+ Notably, the Solow Model does not give any insights into how to
+ alter the most important predictor of output, TFP.
+
-
solving the model
+
romer
-
- To find the output in terms of exogenous parameters, first note
- that \[L_t=\bar{L}\rightarrow L_{yt}=(1-\bar{l})\bar{L}\]
-
-
- Now, all that remains is to find ideas \(A_t\). It is assumed that
- ideas grow at some rate \(g_A\): \[A_t=A_0(1+g_A)^t\]
-
-
- Using the growth rate formula, we find: \[g_A=\frac{\Delta
- A_{t+1}-A_t}{A_t}=\frac{A_t+\bar{z}A_tL_{at}-A_t}{A_t}=\bar{z}L_{at}=\bar{z}\bar{l}\bar{L}\]
-
-
- Thus, ideas \(A_t=A_0(1+\bar{z}\bar{l}\bar{L})^t\). Finally,
- output can be solved the production function: \[Y_t=A_t
- L_{yt}=A_0(1+\bar{z}\bar{l}\bar{L})(1-\bar{l})\bar{L}\]
-
-
-
-
-
-
-
analysis
-
-
- We see the Romer model exhibits long-run growth because ideas have
- non-diminishing returns due to their nonrival nature. In this
- model, capital and income eventually slow but ideas continue to
- yield increasing, unrestricted returns.
-
-
- Further, all economy continually and perpetually grow along a
- "Balanced Growth Path" as previously defined by \(Y_t\) as a
- function of the endogenous variables. This directly contrasts the
- Solow model, in which an economy converges to a steady-state with
- transition dynamics.
-
-
- Changes in the growth rate of ideas, then, alter the growth rate
- of output itself—in this case, parameters \(\bar{l},
- \bar{z}\), and \(\bar{L}\). This is best exemplified by comparing
- the growth rate before and and after a parameter changes. In the
- below example, a larger \(\bar{l}\) initially drops output due to
- less workers being allocated to production. Soon after, though,
- output recovers along a "higher" Balanced Growth Path.
-
-
-
-
-
+
introduction
+
+
How, then, can we address these shortcomings?
+
+ The Romer Model provides an answer by both modeling ideas
+ \(A_t\) (analagous to TFP in the Solow model) endogenously and
+ utilizing them to provide a justification for sustained long-run
+ growth.
+
+
The Model divides the world into two parts:
+
+ -
+ Objects: finite resources, like capital and labor in
+ the Solow Model
+
+ -
+ Ideas: infinite,
+ non-rivalrous
+ items leveraged in production (note that ideas may be
+ excludable, though)
+
+
+
+ The Romer Models' production function can be modelled as:
+ \[Y_t=F(A_t,L_{yt})=A_tL_{yt}\] With:
+
+
+ - \(A_t\): the amount of ideas \(A\) in period \(t\)
+ -
+ \(L_{yt}\): the population working on production-facing
+ (output-driving) tasks
+
+
+
+ Assuming \(L_t=\bar{L}\) people work in the economy, a
+ proportion \(\bar{l}\) of the population focuses on making
+ ideas: \(L_{at}=\bar{l}\bar{L}\rightarrow
+ L_{yt}=(1-\bar{l})\bar{L}\).
+
+
+
+ Further, this economy garners ideas with time at rate
+ \(\bar{z}\): the "speed of ideas". Now, we can
+ describe the quantity of ideas tomorrow as function of those of
+ today: the Law of Ideal Motion (I made that up).
+ \[A_{t+1}=A_t+\bar{z}A_tL_{at}\leftrightarrow\Delta
+ A_{t+1}=\bar{z}A_tL_{at}\]
+
+
+ Analagously to capital in the solow model, ideas begin in the
+ economy with some \(\bar{A}_0\gt0\) and grow at an
+ exponential rate. At its core, this is because ideas are
+ non-rivalrous; more ideas bring about more ideas.
+
+
Finally, we have a model:
+
+
+
+ - \(Y_t=A_tL_{yt}\)
+ - \(\Delta A_{t+1} = \bar{z}A_tL_{at}\)
+
+
+
+
+ - \(L_{yt}+L_{at}=\bar{L}\)
+ - \(L_{at}=\bar{l}\bar{L}\)
+
+
+
+
+ A visualization of the Romer Model shows that the economy grows
+ exponentially—production knows no bounds (ceteris parbibus, of course). A graph of \(log_{10}(Y_t)\) can be seen below:
+
+
+
+
+ Playing with the sliders, this graph may seem underwhelming in
+ comparison to the Solow Model. However, on a logarithmic scale,
+ small changes in the parameters lead to massive changes in the
+ growth rate of ideas and economices:
+
+
+
solving the model
+
+
+ To find the output in terms of exogenous parameters, first note
+ that \[L_t=\bar{L}\rightarrow L_{yt}=(1-\bar{l})\bar{L}\]
+
+
+ Now, all that remains is to find ideas \(A_t\). It is assumed
+ that ideas grow at some rate \(g_A\): \[A_t=A_0(1+g_A)^t\]
+
+
+ Using the growth rate formula, we find: \[g_A=\frac{\Delta
+ A_{t+1}-A_t}{A_t}=\frac{A_t+\bar{z}A_tL_{at}-A_t}{A_t}=\bar{z}L_{at}=\bar{z}\bar{l}\bar{L}\]
+
+
+ Thus, ideas \(A_t=A_0(1+\bar{z}\bar{l}\bar{L})^t\). Finally,
+ output can be solved the production function: \[Y_t=A_t
+ L_{yt}=A_0(1+\bar{z}\bar{l}\bar{L})(1-\bar{l})\bar{L}\]
+
+
+
+
+
+
+
analysis
+
+
+ We see the Romer model exhibits long-run growth because ideas
+ have non-diminishing returns due to their nonrival nature. In
+ this model, capital and income eventually slow but ideas
+ continue to yield increasing, unrestricted returns.
+
+
+ Further, all economy continually and perpetually grow along a
+ "Balanced Growth Path" as previously defined by \(Y_t\) as a
+ function of the endogenous variables. This directly contrasts
+ the Solow model, in which an economy converges to a steady-state
+ with transition dynamics.
+
+
+ Changes in the growth rate of ideas, then, alter the growth rate
+ of output itself—in this case, parameters \(\bar{l},
+ \bar{z}\), and \(\bar{L}\). This is best exemplified by
+ comparing the growth rate before and and after a parameter
+ changes. In the below example, a larger \(\bar{l}\) initially
+ drops output due to less workers being allocated to production.
+ Soon after, though, output recovers along a "higher"
+ Balanced Growth Path.
+
+
+
+
+ Notably, while both the Romer and Solow Models help to analyze
+ growth across countries, they both are unable to resolve one
+ question: why can and do investment rates and TFP differ across
+ contries? This is a more fundamental economic question involving
+ culture, institutions, and social dynamics—one day I hope
+ we'll have an answer.
+
+
-
romer-solow
-
introduction
+
romer-solow
-
hi
-
hello
+
introduction
+
+
+ While the Romer Model provides an avenue for long-run economic
+ growth, it is anything but realistic—surely economies due
+ not grow at an ever-increasing blistering rate into perpetuity.
+ A model in which:
+
+
+ -
+ Economies grow faster the further below they are
+ from their balanced growth path
+
+ -
+ Economies grow slower the further above they are
+ from their balanced growth path
+
+
+
+ would certainly be more pragmatic. The Solow Model's
+ capital dynamics do, in some sense, mirror part of this behavior
+ with respect to the steady-state (output converges
+ quicker/slower to the steady state the further/closer it is from
+ equilibrium).
+
+
+ Combining the dynamics of the Romer Model's ideas and the
+ Solow Model's capital stock could yield the desired result.
+ Intuitively, incorporating capital into output via the Solow
+ Model's production function, as well as including the
+ Law of Capital Motion seems like one way to legitimately
+ create the so-called 'Romer-Solow' model:
+
+
+
+
+ - \(Y_t=K_t^\alpha L_{yt}^{1-\alpha}\)
+ - \(\Delta K_{t+1}=\bar{s}Y_t-\bar{d}K_t\)
+ - \(\Delta A_{t+1} = \bar{z}A_tL_{at}\)
+
+
+
+
+ - \(L_{yt}+L_{at}=\bar{L}\)
+ - \(L_{at}=\bar{l}\bar{L}\)
+
+
+
+
+
solving the model
+
content
diff --git a/scripts/post.js b/scripts/post.js
index bd408af..1c6c1c5 100644
--- a/scripts/post.js
+++ b/scripts/post.js
@@ -3,6 +3,38 @@ document.documentElement.style.setProperty(
getTopicColor(urlToTopic()),
);
+const tagToHeader = new Map([
+ ["H2", "#"],
+ ["H3", "##"],
+]);
+
+const makeFold = (h, i) => {
+ const toggle = document.createElement("span");
+ toggle.style.fontStyle = "normal";
+ toggle.textContent = "v";
+
+ // only unfold first algorithm problem
+ if (urlToTopic() === "algorithms" && i === 0) toggle.textContent = "v";
+
+ h.parentElement.nextElementSibling.style.display =
+ toggle.textContent === ">" ? "none" : "block";
+ h.parentE;
+ toggle.classList.add("fold-toggle");
+ toggle.addEventListener("click", () => {
+ const content = h.parentElement.nextElementSibling;
+ toggle.textContent = toggle.textContent === ">" ? "v" : ">";
+ content.style.display = toggle.textContent === ">" ? "none" : "block";
+ });
+
+ const mdHeading = document.createElement("span");
+ const header = tagToHeader.has(h.tagName) ? tagToHeader.get(h.tagName) : "";
+ mdHeading.textContent = `${header} `;
+ mdHeading.style.color = getTopicColor(urlToTopic());
+
+ h.prepend(mdHeading);
+ h.prepend(toggle);
+};
+
document.addEventListener("DOMContentLoaded", () => {
document.querySelectorAll("article h2").forEach((h2) => {
const mdHeading = document.createElement("span");
@@ -11,27 +43,6 @@ document.addEventListener("DOMContentLoaded", () => {
h2.prepend(mdHeading);
});
- document.querySelectorAll(".fold h3").forEach((h3, i) => {
- const toggle = document.createElement("span");
- toggle.textContent = "v";
-
- // only unfold first algorithm problem
- if (urlToTopic() === "algorithms" && i === 0) toggle.textContent = "v";
-
- h3.parentElement.nextElementSibling.style.display =
- toggle.textContent === ">" ? "none" : "block";
- toggle.classList.add("fold-toggle");
- toggle.addEventListener("click", () => {
- const content = h3.parentElement.nextElementSibling;
- toggle.textContent = toggle.textContent === ">" ? "v" : ">";
- content.style.display = toggle.textContent === ">" ? "none" : "block";
- });
-
- const mdHeading = document.createElement("span");
- mdHeading.textContent = "## ";
- mdHeading.style.color = getTopicColor(urlToTopic());
-
- h3.prepend(mdHeading);
- h3.prepend(toggle);
- });
+ document.querySelectorAll(".fold h2").forEach(makeFold);
+ document.querySelectorAll(".fold h3").forEach(makeFold);
});