関連コラム・仕組み
評価すると次は何日後?復習間隔の計算例
「忘れた」「難しい」「できた」「余裕」の評価後に、このツールが設定する間隔をソースコードの計算式から読み解きます。
更新日:
初回の評価ではどうなる?
新規カードの間隔は0日で、作成した時点から復習対象です。次の表は、まだ過去の復習間隔がないカードを評価した場合です。
| 評価 | 次の間隔 | 次回期日の決め方 |
|---|---|---|
| 忘れた | 0日(10分後) | 評価した時刻から10分後 |
| 難しい | 1日 | 評価した時刻から24時間後 |
| できた | 1日 | 評価した時刻から24時間後 |
| 余裕 | 4日 | 評価した時刻から4日後 |
架空カードで次の期日を追う
このカードが2026年9月25日9時(日本時間)に「余裕」と評価され、間隔が4日になったと仮定します。期日は9月29日9時です。その時刻にカードが復習対象として表示されたら、答えを確認して「難しい」を選ぶ、という入力例です。
- 今日の復習で問いに答えてから裏面を確認します。
- 評価「難しい」を選びます。前回の間隔4日にコードの係数1.2を掛けます。
max(1, round(4 × 1.2))は5日なので、間隔は5日に更新されます。
期待される期日は2026年10月4日9時(日本時間)です。復習回数は1増え、直近の評価が「難しい」なので苦手カードの条件に該当します。この日時と件数は式から求めた例で、実画面を操作した記録ではありません。
前回の間隔が3日なら
コードは日数に係数を掛け、正の値を Math.round で丸めます。そのうえで評価ごとの最低日数を適用します。
| 評価 | 計算 | 次の間隔 |
|---|---|---|
| 忘れた | 日数は0にし、期日は10分後に設定 | 10分後 |
| 難しい | max(1, round(3 × 1.2)) = max(1, 4) | 4日後 |
| できた | max(2, round(3 × 2.3)) = max(2, 7) | 7日後 |
| 余裕 | max(4, round(3 × 3.2)) = max(4, 10) | 10日後 |
「忘れた」では失敗回数が1増え、ほかの評価では失敗回数は増えません。どの評価でも復習回数は1増えます。期日は評価した瞬間を基準に計算され、日付の境目で一律にリセットされる仕組みではありません。
この式の読み方と制約
これは「日々のカード」に実装された軽量な予定計算です。学習者の記憶状態を測定したり、最適な間隔を推定したりはしません。評価は本人の感触で選び、実際の予定に合うかを見て使ってください。アルゴリズムの効果を検証した研究結果や、記憶定着の保証を示すものではありません。
また、「苦手カード」には過去に「忘れた」があるカード、または直近の評価が「忘れた」「難しい」のカードが含まれます。今回「できた」と選んでも過去の失敗回数が残っていれば、苦手一覧に残る場合があります。
実装根拠
間隔の係数、最低日数、10分の期日、失敗回数の更新は src/lib/cards.js の nextIntervalDays、dueAtForRating、reviewCard に記載されています。この記事の例はその式を当てはめたもので、統計的な効果を示す実験ではありません。