1 / 14

About CS5234: Course Overview

About CS5234: Course Overview. CS5234: Combinatorial and Graph Algorithms Level and Emphasis of Course Advanced level, geared towards research Learn to design more efficient algorithms Learn advanced techniques for analysis of algorithms Challenging Homeworks

betty
Télécharger la présentation

About CS5234: Course Overview

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. About CS5234: Course Overview CS5234: Combinatorial and Graph Algorithms • Level and Emphasis of Course • Advanced level, geared towards research • Learn to design more efficient algorithms • Learn advanced techniques for analysis of algorithms • Challenging Homeworks • Is this course suitable for you? • Course Pre-requisites • Mathematical Maturity • Programming Experience

  2. CS5234: Comb and Graph Alg (Fall 2007) • Instructor: Leong Hon Wai, COM1 03-41 • http://www.comp.nus.edu.sg/~CS5234/2007-08/ • Course Objectives: • covers advanced design and analysis of algorithms • emphasizes efficient algorithms and data structures • Algorithms for combinatorial optimisation • Use of algorithms in advanced software development • Target Students: • advanced undergraduate (4th year) students • beginning graduate students • those doing research in algorithm design

  3. CS5234: Overview…(2) • Prerequisite: • CS3230 Design and Analysis of Algorithms AND • C++ Programming Skills • Or Consent of Instructor • TextBook and Reference Material: • [CLRS01] Introduction to Algorithms, (2nd edition) by Cormen, Leiserson, Rivest, Stein • (Material also comes from [Tarj83], [RND77], etc)

  4. CS5234: Overview… (3) • Course Grading: • 30% Homeworks • 30% Programming Assignments • 40% Final Exam (OPEN BOOK) • Homework: (30%) • About 4-5 sets (about 1 every 2-3 weeks) • Very important part of the course • Project: (30%) • LEDA programming assignments • Programming project

  5. CS5234: Topics (Tentative) • QUICK REVIEW: • AA, DS, DP, Greedy, Graph Alg • ADVANCED DATA STRUCTURES and ALGORITHMS • Heaps, Fast Graph Algorithms • Amortized Analysis and Binomial Heaps, Fibonacci Heaps • LEDA: Library of Efficient Data Structures and Algorithms • COMBINATORIAL Optimization • Network Flow Problems: Algorithms and Applications • Maximum Matching:Algorithmsand Applications • CASE STUDY: Graph Partitioning and Berth Allocation Problem • NP-COMPLETENESS • NP-completeness: Cook's Theorem, Reduction • Approximation Algorithms • Local Search Methods • SPECIAL TOPICS: • Presentations by Students

  6. CS4534: References • Main Text: [CLRS01] Introduction to Algorithms, (2nd edition) by Cormen, Leiserson, Rivest, Stein, MIT, (2001) • References: [Tar83]*Data Structures and Network Algorithmsby Robert E. Tarjan, SIAM, 1983. [RND77]Combinatorial Algorithms: Theory & Practiceby Reingold, Nievergelt & Deo, PH, (1977) [PS82]Combinatorial Optimization: Alg. & Complexity,by Papadimitriou & Steiglitz, PH, (1982)

  7. About CS5234 Homeworks • RSA Problem • Routine Problems -- easy practice problems • Standard Problems -- to be submitted • Advanced Problems -- for challenge, fun

  8. About CS5234 Homeworks – (2) • Academic Policy (on Plagiarism) • You do your work YOURSELF • If REALLY stuck, discuss ONLY general approaches • IF YOU DISCUSS, write names of collaborators • Do NOT copy/compare answers! • Your Homework Answers: • Concise & Precise Answers • Appropriate Level of Detail (see handouts)

  9. CS5234: Is this the right Course for You? • I ASSUME knowledge of • Programming (CS1101); Data Structures (CS1102); • AND CS3230 Analysis of Algorithms; • If you have NOT done CS3230 or equiv.: • Take CS3230 instead! This is NOT a course to learn algorithms? • We assume that you ALREADY KNOW algorithms • TAKE CS3230 instead!

  10. CS5234 Pre-Requisites… • CS3230 Analysis of Algorithms • Else, Background Knowledge Assumed • Alternatively, see that you have mastered the following Chapters from the text [CLRS01] (including the analysis of their running times): • Chapters 3-5 Mathematical Foundations • Chapters 6-13 Basic Data Structures • Chapters 15-16 DP and Greedy Algorithms • Chapters 22-24 Basic Graph Algorithms • Otherwise: • Talk to instructor (case-by-case)

  11. Else, Background Knowledge Assumed…. • Data Structures: (with Analysis) • Stacks, Queues, Lists, • Binary search trees, balanced trees, • Heaps and priority queues • Algorithm Design Paradigms (with Analysis) • Standard sorting and searching algorithms • Graph algorithms: DFS, BFS, • Dijkstra's SP alg, MST Algorithms • Greedy Algorithms, Dynamic Prog, Divide-and-Conquer • Analysis of Algorithms • Expertise with Big-O notations • Competent with Algorithm Analysis: • Quicksort, Heapsort, DFS, BFS, Divide-and-Conquer alg.

  12. Q & A. --- The End ---

  13. CS4234 Lecture 1 -- (14-Aug-07) “Quick Review” • Lecture Topics and Readings • Motivation • Asymptotics & Anal of Algs [CLRS]-C1-4 • Randomized Quicksort [CLRS]-C7 • 1.386 n lg n • Augmenting Data Structures [CLRS]-C14 • Assignments (in/out): • Out: HW1 -- Due on 28-Aug-2007 Quickly get up to speed.

  14. CS4234 Lecture 2 -- (21-Aug-07) “Quick Review” • Lecture Topics and Readings • Dynamic Programming Algs [CLRS]-C15 • Greedy Algorithms [CLRS]-C16 • Heaps (Priority Queues) [CLRS]-C6 • Graph Algorithms Assumed [CLRS]-C22-23 Quickly get up to speed.

More Related