SM-2 演算法互動模擬器

直觀模擬單字複習在不同天數、點選不同按鈕的狀態與排程變化

卡片目前狀態

模擬時間 第 0 天
連續答對次數 (rep) 0
易忘因子 (ease) 2.50
複習間隔 (interval) 0 天
下次到期日 (due) 第 0 天
今日到期 (可複習)

1. 模擬今天評分 (點選按鈕)

假設在模擬的 0 進行複習評分,卡片的更新效果:

2. 時間推移控制

您可以讓時間流逝,模擬提前複習、準時複習或逾期複習的狀況:

模擬歷史時間軸

共 0 筆紀錄
尚未有複習歷史。請在左側選擇按鈕以記錄每一次複習!

3. SM-2 演算法公式對照表

  • 初始 Ease:每一張新卡片的預設易忘因子 (E-Factor) 為 2.5
  • 最低 Ease 下限:無論選擇多少次 Hard 或 Again,Ease 永遠不會低於 1.3

每次複習成功 (Grade ≥ 3),repetition 連續次數加 1,下次間隔為:

連續成功次數 (rep) 計算公式 (interval)
第 1 次成功 (rep = 1) interval = 1 天
第 2 次成功 (rep = 2) interval = 6 天
第 3+ 次成功 (rep > 2) interval = round(舊 interval × ease)

每次忘記 (Again, Grade 0),rep 直接歸 0,間隔強制重設為 1 天。

易忘因子 (ease) 微調量 delta:

選擇按鈕 評分 Grade ease 變更值 (delta)
Again 0 0.00 (不作扣分,下限 1.3)
Hard 3 -0.14
Good 4 0.00 (不變)
Easy 5 +0.10

※ 註:在成功時,系統會先用「目前 ease」去乘以舊間隔得出新間隔,然後才把 ease 加上 delta。所以本次按下的效果要到下一次複習時才會生效。

📐 Delta 官方公式推導過程

delta = 0.1 - (5 - q) × (0.08 + (5 - q) × 0.02)

  • q = 5 (Easy): 0.1 - (0) × (0.08) = +0.10
  • q = 4 (Good): 0.1 - (1) × (0.10) =  0.00
  • q = 3 (Hard): 0.1 - (2) × (0.12) = -0.14
  • q = 2 (理論值): 0.1 - (3) × (0.14) = -0.32
  • q = 1 (理論值): 0.1 - (4) × (0.16) = -0.54
  • q = 0 (Again理論值): 0.1 - (5) × (0.18) = -0.80

※ 註:根據 SM-2 第六條規則,當評分 q < 3 時,系統會視為答錯,直接使連續次數歸零,但「不改變其 E-Factor」。因此 q=0,1,2 在這套演算法中的實際應用,Delta 皆強制視為 0.00。這也是為何現代實作將 0,1,2 合併為一個 Again 按鈕的原因。

總結來說:
0、1、2 不扣 Ease 並不是一個 Bug 或漏洞,而是原作者刻意為之的保險機制。它保護了使用者的複習體驗,避免因為偶爾的腦霧或恍神,導致卡片掉入永遠複習不完的「Ease Hell」,是非常體貼人類認知特性的精巧設計。