I recently wrote an open-source application that lets you practice Chinese writing and the decisions I made about its inner workings were related to my theories of how human memory works. I’m not sure which facts specifically are relevant, so I’ll explain it all in context (scroll down to the the “question” section if you don’t believe it’s relevant):
The goal of the application is to help user remember the writing of Chinese characters and their pronunciation. The assumption is that the user would input a set of Chinese characters, most of which are non-trivial to write with aid, let alone from memory. Moreover, there is the concept of stroke order which is useful to remember: each character is made of strokes which should be written in a specific shape, position and order. This makes it pretty complex. I heard that the way Chinese people cope with learning this is that they repeat writing of each character 1000 times, but I believe this is not the best use of time, given the number of characters.
The way my program works is that for each input character, user is taught each stroke four times – 1) alone, 2) with all strokes introduced so far, 3) in context and 4) in context but with no aid — like in this example:
In this example, user is exposed to first four digits in Chinese and should fill in the highlighted strokes, as well as ones already introduced. In each fourth tile, user is expected to fill in all already introduced strokes with no aid, forcing them to focus on geometry.
As you can see, tiles are split into groups that have thicker borders. After introducing the first two characters, there is a special group of tiles at the end of second and beginning of third line: it is blank and contains a pronunciation hint. The user is expected to try to recall the character and write it in its entirety in those tiles.
This is the part I have a question about: the goal of those specific tiles is to try to get the user to try to recall the characters hoping they eventually land in long-term memory, which should already not be in the working memory because it usually takes more than five minutes to write two characters. Then user is expected to practice next two characters and the drill repeats. Then, user is expected to recall all four characters introduced so far, as shown in the graphic above. This pattern repeats and for characters ABCDEFGH would look like following – hopefully you can deduce how it works:
A B AB C D CD ABCD E F EF G H EFGH ABCDEFGH
I showed it to a person interested in psychology and she immediately said: “this reminds me of spaced repetition”! I read about this and also found SuperMemo and a program that implements it, Anki. The problem I have though is that both those programs are based on a formula that assumes that we can find out whether the user has already memorized a certain item or not in order to calculate how important it is to review this character. Is there perhaps another statistical model of human memory I could use for my application that doesn’t have this requirement, but – for example – assumes an “average person” and a certain expected probability that this character will be at a given time remembered?