DEVELOPMENT SNAPSHOT #53 — 年齢まで動く人口:五歳階級と出生・死亡の月次計算

Contributed by: Takeshi Miyaoka on 火曜日, 10月 13 2026

Last modified on 火曜日, 10月 13 2026

人口グラフの五歳階級は、飾りではありません。人口は出生と死亡に分けて更新され、年齢構成も月ごとに少しずつ進みます。今回は実際のDebug画面で、年齢別人口と人口動態のつながり、そして端数を捨てずに繰り越す加齢計算を見ていきます。

Debug画面で見る人口の断面

年齢別の内訳を出すと、「人口が増えた/減った」だけでは見えない違いが分かります。働き手になりうる年齢層の厚さは、労働力や職業構成とも結びつきます。出生と死亡が積み重なることで、その形が年月をかけて変わっていきます。

端数を捨てない、ひと月ずつの加齢

人口は五歳ごとの年齢階級で扱います。階級内の人口が一か月で次の階級へ進む割合は1/60です。毎月整数へ切り捨てると小さな端数が失われるため、移動できる人数は一人単位で確定し、端数は AgeingRemainder として階級ごとに保存して次月へ繰り越します。表示単位のK(千人)では一人は0.001K。小さな差を消さず、長期間の更新でも年齢階級の合計を保つための仕組みです。

出生・死亡・平均寿命をひとつの数字に潰さない

月次更新では出生数と死亡数を別々に計算します。出生率・死亡率は地域ごとの値として扱い、年齢別死亡率から生命表を組み立てて平均寿命を算出します。出生と死亡の差が自然増減です。移住、戦争、災害による変化は別要因として分け、人口が変わった理由を画面やログで追いやすくします。

地域の条件と死亡率を、年齢階級の人数と合わせて確かめるのもDebug画面の役目です。次は同じテスト用セーブの経済・地域課題の画面です。数値を生活や生産の状態と並べて見ます。

現在地とこれから

年齢階級、月次の加齢端数、出生と死亡を分けた更新は仕様と実装で扱っている仕組みです。一方、画像の数値は一つのテスト用セーブのスナップショットで、将来予測や最終バランスではありません。地域差や生活条件を変えながら、長期間進めても人数の整合性が保たれ、人口の変化を読み取れるか引き続き確認しています。

前回の DEVELOPMENT SNAPSHOT #52 — 暦に刻む地域の天気:季節と嵐の揺らぎ では季節と地域の天候を取り上げました。今回はその時間の流れのなかで、人々の年齢構成がどう変化するかに焦点を当てています。

ゲームのダウンロード案内:ダウンロードページ
English version

コメント (0件)

Happa - DEVELOPMENT SNAPSHOT #53 — 年齢まで動く人口:五歳階級と出生・死亡の月次計算
https://www.happa.bz/article.php?story=devblog-053-population-age_ja