Ratgeber · Algorithmen & Engine
SM-2-Algorithmus erklärt: Wie SuperMemo 1987 die Spaced Repetition mathematisch sauber gemacht hat
spaced-repetition.de nutzt SM-2 als einen von drei Algorithmen unter der Haube. Hier liest du, wie Piotr Wozniaks Formel von 1987 funktioniert, was Quality-Response 0 bis 5 bedeutet und warum der Default-Ease-Factor 2.5 ist.
SuperMemo 2, kurz SM-2, ist der Algorithmus, der Spaced Repetition aus der Karteikasten-Welt in die Software-Welt geholt hat. Piotr Wozniak, ein polnischer Informatik-Student, hat ihn 1987 als Teil seiner Diplomarbeit veröffentlicht. Seitdem ist SM-2 die Grundlage für Anki, Mnemosyne und etwa zehn andere Karteikasten-Programme. Auch der Simple-Modus von spaced-repetition.de orientiert sich am gleichen Prinzip, nur ohne die persönliche Ease-Factor-Anpassung.
Der Reiz von SM-2 ist, dass die Mathematik dahinter so simpel ist, dass du sie auf einer Bierdeckel-Rückseite nachrechnen kannst. Vier Variablen, zwei Update-Regeln, eine feste Intervall-Sequenz für die ersten zwei Wiederholungen. Mehr braucht es nicht, um einen Lernplan zu bauen, der die Vergessenskurve schlägt.
Die vier Variablen pro Karte
Jede Karte in einem SM-2-Deck hat genau vier Werte, die zwischen zwei Reviews gespeichert werden. Der Wiederholungs-Zähler (repetitions) zählt, wie oft du die Karte schon korrekt beantwortet hast. Bei einer falschen Antwort springt er zurück auf null. Der Ease-Factor (ef) startet bei 2.5 und bewegt sich zwischen 1.3 und etwa 3.0, je nachdem wie leicht oder schwer dir die Karte fällt. Das Intervall (interval) in Tagen sagt, wann die Karte das nächste Mal fällig ist. Das letzte Review-Datum (lastReview) ist die Zeitstempel der letzten Begegnung.
Das war es. Keine Tags, keine Komplexität, keine versteckten Heuristiken. Das ist der Grund, warum SM-2 in vier Zeilen Pseudocode passt und warum so viele Open-Source-Projekte ihn übernommen haben.
Die Update-Formel im Detail
Wenn du eine Karte bewertest, gibst du eine Quality-Antwort q zwischen 0 und 5 ab. Die Formel passt dann den Ease-Factor an:
ef_new = max(1.3, ef_old + (0.1 - (5 - q) * (0.08 + (5 - q) * 0.02)))
Sieht erstmal kryptisch aus, aber zerlegt ist es harmlos. Der Term (5 - q) ist die Distanz zur perfekten Antwort. Bei q = 5 ist er 0, bei q = 3 ist er 2, bei q = 0 ist er 5. Je größer die Distanz, desto stärker wird der Ease-Factor reduziert. Bei q = 4 (gewusst nach kurzem Nachdenken) ist die Anpassung exakt 0, der Ease-Factor bleibt unverändert. Bei q = 5 steigt er um 0.1, bei q = 3 fällt er um etwa 0.14, bei q = 0 fällt er um 0.8.
Die Untergrenze 1.3 verhindert, dass schwere Karten endlos im täglichen Intervall festsitzen. Wenn dein Ease-Factor auf 1.3 hängenbleibt, weißt du: diese Karte braucht eine andere Strategie, vielleicht ein besseres Mnemonic oder eine Aufteilung in mehrere kleinere Karten.
<rect class="box" x="160" y="100" width="110" height="70" rx="8"/>
<text class="label" x="215" y="130">Review 2</text>
<text class="small" x="215" y="150">+6 Tage</text>
<text class="small" x="215" y="164">Bootstrap</text>
<rect class="box" x="300" y="100" width="110" height="70" rx="8"/>
<text class="label" x="355" y="130">Review 3</text>
<text class="small" x="355" y="150">+15 Tage</text>
<text class="small" x="355" y="164">6 × 2.5</text>
<rect class="box" x="440" y="100" width="110" height="70" rx="8"/>
<text class="label" x="495" y="130">Review 4</text>
<text class="small" x="495" y="150">+37 Tage</text>
<text class="small" x="495" y="164">15 × 2.5</text>
<rect class="boxFar" x="580" y="100" width="110" height="70" rx="8"/>
<text class="label" x="635" y="130">Review 5</text>
<text class="small" x="635" y="150">+93 Tage</text>
<text class="small" x="635" y="164">37 × 2.5</text>
<path class="arrow" d="M 130 135 L 160 135"/>
<path class="arrow" d="M 270 135 L 300 135"/>
<path class="arrow" d="M 410 135 L 440 135"/>
<path class="arrow" d="M 550 135 L 580 135"/>
<text class="small" x="360" y="40" font-weight="600" fill="#0f172a">Intervall-Sequenz für eine Karte mit Ease-Factor 2.5</text>
<text class="small" x="360" y="58">jedes Review als Quality 4 bewertet, ef bleibt konstant</text>
<text class="small" x="360" y="240" font-weight="600" fill="#0f172a">Summe nach 5 Reviews: 152 Tage Lerndauer für eine Karte</text>
Die Intervall-Regel
Sobald die Karte zwei erfolgreiche Reviews hinter sich hat (repetitions >= 2), wird das nächste Intervall ganz simpel berechnet:
interval_new = interval_old * ef
Bei einem Intervall von 6 Tagen und Ease-Factor 2.5 sind das 15 Tage. Nach dem nächsten erfolgreichen Review (mit gleichem oder neuem Ease-Factor) wären es 37 Tage. Nach dem nächsten 93 Tage. Die Intervalle wachsen exponentiell, was zur exponentiellen Vergessenskurve passt: je länger du eine Karte erfolgreich erinnerst, desto langsamer vergisst du sie und desto seltener musst du sie üben.
Wenn du eine Karte mit Quality unter 3 bewertest (also vergessen), passieren drei Dinge gleichzeitig: der Ease-Factor wird per Formel reduziert (typisch um 0.2 bis 0.4), der Wiederholungs-Zähler springt auf 0 zurück, das Intervall wird auf 1 Tag gesetzt. Die Karte beginnt also von vorne, aber mit einem niedrigeren Ease-Factor, was bedeutet, dass die nächsten Intervalle kürzer sein werden als bei der ersten Lern-Schleife.
Ein Beispiel über fünf Reviews
Nehmen wir eine durchschnittliche Vokabel, sagen wir das spanische Wort “esperanza” (Hoffnung). Du lernst sie an Tag 0 zum ersten Mal. SM-2 setzt das Intervall auf 1 Tag, repetitions auf 1, ef bleibt 2.5.
An Tag 1 ist die Karte fällig. Du erinnerst dich gut, gibst Quality 4 ab. Der Ease-Factor bleibt 2.5 (Anpassung ist 0 bei q = 4), repetitions wird 2, das nächste Intervall ist das Bootstrap-Intervall 6 Tage.
An Tag 7 ist die Karte wieder fällig. Du brauchst zwei Sekunden zum Nachdenken, Quality 3. Der Ease-Factor fällt auf 2.36, repetitions wird 3, das nächste Intervall ist 6 * 2.36 = 14 Tage.
An Tag 21 ist die Karte fällig. Du weißt sie sofort, Quality 5. Der Ease-Factor steigt auf 2.46, repetitions wird 4, das nächste Intervall ist 14 * 2.46 = 34 Tage.
An Tag 55 ist die Karte fällig. Du brauchst lange, hast Mühe, Quality 3. Der Ease-Factor fällt auf 2.32, repetitions wird 5, das nächste Intervall ist 34 * 2.32 = 79 Tage.
Nach 134 Tagen hast du die Karte fünf Mal geübt und das nächste Mal kommt sie erst in drei Monaten wieder. Das ist die Magie von Spaced Repetition: kontinuierlich abnehmender Übungs-Aufwand bei stabiler Erinnerungsleistung.
Was SM-2 nicht macht
Der Algorithmus ist absichtlich minimalistisch. Er kennt keine Tageszeit-Optimierung (du kannst eine Karte morgens oder abends üben, das macht für SM-2 keinen Unterschied), keine Schwierigkeits-Klassifikation jenseits des Ease-Factors, keine Vorhersage über die individuelle Vergessenskurve, keine Berücksichtigung von Karten-Ähnlichkeiten (interferenz-anfällige Vokabeln wie “muerto” und “muerte” werden gleich behandelt).
All das hat FSRS später ergänzt. Wozniak selbst hat von SM-3 bis SM-18 inkrementelle Verbesserungen veröffentlicht, die alle proprietär bei SuperMemo World blieben. SM-2 ist der einzige Algorithmus aus der Familie, der Public Domain ist und deshalb in Open-Source-Software verwendet werden darf.
Wie spaced-repetition.de SM-2 implementiert
Die Engine hinter unserem Tool nimmt drei Inputs: Anzahl Karten, Startdatum und maxReviewsPerDay. Für jede Karte simuliert sie zehn aufeinanderfolgende Reviews, immer mit Quality 3 als pessimistische Default-Annahme (du erinnerst dich, aber mit Anstrengung). Daraus ergeben sich die zehn Intervalle: 1, 6, 14, 32, 71, 156, 339, 731, 1572, 3373 Tage. Die ersten paar passen in dein Lernhalbjahr, die hinteren sind eher symbolisch (eine Karte alle neun Jahre üben wird selten passieren, aber die Mathematik ist konsistent).
Die Intervalle werden dann gegen den Studientage-Filter (etwa Montag bis Freitag) und das maxReviewsPerDay-Cap geprüft. Wenn an einem Tag mehr Karten zusammenkommen, als erlaubt sind, wandern die Überlauf-Karten auf den nächsten erlaubten Tag. Am Ende exportiert das Tool den fertigen Plan als ICS oder CSV.
Was hängenbleibt
SM-2 ist seit 1987 die Referenz für Spaced-Repetition-Algorithmen. Vier Variablen pro Karte, zwei Update-Regeln, eine feste Bootstrap-Sequenz, mehr braucht es nicht. Der Ease-Factor passt sich pro Karte an deine persönliche Lernkurve an, die Intervalle wachsen exponentiell mit jeder erfolgreichen Wiederholung. Quality-Antworten 0 bis 5 unterscheiden feiner als ein Ja-Nein-Knopf und steuern die Anpassung präzise. Für Deck-Größen unter 5.000 Karten ist SM-2 immer noch konkurrenzfähig zu modernen Algorithmen wie FSRS. spaced-repetition.de zeigt SM-2 als einen von drei Modi, damit du nachvollziehen kannst, woher die Intervalle in deinem Lernplan kommen.
FAQ
Häufige Fragen
Warum startet der Ease-Factor bei genau 2.5 und nicht bei einem anderen Wert?
Piotr Wozniak hat den Default 2.5 empirisch aus seinen Selbstexperimenten 1985 bis 1987 abgeleitet. Er hat tausende Karten mit verschiedenen Startwerten getestet und gemessen, bei welchem Wert die Wiederholungsintervalle für eine durchschnittliche Vokabel-Lernkarte am besten zur tatsächlichen Vergessenskurve passten. 2.5 war der Wert, bei dem die zweite Wiederholung nach genau einer Woche fällig wurde (1 Tag erste Wiederholung, dann 6 Tage Sprung, dann 6 * 2.5 = 15 Tage). Das passte zu Ebbinghaus-Daten und zu Wozniaks eigenen Behaltensraten. Die Untergrenze 1.3 hat er gesetzt, damit schwere Karten nicht ins Endlose runter-iterieren und alle drei Tage wiederkommen. Anki hat den Default 2.5 übernommen, FSRS rechnet ihn pro Karte aus, statt einen festen Startwert zu setzen.
Was bedeutet Quality 3 in der Praxis und warum macht das so einen Unterschied zu Quality 4?
Die Quality-Skala 0 bis 5 von SM-2 unterscheidet feiner als ein Ja-Nein-Knopf. Quality 0 ist ein blanker Blackout, du hast die Antwort überhaupt nicht gewusst. Quality 1 ist falsche Antwort mit leichtem Wiedererkennen nach Auflösung. Quality 2 ist falsch, aber bei Auflösung kommt das Aha-Erlebnis. Quality 3 ist die kritische Grenze: du hast die Antwort gewusst, aber mit deutlicher Anstrengung, vielleicht zwei oder drei Sekunden Pause vor der richtigen Antwort. Quality 4 ist gewusst nach kurzem Nachdenken, Quality 5 ist sofort gewusst ohne jeden Hänger. In der Update-Formel bedeutet Quality 3 eine leichte Erhöhung des Ease-Factors um etwa 0.14, Quality 4 erhöht um 0.0 (kein Effekt), Quality 5 erhöht um 0.1. Bei Quality unter 3 wird die Karte als Fehler gewertet und das Intervall auf 1 Tag zurückgesetzt.
Warum sind die ersten Intervalle 1 Tag und 6 Tage fest und nicht aus der Formel berechnet?
Das ist ein bewusster Design-Trick von Wozniak. Für die ersten zwei Wiederholungen hat der Algorithmus noch keine verlässlichen Daten über deine persönliche Vergessenskurve für diese Karte. Wenn er da blind die Formel anwenden würde, wäre das Ergebnis statistisch nicht aussagekräftig. Stattdessen nutzt SM-2 zwei feste Bootstrap-Intervalle: nach der ersten Begegnung 1 Tag (am nächsten Tag wiederholen), nach der zweiten erfolgreichen Wiederholung 6 Tage (eine Woche). Erst ab der dritten Wiederholung wird das vorherige Intervall mit dem Ease-Factor multipliziert und damit individuell. Diese 1-und-6-Tage-Regel hat sich in 40 Jahren Spaced-Repetition-Praxis bewährt und wird in Anki und Mnemosyne identisch verwendet.
Wann lohnt sich SM-2 noch und wann sollte ich auf FSRS umsteigen?
SM-2 lohnt sich immer dann, wenn du verstehen willst, was passiert. Die Formel ist in vier Zeilen Code und mit dem Taschenrechner nachvollziehbar. Für kleine bis mittlere Deck-Größen unter 1.000 Karten ist der Performance-Unterschied zwischen SM-2 und FSRS in der Praxis minimal, etwa 5 bis 10 Prozent weniger Reviews bei FSRS bei gleicher Behaltensrate. Erst ab 5.000 oder 10.000 Karten wird FSRS spürbar effizienter, weil es individuelle Vergessenskurven pro Karte berechnet statt einen einheitlichen Ease-Factor zu führen. Für deutsche Vokabel-Decks im B1-Bereich oder eine fachliche Wiederholungs-Schleife (etwa Anatomie-Lernen im Medizinstudium) ist SM-2 völlig ausreichend. Wer 20.000 Anki-Karten pflegt und jede Minute Review-Zeit sparen will, sollte FSRS aktivieren. spaced-repetition.de zeigt beide Algorithmen nebeneinander, damit du selbst vergleichen kannst.
Was passiert, wenn ich an einem Tag mehr Karten fällig habe, als ich schaffe?
SM-2 selbst kennt keine Tages-Obergrenze, der Algorithmus berechnet pro Karte einfach das nächste fällige Datum. Wenn an einem Mittwoch 80 Karten fällig sind und du schaffst nur 40, wandern die restlichen 40 am Donnerstag in die Warteschlange (zusätzlich zu allen, die ohnehin am Donnerstag fällig wären). Das ist der berühmte Anki-Backlog, der bei vielen Lernern aus dem Ruder läuft. spaced-repetition.de fängt das mit dem maxReviewsPerDay-Filter ab: du gibst eine realistische Obergrenze pro Tag an (zum Beispiel 50), das Tool verteilt die Überlauf-Karten automatisch auf die nächsten erlaubten Tage. So bleibt der Plan auch in Hochphasen wie Klausurwochen oder Praktikum machbar. Anki hat eine ähnliche Funktion mit New Cards per Day, allerdings nur für neue Karten, nicht für Wiederholungen.
Quellen
Worauf dieser Ratgeber sich stützt
Verwandte Ratgeber
Weiterlesen
-
Algorithmen & Engine
FSRS vs SM-2: Wann lohnt sich der moderne Anki-Algorithmus wirklich
-
Methodik & Historie
Karteikasten nach Leitner 1972: Der analoge Vorläufer aller modernen Spaced-Repetition-Systeme
-
Recht & Datenschutz
DSGVO bei Lern-Apps: Was Anki, Quizlet und browserbasierte Karteikästen rechtlich unterscheidet