sm2-plus icon indicating copy to clipboard operation
sm2-plus copied to clipboard

How to do reviews

Open mjmeintjes opened this issue 7 years ago • 7 comments

Thanks for this library.

I'm using it in a personal project to schedule reviews of info I want to remember.

I would love some information on how you use this to schedule reviews. Looking at the algorithm, it looks like the max interval between reviews is 5, and the max percent overdue is 2.

This means that items are coming up very frequently, more frequently than I would have thought.

As a comparison, Anki sometimes schedules cards months forward.

What I'm thinking about doing is also just ordering items by difficulty, so that the easier ones are way down in the queue and don't come up as often.

I was just wondering how you used this.

mjmeintjes avatar Feb 11 '18 04:02 mjmeintjes

I think the solution to your high frequency problem may be doing some adjustment to the parameters of the algorithm.

lo-tp avatar Feb 13 '18 15:02 lo-tp

Thanks. Do you have any suggestions for what parameters you use?

mjmeintjes avatar Feb 18 '18 22:02 mjmeintjes

I got the same issue as mjmeintjes. Is it possible to achieve a similar spacing as Anki by changing the parameters?

PMK89 avatar Mar 13 '18 16:03 PMK89

Actually, it's nearly impossible to achieve an anki like spacing with sm2-plus. Both sm2-plus and the original sm2 algorithm have their own drawbacks. I think we need something new.

lo-tp avatar Mar 15 '18 01:03 lo-tp

I read the sm2 algorithm is what Anki uses, that's why I used that implementation. I made a simple change to prolong the interval

For now I replaced the line: 1 + Math.round((difficultyWeight - 1) * percentOverDue);

by this, hoping to extend the previous interval weighted by 1 - difficulty cubed:

Math.ceil(Math.pow((1 - difficulty), 3) * word.interval) + Math.round((difficultyWeight - 1) * percentOverDue);

Because it's cubed only really low difficulties will prolong the interval. In the long run, I am going to try to implement the original Anki algorithm.

PMK89 avatar Mar 15 '18 07:03 PMK89

Hi @PMK89 , I wan to use your improvement, wonder how is the performance? Does it achieve your goal?

skenan avatar Mar 23 '18 01:03 skenan

Hi @skenan it definitively prolongs the interval for elements with low difficulty. Cause it adds to the old interval it will be prolonging with every repetition as long the difficulty stays low aka is remembered well. But the SuperMemory algorithms are psychologically tested and optimized for learning performance, so it would be better to implement one of them exactly.

PMK89 avatar Mar 24 '18 12:03 PMK89