May the source be with you,
but remember the KISS principle ;-)
Key Softpanorama Topics
|About||Contents||Top Updates||Top Visited|
|Bulletin||Selected Papers||Softpanorama Bookshelf||History|
How to Solve It by George Polya
For Unix sysadmins this is a perfect books about principles of troubleshooting as a problem solving activity
See the introduction to the series for more information
|News||Softpanorama Classic Computer Books List||Recommended Links||Famous George Polya Quotes||How To Solve It Step-by-step Plan|
George Polya(1887-1985) was a famous mathematician, who got importance results in probability, analysis, number theory, geometry, combinatorics and mathematical physics. His book How to Solve It was probably the most significant contribution to heuristic since Descartes' Discourse on Method. And its value is not limited to mathematic. For Unix sysadmins this is a perfect books about principles of troubleshooting as a problem solving activity
In this book he proposed structuring the problem-solving process into four stages (see How To Solve It Step-by-step Plan ).
For each stage George Polya supplied a series of questions that help to solve the problem. Some of them are:
For complete list questions in a form of step-by-step plan see How To Solve It Step-by-step Plan
The examples in the book are drawn mostly from elementary math, but the method is quite general and applies to nearly every problem one might encounter. It is especially valuable for solving programming problems. I read it when I was 15 years old and this was the only mathematical book that I really liked. I thought that it contains amazing insights into problem solving skills. That perception was wrong as for my mathematical successes but later my intensive study of the book paid off somewhat in programming. Or at least I tend to think so.
BTW it was George Polya, who said "There are many questions which fools can ask that wise men cannot answer." (See H. Eves Return to Mathematical Circles, Boston: Prindle, Weber and Schmidt, 1988).
IMHO the book is much more valuable to programmers than all modern "pattern" stuff (although the latter might be useful too, but only in great moderation ;-). The only review of the book in programming literature that I found was a review in DDJ. BTW Microsoft used to give this book to all of its new programmers. Probably not any more ;-).
See also: Synthesis of Research on Problem Solving.
27-190 Discrete Structures in Computer Science Techniques of Proof and Problem Solving
For every problem you can’t solve there exists an easier problem that you can: find it.
"Geometry is the science of correct reasoning on incorrect figures."
"My method to overcome a difficulty is to go round it."
Quite often, when an idea that could be helpful presents itself, we do not appreciate it, for it is so inconspicuous. The expert has, perhaps, no more ideas than the inexperienced, but appreciates more what he has and uses it better.
— George PólyaHow to Solve it: A New Aspect of Mathematical Method (1957), 223.
Mathematics is the cheapest science. Unlike physics or chemistry, it does not require any expensive equipment. All one needs for mathematics is a pencil and paper.
D. J. Albers and G. L. Alexanderson, Mathematical People, Boston: Birkhäuser, 1985.
Mathematics consists of proving the most obvious thing in the least obvious way.
In N. Rose Mathematical Maxims and Minims, Raleigh NC:Rome Press Inc., 1988.
When introduced at the wrong time or place, good logic may be the worst enemy of good teaching.
The American Mathematical Monthly, v. 100, no. 3.
The traditional mathematics professor of the popular legend is absentminded. He usually appears in public with a lost umbrella in each hand. He prefers to face the blackboard and to turn his back to the class. He writes a, he says b, he means c; but it should be d. Some of his sayings are handed down from generation to generation:
"In order to solve this differential equation you look at it till a solution occurs to you."
"This principle is so perfectly general that no particular application of it is possible."
"What is the difference between method and device? A method is a device which you used twice."
How to Solve It. Princeton: Princeton University Press. 1945.The future mathematician ... should solve problems, choose the problems which are in his line, meditate upon their solution, and invent new problems. By this means, and by all other means, he should endeavor to make his first important discovery: he should discover his likes and dislikes, his taste, his own line.
Even fairly good students, when they have obtained the solution of the problem and written down neatly the argument, shut their books and look for something else. Doing so, they miss an important and instructive phase of the work. ... A good teacher should understand and impress on his students the view that no problem whatever is completely exhausted. One of the first and foremost duties of the teacher is not to give his students the impression that mathematical problems have little connection with each other, and no connection at all with anything else. We have a natural opportunity to investigate the connections of a problem when looking back at its solution.
How to Solve It. Princeton: Princeton University Press. 1945
In How To Solve It, G. Polya describes four steps for solving problems and outlines them at the very beginning of the book for easy reference. The steps outline a series of general questions that the problem solving student can use to successfully write resolutions. Without the questions, common sense goes through the same process; the questions simply allow students to see the process on paper. Polya designed the questions to be general enough that students could apply them to almost any problem.
The four steps are:
- understanding the problem,
- devising a plan,
- carrying out the plan, and
- looking back.
This method is very similar to the method in Thinking Mathematically by John Mason, except Polya separates devising a plan, and carrying out the plan. This may seem silly at first, but Polya argues that it does make a difference. By first devising a plan, students can eliminate mistakes they might make by rushing into the actual execution of the plan. When they plan it out first and then do the math, it is possible to check their work as they go along.
In the first step, students should be able to state the unknown, or the thing they want to find to answer the question, the data the question gives them to work with, and the condition, or limiting circumstances they must work around. If they can identify all of these, and explain the question to other people, then they have a good understanding of what the problem is asking. Polya suggests that students draw a picture if possible, or introduce some kind of notation to visualize the question.
To devise a plan, students can start by trying to think of a related problem they have solved before to help them. If the student can think of a problem they have solved before that had a similar unknown, it could also be helpful. Students can also try to restate the problem in an easier or different way, and try to solve that. By looking at these related problems, students may be able to use the same method, or other part of the plan used. After students have decided which calculations, computations, or constructions that they need, and have made sure that all data and conditions were used, they can try out their plan. To carry out the plan, they must do all the calculations, and check them as they go along. Then they should ask themselves, "Can I see it is right?" and then, "Can I prove it is right?"
When students look back on the problem and the plan they carried out, they can increase their understanding of the solution. It is always good to recheck the result and argument used, and to make sure that it is possible to check them. Then students should ask, "Can I get the result in a different way?" and "Can I use this for another problem?" The last chapter of the book is a very helpful encyclopedia of the terms used in the explanation of the first chapter.
By Beth Nuckolls.
A few links:
A recurring theme throughout the book is that if you can not solve a problem, then you should find an easier but similar one. ‘Do you know a related problem?’ Polya would ask. For example, suppose the student has just learned the Pythagorean theorem, and is now asked to find the length of the spatial diagonal of a parallelepiped.
A small amount of ingenuity is required to make the jump from the plane to the space, and the student is naturally stumped. ‘Do you know a problem with a similar unknown?’ the teacher asks.
The student gets a brilliant insight – a previously solved problem. ‘Good!
Here’s a problem related to yours and solved before. Can you use it?’ the teacher presses on. Eventually the solution is found, and all is well. Of course, the point of that passage is not to introduce to the readers the Pythagorean theorem in higher dimensions, but to show the readers the process with which one can use to find an ‘auxiliary problem’ that has been solved and use it to solve the harder problem. Polya himself is often accredited the quote, ‘For every problem you can’t solve there exists an easier problem that you can: find it.
Unfortunately, the effectiveness of the book is debatable. As Feynman said, ‘You can’t learn to solve problems by reading about it.’ There is no other way of gaining problem-solving experience save for actually solving problems. Hence, ironically, it is hard to appreciate the book unless you no longer need it.
Most popular humor pages:
Manifest of the Softpanorama IT Slacker Society : Ten Commandments of the IT Slackers Society : Computer Humor Collection : BSD Logo Story : The Cuckoo's Egg : C++ Humor : ARE YOU A BBS ADDICT? : Object oriented programmers of all nations : C Humor : Financial Humor : Financial Humor Bulletin, 2008 : Financial Humor Bulletin, 2010 : Richard Stallman Related Humor : Admin Humor : Perl-related Humor : Linus Torvalds Related humor : PseudoScience Related Humor : Networking Humor : Shell Humor: Financial Humor Bulletin, 2011 : Financial Humor Bulletin, 2012 : Financial Humor Bulletin, 2013 : Java Humor : Software Engineering Humor : Sun Solaris Related Humor : The Most Comprehensive Collection of Editor-related Humor : Microsoft plans to buy Catholic Church : Education Humor : IBM Humor : Assembler-related Humor : VIM Humor Computer Viruses Humor : Bright tomorrow is rescheduled to a day after tomorrow : Classic Computer Humor : Best Russian Programmer Humor : Russian Musical Humor : The Perl Purity Test : Politically Incorrect Humor : GPL-related Humor : OFM Humor : IDS Humor : Real Programmers Humor : Scripting Humor : Web Humor : Programming Language Humor : Goldman Sachs related humor : Greenspan humor :
The Last but not Least
|You can use PayPal to make a contribution, supporting hosting of this site with different providers to distribute and speed up access. Currently there are two functional mirrors: softpanorama.info (the fastest) and softpanorama.net.|
The statements, views and opinions presented on this web page are those of the author and are not endorsed by, nor do they necessarily reflect, the opinions of the author present and former employers, SDNP or any other organization the author may be associated with. We do not warrant the correctness of the information provided or its fitness for any purpose.
Last modified: July 07, 2013