I’ll run with the idea that chunking is like Huffman codes
Agreed. I’ve been thinking along similar lines for a while now, but with a focus on problem-solving.
That is: Suppose you’re trying to solve some cognitive problem, like proving a math theorem. Your mental ontology has a “dictionary” representing natural abstractions and their oft-used combinations: “chunks”, with codes whose lengths reflect how often you use them.
For a given pair of (mental dictionary, cognitive problem), the solution (theorem proof) has a minimal message length L. If L is too large to fit into the working memory, the problem needs to be solved in steps: by composing new words out of the existing chunks (proving lemmas, deriving helper functions), then assigning those words a shorter code. And since you can’t conceptualize the solution yet, it’s done stochastically: you ponder new chunk that you merely expect/hope are part of the solution. Eventually, if that process is successful, you modify your dictionary such that the new solution length L′ is less than your working memory — and so the problem is solved (the theorem is proven).
Empirically, this explains a bunch of things:
Why resting/taking breaks is important even if you’re doing pure theory work. The brain needs some time to adjust its dictionary (likely by doing a Bayesian update — by noticing that some specific abstraction-combinations have been used more often lately, and so assigning them shorter codes).
This idea of extensive unconscious computation neatly accords with Poincaré’s account of mathematical creativity in which after long fruitless effort (preparation), he abandoned the problem for a time and engaged in ordinary activities (incubation), is suddenly struck by an answer or insight, and then verifies its correctness consciously.
And maybe even part of why we have limited willpower/ability to focus on a given problem.
That said, it does seem pretty bizarre. How come it’s the codeword length that our working memory/intelligence is bottlenecked on, instead of the actual computational complexity of whatever abstractions we’re thinking about? Probably this account is missing something. (Most likely, it’s not just encoding-adjustment, and the brain uses some algorithms to actually performance-optimize the abstraction-combinations we think about often — e. g., by abstracting away their internal structure… Except the 7±2 number still looks weirdly constant even in this context.)
Agreed. I’ve been thinking along similar lines for a while now, but with a focus on problem-solving.
That is: Suppose you’re trying to solve some cognitive problem, like proving a math theorem. Your mental ontology has a “dictionary” representing natural abstractions and their oft-used combinations: “chunks”, with codes whose lengths reflect how often you use them.
For a given pair of (mental dictionary, cognitive problem), the solution (theorem proof) has a minimal message length L. If L is too large to fit into the working memory, the problem needs to be solved in steps: by composing new words out of the existing chunks (proving lemmas, deriving helper functions), then assigning those words a shorter code. And since you can’t conceptualize the solution yet, it’s done stochastically: you ponder new chunk that you merely expect/hope are part of the solution. Eventually, if that process is successful, you modify your dictionary such that the new solution length L′ is less than your working memory — and so the problem is solved (the theorem is proven).
Empirically, this explains a bunch of things:
Why resting/taking breaks is important even if you’re doing pure theory work. The brain needs some time to adjust its dictionary (likely by doing a Bayesian update — by noticing that some specific abstraction-combinations have been used more often lately, and so assigning them shorter codes).
Why leaving a problem alone for a while and then coming back to it may lead to sudden insights:
This idea of extensive unconscious computation neatly accords with Poincaré’s account of mathematical creativity in which after long fruitless effort (preparation), he abandoned the problem for a time and engaged in ordinary activities (incubation), is suddenly struck by an answer or insight, and then verifies its correctness consciously.
And maybe even part of why we have limited willpower/ability to focus on a given problem.
That said, it does seem pretty bizarre. How come it’s the codeword length that our working memory/intelligence is bottlenecked on, instead of the actual computational complexity of whatever abstractions we’re thinking about? Probably this account is missing something. (Most likely, it’s not just encoding-adjustment, and the brain uses some algorithms to actually performance-optimize the abstraction-combinations we think about often — e. g., by abstracting away their internal structure… Except the 7±2 number still looks weirdly constant even in this context.)