1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

流動性制約の影響を受ける条件をMATLABを用いて求めてみた。(二期間モデル)

1
Last updated at Posted at 2026-06-15

このプロジェクトでは、マクロ経済学における「流動性制約(借入制約)」が、消費者の最適化行動にどのような影響を与えるかを、二期間モデルを用いて数学的・数値計算的に分析しました。
本稿で扱う二期間・確実性・CRRA効用のモデルでは、流動性制約が効く条件を解析的に導出できます。
そのため、本稿の目的は、数値計算によって未知の条件を発見することではありません。
むしろ、解析的に得られる条件を残差関数と数値計算によって確認し、将来的に多期間モデルや所得不確実性を含むモデルへ拡張するための基礎的な実装を行うことを目的としています。

※筆者は学部3年生であるため、記事の内容に誤りを含む可能性があります。お気づきの方はXに連絡をくださると助かります。

なお、使用したMATLABのコード全体は、以下のGitHubリポジトリに公開しています。
GitHub - ublf/liquidity_constraints

1. 流動性制約の定義

流動性制約とは、信用情報の不足、担保欠如、金融機関の審査基準などにより、「将来の所得を担保にした現在の借入」ができない状態を指します。
$n$ 期間モデルにおいて、貯蓄 $a$ が負の状態(借入)を許容しないモデルとして定式化されます。

2. 理論モデル:流動性制約のある二期間モデル

2.1 モデルの設定

消費者の目的関数を以下のように定義します。

$$\max_{a} U(c_1, c_2) = u(c_1) + \beta u(c_2)$$

予算制約式(二期目所得 $w_2$ を導入):

  1. 若年期: $c_1 + a = w_1$
  2. 老年期: $c_2 = (1+r)a + w_2$

流動性制約: $a \ge 0$

この時

  • $c_n$、$w_n$:n期の消費、所得
  • $a$:貯蓄
  • $r$:利子率
  • $\beta$:主観的割引因子
  • $U$:生涯効用関数
  • $u$:瞬間効用関数

2.2 オイラー方程式と残差関数

CRRA型効用関数(相対的リスク回避度一定型効用関数) $u(c) = \frac{c^{1-\gamma}}{1-\gamma}$ を用いると、最適化条件(オイラー方程式)は以下の通りとなります。

$$\frac{1}{(w_1 - a)^\gamma} = \beta(1+r) \frac{1}{{(1+r)a + w_2}^\gamma}$$

※ただし、$\gamma=1$ の場合は $u(c)=\log c$ となります。本稿のオイラー方程式では限界効用 $u'(c)=c^{-\gamma}$ を用いるため、以下では同じ形で議論できます

ここから、数値計算のために残差関数 $R(a)$ を定義します。

$$R(a) = \beta(1+r) \left( \frac{w_1 - a}{(1+r)a + w_2} \right)^\gamma - 1$$

この時以下のことが言えます。

  • $R(a) = 0$ :最適点(オイラー方程式が成立している状態。)
  • $R(a) < 0$ :借入をしたい状況(オイラー方程式を成立させるためには残差関数を増やさなければいけない状態。残差関数は$a$に関して単調減少であることより、貯蓄を減らしたい状況。)
  • $R(a) > 0$ :貯蓄を増やしたい状況(オイラー方程式を成立させるためには残差関数を減らさなければいけない状態。残差関数は$a$に関して単調減少であることより、貯蓄を増やしたい状況。)

3. MATLABによる実装

3.1 数値計算のロジック

MATLABの fzero 関数を用いて残差関数のゼロ点を探します。流動性制約 $a \ge 0$ を考慮するため、以下の条件分岐を実装しています。

  1. 制約なし:範囲 $[-\frac{w_2}{1+r}, w_1]$ でゼロ点を探索
  2. 制約あり
    • $R(0) < 0$ の場合、借入を行いたいができないため、端点解である $a = 0$ が最適
    • それ以外は範囲 $[0, w_1]$ でゼロ点を探索

3.2 補足:無名関数の利用

MATLABの無名関数(Pythonのlambda式に相当)を利用することで、動的なパラメータ変更に対応しています。

% 残差関数の定義
R = @(a) (Beta * (1+r) ./ ((w2 + (1+r) * a) .^ gamma)) ./ (1 ./ ((w1 - a) .^ gamma)) - 1;

4. 解析結果

4.1 所得水準と貯蓄行動

シミュレーションの結果、以下のことが明らかになりました。

Figure_1.png

  • 若年期所得 $w_1$ が少ない場合:本来は借入をして効用を最大化したいが、制約により貯蓄が $0$ に張り付き、効用が低下する
  • 若年期所得 $w_1$ が十分にある場合:制約の有無にかかわらず自発的に貯蓄を行うため、流動性制約の影響を受けない

4.2 数学的考察(予算制約線)

image.png

image.png

流動性制約は、予算制約線を $c_1 = w_1$ の位置で垂直に遮断します。($a \ge 0$ ⇔ $ w_1 - c_1\ge 0$)
最適点が $c_1 > w_1$ の領域(借入領域)に存在する時、消費者は流動性制約の影響を受けます。

image.png

これは、「二期目の所得 $w_2$ が一期目の所得 $w_1$ に対して十分に大きい」 場合に発生しやすくなります。($c_1 = w_1$の左シフトにより)

(補足:上の図では最適条件を$c_1 = c_2$にしています。要するに、利子率と時間選好率が等しいときです。)


5. 発展分析:利子率と時間選好率の比率

主観的割引因子 $\beta$ を時間選好率 $\rho$ を用いて $\beta = \frac{1}{1+\rho}$ と置き、利子率 $r$ との比率 $ratio = r/\rho$ が与える影響を分析しました。

5.1 二次元グリッド解析(meshgrid & contour)

ratio と二期目所得 $w_2$ の2変数を動かし、流動性制約が効く($a=0$ となる)境界線を等高線で描画しました。

% 格子点の作成
[W2, Ratio] = meshgrid(w2_grid, ratio_grid);
% R(0)の値を計算し、R(0)=0の等高線を引く
contour(W2, Ratio, R0_val, [0 0], 'LineWidth', 2, 'Color', 'r');

5.2 今回の結論

  • ratioが小さいとき:利子率(借入コスト)に比べ時間選好率(今使いたい気持ち)が大きいため、流動性制約の影響を受けやすい
  • w2が大きいとき:将来所得への期待から現在の借入インセンティブが高まるため、流動性制約の影響を受けやすい
  • 影響度:今回のパラメータ設定では、境界線が$w_2$ に対して凸に上昇している。赤線より下側が流動性制約を受ける領域であるため、$w_2$が大きくなるほど、より広い $r/\rho$ の範囲で流動性制約が効くと分かる。つまり、本シミュレーションの範囲では、所得比率 $(w_2/w_1) $の上昇が、制約を受けるパラメータ領域を非線形に拡大している

contour.png

※変動している所得が$w_1$から$w_2$になっていることでミスリードになっていたら申し訳ありませんが、この赤い線の下側が流動性制約を受ける範囲になります。


6. 解析条件との整合性確認

ここまで、残差関数を用いた数値計算によって、流動性制約が消費者の貯蓄行動に与える影響を確認しました。

一方で、本稿で扱っている二期間・確実性・CRRA効用のモデルでは、流動性制約が効く条件を解析的に導出できます。

そこで本章では、数値計算で得られた結果が、理論的な条件と整合しているかを確認します。

6.1 流動性制約が効く条件

流動性制約が効くのは、制約がない場合には消費者が借入を選びたいにもかかわらず、制約によってそれができない場合です。

本稿では借入制約を

$$
a\geq0
$$

と置いているため、制約が効くかどうかは、端点

$$
a=0
$$

における残差関数の符号で判定できます。

残差関数は、

$$
R(a)=\beta(1+r)\left(\frac{w_1-a}{(1+r)a+w_2}\right)^\gamma-1
$$

でした。

ここで、

$$
a=0
$$

を代入すると、

$$
R(0)
=\beta(1+r)
\left(
\frac{w_1}{w_2}
\right)^\gamma
-1
$$

となります。

制約が効くのは、

$$
R(0)<0
$$

のときです。

したがって、

$$
\beta(1+r)
\left(
\frac{w_1}{w_2}
\right)^\gamma
<1
$$

です。

これを変形すると、

$$\frac{w_2}{w_1}>{\beta(1+r)}^{1/\gamma}
$$

となります。

つまり、2期目所得が1期目所得に対して十分に大きい場合、消費者は本来借入を行って1期目消費を増やしたいと考えます。

しかし、流動性制約

$$
a\geq0
$$

によって借入ができないため、制約付き最適解は

$$
a=0
$$

に張り付きます。


6.2 時間選好率を用いた表現

主観的割引因子を、時間選好率

$$
\rho
$$

を用いて、

$$
\beta=\frac{1}{1+\rho}
$$

と表します。

このとき、流動性制約が効く条件は、

$$
\frac{w_2}{w_1}>\left(\frac{1+r}{1+\rho}\right)^{1/\gamma}
$$

となります。

この式から、流動性制約が効くかどうかは、

  • 所得比率

$$
\frac{w_2}{w_1}
$$

  • 利子率と時間選好率の関係

$$
\frac{1+r}{1+\rho}
$$

  • 相対的リスク回避度

$$
\gamma
$$

によって決まることが分かります。


6.3 発展分析の境界線との対応

第5章では、

$$
ratio=\frac{r}{\rho}
$$

と置き、二期目所得

$$
w_2
$$

との関係をグリッド上で分析しました。

このとき、

$$
r=\rho \cdot ratio
$$

なので、流動性制約が効く境界は、

$$
\frac{w_2}{w_1}=
\left(
\frac{1+\rho \cdot ratio}{1+\rho}
\right)^{1/\gamma}
$$

と表せます。

これを

$$
ratio
$$

について解くと、

$$
ratio=
\frac{
(1+\rho)
\left(
\frac{w_2}{w_1}
\right)^\gamma
-1
}{\rho}
$$

となります。

この式が、第5章で描いた赤い境界線

$$
R(0)=0
$$

に対応しています。

したがって、MATLABによる等高線の結果は、解析的に導出した境界条件と整合的であることが確認できます。

また、今回のパラメータ設定では、境界線が

$$
w_2
$$

に対して凸に上昇しています。

赤線より下側が流動性制約を受ける領域であるため、

$$
w_2
$$

が大きくなるほど、より広い

$$
\frac{r}{\rho}
$$

の範囲で流動性制約が効くと分かります。

言い換えれば、将来所得が現在所得に対して十分に大きい場合には、利子率が時間選好率に対してある程度高くても、消費者はなお借入を望む可能性があります。

この意味で、本シミュレーションの範囲では、所得比率

$$
\frac{w_2}{w_1}
$$

の上昇が、流動性制約を受けるパラメータ領域を非線形に拡大していることが確認できます。


6.4 数値計算の意義

本章で見たように、本稿の二期間モデルでは、流動性制約が効く条件を解析的に導出できます。

したがって、今回の数値計算は、未知の条件を発見するためのものではありません。

むしろ、数値計算の意義は、解析的に得られた条件を計算上でも再現できることを確認する点にあります。

特に、今回用いた

  • 残差関数の定義
  • ゼロ点探索
  • 端点解の判定
  • パラメータグリッドによる可視化

といった手法は、多期間モデルや所得不確実性を含むモデルではより重要になります。

そのようなモデルでは、今回のように簡単な閉形式解が得られないことが多いためです。

したがって、本稿の数値計算は、より複雑な消費者問題へ進むための基礎的な実装練習として位置づけられます。

7. まとめ

本稿では、二期間モデルを用いて、流動性制約が消費者の貯蓄・借入行動に与える影響を分析しました。

まず、消費者が1期目と2期目の消費から効用を得る単純なモデルを設定し、借入制約を

$$
a\geq0
$$

として表しました。

この制約は、消費者が将来所得を担保にして現在借入を行うことができない状況を意味します。

分析の結果、制約がない場合に消費者が本来

$$
a<0
$$

を選びたい、つまり借入を行いたい場合には、流動性制約によって最適解が

$$
a=0
$$

に張り付くことを確認しました。

また、CRRA効用関数のもとでは、流動性制約が効く条件を解析的に導出できます。

具体的には、端点

$$
a=0
$$

における残差関数

$$
R(0)
$$

が負になるとき、消費者は本来借入を望んでいるにもかかわらず、制約によって借入できない状態になります。

この条件は、

$$
R(0)<0
$$

であり、整理すると

$$
\frac{w_2}{w_1}>
{\beta(1+r)}^{1/\gamma}
$$

となります。

さらに、主観的割引因子を時間選好率

$$
\rho
$$

を用いて

$$
\beta=\frac{1}{1+\rho}
$$

と表すと、流動性制約が効く条件は

$$
\frac{w_2}{w_1}>
\left(
\frac{1+r}{1+\rho}
\right)^{1/\gamma}
$$

となります。

この式から、流動性制約が効くかどうかは、

  • 1期目所得と2期目所得の比率
  • 利子率と時間選好率の関係
  • 相対的リスク回避度

によって決まることが分かります。

特に、2期目所得

$$
w_2
$$

が1期目所得

$$
w_1
$$

に対して十分に大きい場合、消費者は将来所得を前提に現在消費を増やしたいと考えるため、借入制約の影響を受けやすくなります。

また、発展分析では、利子率と時間選好率の比率

$$
ratio=\frac{r}{\rho}
$$

と2期目所得

$$
w_2
$$

を変化させ、流動性制約が効く境界を等高線で確認しました。

その結果、今回のパラメータ設定では、2期目所得が大きくなるほど、より広い

$$
\frac{r}{\rho}
$$

の範囲で流動性制約が効くことが分かりました。

これは、将来所得が現在所得に対して大きいほど、消費者が現在の消費を増やすために借入を望みやすくなるためです。

本稿で扱ったモデルは、二期間・確実性・CRRA効用という非常に単純な設定であるため、流動性制約が効く条件を解析的に導出することができました。

したがって、今回の数値計算は、未知の条件を発見するためのものではありません。

むしろ、解析的に得られた条件を数値計算によって確認し、制約付き最適化問題における

  • 残差関数の定義
  • ゼロ点探索
  • 端点解の判定
  • パラメータグリッドによる可視化

を実装することが目的でした。

このような手法は、所得不確実性を導入したモデルや、多期間モデルのように解析解を得ることが難しい問題ではより重要になります。

その意味で、本稿は流動性制約付き消費者問題を数値的に解くための第一歩として位置づけられます。

今後は、所得ショックや多期間モデルを導入し、より現実的な環境において流動性制約が消費行動にどのような影響を与えるのかを分析していきたいです。


おわりに

最後まで読んでいただきありがとうございました。

筆者は学部3年生であり、内容に誤りや不十分な点が含まれている可能性があります。

もし数式の導出、モデル設定、数値計算の実装などについてお気づきの点があれば、XやGitHubでご指摘いただけると大変ありがたいです。

今回の記事が、流動性制約や消費者の異時点間最適化に関心を持つ方の参考になれば幸いです。

著者情報


1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?