Chapter 0 Fall 2017 PDF.pdf

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

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

View Full Document Right Arrow Icon
CS 2413 Design and Analysis of Algorithms
Image of page 1

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

View Full Document Right Arrow Icon
What this course is about The theoretical study of design and analysis of computer algorithms
Image of page 2
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
Image of page 3

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

View Full Document Right Arrow Icon
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
Image of page 4
Many ways to solve a problem problem Algorithm 1 Algorithm 2 Algorithm n Program Program Program Program Program Program
Image of page 5

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

View Full Document Right Arrow Icon
Why study algorithms? Solve problems more e ciently
Image of page 6
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 :
Image of page 7

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

View Full Document Right Arrow Icon
Changing the world
Image of page 8
Image of page 9
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

What students are saying

  • Left Quote Icon

    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.

    Student Picture

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

  • Left Quote Icon

    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.

    Student Picture

    Dana University of Pennsylvania ‘17, Course Hero Intern

  • Left Quote Icon

    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.

    Student Picture

    Jill Tulane University ‘16, Course Hero Intern