Advanced Algorithms Piyush Kumar Lecture 1 Introduction Welcome

  • Slides: 17
Download presentation
Advanced Algorithms Piyush Kumar (Lecture 1: Introduction) Welcome to COT 5405

Advanced Algorithms Piyush Kumar (Lecture 1: Introduction) Welcome to COT 5405

Today My Info : Timings for the class References Pre-Requisites Survey How you will

Today My Info : Timings for the class References Pre-Requisites Survey How you will be graded Syllabus About Advanced Algorithms Our First Problem Stable Matching

Instructor Piyush Kumar 161 Love Building Ph: 850 -270 -1642 Web page: http: //piyush.

Instructor Piyush Kumar 161 Love Building Ph: 850 -270 -1642 Web page: http: //piyush. compgeom. com Office Hours: Tuesday (after class) 3: 00 pm to 4: 00 pm Email: piyush at acm dot org

Class Timings Tuesday , Thursday ( 12: 30 pm – 1: 45 pm )

Class Timings Tuesday , Thursday ( 12: 30 pm – 1: 45 pm ) First Class: 24 th Aug Exams: Look in the course – info sheet.

Other Details Course web site: http: //piyush. compgeom. com/teach/AA 10/ Textbook.

Other Details Course web site: http: //piyush. compgeom. com/teach/AA 10/ Textbook.

References Klienberg / Tardos Algorithm Design Other References [CLRS] T. Cormen, C. Leiserson, R.

References Klienberg / Tardos Algorithm Design Other References [CLRS] T. Cormen, C. Leiserson, R. Rivest, and C. Stein. Introduction to Algorithms (2 nd edition). [MR] R. Motwani and P. Raghavan. Randomized Algorithms. CUP, 1995. [V] V. V. Vazirani. Approximation Algorithms. [AMO]. Ravindra K. Ahuja, Thomas L. Magnanti, and James B. Orlin. Network Flows: Theory, Algorithms, and Applications. Prentice Hall, 1993. My slides and notes

Pre. Req Algorithms (COP 4531 or higher) C++ Basic Math skills Lots of Time…

Pre. Req Algorithms (COP 4531 or higher) C++ Basic Math skills Lots of Time… To. Do List: Get a Lin. Prog Account Get a copy of the text book.

Pre. Req COP 4531 or higher (What this class does not cover) Basic Asymptotic

Pre. Req COP 4531 or higher (What this class does not cover) Basic Asymptotic analysis / Recursions Simple Data Structures (PQs, BBTs, …) Preliminary Graph Algorithms: DFS/BFS/MSTs Easy Divide and Conquer: Mergesort/Quicksort/…

Grading* Homework : 20% Class Participation : 10% Two Surprise quizzes : 20% Class

Grading* Homework : 20% Class Participation : 10% Two Surprise quizzes : 20% Class Project: 10% Midterm : 15% Final Exam : 25%

Syllabus* Network Flows Advanced Data Structures Compression Optimization Approximation Algorithms Online Algorithms Parallel /

Syllabus* Network Flows Advanced Data Structures Compression Optimization Approximation Algorithms Online Algorithms Parallel / External memory / Cache oblivious algorithms Introduction to Computational geometry Algorithms from machine learning Popular Demand Topics - ? * Tentative

Illustrative problems

Illustrative problems

Interval Scheduling jobs don't overlap Input. Set of jobs with start times and finish

Interval Scheduling jobs don't overlap Input. Set of jobs with start times and finish times. Goal. Find maximum cardinality subset of mutually compatible jobs. a b c d e f g h 0 1 2 3 4 5 6 7 8 9 10 11 Time 12

Weighted Interval Scheduling Input. Set of jobs with start times, finish times, and weights.

Weighted Interval Scheduling Input. Set of jobs with start times, finish times, and weights. Goal. Find maximum weight subset of mutually compatible jobs. 23 12 20 26 13 20 11 16 0 1 2 3 4 5 6 7 8 9 10 11 Time 13

Bipartite Matching Input. Bipartite graph. Goal. Find maximum cardinality matching. A 1 B 2

Bipartite Matching Input. Bipartite graph. Goal. Find maximum cardinality matching. A 1 B 2 C 3 D 4 E 5 14

Independent Set subset of nodes such that no two joined by an edge Input.

Independent Set subset of nodes such that no two joined by an edge Input. Graph. Goal. Find maximum cardinality independent set. 2 1 4 5 3 6 7 15

Competitive Facility Location Input. Graph with weight on each node. Game. Two competing players

Competitive Facility Location Input. Graph with weight on each node. Game. Two competing players alternate in selecting nodes. Not allowed to select a node if any of its neighbors have been selected. Goal. Select a maximum weight subset of nodes. 10 1 5 15 5 1 15 10 Second player can guarantee 20, but not 25. 16

Five Representative Problems Variations on a theme: independent set. Interval scheduling: n log n

Five Representative Problems Variations on a theme: independent set. Interval scheduling: n log n greedy algorithm. Weighted interval scheduling: n log n dynamic programming algorithm. Bipartite matching: nk max-flow based algorithm. Independent set: NP-complete. Competitive facility location: PSPACE-complete. 17