Ten Heuristics for Problem Solving

Here are 10 heuristics for problem solving that I came across in an interesting book on modern heuristics. In the last chapter of the text they give 10 heuristics for problem solving. I decided to paraphrase them here for quick reference. Go check out that book...

  1. Any problem worth solving is worth thinking about: "Don’t rush to give an answer. Think about it. Think about different ways to manipulate the information that you've got at hand [...] Spend the time you need to think about how to best conceive and develop a useful approach"
  2. Concentrate on the essentials and don’t worry about the noise : "It's often the case that we seem to be facing a monstrous problem with so many details that we don't know where to start. This is where having the goal clearly in mind is critical!"
  3. Sometimes finding a solution can be really easy. Don’t make is harder on yourself than you have to: "Some problems will make you feel a bit foolish, even after you've come up with the right answer because someone else can show you how to solve it in a faster, easier way. We're trained as engineers and scientists to think in terms of symbols and algorithms that we can easily forget about common sense!"
  4. Beware of obvious solutions. They might be wrong: "Sometimes the answers are so clear that they just have to be right, until someone shows you that things weren't quite as clear as you thought [...] Oftentimes, these 'simple' problems are incorporated in some larger system that's responsible for treating another problem. When the larger system fails, we're tempted to look everywhere but exactly where we should!"
  5. Don't be misled by previous experience: "Experience is usually an asset, but you have to use it carefully. Don't be led into solving all of your problems with an 'old familiar' technique. Don't allow yourself to go about solving problems using the same methods every time. You’re most recent experience can be misleading when applied to the next problem you face. [...] Beware of your biases and prejudices, recognize them, and don't let them get the better of you."
  6. Start Solving. Don't say 'I don't know how': "Most people don’t plan to fail, they just fail to plan. And when you have no plan at all, the world zips right by you and you can't solve anything. Even a bad plan is usually better than no plan [...] Try something. If it doesn’t work, that's no shame. Try something else. Keep trying. Persistence is everything [...] Another essential aspect is to 'play' with the problem. Get an understanding of it. Perhaps you might guess at a solution: Even if you are wrong it might lead to some interesting discovery [..] Just keep saying this saying in mind: 'If you aren't moving forward, you're moving backward.' Get going!"
  7. Don't limit yourself to the search space that's 'defined' by the problem. Expand your horizon: "In our hast to get going, we can overlook things or miss opportunities to short cut difficult aspects of a problem. The problem might be very clearly stated and we think that we have an unambiguous understanding of it. But then we get stuck. This is a good time to introduce auxiliary variables, ponder what it would be like if you were able to reach some other point along the path to the solution; could you then solve it? It so, maybe you can build the bridge you need to get to that intermediate point."
  8. Constraints can be helpful : "Constraints seem to be pesky annoyances: if only we could get rid of them! Actually, constraints don't always have to be interpreted as additional elements that just increase the complexity of a problem. After all, they imply a feasible subset of the search space, so we can concentrate our search right there [...] If you face a heavily constrained problem, think positively. What have you got to lose? Negative thinking rarely solves a problem."
  9. Don’t be satisfied with finding a solution: "Finding a solution doesn't have to be the end of the process. Sometimes it's just a new beginning! Is the solution unique? Are there other possibilities?"
  10. Be patient. Be persistent: "Every problem solver gets stumped. In fact, this happens more often than not. You have to have patience to understand the problem, think about the problem, formulate a model, try out a method for treating that model, and still find out that you're wrong [...] If you find yourself ready to give up in frustration, go back to point 6 and try again."

Answering my own questions...

At this point, I am done with studying from a book without any application. No longer will I work without first having a question to solve.. No more simply reading theories and contemplating.

From my intuition, an engineer should be doing one of two things: solving a question and/or making/sharping his tools. No more frivolous reading. That type of work never sticks. My work now, should be a reflection of the questions I come across. 

It was these thoughts that cause me to start this website. I don't want the habitual thinking that school is where the theories are studied and the work is produced. Don't get me wrong, I love the school environment but I think it is highly important for me to grow outside of it before I go back. My goal is to really challenge myself with personal study before I go back.

This post is meant to document this point in the process but also to serve as a reminder to myself when I feel like I am getting pulled from what I should be doing. 

Legitimately trying to answer my own questions, I think, could bring a source of knowledge that would have been difficult to replicate by other means. I mean, they are my questions....