Chapter 0 Fall 2017 PDF.pdf

# Chapter 0 Fall 2017 PDF.pdf - CS 2413 Design and Analysis...

• 45

This preview shows pages 1–9. Sign up to view the full content.

CS 2413 Design and Analysis of Algorithms

This preview has intentionally blurred sections. Sign up to view the full version.

What this course is about The theoretical study of design and analysis of computer algorithms
Design and Analysis of Algorithms? Design - is going from a problem specification to an algorithm .” Analysis - is going from a description of an algorithm to some properties that we might care about: proof of its termination, proof of its correctness, determining its best/worst-case running time, space use etc.” Boris Aronov

This preview has intentionally blurred sections. Sign up to view the full version.

Algorithm Definition There is no generally agreed upon formal definition Computational problem : specification of the output given the input e.g. The sorting problem input : A sequence of n numbers (a 1 ,a 2 ,…, a n ) output : A permutation (reordering) (a’ 1 ,a’ 2 ,…, a’ n ) such a’ 1 a’ 2 a’ n Algorithm : a well defined computational procedure for solving a well specified computational problem e.g. Mergesort Instance of a problem : all the inputs needed to solve the problem e.g. {Fred, George, Abigail, John, Nancy } Correct algorithm : solves the problem by halting with the correct output for every instance of the problem
Many ways to solve a problem problem Algorithm 1 Algorithm 2 Algorithm n Program Program Program Program Program Program

This preview has intentionally blurred sections. Sign up to view the full version.

Why study algorithms? Solve problems more e ciently
Algorithms more important than hardware “Everyone knows Moore’s Law – a prediction made in 1965 by Intel co-founder Gordon Moore that the density of transistors in integrated circuits would continue to double every 1 to 2 years. (…) Even more remarkable – and even less widely understood – is that in many areas, performance gains due to improvements in algorithms have vastly exceeded even the dramatic performance gains due to increased processor speed. The algorithms that we use today for speech recognition, for natural language translation, for chess playing, for logistics planning, have evolved remarkably in the past decade. It’s difficult to quantify the improvement, though, because it is as much in the realm of quality as of execution time. In the field of numerical algorithms, however, the improvement can be quantified. Here is just one example, provided by Professor Martin Grötschel of Konrad-Zuse- Zentrum für Informationstechnik Berlin. Grötschel, an expert in optimization, observes that a benchmark production planning model solved using linear programming would have taken 82 years to solve in 1988, using the computers and the linear programming algorithms of the day. Fifteen years later – in 2003 – this same model could be solved in roughly 1 minute, an improvement by a factor of roughly 43 million. Of this, a factor of roughly 1,000 was due to increased processor speed, whereas a factor of roughly 43,000 was due to improvements in algorithms! Grötschel also cites an algorithmic improvement of roughly 30,000 for mixed integer programming between 1991 and 2008.” 2010 Report to the President and Congress: Designing a Digital Future: Federally FUnded R&D in Networking and IT :

This preview has intentionally blurred sections. Sign up to view the full version.

Changing the world
This is the end of the preview. Sign up to access the rest of the document.
• Spring '18
• Algorithms, Big O notation, Analysis of algorithms, FN, compute Fib, compiler compute Fib

{[ snackBarMessage ]}

### What students are saying

• As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.

Kiran Temple University Fox School of Business ‘17, Course Hero Intern

• I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.

Dana University of Pennsylvania ‘17, Course Hero Intern

• The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.

Jill Tulane University ‘16, Course Hero Intern