以個體模擬(agent-based simulation)分析《魔法少女小圓》的魔法少女系統
獨立研究者
這是一份為了好玩而寫的獨立研究,未經同儕審查。所有結論都是模型在既定假設下的性質,發現問題歡迎到 GitHub 開 issue。
本研究的實作與撰稿借助大型語言模型(Claude Opus 5, Anthropic),研究方向、規則與定稿由作者決定。可由機器檢驗的部分逐項核對過,建模取捨與詮釋則只經過一位非該領域專業的讀者審閱。詳見論文附錄〈重現與驗證〉。
《魔法少女小圓》中的魔法少女、魔女與丘比構成一個子系統。本研究將其寫成一個資源循環,並以個體模擬(agent-based simulation)觀察它在系統層面的表現,也就是把每一名魔法少女與每一隻魔女都當成獨立個體逐一模擬,再看整體會浮現什麼樣的規律。模型的每一條規則都取自作品設定:淨化是把污濁移入悲嘆之種而非消滅它、裝滿的種子會孵化為新魔女除非被丘比吞食、擊敗魔女不一定留下種子、混濁的寶石會削弱持有者的戰力,以及使魔吞噬人類後會成長為魔女。作品設定已給出數值的量直接採用,其餘則對照作品中的三項特徵校準:一座城市維持少數幾名魔法少女、資深者的資歷達數年、多數生涯以魔女化收場。
研究發現有四:一、在作品所呈現的密度下,主導濁化收支的是與魔女的戰鬥,少女之間的爭奪僅佔其 0.15;該比值隨密度上升,要到同時約九名少女才會跨越一比一,遠高於作品所描繪的規模。二、少女折損的速率由締約速率決定,與種子供給幾乎無關;種子供給改變的是折損的方式,以及丘比的回收量。三、累積回收量會飽和。積極招募換得的優勢只是暫時的,因為它取自一個只能消耗一次的存量,也就是龐氏(Ponzi)結構。四、一座對外封閉的城市只有兩種結局:少女因缺乏種子而餓死,或使魔增殖而城市失守。
以上結果均為模型在既定假設下的性質,並以一條精確的守恆恆等式檢驗程式實作。
結果三只比較了固定招募率。既然候選人池的水位是可觀測的狀態,一個依狀態調整的招募策略照理應該更好:池子見底時降低招募,回補後再提高。本研究以表格式 Q-learning(強化學習的一種,reinforcement learning)搜尋這樣的策略,決策以 100 日為一個宏觀步,動作為六個離散招募率,並以折現因子取代評估期間。
結果是否定的。三個折現因子下各訓練 2000 個回合,學到的策略都沒有勝過最佳固定招募率,但差距很小。
| 折現因子 | 學到的策略 | 最佳固定招募率 | 差距 |
|---|---|---|---|
| 0.9 | 46.3 | 47.6 | −2.8% |
| 0.99 | 45.3 | 47.6 | −4.9% |
| 0.999 | 46.5 | 47.6 | −2.4% |
這個結果不代表固定招募率比較好,而是說明回收量受候選人流入速度封頂。固定招募率的回收在 0.016 以上已形成平台,學到的策略正落在平台之內,學習曲線自第 200 回合起也沒有上升趨勢。因此本研究只能說,在這組參數下,依狀態調整的策略沒有可證實的優勢。
作品設定裡使魔不掉落悲嘆之種,但吞噬足夠人類之後會成長為魔女,因此有些魔法少女會刻意不獵殺使魔,等它成熟為魔女再收種子,設定裡把這種作法稱為放養(witch farming),作品中也有角色為此起過爭執。基準模型把使魔簡化成一個成熟率,模型裡也就不存在這個取捨。本實驗把使魔還原成獨立個體:它會吞噬人類,母體魔女被擊敗時會跟著消滅,被提前清除則一無所獲。再以此掃描採取放養的少女比例。
放養確實推高了種子供給,但沒有換到任何東西。實際成熟率上升 4.3 倍,而生涯長度與丘比的回收量都落在重複試驗的雜訊之內;真正上升的是這筆帳裡沒有人在計算的那項成本。
| 放養比例 | 實際成熟率 | 生涯中位數 | 丘比回收量 | 人類損失/千日 |
|---|---|---|---|---|
| 0 | 0.00222 | 116 | 35.4 | 16.3 |
| 0.5 | 0.00379 | 115 | 35.9 | 18.3 |
| 1 | 0.00949 | 106 | 34.0 | 24.6 |
原因與結果三是同一件事:限制回收量的是候選人抵達的速度,而不是種子供給。生涯長度不動則是因為額外的種子必然伴隨額外的魔女,戰鬥所耗抵銷了淨化所得。需要說明的是,這是族群層次的收支,不是對任何一名少女的斷言。
環境以 uv 管理。九組實驗使用確定性種子,重跑會得到相同數字。
git clone https://github.com/yuna0x0/madoka-magica-abm.git
cd madoka-magica-abm
uv sync
uv run madoka-abm experiments # 單核心約一分鐘
論文以 Typst 編譯,中文版需要一套 CJK 襯線字型(預設 Noto Serif CJK TC)。
@misc{hoshinomiya2026griefseed,
title = {The Grief Seed Economy: An Agent-Based Model of the Magical Girl
System in Puella Magi Madoka Magica},
author = {Hoshinomiya, Yuna},
year = {2026},
url = {https://madoka-magica-abm.pages.dev},
note = {Independent study, not peer reviewed. Code and data:
https://github.com/yuna0x0/madoka-magica-abm}
}