Repository navigation
Learning Algorithms Reference
Last Updated: 2026-02-15 | For: Developers and advanced content authors
This page explains the learning-session scheduling logic currently implemented in MoFaCTS and ties it to relevant literature.
MoFaCTS currently uses:
- a logistic probability model (LKT-style in spirit, not full Bayesian KT), and
- a selection policy (
unitMode) that decides which item to show next using those probabilities.
In learning sessions, the most important selection mode is distance, which picks the item closest to an optimal target probability in logit space.
- Probability calculation and item selection:
mofacts/client/views/experiment/unitEngine.js - Author-facing tooltip definitions for
unitModeandcalculateProbability:mofacts/client/lib/tooltipContent.js
If a unit does not provide its own calculateProbability, MoFaCTS uses a default logistic model (defaultProbFunction):
y = -2
+ 0.458 * logitdec(recent outcomes, decay=0.974)
+ 0.29 * stimSuccessCount
- 0.09 * stimFailureCount
+ 6.14 * recency(stimSecsSinceLastShown, d=0.2)
probability = 1 / (1 + exp(-y))
The model composes multiple signals from practice history:
- recent correctness history (decayed),
- per-stimulus prior successes/failures,
- recency (time since last shown),
- additional contextual history available in
p.*when custom probability code is provided.
- It predicts correctness probability using logistic skill/performance signals (similar to KT-family and PFA-family models),
- but it is not a full hidden-state Bayesian Knowledge Tracing model with explicit learn/slip/guess transitions per skill.
Once each candidate item has a probability estimate, unitMode determines selection.
distance computes:
dist = | logit(p_item) - logit(p_optimal) |
and picks the item with minimum distance, subject to eligibility constraints (canUse, spacing rules, hidden-item filters).
Interpretation:
-
p_optimalis the desired challenge level (from delivery params or item parameters), - choosing minimum distance aims to keep practice near an instructional sweet spot.
Picks the highest-probability eligible item that is still below a ceiling threshold.
Suppose target probability is 0.80.
- Compute each candidate item's current
p_item. - Convert both
p_itemand0.80to logits. - Pick the item with smallest absolute logit gap.
Compared with plain probability subtraction, logit-space distance behaves better near probability extremes and matches the model's logistic form.
The current implementation aligns most directly with this lineage:
- Knowledge Tracing tradition: student knowledge/performance inference from sequential responses.
- Logistic performance-factor modeling: correctness predicted from prior successes/failures and related factors.
- Spacing/recency effects: timing between practices matters for retention and scheduling.
MoFaCTS currently operationalizes this as a pragmatic, configurable engineering model (custom calculateProbability supported), rather than a single locked research model.
- Corbett, A. T., & Anderson, J. R. (1994). Knowledge tracing: Modeling the acquisition of procedural knowledge. User Modeling and User-Adapted Interaction, 4, 253-278. https://doi.org/10.1007/BF01099821
- Pavlik, P. I., Cen, H., & Koedinger, K. R. (2009). Performance Factors Analysis - A New Alternative to Knowledge Tracing. In AIED 2009. https://doi.org/10.3233/978-1-60750-028-5-531
- Cen, H., Koedinger, K. R., & Junker, B. (2006). Learning Factors Analysis - A General Method for Cognitive Model Evaluation and Improvement. ITS 2006. https://doi.org/10.1007/11774303_17
- Cepeda, N. J., Pashler, H., Vul, E., Wixted, J. T., & Rohrer, D. (2006). Distributed practice in verbal recall tasks: A review and quantitative synthesis. Psychological Bulletin, 132(3), 354-380. https://doi.org/10.1037/0033-2909.132.3.354
Getting Started
- Teacher: First Hour
- Quick Start: Content Creation
- Class Setup and Assignment Workflow
- Anki Import Guide
Authoring Reference
- Introduction to TutorScript
- Content Creation Reference Tables
- Stimulus Files (Content)
- Trial Types Reference
- Audio and Speech Settings
Advanced Authoring
Reports and Help
- Researcher Guide
- TDF field tables
- Gaze tracking prototype
- Data Output and Reports
- Data Privacy, IRB, and FERPA Notes
- Experiment Routes
- SPARC Instructional Cycles
- Public Demonstrations
- Learning Algorithms Reference
- Video Units and Adaptive Logic
- AutoTutor Sessions
- Deployment Guide
- Security Audit Operations
- Remote Install
- Runtime Settings Reference
- Admin Features Reference
- Custom Help Page Setup
- Troubleshooting
- Local Install
- Developer Reference Guide
- Learning Algorithms Reference
- Introduction to TutorScript
- AutoTutor Sessions
- Runtime Settings Reference
- Deployment Guide
- Glossary
- FAQ
- Screenshots
- License Guidance
- Implementation Cost Analysis
- GitHub Repository
- GitHub Issues