A Puzzle to Entertain You

35
A Puzzle to Entertain A Puzzle to Entertain You You I have a bag that holds one marble, with equal probability that it is white or black. I add a second marble to the bag, that is white. I then shake the bag, and take one marble out. It is white. What is the probability that the remaining marble is black?

description

A Puzzle to Entertain You. I have a bag that holds one marble, with equal probability that it is white or black. I add a second marble to the bag, that is white. I then shake the bag, and take one marble out. It is white. What is the probability that the remaining marble is black?. - PowerPoint PPT Presentation

Transcript of A Puzzle to Entertain You

Page 1: A Puzzle to Entertain You

A Puzzle to Entertain YouA Puzzle to Entertain You

I have a bag that holds one marble, with equal probability that it is white or black.

I add a second marble to the bag, that is white. I then shake the bag, and take one marble out. It is white.

What is the probability that the remaining marble is black?

Page 2: A Puzzle to Entertain You

A Puzzle to Entertain YouA Puzzle to Entertain You

I have three cards. The first card is blue on both sides. The second card is red on one side and blue on the other. The third card is red on both sides.

Now, I show you one side of a card, and it is red. What is the probability that the color on the other side is red?

Page 3: A Puzzle to Entertain You

How Can We TeachHow Can We TeachProblem Solving?Problem Solving?

Clifford A. Shaffer

Department of Computer ScienceVirginia Tech

[email protected]

Page 4: A Puzzle to Entertain You

Talk OverviewTalk Overview

1. Problem Solving◦ What it means to teach PS◦ How I teach PS, and variants

2. Computational Thinking and the CS Principles initiative

Page 5: A Puzzle to Entertain You

NOT Problem-Based NOT Problem-Based LearningLearningPBL is about a way to present

content◦Students learn content in the context

of addressing “real-world” (or at least bigger) problems.

By “Problem Solving” I mean fundamental skills/strategies that people apply to solve problems of any type.

Page 6: A Puzzle to Entertain You

Motivation: Why We CareMotivation: Why We CareMany students are not good at

debugging◦Deduction vs. Random Walk

Many students are not good at designMany students are not good at

analysis◦Algorithm Analysis, systems analysis

These deficiencies motivated the course, and overcoming them is therefore the goal.

Page 7: A Puzzle to Entertain You

How CAN we teach PS?How CAN we teach PS?An old problem for teachers.Polya: 1940s

◦Heuristics

Page 8: A Puzzle to Entertain You

What Does It Mean to Teach What Does It Mean to Teach Problem Solving?Problem Solving?Fundamental Hypothesis:

◦Problem Solving is a skill, not an ability.

◦Otherwise, we cannot do anything.Secondary Hypothesis:

◦Being good at problem solving correlates to being good at Computer Science.

◦Skill(PS) ~ Skill(CS)◦Otherwise, why bother?

Page 9: A Puzzle to Entertain You

A Student CommentA Student Comment“We are already good at this.”Implied hypothesis:

◦If you are good at Computer Science, you are good at PS.

◦Skill(PS) => Skill(CS)◦There does appear to be a lot of

truth to this.◦Correlated? PS is a prereq for CS

capability?

Page 10: A Puzzle to Entertain You

Fundamental ChallengeFundamental ChallengeWe want to improve the capability

of the weaker students to do CSThe hypothesis:

◦We can do that by improving their PS skills

◦Increased Skill(PS) => Increased Capability (CS)

Page 11: A Puzzle to Entertain You

ObservationObservationMany people enjoy doing puzzles.

◦Maybe an interest in puzzles correlates to an interest in CS?

◦Irony: When a student tunes out my lecture on PS because they are working on a Sodoku!

Page 12: A Puzzle to Entertain You

History of our PS CourseHistory of our PS Course~2006, our Undergraduate

Program Committee developed major changes in undergraduate curriculum

Teaching PS: not my idea, but I ended up developing the course

I found textbooks to make a course

Page 13: A Puzzle to Entertain You

Pedagogical ApproachPedagogical ApproachWeekly homeworks

◦Wide variety including self assessment tests, problem sets (individual or in pairs)

Key Pedagogical Technique◦Many classes involve students working

problems (come to board and demonstrate)

◦Goal is to “make visible” the problem-solving process

◦Failure illustrates more than success

Page 14: A Puzzle to Entertain You

What I Actually Teach (1)What I Actually Teach (1)

1. PS diagnostic, self understanding tests

◦ Myers-Briggs, Learning Styles Inventory, Conflict resolution

2. Technique: Thinking aloud, working in pairs, engaging a problem

3. Verbal reasoning/”logic”, Analogy problemsJack is slower than Phil but faster than Val. Val is slower than Jack but faster than Pete. Write the names in order of speed.

Page 15: A Puzzle to Entertain You

What I Actually Teach (2)What I Actually Teach (2)

4. Heuristics: (about 1/3 of the course)

◦ Externalize◦ Visualize◦ Special Features◦ Look at Extremes◦ Simplify◦ Sleep on It◦ Penultimate Step◦ Symmetry◦ Invariants

Page 16: A Puzzle to Entertain You

What I Actually Teach (3)What I Actually Teach (3)

5. Lateral Thinking6. Deductive and Hypothetical

ReasoningToday is Saturday. What is the day after 4 days before tomorrow? [These are hard!]

5. Making an argument: proof styles6. Problem Solving and

Programming7. Succeeding as a student

Page 17: A Puzzle to Entertain You

What I Actually Teach (4)What I Actually Teach (4)

10.Problem Solving in-the-large:◦ Problem Definition◦ Generating Potential Solutions◦ Deciding Course of Action◦ Implementing Solution◦ Evaluation

11.Computational Thinking◦ Simulation, Optimization, and

Statistics

12.Interpersonal Problem Solving

Page 18: A Puzzle to Entertain You

SourcesSourcesEffective Problem Solving, Second Edition,

Marvin Levine – HeuristicsProblem Solving & Comprehension, Sixth

Edition, Whimbey and Lochhead – careful deductive reasoning

The Art and Craft of Problem Solving, Paul Zeitz – Proofs, Math problems (sparingly)

Strategies for Creative Problem Solving, Second Edition, Fogler and LeBlanc– PS in-the-large

I also actively collect sample problemsMichalewicz: Puzzle Based Learning

Page 19: A Puzzle to Entertain You

Variant: Math Olympiad Variant: Math Olympiad ApproachApproachCould make the class more math

orientedI don't want to make my class too

math heavy.◦Exactly the people that I want to

reach (weaker CS students) have less capability at math (or are even math-phobic)

I don’t need math to find hard problems!

Page 20: A Puzzle to Entertain You

Other VariantsOther VariantsCS topics vs. CS relevant

examples◦Finite state and other machines◦Algorithms◦Big project for group to work on (or

PBL)Computational ThinkingPuzzle-based Learning

Page 21: A Puzzle to Entertain You

ChallengesChallengesStudent reaction is not strongly

positive◦Our students tend to focus on

programming and “obvious” CS content◦“CS == Programming”◦Can mitigate by tying more closely to

CS content. Debugging?Need to maintain faculty support

◦If viewed as “non-critical”, lower division courses get pushed out.

Page 22: A Puzzle to Entertain You

Major Positive (to Major Positive (to Students)Students)Gives students a framework and

a terminology for discussing the process of problem solving.

Page 23: A Puzzle to Entertain You

The state of Computer The state of Computer Science Education in the USScience Education in the USBoom and Bust cycle (~15-year

cycle)◦We are coming out of a bust◦NSF reports 70% reduction in CS

majors (80% drop among women)◦We are starting to recover numbers

Predictions are for a huge deficit in CS-related workers◦Claims of “all the new jobs” related

to CS

Page 24: A Puzzle to Entertain You

Computation ThinkingComputation Thinking

Proposed Solution: Teach CS in K12!NSF

◦Jeanette Wing◦CE21 program

CS Principles initiativeGoogleAlice, Scratch, etc.Universities giving summer

workshops for middle/high school teachers

Page 25: A Puzzle to Entertain You

Harsh Realities in US K12 Harsh Realities in US K12 EducationEducationCS is not part of the coreFew K12 teachers trained to

teach CSLowered interest among students

for taking high school CSRecently lost our advanced AP

exam

Page 26: A Puzzle to Entertain You

NSF’s CE21 ProgramNSF’s CE21 ProgramGoals:

◦Train more teachers to teach CS (10,000?)

◦ Teach K12 students to “think computationally”

◦(We already teach “computer literacy” in primary school)

Includes a push to teach CS topics in middle schools (6-8)◦This is where most kids decide their

career

Page 27: A Puzzle to Entertain You

CS Principles CS Principles ((csprinciples.orgcsprinciples.org))NSF Funded Project; College

BoardPI: Owen Astrachan at DukeGoal: Define a new AP courseTeach it at High School and

College Intro

Page 28: A Puzzle to Entertain You

CS Principles CS Principles ((csprinciples.orgcsprinciples.org))NSF Funded Project; College BoardPI: Owen Astrachan at DukeGoal: Define a new AP courseTeach it at High School and College

IntroNot a classic programming courseTeach a broader introduction to the

concepts of CS

Page 29: A Puzzle to Entertain You

CS Principles CS Principles ((csprinciples.orgcsprinciples.org))NSF Funded Project; College BoardPI: Owen Astrachan at DukeGoal: Define a new AP courseTeach it at High School and

College IntroNot a classic programming courseTeach a broader introduction to

the concepts of CSComputational Thinking!

Page 30: A Puzzle to Entertain You

CS Principles CS Principles ((csprinciples.orgcsprinciples.org))NSF Funded Project; College BoardPI: Owen Astrachan at DukeGoal: Define a new AP courseTeach it at High School and College

IntroNot a classic programming courseTeach a broader introduction to the

concepts of CSComputational Thinking!Pilot Sites

Page 31: A Puzzle to Entertain You

CS Principles Big IdeasCS Principles Big Ideas1. Computing is a creative human activity that

engenders innovation and promotes exploration2. Abstraction reduces information & detail to focus on

concepts relevant to understanding and solving problems

3. Data and information facilitate the creation of knowledge

4. Algorithms are tools for developing and expressing solutions to computational problems

5. Programming is a creative process that produces computational artifacts

6. Digital devices, systems, & networks enable and foster computational approaches to solving problems

7. Computing enables innovation in other fields

Page 32: A Puzzle to Entertain You

Computational Thinking Computational Thinking PracticesPractices1. Analyzing effects of computation2. Creating computational artifacts3. Using abstractions and models4. Analyzing problems and artifacts5. Communicating processes and

results6. Working effectively in teams

Page 33: A Puzzle to Entertain You

(Almost) The End(Almost) The EndThank you for listening!What are your experiences with

teaching ◦Problem Solving?◦Computational Thinking?

Page 34: A Puzzle to Entertain You

A Closing PuzzleA Closing Puzzle

A man is driving his car on a shopping trip around town. Shortly after he starts out, he notices that his odometer (which has six digits) is showing a palindrome. An hour or so later, as he is nearly finished with his shopping trip, he looks at his odometer again. He notices that it is showing a different palindrome.

How far did he drive?

Page 35: A Puzzle to Entertain You

A Closing PuzzleA Closing Puzzle

On 24 January 1993, Ms. Green celebrated her birthday. This was a special day because the number of years she had now completed was equal to the sum of the digits for the year when she was born. How old was Mrs. Green that day?