The Future of Computing: Grand Challenges and the Next Killer Apps CMSC 100 Tuesday, December 1, 2011 Adapted from slides provided by Prof. Marie desJardins
The Future of Computing What are the “grand challenges” of computing---our next generation of big problems to solve? What are some technologies on the horizon that may be “game-changing”? Quantum computing Self-configuring robotics and “smart matter” Nanotechnology What is the next “killer app”?
Grand Challenges: CRA 2002 In 2002, the Computing Research Association held a conference to identify Grand Challenges for computing 1.Systems You Can Count On Global, scalable, persistent, reliable, efficient networks 2.A Teacher for Every Learner Scalable, learner-centered distance learning/collaboration 3.Ubiquitous Safety.net Disaster prediction, prevention, mitigation, and response 4.Conquering System Complexity Self-configuring, -optimizing, -maintaining, -healing systems 5.Build a Team of Your Own Augmented cognition: human/machine “cognitive partnerships”
Grand Challenges: UKCRC 2009 The UK Computing Research Committee has identified eight Grand Challenges for computer science 1.In Vivo In Silico (virtual organisms) 2.Science for Ubiquitous Global Computing 3.Memories for Life (storing/searching pictures, video, ,...) 4.Architecture of Brain and Mind 5.Dependable Systems Evolution 6.Journeys In Non-Classical Computing (biological/natural) 7.Learning for Life 8.Bringing the Past to Life for the Citizen
Quantum Computing Bits can’t get any smaller But electrons can be in multiple quantum states simultaneously (“superpositioning”) qubit: can be in 2 states at once 2 qubits: 4 states at once n qubits: 2 n states at once! In effect, we can build massively parallel computers! SciAm Special: How Do Quantum Computers Work? Images: ams.org
12-6 Encrypting the Message Recall: n=pq, phi(n)=(p-1)(q-1), 1<e<phi(n), de = 1 (mod phi(n)) encrypted = message e mod n message = encryped d mod n Public keys: n = 91 and e = 5 Message: two = 23 ten 23 e = 23 5 = 6,436,343 6,436,343 ÷ 91 has a remainder of 4 4 ten = 100 two Thus, encrypted version of is 100.
12-7 Decrypting the Message 100 Recall: n=pq, phi(n)=(p-1)(q-1), 1<e<phi(n), de = 1 (mod phi(n)) Decrypting keys: d = 29, n = 91 100 two = 4 ten 4 d = 4 29 = 288,230,376,151,711,744 288,230,376,151,711,744 ÷ 91 has a remainder of 23 23 ten = two Therefore, decrypted version of 100 is
Cracking RSA Public key can be made freely available – does not need to be kept secret RSA can only be classically “broken” in one of three ways: Get the private key Factor the very large number, n (typically bits) – computationally too hard is about 1 with 300 zeros 2 512 potential factors/ test per second > 20 years Solve the RSA problem (invert exponentiation and modulus) – also too hard How would a quantum computer be used to crack RSA? Shor’s Algorithm
Shor’s Algorithm – factoring 15 Source: Create two registers big enough to factor N (15) Choose X that is than some value less than N Perform quantum calculation for each possible value of A (using X=2): AB AB Calculate the period of B (in this case, 4) and assign to f
Self-Configuring Systems ckBot (University of Pennsylvania) More nifty self-configuring robots: Image: discovermagazine.com
“Nano” refers to the scale of these systems: 1nm = meters = one billionth of a meter Carbon-carbon bonds are about.15 nm A DNA molecule has a diameter of about 2nm The smallest cellular life form is about 200nm across “Nanotechnology”: Devices that are smaller than ~100nm First mention of nanotechnology (not by that name): Richard Feynman, 1959 talk First nanotechnology: Fullerenes (discovered in 1985) – carbon molecules forming a hollow structure (sphere, ellipsoid, tube) “Buckyball” – spherical fullerene (both named after Buckminster Fuller, inventor of the geodesic dome) These are actually used today in manufacturing Nanotechnology Images: godunov.com, answers.com
Approaches to Nanotechnology Self-assembly Like the self-configuring systems we saw at the macro level! Top-down design of “molecular machines” We could theoretically program these nanomachines! Nanorobotics Programmable matter Claytronics: Applications: manufacturing, environmental remediation, medical treatment...
Killer App A “killer app” is a paradigm-shifting technology application Lots of things have been referred to as “killer apps”: Spreadsheets The Web Google Word processing Images: celecus.com, logic.stanford.edu, google.com
What’s the Newest Killer App? A Google search on “Next Killer App” reveals the following “killer apps” from the last few years: Technology Source 2003: RSS (Rich Site Summary) – news feeds for the masses Popular Mechanics 2005: VoIP (Voice over Internet Protocol): Skype, etc. WiMAX (next-generation WiFi: has a range of a couple of miles) “Freecycling” (give away your junk online) Desktop search Business Week 2007 Paperless maps (GPS)
What’s the Next Killer App? Here are some of the “next killer apps” as cited by 2009 sources: Dave Winer (tech blogger): A better twitter (more bloggy?) TheNextWeb.com Voice twitter David Warlick (blogger): eportfolios for students Info Week reader poll: Search/data retrieval VoIP Identity management
The Next Killer App: Google Earth? [Google Earth demo] Google Earth application: Security watch Google Earth 5 – 3D Mars! Google Earth Zooms Too Close video: