Modern Algorithm Design


The field of algorithm design has matured and grown in scope over the last sixty years - starting with the basic algorithmic questions of sorting and searching, to algorithms for problems from various disciplines; so that neary every field of human endeavour is being revolutionized by the algorithmic viewpoint. Students of this course will learn to use these modern tools irrespective of their future field of study or specialization.

1. Students are able to use algorithm design techniques in applications where data is imprecise, unavailable or arriving over time.
2. Students are able to use techniques such as randomization, network flows, etc. to design efficient algorithms and heuristics.
3. Students are able to use appropriate data structures that help solving algorithmic problems. efficiently.
4. Students are able to explain different approaches of dealing with NP-hard optimization problems.

Course Offering