I’ve recently learned to use Method of Loci and other memory systems. While I’ve been having fun with them, I started wondering whether they’re limited to recall.
In a way, these systems are a method of efficiently and directly programming our brains by exploiting evolved, built-in functions like spatial awareness, facial and emotional recognition, location memory, and so forth. Memory grandmasters can memorize entire decks of cards in amazing time, the record just under 13 seconds.
The methods exploit the brain’s face recognition, novelty detection, sparse distribution, and spatial memory to attach arbitrary concepts to SDRs. After learning several methods, and knowing what I do of HTM, it’s a blazingly obvious validation of the function of sparsity in cognition.
Method of Loci uses imagined journeys with a persistent route, often with unique combinations of people, objects, colors, emotions, or associated words. Short term memory gives us access to the parts of the brain where we are memorizing items in long term memory.
Knowing what we do about how HTM works, is there a way of exploiting these methods for higher order processing? What experiments could we perform that could provide direct experimental confirmation of the HTM as the brain’s operating algorithm?
Memory athletes often use outrageous associations, exploiting sparsity and preventing fuzzy overlapping with existing memories - using sex, violence, and profanity in mnemonics to achieve this. The use of existing knowledge, such as people you know, celebrities, actions, arbitrary lists like signs of the Zodiac, and so forth, can be combined to create ever more complex representations of arbitrary items like card orders, phone numbers, addresses, math formulas, words in foreign languages, and so on. Mnemonic recall is a trivially acquired skill, and you get better at it the more you use it.
I don’t know how to set up higher order processing quite yet, but this seems like the place to figure it out.
If Method of Loci / Peg systems are first order functions, second order functions and so forth should be possible. More sophisticated calculations could be incorporated into functional Loci, allowing us to perform arbitrary mental math, like multiplying long numbers. I don’t think there’s any reason more sophisticated operations can’t be programmed abstractly.
Amazing mental feats performed by savants, such as factorization, that implies there are specific functions being performed in the brain that might be replicated through direct “programming” of this sort. The idea is to develop a skill that operates subconsciously, performing a sequence of operations, in which a result is recalled instead of consciously produced.
As an example of method of Loci:
So, imagine a living room. In the living room, turning clockwise from the center of the room, there’s a large flatscreen TV, a leafy green potted plant, a window with a red curtain, a brown leather recliner, a blue suede couch, an oak desk, a chrome coatrack, and finally a painting of Jeff Hawkins on the wall. That gives us 8 Loci/Pegs to attach items to:
- TV
- Plant
- Window
- Recliner
- Couch
- Desk
- Coat rack
- Painting
Once you’ve memorized this little list, and are able to visually traverse it backwards and forwards, you can then associate arbitrary memories with each item very quickly and easily, and recall the items at a later time with hardly any effort. Furnishing dozens or hundreds of rooms, buildings, or journeys results in a trivially accessible filing system that gives direct access to thousands of items. The items stored at each loci can be sophisticated constructs themselves, with encodings that represent more than individual factoids. Search for PAO and The Major System for examples.
If abstract lists can be learned, and then correlated and developed into specific hierarchical arrangements, then learning of new skills could be turned into very specific sequences of memorization. Instead of rote memorization of times tables, for example, a multiplication function could be broken into hierarchical structures, and then {something} could be done to obtain the output.
Does anyone have ideas for what that {something} could be?
I’m thinking of something like a dynamic loci, in which the associated memory is generated by operating on items stored in input loci. Imagine storing numbers in the above living room example, then adding a closet, and when you imagine opening the closet door, the sum of all the stored numbers in the room can be retrieved.
Let me know if you’ve got any experiments to try. Thanks for taking a look!