Skip to content

Methodology

Most exam apps say “AI”. Here are the algorithms

Three named, published models decide what you revise, how well we think you know it, and what you see next. You can look every one of them up. That is the point.

In short

Lumi tracks your NEET or JEE progress with three numbers it keeps updating as you answer. FSRS tracks how likely you are to still remember each card, Item Response Theory tracks your ability in each subject, and knowledge tracing tracks how likely you are to get each concept right today. Your next revision and your next practice question come from those numbers.

The map

All three run over the same concept map

Physics, Chemistry and Biology are broken into over 12,000 concept atoms for NEET (over 11,000 for JEE). A chapter is too coarse to act on: “revise Thermodynamics” is not a plan. An atom is small enough that a wrong answer points at something specific, which is what makes per-question diagnosis possible at all. FSRS schedules atoms, Item Response Theory scores you on them, and knowledge tracing predicts them.

Each atom also lists the atoms it needs first. Follow the map from the whole syllabus down to one concept: Oscillations holds 150 of them, and Simple Pendulum Time Period needs 3 before it.

01 · Ability estimation

2PL Item Response Theory

A percentage score tells you how you did on the questions you happened to be asked. It does not tell you how good you are. Lumi estimates ability with a two-parameter logistic Item Response Theory model, the family of methods serious testing bodies use. Each question carries a discrimination and a difficulty, and your ability is fitted by maximum likelihood across your answers.

P(correct∣θ)=11+e−a(θ−b)P(\text{correct}\mid\theta) = \frac{1}{1 + e^{-a(\theta - b)}}
(1)

Probability of a correct response at ability θ\theta, for an item with discrimination aa and difficulty bb.

Your ability is the θ\theta that makes your actual pattern of right and wrong answers most likely. Lumi finds it by Newton–Raphson, starting from θ=0\theta = 0, with uiu_i = 1 for a right answer and 0 for a wrong one:

θ←θ+∑iai (ui−Pi)∑iai2 Pi (1−Pi)\theta \leftarrow \theta + \frac{\sum_i a_i\,(u_i - P_i)}{\sum_i a_i^2\,P_i\,(1 - P_i)}
(2)

Repeated until the step is under 0.0001, then clamped to [−4,4][-4, 4].

I(θ)=∑iai2 Pi (1−Pi),SE(θ)=1I(θ)I(\theta) = \sum_i a_i^2\,P_i\,(1 - P_i), \qquad \mathrm{SE}(\theta) = \frac{1}{\sqrt{I(\theta)}}
(3)

The test information and the standard error of the estimate.

The consequence is worth stating plainly: two students with the same raw score can come out with different ability estimates. Getting a hard, sharply discriminating question right is stronger evidence than getting an easy one right, and the model treats it that way.

Inside an adaptive exam the next question is the one that scores highest on two things at the current estimate: how much its answer would tell us, and how close the student's chance of getting it right is to 0.65.

score=0.6 a2P(1−P)a2/4+0.4 (1−∣P−0.65∣)\text{score} = 0.6\,\frac{a^2 P (1-P)}{a^2/4} + 0.4\,\bigl(1 - \lvert P - 0.65 \rvert\bigr)
(4)

Information is divided by its maximum, a2/4a^2/4 at P=0.5P = 0.5, so both terms run from 0 to 1.

Read the IRT whitepaper

02 · Revision scheduling

FSRS, the Free Spaced Repetition Scheduler

Lumi schedules revision with the Free Spaced Repetition Scheduler at a desired retention of 0.9, the same open algorithm modern Anki uses. Every card carries three numbers: a difficulty, a stability measured in days, and a retrievability that decays between reviews. A review is scheduled at the point where recalling the card is still possible but no longer easy, because that is where a single recall does the most work.

R(t,S)=(1+F tS)−0.5,F=1981R(t, S) = \left(1 + F\,\frac{t}{S}\right)^{-0.5}, \qquad F = \tfrac{19}{81}
(5)

Retrievability RR after tt days, given stability SS. FF is chosen so that R(S,S)=0.9R(S, S) = 0.9: stability is the number of days until recall falls to 90%.

So the next review falls where RR reaches the desired retention rr. At Lumi's r=0.9r = 0.9 that is simply t=St = S, rounded to whole days:

tnext=SF(r−2−1)t_{\text{next}} = \frac{S}{F}\left(r^{-2} - 1\right)
(6)

After a successful review, stability grows. It grows more when the card is easy for you (low difficulty DD), when it was small to begin with, and when you recalled it at a lower RR, which is why reviewing on the edge of forgetting pays:

S′=S(1+ew8 (11−D) S−w9 (ew10(1−R)−1)⋅h⋅eb)S' = S\left(1 + e^{w_8}\,(11 - D)\,S^{-w_9}\,\bigl(e^{w_{10}(1 - R)} - 1\bigr)\cdot h\cdot e_b\right)
(7)

w8,w9,w10w_8, w_9, w_{10} are FSRS's default weights; hh is a penalty for a Hard press and ebe_b a bonus for an Easy one (both 1 for Good).

We run the reference implementation rather than an interval heuristic of our own. That is a deliberate constraint: it means our scheduling can be compared against published results instead of being taken on trust.

03 · What you see next

simpleKT knowledge tracing

Knowledge tracing predicts whether you would answer a given concept correctly right now, from the sequence of everything you have answered before. Lumi uses simpleKT, a transformer over concept and response embeddings, so the order and recency of your mistakes carry information rather than being averaged away.

Inside an adaptive exam the selection rule is different and simpler: Lumi picks the question with the highest Fisher information at your current ability estimate, weighed against a target chance of 0.65 (equation 4 above). In plain terms, the question whose answer would tell us the most.

What we stand behind

Every claim here is checkable

Every claim on this page is checkable: these are the algorithms, this is what each one does, and we publish them so you can look them up and hold us to them. Where other apps say “AI-powered”, Lumi tells you exactly which model is deciding what you see.

No algorithm can guarantee a rank, and we will never tell you one does. What the engine does is make every hour of practice count: revision lands just before you would forget, your ability is measured rather than guessed from a percentage, and the next question goes to the concept you most need to work on.

Common questions

How does Lumi track my NEET or JEE progress?
Lumi keeps three running measures as you answer questions. For every revision card, FSRS tracks how likely you are to still recall it. For each subject, an Item Response Theory model estimates your ability, giving more weight to hard questions you get right. For each concept, a knowledge-tracing model predicts how likely you are to answer it correctly right now. What you revise and practise next is chosen from those measures, not from a fixed syllabus order.
Which spaced repetition algorithm does Lumi use?
Lumi uses FSRS, the Free Spaced Repetition Scheduler, at a desired retention of 0.9. It is the same open scheduling algorithm modern Anki uses. Lumi runs the reference implementation rather than a home-grown interval heuristic, so each card carries a difficulty, a stability in days, and a retrievability that decays between reviews.
How does Lumi estimate a student's ability?
With a two-parameter logistic Item Response Theory model. Every question carries a discrimination and a difficulty parameter, and a student's ability is estimated by maximum likelihood across their responses. This is why two students with the same raw score can receive different ability estimates: getting a hard, highly discriminating question right is worth more evidence than getting an easy one right.
How does Lumi decide which question to show next?
Two mechanisms. Within an adaptive exam, Lumi picks the question with the highest Fisher information at the student's current ability estimate, which is the question whose answer will most sharply reduce uncertainty. Across a study plan, a simpleKT knowledge-tracing model, a transformer over the student's concept and response history, predicts the probability of answering each concept correctly right now.
Is 'AI' in Lumi just a large language model?
No. Language models are used for generating and explaining questions. The scheduling, ability estimation and question selection are done by FSRS, Item Response Theory and knowledge tracing respectively, which are specialised statistical models with published literature behind them. They are the parts that decide what a student sees.
Why does naming the algorithm matter?
Because 'AI-powered' is unfalsifiable and every competitor says it. A named algorithm can be looked up, argued with, and checked against what the product actually does. It is a claim that carries a cost to make, which is what makes it worth anything.

Start

See what the models say about your prep

A diagnostic set is enough to produce a first ability estimate per subject and a revision schedule built from it.

Start with Lumi