cs 473 algorithms
play

CS 473: Algorithms Chandra Chekuri Ruta Mehta University of - PowerPoint PPT Presentation

CS 473: Algorithms Chandra Chekuri Ruta Mehta University of Illinois, Urbana-Champaign Fall 2016 Chandra & Ruta (UIUC) CS473 1 Fall 2016 1 / 19 CS 473: Algorithms, Fall 2016 Administrivia, Introduction Lecture 1 August 24, 2016


  1. CS 473: Algorithms Chandra Chekuri Ruta Mehta University of Illinois, Urbana-Champaign Fall 2016 Chandra & Ruta (UIUC) CS473 1 Fall 2016 1 / 19

  2. CS 473: Algorithms, Fall 2016 Administrivia, Introduction Lecture 1 August 24, 2016 Chandra & Ruta (UIUC) CS473 2 Fall 2016 2 / 19

  3. Part I Administrivia Chandra & Ruta (UIUC) CS473 3 Fall 2016 3 / 19

  4. Instructional Staff Instructors: Chandra Chekuri and Ruta Mehta 1 Teaching Assistants: Shalmoli Gupta and Patrick Lin 2 Graders: TBD 3 Office hours: See course webpage 4 Email: Use private notes on Piazza to reach course staff. 5 Chandra & Ruta (UIUC) CS473 4 Fall 2016 4 / 19

  5. Online resources Webpage: General information, lecture schedule/slides/notes, 1 homeworks, course policies courses.engr.illinois.edu/cs473 Gradescope: HW submission, grading, regrade requests 2 Moodle: HW solutions, grades 3 Piazza: Announcements, online questions and discussion, 4 contacting course staff (via private notes) See course webpage for links Important: check Piazza/course web page at least once each day Chandra & Ruta (UIUC) CS473 5 Fall 2016 5 / 19

  6. Prerequisites Prerequisites: CS 173 (discrete math), CS 225 (data structures), 1 CS 374 (algorithms and models of computation) or sufficient mathematical maturity Concretely: 2 Good ability to write formal proofs of correctness 1 Comfort with recursive thinking/algorithms, reductions 2 Comfort with basic data structures: balanced binary search 3 trees, priority queues, heaps, etc. Basic graph algorithms: reachability (DFS/BFS), undirected vs 4 directed, strong connected components, shortest paths and Dijkstra’s algorithm, minimum spanning trees Probability: random variables, expectation, variance 5 Exposure to models of computation and NP-Completeness 6 (optional but will help) Chandra & Ruta (UIUC) CS473 6 Fall 2016 6 / 19

  7. Textbooks and Resources Recommended books: (not required) 1 Algorithms by Dasgupta, Papadimitriou & Vazirani. 1 Available online for free! Algorithm Design by Kleinberg & Tardos 2 Lecture notes/slides/pointers: available on course web-page 2 Additional References 3 Lecture notes of Jeff Erickson, Sariel HarPeled, and others 1 Computers and Intractability: Garey and Johnson. 2 Chandra & Ruta (UIUC) CS473 7 Fall 2016 7 / 19

  8. Grading Policy: Overview Homeworks: 25% 1 Midterms: 45% ( 2 × 22 . 5% ) 2 Finals: 30% (covers the full course content) 3 Midterms dates: Midterm 1: Mon, Oct 3, 7–9pm, 1320 DCL 1 Midterm 2: Mon, Nov 7, 7–9pm, 1320 DCL 2 Final Exam: Fri, Dec 9 (TENTATIVE) 3 No conflict exam offered unless you have a valid reason (see course webpage). Chandra & Ruta (UIUC) CS473 8 Fall 2016 8 / 19

  9. Homeworks One homework every week: Due on Tuesdays at 8pm. To be 1 submitted electronically in pdf form in Gradescope . Assigned at least a week in advance. Homeworks can be worked on in groups of up to 3 and each 2 group submits one written solution (except Homework 0). Important: academic integrity policies. See course web page. 3 Chandra & Ruta (UIUC) CS473 9 Fall 2016 9 / 19

  10. More on Homeworks No extensions or late homeworks accepted. 1 To compensate, five problems will be dropped. Homeworks 2 typically have three problems each. Important: Read homework faq/instructions on website. 3 Chandra & Ruta (UIUC) CS473 10 Fall 2016 10 / 19

  11. Advice Attend lectures, please ask plenty of questions. 1 Don’t skip homework and don’t copy homework solutions. 2 Study regularly and keep up with the course. 3 This is a course on problem solving. Solve as many as you can! 4 Books/notes have plenty. Ask for help promptly. Make use of office hours/Piazza. 5 This is an optional mixed undergrad/grad course. 6 (Mathematical) maturity and independence are expected. Chandra & Ruta (UIUC) CS473 11 Fall 2016 11 / 19

  12. Homework 0 HW 0 is posted on the class website. 1 HW 0 due on Tuesday August 30 at 8pm 2 HW 0 to be done and submitted individually. 3 Chandra & Ruta (UIUC) CS473 12 Fall 2016 12 / 19

  13. Miscellaneous Please contact instructors if you need special accommodations. Lectures are being taped. See course webpage. Emergencies: see information at link http://police.illinois.edu/dpsapp/wp-content/uploads/ 2016/08/syllabus-attachment.pdf Chandra & Ruta (UIUC) CS473 13 Fall 2016 13 / 19

  14. Part II Course Goals and Overview Chandra & Ruta (UIUC) CS473 14 Fall 2016 14 / 19

  15. Course Structure Course divided into four parts: Recursion, dynamic programming. 1 Randomization in algorithms 2 Combinatorial and Discrete Optimization: flows/cuts, 3 matchings, introduction to linear and convex programming Intractability and heuristics 4 Chandra & Ruta (UIUC) CS473 15 Fall 2016 15 / 19

  16. Course Goals Mostly algorithms: Some fundamental problems and algorithms 1 FFT, Hashing, Flows/Cuts, Matchings, LP, . . . 1 Broadly applicable techniques in algorithm design 2 Recursion, Divide and Conquer, Dynamic Programming 1 Randomization in algorithms and data structures 2 Optimization via convexity and duality 3 Approximation and heuristics 4 Role of mathematics in algorithm design: graph theory, (linear) 5 algebra, geometry, convexity · · · Chandra & Ruta (UIUC) CS473 16 Fall 2016 16 / 19

  17. Complexity and Algorithms P : class of problems that can solved in polynomial time EXP : class of problems that can be solved in exponential time NP : non-deterministic polynomial-time. DECIDABLE : class of problems that have an algorithm Theorem There exist (many) undecidable problems. Theorem P is a strict subset of EXP . P ⊆ NP ⊆ EXP . Major open problem: Is P = NP ? Many useful and important problems are intractable : NPComplete , EXPComplete , UNDECIDABLE . Chandra & Ruta (UIUC) CS473 17 Fall 2016 17 / 19

  18. Complexity and Algorithms Goals of algorithm desgin. find the “best” possible algorithm for some spefic problems of interest develop broadly applicable techniques for algorithm design Goals of complexity: prove lower bounds for specific problems develop broadly applicable techniques for proving lower bounds develop complexity classes to characterize many problems Rich interplay between the two areas. Chandra & Ruta (UIUC) CS473 18 Fall 2016 18 / 19

  19. Important Ingredients in Algorithm Design What is the problem (really)? 1 What is the input? How is it represented? 1 What is the output? 2 What is the model of computation? What basic operations are 2 allowed? Algorithm design 3 Understand the structure of the problem Relate it to standard and known problems via reductions Try algorithmic paradigms: recursion, divide and conquer, dynamic programming, greedy, convex optimization, · · · Failing, try to prove a lower bound via reduction to existing hard problems or settle for approximation, heuristics. Proving correctness of algorithm 4 Analysis of time and space complexity 5 Algorithmic engineering 6 Chandra & Ruta (UIUC) CS473 19 Fall 2016 19 / 19

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend