Memory research

PDF versionPDF version

Aims of Mnemosyne memory research

The first thing we will investigate is how well our scheduling algorithm performs, how robust it is with respect to late revisions, etc.

There are several similar programs out there, implementing different spaced repetition algorithms with various levels of sophistication. However, most of these programs are commercial, and therefore there is no real independently verifiable data that e.g. algorithm A outperforms algorithm B. In order to get such data in a statistically relevant way, one needs two things:

  • A large number of participants.
  • A study which has no commercial bias.

These two needs are best served with open source software. As Mnemosyne is completely free and will always remain so in the future, there is no barrier for new users to participate. Also, thanks to the internet, we can easily gather the anonymous data, without requiring any user intervention (after they gave their initial permission, of course). Secondly, since we have no commercial interest, there is no need for us to claim that the algorithm in a next (expensive!) version is really better than the one in the version you already bought.

The Mnemosyne Project has been collecting data since 2006. Looking to the future, we would like to continue to collect data over a very long time span (years and hopefully decades). This could potentially give us very valuable insight into the nature of long-term memory and the ultimate performance of spaced repetition.

Due to time constraints, at the moment we are no longer accepting any further collaborations to analyse the data. This could change in the future, however.

The Mnemosyne algorithm

The Mnemosyne algorithm is very similar to SM2 used in one of the early versions of SuperMemo. There are some modifications that deal with early and late repetitions, lapses, and also to add a small, healthy dose of randomness to the intervals.

Supermemo now uses SM11. However, we are a bit skeptical that the huge complexity of the newer SM algorithms provides for a statistically relevant benefit. But, that is one of the facts we hope to find out with our data collection.

We will only make modifications to our algorithms based on common sense or if the data tells us that there is a statistically relevant reason to do so.

How we collect anonymous data

Contributing data to the Mnemosyne project is your choice; you may use Mnemosyne without ever transmitting any data back to our servers. If you select to share your anonymous data with us, we will certainly appreciate your contribution to our research.

When you select to send us anonymous data, the Mnemosyne software assigns you a random number as identification, which cannot be traced back to you.

Also, your question/answer pairs are identified only as numerical IDs, and contain no information about the text of the cards.

So, you can safely use Mnemosyne to help you remember to the number of your safe! If you want to see for yourself the data that is uploaded, take a look at the file log.txt in the Mnemosyne data directory.

Online access requirements

Even if you select to share your anonymous data with the project, you do not need to be online to use the program. The Mnemosyne software will only upload data when there is enough log data to send to the server (64K uncompressed).

If you are offline at that time, Mnemosyne will simply try again to upload the next time you start the program.