The document discusses routine and nonroutine problem solving. Routine problem solving uses known algorithms, while nonroutine problem solving uses heuristics. Nonroutine problems are further divided into static and active problems. Static nonroutine problems have fixed elements and goals, while active nonroutine problems have changing elements or goals. The Mathematics Pentathlon program provides experiences with active problem solving by relying on strategies in its games and developing skills like deductive reasoning.