school of computing 1 the impact of computing ganesh gopalakrishnan school of computing university...

37
School of Computing 1 The Impact of Computing Ganesh Gopalakrishnan School of Computing University of Utah Courtesy to Pat Phillips of Microsoft and Jeanette Wing of CMU/NSF for the slides on Computational Thinking; John Regehr for some of the hardware photographs; etc.

Upload: anis-harmon

Post on 04-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

School of Computing

1

The Impact of Computing

Ganesh Gopalakrishnan

School of Computing

University of Utah

Courtesy to Pat Phillips of Microsoft and Jeanette Wing of CMU/NSF for the slides on Computational Thinking; John Regehr for some of the hardware photographs; etc.

School of Computing

2

Why Compute?

Tool usage is a measure of intelligence and power

Information processing tools have always been widely sought

School of Computing

3

Early Information Processing Tool: An Adder

School of Computing

4

Early Mechanical Computer: Babbage’s Difference Engine (now rebuilt at the London Museum)

School of Computing

5

Nowadays, computers are used everywhere!

School of Computing

6

They will soon replace bar-codes on milk-cans!(RFID tags being experimented by Wal-mart).

(Photo courtesy of wikipedia.)

School of Computing

7

With Advances in Electronics have come Much Faster and Capable Computing Devices!

School of Computing

8

Supercomputers have eliminated the need to do experiments by building scale models of airplanes, or mixing (dangerous) chemicals !

IBM BlueGene

•Does 400 Trillion multiplications per second ! (Photo courtesy of IBM/LLNL)

School of Computing

9

Virtual Roll-out of Boeing 787 “Dreamliner”

Entire Airplane beingDesigned and Flown inside a Computer (Simulation Program).

The first plane to fly isthe real one (not a mockup model).

(Photo courtesy of Boeing.)

School of Computing

10

Supercomputers can now safely simulate explosions !

This simulation employed 600 processors for approximately 1 week in a  sophisticated parallel application to simulate all of the fluid  dynamics, thermodynamics, chemical reactions and structural mechanics of this system from fundamental laws of physics. [Steve Parker, CSAFE, U of U]

School of Computing

11

The Entertainment Art Engineering (EAE) Program at the U of U – a Machinima Movie

School of Computing

12

We do not acquire technical skills simply from the use of We do not acquire technical skills simply from the use of

technology any more than engineering skills evolve from technology any more than engineering skills evolve from

using automobiles or aeronautical engineering skills using automobiles or aeronautical engineering skills

from flying.from flying.

Robert Tinker, Alvaro Galvis, and Andrew ZuckerRobert Tinker, Alvaro Galvis, and Andrew Zucker

The Concord ConsortiumThe Concord Consortium

And yet…And yet…

We need to apply Computational Thinking!We need to apply Computational Thinking!

School of Computing

13

What is Computational Thinking?What is Computational Thinking?

Asking: What is the power and limit of human and Asking: What is the power and limit of human and computer intelligence?computer intelligence?

Asking: How difficult is the problem?Asking: How difficult is the problem? Asking: How can it be solved?Asking: How can it be solved? Asking: How can technology be applied to the problem?Asking: How can technology be applied to the problem? Asking: What computational strategies might be Asking: What computational strategies might be

employed?employed?

School of Computing

14

CT is about developing an appreciation of large numbers

•Compute installation consumes 3 MW of power

•Can provide for 20,000 average homes

•Equal to 100,000 brains thinking hard!

School of Computing

15

What it’s not…What it’s not…

It’s not just more technical details for using softwareIt’s not just more technical details for using software It’s not thinking like a computerIt’s not thinking like a computer It’s not programming (necessarily)It’s not programming (necessarily) It doesn’t always require a computerIt doesn’t always require a computer It’s not yet one more thing to add to your curriculumIt’s not yet one more thing to add to your curriculum

School of Computing

16

How is it different from other learning How is it different from other learning strategies?strategies?

Not just proceduralNot just procedural

Not just constructionistNot just constructionist

Not just integratedNot just integrated

School of Computing

17

Why is it important?Why is it important?

It moves students beyond technology literacyIt moves students beyond technology literacy It creates problem solvers instead of software It creates problem solvers instead of software

technicianstechnicians It emphasizes creating knowledge rather than using It emphasizes creating knowledge rather than using

informationinformation It presents endless possibilities for creatively solving It presents endless possibilities for creatively solving

problemsproblems It enhances the problem-solving techniques we already It enhances the problem-solving techniques we already

teachteach It allows us to see that computing (like any other It allows us to see that computing (like any other

paradigm) is a double-edged sword, and we need to paradigm) is a double-edged sword, and we need to work hard to get the good elevated and the bad work hard to get the good elevated and the bad demoteddemoted

School of Computing

18

CT enables asking questions about ALL computers:CT enables asking questions about ALL computers:

One can mathematically prove that NO computer can One can mathematically prove that NO computer can solve ALL “Post Puzzles.” One Post Puzzle is …solve ALL “Post Puzzles.” One Post Puzzle is …

01

1

0

01

1

01

0

2

101

1

3

The solution for this Post Puzzle is 3, 2, 0, 3, 1 i.e.The solution for this Post Puzzle is 3, 2, 0, 3, 1 i.e.

101

1

3

101

1

3

01

0

2

01

1

0

01

1Reads1 01 01 1 01

Readsthe SAME !

School of Computing

19

One cannot predict how long the solution sequence is…One cannot predict how long the solution sequence is…

1000

0

0

01

1

1

101

2

001

00

3

The shortest solution for this Post Puzzle has 206 steps!The shortest solution for this Post Puzzle has 206 steps!

And yet…And yet…

0

School of Computing

20

Application of the Impossibility Result:Application of the Impossibility Result:Given a Grammar for parsing, it is impossible to tell, using a Given a Grammar for parsing, it is impossible to tell, using a

computer, whether the grammar can be used to parse things computer, whether the grammar can be used to parse things

in TWO incompatible ways (similar to the following) :in TWO incompatible ways (similar to the following) :

GivenGiven

2 * 3 + 4 = 102 * 3 + 4 = 10

we should consider it to be sayingwe should consider it to be saying

(2 * 3) + 5 = 10(2 * 3) + 5 = 10

and NOTand NOT

2 * (3 + 4) = 102 * (3 + 4) = 10

School of Computing

21

Everything is going “Computational”Everything is going “Computational”

Computers are like telescopes and microscopes for Computers are like telescopes and microscopes for learning in EVERY branch of science and many learning in EVERY branch of science and many branches of mathematics!branches of mathematics!

ComputationalComputational– Physics Physics

– BiologyBiology

– ChemistryChemistry

– MathematicsMathematics

– Computer ScienceComputer Science

– LawLaw

– EconomicsEconomics

– AeronauticsAeronautics

– EducationEducation

School of Computing

22

For instance…For instance… Even many mathematical proofs cannot be written out or Even many mathematical proofs cannot be written out or

checked (in our lifetimes) without the use of computerschecked (in our lifetimes) without the use of computers

Famous Computer-Finished ProofsFamous Computer-Finished Proofs

– The Four Color TheoremThe Four Color Theorem

– The Kepler ConjectureThe Kepler Conjecture

School of Computing

23

And yet…And yet… We depend on computers for controlling and predicting We depend on computers for controlling and predicting

virtually every aspect of our lives…virtually every aspect of our lives…

Hospitals no longer can manually check which patients Hospitals no longer can manually check which patients are admitted and what their symptoms are. They have to are admitted and what their symptoms are. They have to rely on the data the computers haverely on the data the computers have

We no longer have the ability to forecast weather, process We no longer have the ability to forecast weather, process bankrolls, or hey, even watch television, without some bankrolls, or hey, even watch television, without some computer playing a major rolecomputer playing a major role

Billions more of applications (the sales of small computers Billions more of applications (the sales of small computers approaches the 10 Billion mark each year)approaches the 10 Billion mark each year)

School of Computing

24

And yet…And yet…They can cause an immense digital divideThey can cause an immense digital divide

The older population of the nation The older population of the nation – inability to use the webinability to use the web

– yet all the information is thereyet all the information is there

– sometimes one has to see certain patterns and type into a sometimes one has to see certain patterns and type into a web browserweb browser

The illiterate populationThe illiterate population

School of Computing

25

And creep into the least suspected places..And creep into the least suspected places..

Use of Linux in the real worldUse of Linux in the real world

Desktops and laptops for sureDesktops and laptops for sure

But these too:But these too:– Toyota PriusToyota Prius

– Sony Bravia TVSony Bravia TV

– Various Linksys routersVarious Linksys routers

– Doorlocks in the School of ComputingDoorlocks in the School of Computing

What if there was one common bug in these What if there was one common bug in these versions of Linux? one common attack?versions of Linux? one common attack?

School of Computing

26

Who is responsible for bugs? How can we Who is responsible for bugs? How can we prevent bugs?prevent bugs?

Employ mathematically based debugging methods, such Employ mathematically based debugging methods, such as “model checking”as “model checking”

– debug Scientific Computing codes usingdebug Scientific Computing codes using

– debug thread software such as Linux usingdebug thread software such as Linux using

– empirically shown to have very few “bug escapes,” assuming that the empirically shown to have very few “bug escapes,” assuming that the modeling was right, and the verification tools themselves worked correctly modeling was right, and the verification tools themselves worked correctly (and the human, using the tool, did not misinterpret its results… etc..)(and the human, using the tool, did not misinterpret its results… etc..)

“Execution Checking” “Model Checking”

School of Computing

27

And yet…And yet…They can have a significant carbon foot-printThey can have a significant carbon foot-print

The first Petascale computer will consume 20 The first Petascale computer will consume 20 MW of electrical power MW of electrical power

Equivalent to the electrical energy use of Equivalent to the electrical energy use of 200,000 average homes200,000 average homes

If the software we use on these machines is If the software we use on these machines is buggy and wastes one month of simulation buggy and wastes one month of simulation time… ?time… ?

School of Computing

28

And yet…And yet… This is also one of the best hopes for world-wide unity, This is also one of the best hopes for world-wide unity,

awareness, education…awareness, education…

The WebThe Web SkypeSkype EmailEmail $100 laptop for poor nations$100 laptop for poor nations ……

School of Computing

29

And yet…And yet… One needs a balanced view of the worldOne needs a balanced view of the world

The world does not owe us anything – it was The world does not owe us anything – it was here before us! [ Mark Twain ]here before us! [ Mark Twain ]

We owe a lot to the worldWe owe a lot to the world

The carbon footprint can wreak havoc by 2050 if The carbon footprint can wreak havoc by 2050 if kept unmitigatedkept unmitigated

Leaving the world better than we foundLeaving the world better than we found

School of Computing

30

And yet…And yet…

All technologies are double-edged All technologies are double-edged

Learn to have the good ascending and the bad Learn to have the good ascending and the bad descending in impactdescending in impact

School of Computing

31

ConclusionsConclusions Be capable of understanding what computers areBe capable of understanding what computers are where they are being employed where they are being employed

– where they are creeping into our liveswhere they are creeping into our lives

how indispensable they have becomehow indispensable they have become how to keep using them to our advantagehow to keep using them to our advantage to use them to understand how we thinkto use them to understand how we think use them to understand who we areuse them to understand who we are

– beware of the digital divide they cause when used poorlybeware of the digital divide they cause when used poorly

– the carbon footprint they leave when used wastefullythe carbon footprint they leave when used wastefully

– the toxic waste they cause when not recycledthe toxic waste they cause when not recycled

WITH ALL THIS, be part of the exciting world of WITH ALL THIS, be part of the exciting world of computing, whatever your field of study be !!computing, whatever your field of study be !!

School of Computing

32

All this fun and Fantastic Employment Potentials!!

School of Computing

33

So how do you get involved with the U ? http://www.cs.utah.edu

School of Computing

34

Extra slidesExtra slides

School of Computing

35

Another Example (of CT): ExponentialsAnother Example (of CT): Exponentials Developing an appreciation for the “Exponential”Developing an appreciation for the “Exponential”

4 – size of a typical family4 – size of a typical family 40 – family reunion40 – family reunion 400 – runs in a high-scoring cricket match400 – runs in a high-scoring cricket match 4000 – cost of a good desktop machine4000 – cost of a good desktop machine 40000 – cost of a good high-end car40000 – cost of a good high-end car 400000 – one-sixth of Utah’s population400000 – one-sixth of Utah’s population

4000000000 – 3/44000000000 – 3/4thth of the world population of the world population

-- > number of seconds a human lives-- > number of seconds a human lives

School of Computing

36

ExponentialsExponentials Developing an appreciation for the “Exponential”Developing an appreciation for the “Exponential”

44

0000000000 0000000000 0000000000 00000000000000000000 0000000000 0000000000 0000000000

0000000000 0000000000 0000000000 00000000000000000000 0000000000 0000000000 0000000000

0000000000 0000000000 0000000000 00000000000000000000 0000000000 0000000000 0000000000

0000000000 0000000000 0000000000 00000000000000000000 0000000000 0000000000 0000000000

0000000000 0000000000 0000000000 00000000000000000000 0000000000 0000000000 0000000000

number of atoms on earthnumber of atoms on earth Using logarithmic amount of ink, we can talk about huge Using logarithmic amount of ink, we can talk about huge

numbers! numbers! Using N amount of ink, one can talk about 2^N Using N amount of ink, one can talk about 2^N

School of Computing

37

Exponential algorithms, Polynomial Exponential algorithms, Polynomial algorithms, Unknown complexity algorithmsalgorithms, Unknown complexity algorithms

Poly: Sorting the employee records of N employeesPoly: Sorting the employee records of N employees

Exp: The number of arrangements of N employees in a Exp: The number of arrangements of N employees in a single-file processionsingle-file procession

Unknown: Given N employees, are there K who form a Unknown: Given N employees, are there K who form a clique?clique?

Unknown, possibly harder: Given N employees, is it that Unknown, possibly harder: Given N employees, is it that NO K employees form a clique?NO K employees form a clique?