SourceForge has been redesigned. Learn more.

Learning interval of the learning algorithm

  • Torsten

    Torsten - 2009-10-12


    I am using karatasi everyday to learn mainly vocabulary and think it is a very good and useful program.

    In my opinion the value of the program would really improve
    if the increase of the learning interval would be slower or could be configured to be slower.

    At the moment this value increases to 5 or 6 days after
    the 2nd correct repetition and then about doubles every correct repetition.
    After having given one or two correct answers, due to the long learning interval, very often I cannot remember the correct answer anymore.
    This holds even though I have tried to memorize the learning stuff using memory hooks.
    While giving a correct answer is fast (maybe 1s per card) and motivating, trying to find the correct answer if already half forgotten is very time consuming (maybe 30s) and not even finding the answer in my brain is frustrating.

    Before using karatasi, I learned manually with flip cards and 6 boxes.
    I learned in the following way:

    -> I memorized the stuff using memory hooks. Then I practice the first time after one hour

    ->For each correct answer the card is put one box further

    -> If I could not remember the answer (which happens only rarely if the memory hooks are good), I put into the first box

    I repeated the contents of the box:

    -> first and 2nd box: everyday

    -> 3rd and 4th box: every 2nd day

    -> 5th box: every week

    -> 6th box: every 2nd week

    After this procedure I repeated only once every half a year.
    Normally, I did not forget the things which I have correctly repeated 6 times.
    Such a scheme was proposed by the Megamemory course of Gregor Staub.
    At least for me this method was successful and very motivating.

    For karatasi, I think that starting with an interval of 1 day and then
    increasing with a factor of about 1.5 would give good results.
    Problematic is especially the increase of 4 days from 1->5 or 2->6
    after the first correct repetition.

    At the moment, my workaround is to tell the program that I do not know the correct answer (using the "-". So  I have to repeat the next day. But in this case I need to control the repating process myself and therefore I loose one big advantage of the program that it automatically controls the learning process.

    Do other users have the same problem?

    Is it possible that you change the program to have a slower increase of the learning interval?

    Best regards,


  • Christa Runge

    Christa Runge - 2009-10-13

    Hi Torsten,

    yes you are right - the ideal repetition interval for a card is just *before* you forget it.

    karatasi uses the  SM-2 algorithm with some improvements from SM-5 to calculate the repetition interval for a card based on its difficulty.
    As long as you rate the answer as correct, the repetition interval will grow with a factor depending on the card's current difficulty: factor 1.3 +/- 0.3 for highest difficulty (100%), factor 3.3 +/- 0.3 for lowest difficulty (0%). The +/- 0.3 is a small randomizing of the interval and prevents the cards from clustering.<br>
    The current difficulty of a card is calculated in a feedback loop from the history of your ratings of the answer.
    However, this feedback loop can only be effective after some iterations. So the initial difficulty of a card is hard-coded to 40%. Also the first two repetition intervals are hard-coded: the first is one or two days, then comes 5 or 6 days, after this the interval grows with the factor as explained above (all under the assumption that you rated the answer as correct).

    I think the main problem with your use case is the hard-coded initial difficulty. 40% is fine for average items to remember, but not for tough ones like the numbers you are learning.
    My proposal is to provide a parameter per database where you can set the initial difficulty to a value different from 40%.<br>
    I have copied your request to a feature request tracker, see .

    Maybe we should additionally think about the interval for the second iteration, and reduce it in case of a high initial difficulty?



  • Torsten

    Torsten - 2009-10-14

    Hi Christa,

    thanks for your fast response.
    Yes, I agree with you that allowing to configure the initial difficulty to a higher value and reducing the interval for the second iteration would really help me.
    I would probably set the initial difficulty to 80%
    which results in a factor of 1.7.
    If the interval for the 2nd iteration would be changed to 2, then I would get the following intervals 1, 2, 3, 5, 9, 15, 26, 44, 75.
    This would emulate my usual learning style very well.

    I would really appreciate if you could consider doing those changes. I hope that also other users can benefit from this feature.

    Best regards,



Log in to post a comment.