Jeff Hawkins on Problem-Solving
Jeff Hawkins is many things – an Entrepreneur (Palm, RNI, Neumenta), brilliant product designer (Palm Pilot) and a neuroscientist. Here’s what he has to say about problem solving. I think this applies to everything from general creativity to programming. The following excerpt is taken from On Intelligence by Jeff Hawkins, pages 189-192.
Can you train yourself to be more creative?
Yes, most definitely. I have found there are ways to foster finding useful analogies when working on problems. First, you need to assume up front that there is an answer to what you are trying to solve. People give up to easily. You need confidence that a solution is waiting to be discovered and you must persist in thinking about the problem for an extended period of time.
Second, you need to let your mind wander. You need to give your brain the time and space to discover the solution. Finding a solution to a problem is literally finding a pattern in the world, or a stored pattern in your cortex that is analogous to the problem you are working on. If you are stuck on a problem, the memory-prediction model suggests that you should find different ways to look at it to increase the likelihood of seeing an analogy with a past experience. If you just sit there and stare at it over and over, you won’t get very far. Try taking the parts of your problem and rearranging them in different ways – literally and figuratively. When I play Scrabble, I constantly shuffle the order of the tiles. It isn’t that I hope the letters will by chance spell a new word, but that different letter combinations will remind me of words or parts of words that might be part of a solution. If you are looking at a drawing of something that just doesn’t make sense, try drawing it upside down, changing colors, or changing perspectives. For example, when I was thinking about how different patterns in V1 could lead to invariant representations in IT, I was stuck. So I flipped the problem around and asked how a constant pattern in IT could lead to different predictions in V1. Inverting the problem was immediately helpful, ultimately leading to my belief that V1 should not be viewed as a single cortical region.
If you get stuck on a problem, go away for a little while. Do something else. Then start again, rephrasing the problem anew. If you do this enough times something will click sooner or later. It may take days or weeks, but eventually it will happen. The goal is to find an analogous situation somewhere in your past or present experience. To succeed you must ponder the problem often but also do other things so the cortex will have the opportunity to find an analogous memory.
Here is another example of how rearranging a problem led to a novel solution. In 1994, my colleagues and I were trying to figure out how to enter text on handheld computers. Everyone was focused on handwriting recognition software. They said, “Look, you write things on pieces of paper, you should be able to write the same way on a computer screen.” Unfortunately, this turns out to be really hard. It’s another one of those things that computers aren’t very good at, even though brains find it quite simple. The reason is that the brain uses memory and current context to predict what is written. Words and letters that are unrecognizable on their own are easily recognized in cortex. Pattern matching with computers is not sufficient to the task. I had designed several computers that used traditional handwriting recognition but it was never good enough.
I struggled with how to make the recognition software work better for several years and was stuck. One day I stepped back and decided to look at the problem from a different perspective. I looked for analogous problems. I said to myself, “How do we enter text into desktop computers? We type on a keyboard. How do we know how to type on a keyboard? Well, actually, it’s not easy. It’s a recent invention and it takes a long time to learn. Touch-typing on a typewriter-style keyboard is hard and not intuitive, it isn’t at all like writing – yet millions of people learn how. Why? Because it works.” My thinking continued by analogy, “Maybe I can come up with a text input system that is not necessarily intuitive, that you have to learn, but people will use it because it works.”
Literally, that’s the process I went through. I used the act of typing on a keyboard as an analogy to figure out how to enter text with a stylus on a display. I recognized that people were willing to learn a difficult task (typing) because it was a reliable and fast way to enter text into a machine. Therefore if we could create a new method of entering text with a stylus that was fast and reliable, people would use it even though it required learning. So I designed an alphabet that would reliably translate what you wrote into computer text; we called it Graffiti. With traditional handwriting recognition systems, when the computer misinterprets your writing you don’t know why. But the Graffiti system always produces the correct letter unless you make a mistake in writing. Our brains hate unpredictability, which is why people hate traditional handwriting recognition systems.
Many people thought Graffiti was a sensationally stupid idea. IT went against everything they believed about how computers were supposed to work. The mantra in those days was that computers should adapt to the user, not the other way around. But I was confident that people would accept this new way of entering text by analogy to the keyboard. Graffiti turned out to be a good solution and was widely adopted. To this day I still hear people claim that computers should adapt to users. This isn’t always true. Our brains prefer systems that are consistent and predictable, and we like learning new skills.
Tags: Creativity, Jeff Hawkins, On Intelligence, Problem Solving
