Spring 2018 - CMPT 706 G100

Design and Analysis of Algorithms for Big Data (3)

Class Number: 10825

Delivery Method: In Person

Overview

  • Course Times + Location:

    Jan 3 – Apr 10, 2018: Mon, Wed, Fri, 12:30–1:20 p.m.
    Burnaby

Description

CALENDAR DESCRIPTION:

Concepts and problem-solving techniques that are used in the design and analysis of efficient algorithms. Special consideration and adaptations for big data applications will be emphasized. Students with credit for CMPT 705 may not take this course for further credit.

COURSE DETAILS:

This course is primarily a course on problem solving - choosing good approaches and recognizing when a solution is a good solution. The objective of this course is to introduce concepts and problem-solving techniques that are used in the design and analysis of efficient algorithms for big data applications.

Topics

  • Algorithms with Large Numbers: Asymptotics, Cryptography, Hashing, Randomization
  • Divide-and-Conquer: Recurrences, Sorting, Selection, Lower bounds
  • Graphs: Graph searches and applications, Trees, Shortest paths, Priority queues
  • Greedy Algorithms: Spanning trees, Amortized analysis, Huffman encoding
  • Dynamic Programming: Shortest paths, Longest subsequences, Knapsacks, Memoization
  • Algorithms for Large-Scale Graphs: Vertex-centric and edge-centric approaches
  • Algorithm Design for Map-Reduce: Complexity analysis and trade-offs
  • Consistency in Large Distributed Systems: Paxos consensus, CAP theorem
  • Algorithms for Large Datasets: Time-accuracy trade-offs

Grading

NOTES:

To be discussed during the first week of classes.

Materials

MATERIALS + SUPPLIES:

Reference Books

  • Algorithm Design, J. Kleinberg, E. Tardos, Addison Wesley, 2006, 9780321295354
  • Introduction to Algorithms (3rd Edition), T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein, MIT Press, 2009, 9780262033848

REQUIRED READING:

Algorithms, S. Dasgupta,
C. Papadimitriou, U. Vazirani,
McGraw-Hill Higher Education,, 2008
ISBN: 9780073523408

Graduate Studies Notes:

Important dates and deadlines for graduate students are found here: http://www.sfu.ca/dean-gradstudies/current/important_dates/guidelines.html. The deadline to drop a course with a 100% refund is the end of week 2. The deadline to drop with no notation on your transcript is the end of week 3.

Registrar Notes:

SFU’s Academic Integrity web site http://students.sfu.ca/academicintegrity.html is filled with information on what is meant by academic dishonesty, where you can find resources to help with your studies and the consequences of cheating.  Check out the site for more information and videos that help explain the issues in plain English.

Each student is responsible for his or her conduct as it affects the University community.  Academic dishonesty, in whatever form, is ultimately destructive of the values of the University. Furthermore, it is unfair and discouraging to the majority of students who pursue their studies honestly. Scholarly integrity is required of all members of the University. http://www.sfu.ca/policies/gazette/student/s10-01.html

ACADEMIC INTEGRITY: YOUR WORK, YOUR SUCCESS