Bug#783929: [mnemosyne-proj-devel] SM-2 bug with patch

2015-05-03 Thread Peter Bienstman
  But rule 6 says not to apply rule 5 for failed cards:
 
  If the quality response was lower than 3 then start repetitions for the 
  item
 from the beginning without changing the E-Factor
 
 It doesn't say that.  It says that rule 6 applies only to cards with grades 0 
 and
 1.  It doesn't and shouldn't say anything about the applicability of rule 5 in
 rule 6! 

As I see it, it does, because rule 6 says not to change the easiness for failed 
cards, and changing the easiness is what rule 5 is all about. Ergo, rule 6 says 
to ignore rule 5 in this case.

But I think we can at least agree that this description is worded awkwardly and 
confusingly, especially if it contradicts code snippets!

 But if that is ok, because the precise algorithm is not important for what 
 you 
 want to do with this data, then there is no reason not to fix the scheduler 
 now.

I agree.

BTW, I'm not claiming I'm religiously following SM2, as I've also made a few 
other tweaks with respect to early and late reviews. 

The most crucial difference (which is probably a lot more significant than the 
issue you discuss) is that I add some randomness in the intervals, and it is 
precisely this noise that should allow us to explore different variants on the 
scheduling algorithm. My gut feeling is that if you look at the statistics 
comparing e.g. the average grade on the 'correct' SM2 interval, and those 1, 2, 
3, ..., 10 days shorter or longer, you won't really see a big difference...

Cheers,

Peter


--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#783929: [mnemosyne-proj-devel] SM-2 bug with patch

2015-05-03 Thread Peter Bienstman
Done. 

Peter 

On 3 May 2015 19:32:54 CEST, Astrid S. de Wijn astrid-spamme...@syonax.net 
wrote:
On Sun, May 03, 2015 at 06:30:03PM +0200, Peter Bienstman wrote:
But if that is ok, because the precise algorithm is not
important for
what you want to do with this data, then there is no reason not
to fix
  the scheduler now.
  
   I agree.
  
  Excellent!  I look forward to the update.
 
 Oops, I misread your mail as there is no reason to fix the scheduler
now
 :-)
 
 Anyway, I'd be happy to tweak the scheduler, but I'd like to back it
up with
 statistical data analysis first, especially since this behavior has
been in
 place for almost 10 years, and people are used to it.

People are also used to programs doing what it says in the
documentation.  If
you aren't going to fix the scheduler, then at least mention this
difference
with SM2 in the docs.  It is a pretty major deviation, and one sentence
is easy
to write.

Or, better yet, you could create an option.

Best regards,

Astrid

-- 
You received this message because you are subscribed to the Google
Groups mnemosyne-proj-devel group.
To unsubscribe from this group and stop receiving emails from it, send
an email to mnemosyne-proj-devel+unsubscr...@googlegroups.com.
To post to this group, send email to
mnemosyne-proj-de...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/mnemosyne-proj-devel/20150503173254.GJ26143%40sliepen.org.
For more options, visit https://groups.google.com/d/optout.


Bug#783929: [mnemosyne-proj-devel] SM-2 bug with patch

2015-05-02 Thread Peter Bienstman
Hi,

Thanks for looking into this! 

However, when I wrote this code many years ago, I had a feeling the original 
SM2 algorithm could use a few tweaks, especially when dealing with early / late 
review, and the fact that there should be a small difference between grades 0 
and 1.

So, I'm afraid the scheduler is working as intended as far as I'm concerned.

Of course, if you really want to run an 'orthodox' version of SM2, you can 
easily write a plugin which e.g. implements the changes you suggest.

Cheers,

Peter

PS: Mnemosyne's own bug tracker is here: 
https://bugs.launchpad.net/mnemosyne-proj

 -Original Message-
 From: mnemosyne-proj-de...@googlegroups.com [mailto:mnemosyne-
 proj-de...@googlegroups.com] On Behalf Of ast...@syonax.net
 Sent: 02 May 2015 12:39
 To: mnemosyne-proj-de...@googlegroups.com
 Subject: [mnemosyne-proj-devel] SM-2 bug with patch
 
 Dear Mnemosyne developers,
 
 Thanks for mnemosyne!  It's very handy and I have been happily using it for
 about 2 weeks now. However, I have found a strange bug. The E-factor is not
 updated in the way the SM-2 algorithm describes that it should be, especially
 if the uesr has a lapse. I use Debian GNU/Linux testing, which still has 
 2.2.1,
 so I filed a bug report in the Debian bug tracking system yesterday. I 
 included
 a patch. I've just checked and the latest 2.3.3 tarball for linux is also 
 affected,
 so I thought I should post the bug report on this list as well. You can find 
 all
 the details about the bug and the patch on the Debian bug tracking system
 (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=783929).
 
 Best regards,
 
 Astrid
 
 --
 You received this message because you are subscribed to the Google Groups
 mnemosyne-proj-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to mnemosyne-proj-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to mnemosyne-proj-
 de...@googlegroups.com.
 To view this discussion on the web visit
 https://groups.google.com/d/msgid/mnemosyne-proj-devel/a7faa672-b6cc-
 43f0-a3d0-2606701d5043%40googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.


--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#783929: [mnemosyne-proj-devel] SM-2 bug with patch

2015-05-02 Thread Peter Bienstman
 this bug, there is in fact no difference at all between grades 0 and 1.  

There is no difference in terms of easiness, but cards with grade 0 show up 
more often in the queue.

 Worse,
 cards that the user reviews precisely on time, but fails to recall (grade 0 
 or 1)
 end up with higher easiness scores than cards that the user can recall, but
 barely or with serious effort (grades 2 and 3). Are you really sure that is 
 what
 you intended?  It is a pretty major deviation from the original SM2 algorithm.

If you fail to recall the card (grade 0 or 1), the easiness stays the same, but 
the interval gets reset to zero.

A similar thing happens in the original SM2. See rule 6 in

http://www.supermemo.com/english/ol/sm2.htm

Cheers,

Peter


--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#783929: [mnemosyne-proj-devel] SM-2 bug with patch

2015-05-02 Thread Peter Bienstman
 It is rule 5 of the SM2 algorithm that is not being executed at all for cards
 graded 0 or 1

But rule 6 says not to apply rule 5 for failed cards:

If the quality response was lower than 3 then start repetitions for the item 
from the beginning without changing the E-Factor

I guess the reasoning behind this was that after a lot a repetitions, 
increasing the difficulty as well as resetting the interval was considered too 
big of a penalty. I agree in the corner case you mention (immediately failure), 
this seams suboptimal, but remember that this is not an exact science, and the 
idea is that after many repetitions and corrections by the user, the intervals 
and easiness factors converge to something which is roughly OK.

I'm hesitant to change the scheduler now after so many years without detailed 
statistical analysis to back up any change. The data is there in the collected 
learning logs, but analyzing it has not yet made it to the top of my list.

Anyway, thanks for your detailed feedback!

Peter


--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org