problem solving: where does the “aha!” come from?

82
Problem Solving: Where does the “aha!” come from? Great Theoretical Ideas In Computer Science Steven Rudich CS 15-251 Fall 2005 Lecture 15 Oct 20, 2005 Carnegie Mellon University

Upload: feleti

Post on 25-Feb-2016

43 views

Category:

Documents


0 download

DESCRIPTION

Problem Solving: Where does the “aha!” come from?. A volunteer, please. Martial Arts 101. The novice makes a huge motion The black belt makes a small motion The master makes a tiny motion. Violin, piano, tennis, magic, programming, singing, . . . The novice makes a huge motion - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Problem Solving: Where does the “aha!” come from?

Problem Solving:Where does the “aha!” come

from?

Great Theoretical Ideas In Computer ScienceSteven Rudich

CS 15-251 Fall 2005

Lecture 15 Oct 20, 2005 Carnegie Mellon University

Page 2: Problem Solving: Where does the “aha!” come from?

A volunteer, please.

Page 3: Problem Solving: Where does the “aha!” come from?

Martial Arts 101

•The The novicenovice makes a makes a hugehuge motionmotion

•The The black beltblack belt makes a makes a smallsmall motion motion

•The The mastermaster makes a makes a tiny tiny motionmotion

Page 4: Problem Solving: Where does the “aha!” come from?

Violin, piano, tennis, magic, programming, singing, . . .

•The The novicenovice makes a makes a hugehuge motionmotion

•The The black beltblack belt makes a makes a smallsmall motion motion

•The The mastermaster makes a makes a tiny tiny motionmotion

Page 5: Problem Solving: Where does the “aha!” come from?

This is also true in mental

activities.

Page 6: Problem Solving: Where does the “aha!” come from?

Scanning The Masters

The better the problem solver, the less brain activity is

evident. The real masters show

almost no brain activity!

Simple and to the point

Page 7: Problem Solving: Where does the “aha!” come from?

Even Geniuses Think in Small Steps

Even the smartest people have limited brains that work with simple representations and pictures.

Page 8: Problem Solving: Where does the “aha!” come from?

Less is More

The root of effective thinking, effective science, effective mathematics, effective engineering is to keep the issues simple.

Page 9: Problem Solving: Where does the “aha!” come from?

Keep It Simple

The expert represents

his/her state as simply as possible.

Page 10: Problem Solving: Where does the “aha!” come from?

A volunteer, please.

Page 11: Problem Solving: Where does the “aha!” come from?

Relax …….

Page 12: Problem Solving: Where does the “aha!” come from?

Relax, I am just going to ask you a Microsoft interview question.

Page 13: Problem Solving: Where does the “aha!” come from?

Do You Understand The Question?

Four guys want to cross a bridge that can only hold two people ay one time. It is pitch dark and they only have one flashlight, so people must cross either alone or in pairs (bringing the flashlight). Their walking speeds allow them to cross in 1, 2, 5, and 10 minutes, respectively. Is it possible for them to all cross in 17 minutes?

Page 14: Problem Solving: Where does the “aha!” come from?

You have one minute to solve this problem

Four guys want to cross a bridge that can only hold two people ay one time. It is pitch dark and they only have one flashlight, so people must cross either alone or in pairs (bringing the flashlight). Their walking speeds allow them to cross in 1, 2, 5, and 10 minutes, respectively. Is it possible for them to all cross in 17 minutes?

Page 15: Problem Solving: Where does the “aha!” come from?

So what is the answer?

Four guys want to cross a bridge that can only hold two people ay one time. It is pitch dark and they only have one flashlight, so people must cross either alone or in pairs (bringing the flashlight). Their walking speeds allow them to cross in 1, 2, 5, and 10 minutes, respectively. Is it possible for them to all cross in 17 minutes?

Page 16: Problem Solving: Where does the “aha!” come from?

Intuitive, But False

“10 + 5 + 2 + 1 = 18, so the four guys just can’t cross in 17 minutes”

“Even if the fastest guy is the one to shuttle the others back and forth – you use at least 10 + 5 + 2 + 1 > 17 minutes”

Page 17: Problem Solving: Where does the “aha!” come from?

Vocabularize Self-Proofing

As you talk to yourself, make sure to tag assertions with phrases that denote degrees of conviction.

Page 18: Problem Solving: Where does the “aha!” come from?

Keep track of what you actually know – remember what you merely

suspect.“10 + 5 + 2 + 1 = 18, so it would be weird if the four guys could cross in 17 minutes”

“even If we use the fastest guy to shuttle the others, they take too long.”

Page 19: Problem Solving: Where does the “aha!” come from?

Over This Semester…

Develop stock phrases to classify statements. Learn from experience and eliminate ambiguous or misleading phrases like “Even if”.

Page 20: Problem Solving: Where does the “aha!” come from?

Keep track of what you actually know – remember what you merely

suspect.“10 + 5 + 2 + 1 = 18, so it would be weird if the four guys could cross in 17 minutes”

“even If we use the fastest guy to shuttle the others, they take too long.”

Page 21: Problem Solving: Where does the “aha!” come from?

If it is possible, there must be more than one guy doing the

return trips: it must be that someone gets

deposited on one side and comes back for the return trip later!

Page 22: Problem Solving: Where does the “aha!” come from?

Suppose we leave 1 for a return trip later.

We start with 1 and X and then X returns.

Total time: 2X.

Thus, we start with 1,2 go over and 2 comes back….

Page 23: Problem Solving: Where does the “aha!” come from?

1 2 5 10 5 102 5 1021 2

2 111 5 105 101 2 5 10

Page 24: Problem Solving: Where does the “aha!” come from?

5 and 10“Load Balancing”:

Handle our hardest work loads in parallel! Work backwards by assuming 5 and 10

walk together.

Page 25: Problem Solving: Where does the “aha!” come from?

1 2 5 10 5 102 5 1021 2

2 111 5 105 101 2 5 10

Page 26: Problem Solving: Where does the “aha!” come from?

Words To The Wise

• Keep It Simple

• Don’t Fool Yourself

Page 27: Problem Solving: Where does the “aha!” come from?

CERTAINTY AND COMPOSITION

Mathematical statements and inferences are CERTAIN – they compose to make arbitrarily long and completely correct CHAINS of DEDUCTIVE reasoning.

Intuitions are fantastic, but don’t necessarily build on each other inductively to make correct statements. INTUITION are ENABLING, but they are only approximate.

Page 28: Problem Solving: Where does the “aha!” come from?

Know Yang from Yin

Page 29: Problem Solving: Where does the “aha!” come from?

Know Yang from Yin

Yang “male”“left” brain Your “what do I really know for sure?” – mathematical, logical, and unambiguous mind

Yin “female”“left” brainYour intuitive, associative, narrative, conjectural mind.

Page 30: Problem Solving: Where does the “aha!” come from?

Virtue of Yang

Yang “male”“left” brain Your “what do I really know for sure?” – mathematical, logical, and unambiguous mind

COMPOSITION:

Logic composes to make arbitrarily long chains of correct reasoning.

Page 31: Problem Solving: Where does the “aha!” come from?

Virtue of Yin

A SENSE OF DORECTION

Yin provides a framing story in which possible choices and goals can be discovered and evaluated.Yin “female”

“left” brainYour intuitive, associative, narrative, conjectural mind.

Page 32: Problem Solving: Where does the “aha!” come from?

Yin and Yang Together

YIN Frame an intuitive story.

YANGify the story so far• By giving the right qualifiers• Make unambiguous statements• Prove Lemmas using previous lemmas.

YIN – continue the story using intuitions.

YAGify the story…

Page 33: Problem Solving: Where does the “aha!” come from?

As you move back and forth from Yin to Yang

a river of fruitful creativity will flow from

your mind.

Page 34: Problem Solving: Where does the “aha!” come from?

Why do you think that they ask such questions, as opposed to asking for a piece of code to do

binary search?

That really was a Microsoft question.

Page 35: Problem Solving: Where does the “aha!” come from?

•Content: An up to date grasp of fundamental problems and solutions

•Method: Principles and techniques to solve the vast array of unfamiliar problems that arise in a rapidly changing field

The future belongs to the computer scientist who has

Page 36: Problem Solving: Where does the “aha!” come from?

•Content: An up to date grasp of fundamental problems and solutions

•Method: Principles and techniques to solve the vast array of unfamiliar problems that arise in a rapidly changing field

www.discretemath.com

Page 37: Problem Solving: Where does the “aha!” come from?

Content, i.e., definitions, formulas, recipes, standard manipulations, I can handle!

“Method” is intimidating. What if, the plain and simple truth is that,

I am not that smart?

Don’t jump to unwarranted conclusions!

Clever and resourceful problem solving is a skill that can be taught and

refined.

Page 38: Problem Solving: Where does the “aha!” come from?

Yeah, but I knows lots of people who don’t need a

lecture on problem solving methods.

Brilliance just comes to them.

So you are not a natural? – What of it? –

Some world class tennis players did not start as

natural backhanders. They had to be coached and

developed.

Page 39: Problem Solving: Where does the “aha!” come from?

Bonzo, I don’t pretend to know the nature of your

potential, but I am sure that if you study, practice, and

refine your problem solving skills, you will become

massively better at it than you are now.

Page 40: Problem Solving: Where does the “aha!” come from?

I get it! I can’t possibly know the capacities of my

brain hardware, until I have appropriately

reprogrammed my brain software.

Page 41: Problem Solving: Where does the “aha!” come from?

Aha! I know where the “aha!” comes from!

Page 42: Problem Solving: Where does the “aha!” come from?

Yin/Yang•Representation•Induction•Modularity•Exemplification•Improvement•Abstraction•Toolkit

Page 43: Problem Solving: Where does the “aha!” come from?

Representation:Understand the relationship between different representations of the same

information or idea

1

2

3

Page 44: Problem Solving: Where does the “aha!” come from?

Toolkit:Name abstract objects and ideas, and put them in your toolkit. Know their advantages and limitations.

Page 45: Problem Solving: Where does the “aha!” come from?

Exemplification:Try out a problem or solution on

small examples. Look for the patterns.

Page 46: Problem Solving: Where does the “aha!” come from?

Abstraction: Abstract away the inessential

features of a problem

=

Page 47: Problem Solving: Where does the “aha!” come from?

Induction has many guises.Master their interrelationship.

• Formal Arguments• Loop Invariants• Recursion• Algorithm Design• Recurrences

Page 48: Problem Solving: Where does the “aha!” come from?

Modularity: Decompose a complex problem

into simpler subproblems

Page 49: Problem Solving: Where does the “aha!” come from?

Improvement:The best solution comes from a process

of repeatedly refining and improving solutions and proofs.

Page 50: Problem Solving: Where does the “aha!” come from?

Bracketing:What are the best lower and upper

bounds that I can prove?

≤ f(x) ≤[ ]

Page 51: Problem Solving: Where does the “aha!” come from?

Representation:

This whole course is designed to show you the power of different abstract representations and their relationships.

Page 52: Problem Solving: Where does the “aha!” come from?

Don’t passively let the representation choose you!

Actively choose the representation!

Page 53: Problem Solving: Where does the “aha!” come from?

Toolkit:Unary representationInductive representationChoice tree representationPolynomial representation

Problem solving strategies; Vocabularize Self-Proofs

Page 54: Problem Solving: Where does the “aha!” come from?

Tool Kit of Representations with associated strengths and weaknesses.

Ex. Unary brings out the geometric character of a number. HUGE space cost.

Page 55: Problem Solving: Where does the “aha!” come from?

Tool Kit of Representations with associated strengths and weaknesses.

Ex. Continued fractions have best rational approximation sequences. Issue: Decimal notation has huge market share.

Page 56: Problem Solving: Where does the “aha!” come from?

Exemplification:

Party handshaking problems

The Hat Talk problem

Page 57: Problem Solving: Where does the “aha!” come from?

Abstraction:

Raising to power versus addition chains.

Page 58: Problem Solving: Where does the “aha!” come from?

Abstraction:

Raising to power works for any binary, associative operation.

Page 59: Problem Solving: Where does the “aha!” come from?

Induction!

Inductive Representation/ProofModularityRecursion

Page 60: Problem Solving: Where does the “aha!” come from?

Modularity:

You can build a computer from NAND gates.

Page 61: Problem Solving: Where does the “aha!” come from?

Improvement:

PancakesAddition Chains

Page 62: Problem Solving: Where does the “aha!” come from?

Bracketing:What are the best lower and upper

bounds that I can prove?

≤ f(x) ≤[ ]

Page 63: Problem Solving: Where does the “aha!” come from?

? ( )? ( ?

≤MM n

30 6)

M(n) = numbers

of additions required to make

n.

≤≤≤

Page 64: Problem Solving: Where does the “aha!” come from?

FIRST CUT:What

brackets can you do off the top of

your head?? ( )? ( ?

≤MM n

30 6)≤

≤≤

Page 65: Problem Solving: Where does the “aha!” come from?

SECOND CUT:What

brackets can you do in

five minutes?? ( )

? ( ?≤MM n

30 6)≤

≤≤

Page 66: Problem Solving: Where does the “aha!” come from?

AHA! Method:

New problem encountered.

KEEP IT SIMPLE Possible representation? Try it out on small examples. Any familiar tools come to mind? Get rid of inessential details. Do some quick bracketing. Inductive viewpoint? Know Yin from Yang.

Page 67: Problem Solving: Where does the “aha!” come from?

The first step is to get the problem right!

Page 68: Problem Solving: Where does the “aha!” come from?

Get The Problem Right!

Given any context you should double check that you read/heard it correctly!

You should be able to repeat the problem back to the source and have them agree that you understand the issue.

Page 69: Problem Solving: Where does the “aha!” come from?

Try and remove inessential details.

Does the person with the problem still recognize it?

Page 70: Problem Solving: Where does the “aha!” come from?

Conjecture Versus Fact

Keep your thoughts tagged with their certainty status.

YOU ARE YOUR OWN WORST ENEMY!

Page 71: Problem Solving: Where does the “aha!” come from?

Getting To Know The Problem

Try it out on small examples

Articulate a quantity to bracket

What brackets can you do in five minutes?

Page 72: Problem Solving: Where does the “aha!” come from?

Choose Your Representation

Think of your toolkit of representations, do any of them seem like the better choice than the original?

Change representations and get to know the problem again (as before)

Page 73: Problem Solving: Where does the “aha!” come from?

Choose Your Representation

What is your representation for your intermediate results?

Page 74: Problem Solving: Where does the “aha!” come from?

AHA! Method:

New problem encountered. Possible representation? Try it out on small examples. Any familiar tools come to mind? Get rid of inessential details. Do some quick bracketing. Inductive viewpoint? Know Yin from Yang.

Page 75: Problem Solving: Where does the “aha!” come from?

Let a0, a1, a2, … an, X be input numbers. Goal is to

compute :an Xn + an-1 Xn-1 + … + a1 X

+ a0

At any stage we are allowed to ADD or MULTIPLY any

two numbers created so far.

How do we MINIMIZE, f(n), the number of operations?

Page 76: Problem Solving: Where does the “aha!” come from?

Let a0, a1, a2, … an, X be input numbers. Goal is to

compute :an Xn + an-1 Xn-1 + … + a1 X

+ a0

To make any a single expression that is a function of all n+2 inputs will take at

least n+1 operations.

We can use n-1 to create the powers of X. Then we can use n to multiply each

power by its coefficient. We can use n additions to add

them up.n+1 ≤ f(n) ≤ 3n -1

Page 77: Problem Solving: Where does the “aha!” come from?

Let a0, a1, a2, … an, X be input numbers. Goal is

to compute :an Xn + an-1 Xn-1 + … + a1 X

+ a0

Can I get better brackets on f ?

n+1 ≤ f(n) ≤ 3n -1

Page 78: Problem Solving: Where does the “aha!” come from?

In polynomial representation I can

think of all the intermediate results

as polynomials.

Page 79: Problem Solving: Where does the “aha!” come from?

Pk(X) = an Xk + an-1 Xk-1 + … + an-k+1 X + an-

kGoal: Compute Pn(X)

Inductive Goal (Invariant):Compute P0(X), P1(X), … pn(X)

Slick code [Loop invariant P == Pi(X)]

P := an;For i = 1 to n do P:= P*X + an-i

TOTAL: n mults and n additions. f(n) ≤ 2n

Page 80: Problem Solving: Where does the “aha!” come from?

Let a0, a1, a2, … an, X be input numbers. Goal is to

compute :an Xn + an-1 Xn-1 + … + a1 X

+ a0

At any stage we are allowed to ADD or MULTIPLY any

two numbers created so far.

n+1 ≤ f(n) ≤ 2n

Page 81: Problem Solving: Where does the “aha!” come from?

Use your powers for good!

Page 82: Problem Solving: Where does the “aha!” come from?

References

The Heritage of Thales, by W. S. Anglin and F. Lambek

The Book Of Numbers, by J. Conway and R. Guy

Programming Pearls, by J. Bentley

History of Mathematics, Histories of Problems, by The Inter-IREM Commission