Presentation is loading. Please wait.

Presentation is loading. Please wait.

UMass Lowell Computer Science 91.503 Analysis of Algorithms Prof. Karen Daniels Fall, 2002 Lecture 1 (Part 1) Introduction/Overview Tuesday, 9/3/02.

Similar presentations


Presentation on theme: "UMass Lowell Computer Science 91.503 Analysis of Algorithms Prof. Karen Daniels Fall, 2002 Lecture 1 (Part 1) Introduction/Overview Tuesday, 9/3/02."— Presentation transcript:

1 UMass Lowell Computer Science 91.503 Analysis of Algorithms Prof. Karen Daniels Fall, 2002 Lecture 1 (Part 1) Introduction/Overview Tuesday, 9/3/02

2 Web Page http://www.cs.uml.edu/~kdaniels/courses/ALG_503.html Web Page

3 Nature of the Course ä Core course: required for all CS graduate students ä Advanced algorithms ä Builds on undergraduate algorithms 91.404 ä No programming required ä “Pencil-and-paper” exercises ä Lectures supplemented by: ä Programs ä Real-world examples

4 What’s It All About? ä Algorithm: ä steps for the computer to follow to solve a problem ä Some of our goals :(at an advanced level) ä recognize structure of some common problems ä understand important characteristics of algorithms to solve common problems ä select appropriate algorithm to solve a problem ä tailor existing algorithms ä create new algorithms

5 Some Algorithm Application Areas Computer Graphics Geographic Information Systems Robotics Bioinformatics Astrophysics Medical Imaging Telecommunications Design Apply Analyze

6 Some Typical Problems Fourier Transform Input: A sequence of n real or complex values h_i, 0 <= i <= n-1, sampled at uniform intervals from a function h. Problem: Compute the discrete Fourier transform H of h Nearest Neighbor Input: A set S of n points in d dimensions; a query point q. Input: A set S of n points in d dimensions; a query point q. Problem: Which point in S is closest to q? Problem: Which point in S is closest to q? SOURCE: Steve Skiena’s Algorithm Design Manual (for problem descriptions, see graphics gallery at ) (for problem descriptions, see graphics gallery at http://www.cs.sunysb.edu/~algorith) Shortest Path Input: Edge-weighted graph G, with start vertex and end vertex t Problem: Find the shortest path from to t in G Bin Packing Input: A set of n items with sizes d_1,...,d_n. A set of m bins with capacity c_1,...,c_m. Problem: How do you store the set of items using the fewest number of bins?

7 Some Typical Problems Transitive Closure Input: A directed graph G=(V,E). Problem: Construct a graph G'=(V,E') with edge (i,j) \in E' iff there is a directed path from i to j in G. For transitive reduction, construct a small graph G'=(V,E') with a directed path from i to j in G' iff (i,j) \in E. Convex Hull Input: A set S of n points in d- dimensional space. Problem: Find the smallest convex polygon containing all the points of S. Problem: Find the smallest convex polygon containing all the points of S. Eulerian Cycle Input: A graph G=(V,E). Problem: Find the shortest tour of G visiting each edge at least once. Edge Coloring Input: A graph G=(V,E). Problem: What is the smallest set of colors needed to color the edges of E such that no two edges with the same color share a vertex in common?

8 Some Typical Problems Hamiltonian Cycle Input: A graph G=(V,E). Problem: Find an ordering of the vertices such that each vertex is visited exactly once. Clique Input: A graph G=(V,E). Problem: What is the largest S \subset V such that for all x,y \in S, (x,y) \in E?

9 Tools of the Trade: Core Material ä Algorithm Design Patterns ä dynamic programming, linear programming, greedy algorithms, approximation algorithms, randomized algorithms, parallel algorithms, sweep algorithms ä Advanced Analysis Techniques ä amortized analysis, probabilistic analysis ä Theoretical Computer Science principles ä NP-completeness, NP-hardness Asymptotic Growth of Functions Summations Recurrences Sets Probability MATH Proofs Calculus Combinations Logarithms Number Theory Geometry Trigonometry Complex Numbers Permutations Linear Algebra Polynomials

10 Prerequisites ä 91.500 and 91.404 or 91.583. ä Co-requisite 91.502. ä Standard graduate-level prerequisites for math background apply. Asymptotic Growth of Functions Summations Recurrences Sets Probability MATH Proofs Calculus Combinations Logarithms Number Theory Geometry Trigonometry Complex Numbers Permutations Linear Algebra Polynomials

11 Some Important Types of Algorithms & Problems ä Graph Algorithms ä Shortest paths (single source & all pairs) ä Maximum flow ä Number Theoretic Algorithms ä Cryptography ä String/Pattern Matching ä Computational Geometry ä Intersections ä Convex hull ä Nearest neighbors

12 Textbook - - Required: ä Introduction to Algorithms ä by T.H. Corman, C.E. Leiserson, R.L. Rivest ä McGraw-Hill ä 2001 ä ISBN 0-07-013151-1 ä see course web site (MiscDocuments) for errata (1 st edition) Ordered for UML bookstore New Edition

13 Syllabus (current plan)

14 Chapter Dependencies Math Review Appendices A, B, C: Summations, Proof Techniques (e.g. Induction), Sets, Graphs, Counting & Probability Ch 1-5 Foundations: Asymptotics, Logs, Recurrences, Randomized Algorithms Ch 27 Parallel Comparison-Based Sorting Networks Math: Linear Algebra Ch 33 Computational Geometry Math: Geometry (High School Level) Ch 35 Approximation Algorithms Ch 31 Number-Theoretic Algorithms RSA Math: Number Theory Ch 32 String Matching Automata New Edition Ch 6-9 Sorting Ch 15, 16, 17 Advanced Design & Analysis Techniques Ch 22-24,25,26 Graph Algorithms Ch 34 NP-Completeness Ch 29 Linear Programming

15 Important Dates ä Midterm Exam:Tuesday, 10/15 ä Final Exam:TBA

16 Grading ä ä Homework35% ä ä Midterm 30% (open book, notes ) ä ä Final Exam35% (open book, notes )

17 Homework 1 T 9/3 T 9/10 91.404 review & Chapter 15 HW# Assigned Due Content


Download ppt "UMass Lowell Computer Science 91.503 Analysis of Algorithms Prof. Karen Daniels Fall, 2002 Lecture 1 (Part 1) Introduction/Overview Tuesday, 9/3/02."

Similar presentations


Ads by Google