年金政策をめぐる政党間の政策戦略とナッシュ均衡

研究目的
本研究の目的は、自民党が掲げる年金政策に対して、対抗政党が追随するか差別化するかという戦略的判断を、ナッシュ均衡の枠組みを用いて分析することだ。政党の政策選択は有権者の属性ごとの政策支持傾向を踏まえることで、どの戦略が合理的な選択肢となるかを定式化できる。また、有権者属性別の政策効用を仮定し、政党間の戦略的相互作用をモデル化することで、政党Bの追随は得票最大化の合理的戦略か否かを明らかにする。
※本研究は政策選好に関する構造的な理解を目的とした思考実験的なモデル化であり、実際の選挙結果や政党戦略を厳密に予測するものではない。
本研究が前提とする問いの設定
本研究は次のようにゲーム構造を設定する。 また、構造上は政党Aの戦略提示に政党Bが反応するという順序性を含むため、Stackelberg型ゲームとしても解釈可能である。しかし、本研究ではモデルの単純化とナッシュ均衡の比較可能性を重視し、両政党が同時に戦略を選択する静学ゲームとして定式化する。これにより、政党Bにとっての最適戦略が、属性別の支持構造においてどのように変化するかを明快に分析可能とする。
前提条件:
プレイヤー:政党A(自民党)及び政党B(立憲民主党)
戦略:政策A(年金増額政策)及び政策B(現役世代への賃上げ)
利得:有権者属性ごとの政策支持度に基づく得票数及び支持率
有権者属性:年齢による属性区分を採用し、主に「若年層(20〜39歳)」と「高齢層(60歳以上)」の2グループに分類する。※ 各属性グループの政策支持度は世論調査等を参考にした仮定的効用に基づき、戦略選択時の利得として数値化される。また、政党A(自民党)は政策A(年金政策)を固定して提示しているものとし、政党B(対抗政党)の戦略選択を分析対象とする。
モデル設計
前提でも述べた通り、2つのプレイヤーを設定する:
政党A(自民党):先に政策Aを提示する側。年金政策(政策A)を固定的に掲げている。 政党B(立憲民主党):政党Aの政策提示を観測した上で、自らの政策を「追随」するか「差別化」するかを選択するプレイヤーとする。
各政党が選択可能な戦略を以下の通りとする:
政策A:年金増額政策(高齢層向け) 政策B:現役世代への賃上げ(若年層向け)
政党Aは政策A(年金政策)を選択済みであり、政党Bが政策Aに追随するか、政策Bで差別化するを分析する。
利得 (utility) の加重効用の合計について:
フェアな比較の視点を保つため、人口構成比や属性ごとの投票率を考慮し、政治経済学やゲーム理論などでよく使われる加重効用の合計値を政党の利得として採用する。
$$
U_j=\sum_{i} w_i S_{ij}
$$
𝑈𝑗= 政党𝑗の利得 (utility)
𝑖 = 各属性(若年層 or 高齢層)(identity)
𝑤𝑖 = 属性𝑖の人口構成比 × 投票率の重み (weight)
𝑆𝑖𝑗= 属性𝑖における、政党𝑗の選んだ政策に対する支持度(効用を定量化したscore)
※また、本研究における𝑆𝑖𝑗(属性𝑖における政党𝑗の選択した政策に対する支持度)の設定にあたっては、内閣府「令和元年度 高齢者の経済生活に関する調査」および厚生労働省「生活設計と年金に関する世論調査」(令和5年11月)を参考とする。
ゲーム構造の仮定・範囲
- プレイヤーは完全情報下で同時に戦略を選択する静学ゲーム(ナッシュ均衡)を想定
- 政策以外の要因(政党イメージ、候補者、組織票など)は利得に含めない
- モデルは有権者を年齢属性のみで**二分(若年層/高齢層)**し、投票率は属性ごとに一定と仮定
- 混合戦略(例:年金と子育ての中間政策)や中間属性層(40–59歳)は、拡張の対象外とする
データとモデルへの適用
自民党が掲げる「参院選2025」の公約では、政策A(年金政策)および政策B(現役世代への賃上げ)の両方が明記されているものの、「全世代型社会保障」を標榜しながらも、基礎年金の受給額引き上げや厚生年金の適用拡大といった高齢者の老後支援を政策の柱に据えている。加えて、自民党の有権者として60歳以上の高齢者層が約40%超を占めており、その投票率も若年層を大きく上回る傾向がある。このような自民党による「シルバー民主主義」とも呼ばれる構造の下で、自民党は高齢者層の票を重視した政策展開を戦略的に行ってきたと言える。そのため、本研究では、自民党が政策A(年金政策)をより重点的に推進することを前提とし、分析を進めるものとする。
本モデルにおける効用スコアの定義に際しては、政府が実施した以下の代表的な世論調査を参考にする。
① 重み(weight)の確定
本研究で用いる加重効用の合計 (𝑈𝑗 = Σ𝑤𝑖𝑆𝑖𝑗)における重み𝑤𝑖の算出にあたっては、各属性𝑖のの「人口構成比 × 投票率」を基準とする。これは、単に人口の多寡だけでなく、実際に政治的な影響力を持つ投票参加の度合いも反映させるためである。
例えば、2025年時点での人口構成比と2022年参院選における投票率を参考にすれば、
$$
重み (𝑤𝑖) の算出
$$若年層(20–39歳):人口構成比 約21% × 投票率 約39% → 𝑤young ≒ 0.0832 ≒ 全体の25.2%の影響力
高齢層(60歳以上):人口構成比 約37.8% × 投票率 約65.2% → 𝑤old ≒ 0.2463 ≒ 全体の74.8%の影響力
なお、両者の合計は0.0832 + 0.2463 = 0.3295 となり、これを1とするように正規化(重みの合計を1にする変換)すると、有権者構造においては**高齢層が約75%、若年層が約25%**の影響力を持つとみなすことができる。これは、いわゆる「シルバー民主主義」の構図を定量的に表した結果である。
https://www.stat.go.jp/data/jinsui/pdf/202506.pdf
https://www.soumu.go.jp/senkyo/senkyo_s/news/sonota/nendaibetu/
② 効用スコア(Sij)の確定
𝑆𝑖𝑗は、内閣府やNHKの政策世論調査をもとに、年齢層ごとの政策への支持割合を数値化したものである。たとえば、内閣府「高齢者の経済生活に関する調査」(令和元年)では、「自身の老後生活の安定が最も重要」と答えた60歳以上の割合が**68.2%に達し、「現役世代支援を重視すべき」と答えたのは27.3%**にとどまっている。また、厚生労働省「生活設計と年金に関する調査」(令和5年)でも、年金制度の維持・拡充を望む高齢者の割合は79.4%に上っている。これらの調査結果を踏まえ、本研究では政策A(年金)に対する高齢層の支持度𝑆old𝐴を0.79、政策B(現役世代支援)に対する高齢層の支持度𝑆old,𝐵を0.27と設定する。
一方、若年層では、NHKの2023年報道特集「生活意識と賃上げに関する調査」によると、「賃上げを重視する」と答えた20〜39歳が61%、うち「非常に重視」が24%にのぼっている。これらを支持度としてスコア化し加重平均を取ると、賃上げ政策(政策B)に対する若年層の支持度はおおよそ 0.72 となる。年金制度への支持が35%前後であること(同調査)と対比し、Syoung,B=0.72、Syoung,A=0.35 と設定することが妥当と判断した。
効用スコア𝑆𝑖𝑗**:**
属性 | 政策A(年金) | 政策B(賃上げ) |
---|---|---|
若年層 (the Young) | 0.35 | 0.72 |
高齢層 (the Old) | 0.79 | 0.27 |
③ ナッシュ均衡の導出
政党Bが採る2つの戦略における加重効用𝑈𝑗を、式(1)に基づいて比較する。
■ 政策A(年金)を選択した場合
U = 0.252 × 0.35 + 0.748 × 0.79 = 0.6801
■ 政策B(賃上げ)を選択した場合
U=0.252 × 0.72 + 0.748 × 0.27 = 0.3834
結論:
- 政策A(年金)の方が、全体の加重効用 U=0.6801となり、政策B(賃上げ)の U=0.3834 を大きく上回る。
- よって、政党Bにとっては政策A(年金)を選択することが合理的戦略(ナッシュ均衡)である。
考察:若年層重視政策の構造的困難
本モデルが示すように、有権者の票の重みは高齢層に大きく偏っており、いかに若年層の支持を集められる政策であっても、それ単体では全体の得票最大化には繋がりにくい構造にある。これは、野党が若年層重視の差別化戦略を取りにくく、結果として政党間の政策の多様性が損なわれる要因となりうる。
この構造的な非対称性は、「シルバー民主主義」と呼ばれる現象の制度的基盤とも言え、若年層の政治的関与を促進する投票制度改革や、政策形成における属性間バランスの是正が今後の課題として浮かび上がる。
若年層投票率と加算効用の対応表
若年層の投票率を上げることで政策Aにどれだけ近づけるかを計算してみた。100%でも高齢層向けの政策が優位となるが、若年層にとっては選挙率をあげることが、
「上図:若年層投票率を上げた際の加重効用 Uの変化」
pop_young = 0.21 pop_old = 0.378 vote_old = 0.652 S_young_A = 0.35 S_young_B = 0.72 S_old_A = 0.79 S_old_B = 0.27 vote_young_arr = np.linspace(0.1, 1.0, 1000) df = pd.DataFrame( { "若年層投票率": vote_young_arr * 100, "政策A(年金)": [ ((pop_young * v) * S_young_A + (pop_old * vote_old) * S_old_A) / (pop_young * v + pop_old * vote_old) for v in vote_young_arr ], "政策B(賃上げ)": [ ((pop_young * v) * S_young_B + (pop_old * vote_old) * S_old_B) / (pop_young * v + pop_old * vote_old) for v in vote_young_arr ], } ) df_melted = df.melt(id_vars="若年層投票率", var_name="政策", value_name="加重効用U") plt.figure(figsize=(8, 5)) sns.lineplot(data=df_melted, x="若年層投票率", y="加重効用U", hue="政策") plt.xlabel("若年層投票率(%)") plt.ylabel("加重効用U") plt.title("若年層投票率と政策の加重効用") plt.grid(True) plt.show()
「上図:加重効用Uの変化を計算した式」
最後に
弊社では、最新AIの組み込みや様々なデータサイエンスを承っています。
お悩みや取り組みたい内容ありましたらどうぞお気軽にご相談ください。尚、今回作成したナッシュ均衡アプリはこちらとなります。
フレームワーク: Next.js, shadcn, GCP Cloud run