Approximation Algorithms, Hardness of Approximation, Algorithmic Graph Theory, Probabilistic and Randomized Algorithms.
I am interested in design and analysis of algorithms; in particular approximation algorithms and hardness of approximation. Most of these problems are optimization problems that are known to be hard. Our goal is to design efficient algorithms with provable guarantee on the quality of the solution with respect to the optimum one. These problems arise in various applications such as clustering problems, vehicle routing, scheduling, and network design.
An introduction to the tools of set theory, logic, and induction, and their use in the practice of reasoning about algorithms and programs. Basic set theory; the notion of a function; counting; propositional and predicate logic and their proof systems; inductive definitions and proofs by induction; program specification and correctness. Prerequisites: Any 100-level CMPUT course, CMPUT 274 or SCI 100.Fall Term 2020