Download presentation
Presentation is loading. Please wait.
Published bySabrina Dortha Randall Modified over 9 years ago
1
Georgia Institute of Technology Speed part 6 Barb Ericson Georgia Institute of Technology May 2006
2
Georgia Institute of Technology Learning Goals Computing Concepts –Introducing a combinatorial problem –Introducing the categories of algorithms Class P Intractable Class NP –Understanding that there are algorithms that can't be written –Understanding how to compare computers to determine which would be faster
3
Georgia Institute of Technology Combining Parts What if we wanted to create a program that wrote songs –By combining musical parts –leave some out, put some in –Ignore differences in order (ab = ba) How many combinations with 3 parts? –a, b, c, ab, bc, ac, abc, and empty How many combinations with 4 parts? –a, b, c, d, ab, bc, cd, ac, ad, bd, etc Can you find more combinations?
4
Georgia Institute of Technology Processing Combinations For any n parts there are 2 n combinations –Ignoring order What if we had 60 musical bits? –That is 2 60 combinations –1, 152, 921, 504, 606, 846, 976 combinations Imagine we can create each combination in a single step –On a 1.5 GHz processor that is 768, 614, 336 seconds or 24 years to execute! Processing all combinations is O(2 n )
5
Georgia Institute of Technology Traveling Salesman Problem You have 30 clients to visit –You want to find the shortest path so that you visit each one time during a trip –The best known algorithm for finding the shortest path is O(n!) (n factorial) Factorial of 5 is 5 * 4 * 3 * 2 * 1 Factorial of 6 is 6 * 5 * 4 * 3 * 2 * 1 Factorial of n is n * (n – 1) * (n – 2) … to 1 For 30 cities 30! is 265, 252, 859, 812, 191, 058, 636, 308, 480, 000, 000 –Which wouldn't finish executing in your lifetime!
6
Georgia Institute of Technology Problem Classification Class P –Has polynomial running time Like linear or binary search Intractable –Problems that we can't solve in a reasonable time with reasonable data Like the combinations of sound parts problem Class NP –Problems that seem intractable, but maybe there is a solution in Class P that we haven't found yet Like the traveling salesman problem
7
Georgia Institute of Technology Unsolved Problem in Computer Science Is Class NP part of Class P? Or, are they completely separate? –If someone finds at least one algorithm to a Class NP problem that has polynomial running time That would prove NP is part of P –Or someone has to prove that there is no algorithm for a class NP problem that can have a polynomial running time
8
Georgia Institute of Technology An Algorithm that can't be Written Can a program read another program and the input to that program and predict if it will ever stop (halt)? –This is known as the Halting Problem –Alan Turing proved that a general algorithm couldn't be written to cover all possible input Using proof by absurdity in 1936 Before computers were being built! For particular programs and input you can write an algorithm that can tell if it will halt but there is no way to write a general algorithm that works on any program and input
9
Georgia Institute of Technology Comparing Computers How would you compare two computer advertisements? 2.53 GHz Intel Processor 2.7 GHz AMD Processor 256 MB SDRAM512 MB SDRAM 80GB Hard Drive100 GB Hard Drive 15 inch display17 inch display 16X CD/DVD48X CD/DVD
10
Georgia Institute of Technology Processor Speed 2.53 GHz is about 2.53 billion clock pulses per second –This doesn't mean that you can execute 2.53 instructions per second Many instructions take more than one clock cycle In general, a faster clock pulse means faster computation –Especially if the processor type is the same How fast do you need? –It depends on the type of work you are doing Word processing can be done on a slow machine 3D Game playing improves on a faster processor
11
Georgia Institute of Technology Storage Fastest and most expensive is cache memory Next fastest and next most expensive is RAM or SDRAM memory –256MB is 256 million bytes –Programs and data must be in RAM during execution This memory clears when the computer is off –Often the best investment is to increase the RAM This will make your programs run faster The hard drive is the slowest and cheapest memory –80GB is 80 billion bytes –All files are stored on the hard disk –Getting a bigger hard disk can leave more room for virtual memory Needed when RAM is full (swaps data in and out as needed)
12
Georgia Institute of Technology Exercise Find the details on at least two different kinds of computers in use at your school –Make suggestions for how to improve the speed of the computers Compare at least two computer ads –Decide which would be best for you to use for school work –Decide which would be best for you for running computer games
13
Georgia Institute of Technology Summary There are three categories of algorithms –Class P Like binary or linear search Can be solved in polynomial time –Intractable Problems that can't be solved in reasonable time with medium to large amounts of data Like combinatorial problems –Class NP Problems that seem intractable but maybe we haven't found the best algorithm yet Like the traveling salesman problem Machine speed is based on –The processor speed –The amount of each type of memory (cache, RAM, disk) Adding RAM is often the cheapest way to improve application speed
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.