Ever since I was a kid, I’ve always enjoyed solving problems. Through solving lots of mathematical problems I saw my skills improve, but was I as good as I could be? It wasn’t until college that I considered the process of how to solve problems. It was then that I realized that improving my problem solving process could give me an edge. So I was looking at books in the library when I stumbled upon How to Solve It by George Polya. This book was exactly what I needed. It had tons of tricks for taking my problem skills to the next level and I couldn’t recommend it more. Here’s the high level appoach that I use to solve problems, which is largly lifted from Polya’s recipe.
Problem Solving Technique
Read and Understand the Problem
Prior to attempting to solve any problem, it’s important to have a complete understanding of what the problem is. Write down any questions you have about it and get the answers you need. Define anything that doesn’t make sense. Become an expert on what the problem is asking so you can focus on exactly what steps can to be taken to solve it. This step is largely about information gathering and lays the ground work for the subsequent steps.
Plan a Solution
It’s time to make a map! Here’s where you write down the starting point and the ending point then add the steps to fill in the gaps between them. Have you ever seen a similar problem to the one at hand? If so, adapt the technique from that problem and use it to solve this one. If you haven’t seen a similar problem, can you turn this problem into an easier problem and solve it? Build a series of steps that can be used to carry the solution through to completion. This step provides most of the heavy lifting in the entire process
Implement the Plan
Follow through on the plan. Sometimes you’ll find that your plan won’t actually work in this step. That’s okay. Review the problem again and make a new plan. There’s no batting average kept on the wrong paths taken before finding a fruitful one. All that matters is that the problem is eventually solved. The implementation of the plan is complete when the problem’s requests are satisfied.
Review the process
Do a full review of what was done to solve the problem. Go back and read through the original question. Do the results satisfy the constraints? Evaluate the implementation against the plan. What could be done differently? What could be done better? If there is a better solution out there, use it! Through reviewing the work, you’ll gain an appreciation for the solution and a deeper understanding of how exactly the problem was solved. The review is where new problem solving tools are added to your bag of tricks. This review process is a nice parallel to the idea of refactoring from software development.
On Solving Hard Problems
The process above can be used to solve hard problems, but you’ll probably get worn out trying long before the solution is found without special insight. When solving hard problems, it’s important to take a step back and let your subconscious attack the problem when you’re stuck. Set a timer for 30 minutes and work at understanding and solving the problem. When the time is up, stop thinking about the problem. Do something active, like going for a walk or hitting the gym. Your brain will keep working on the problem even if you aren’t actively thinking about it. The subconscious will often find insights you never would have uncovered without it. These insights will eventually lead to a solution.
At the End of Day
When everything is said and done, problem solving is all about moving forward. Ask yourself, “what do I need to know to move forward right now?” every step along the way. Each answer to that question moves the solution closer to the end state. Keep at it, a solution will be found.