Courses by Research Area for the Comprehensive Course Requirement
Computational Intelligence (Faculty contact: Dr. Giuseppe Carenini)
422: Intelligent Systems
502: Artificial Intelligence I
503: Computational Linguistics I
515: Computational Robotics
522: Artificial Intelligence II
532: Topics in Artificial Intelligence
Data Management and Analysis (Faculty contact: Dr. Rachel Pottinger)
340: Machine Learning and Data Mining
504: Data Management
534: Topics in Data Management
540: Machine Learning
550: Machine Learning II
564: Data Mining
Graphics and Vision (Faculty contact for Graphics: Dr. Michiel van Panne; Faculty contact for Vision: Dr. Leonid Sigal)
314: Computer Graphics (previously numbered as 414)
424: Geometric Modeling
425: Computer Vision
426: Computer Animation
505: Image Understanding I: Image Analysis
514: Computer Graphics: Rendering
524: Computer Graphics: Modeling
525: Image Understanding II: Scene Analysis
526: Computer Animation
533: Topics in Computer Graphics
535: Topics in Simulation and Optimization (subject to topics)
HCI (Faculty contact: Dr. Karon MacLean)
344: Introduction to Human Computer Interaction Methods
543: Physical User Interface Design and Evaluation
544: Human-Computer Interaction
554: Topics in HCI (as indicated on the graduate course schedule)
444: Advanced Methods for Human Computer Interaction (may be counted on an individual case-by-case basis. Students should obtain permission from the Faculty Contact in HCI)
Scientific Computing (Faculty contact: Dr. Chen Greif)
402: Numerical Linear Algebra
403: Numerical Solution of Ordinary Differential Equations
406: Computational Optimization
517: Sparse Matrix Computation
520: Numerical Solution of Differential Equations
542: Topics in Numerical Computation
546: Numerical Optimization
Software Engineering and Programming Languages (Faculty contact: Dr. Ron Garcia)
507: Software Engineering
509: Programming Language Principles
511: Implementation of Programming Languages
519: Logic Programming and Functional Programming
529: Definition of Programming Languages
539: Topics in Programming Languages
Systems (Faculty contact: Dr. Thomas Pasquier)
415: Advanced Operating Systems
416: Distributed System
417: Computer Networking
418: Parallel Computation
508: Operating Systems
521: Parallel Algorithms and Architectures
527: Computer Communication Protocols
538: Topics in Computer Systems
Theory (Faculty contact: Dr. Will Evans)
420: Advanced Algorithm Design & Analysis
421: Introduction to Theory of Computing
500: Fundamentals of Algorithm Design and Analysis
501: Theory of Automata, Formal Languages and Computability
506: Complexity of Computation
516: Computational Geometry
531: Topics in Theory of Computation
536: Topics in Algorithms and Complexity
537: Topics in Coding and Information Theory
Interdisciplinary
405: Modelling and Simulation (Faculty contact: Dr. Dinesh Pai)
445: Algorithms in Bioinformatics (Faculty contact for Bioinformatics: Dr. Anne Condon)
513: Integrated Systems Design (Faculty contact: Dr. Alan Hu)
530: Topics in Information Processing (subject to topic)
532: Topics in AI: Multi-Agent Systems (Faculty contact: Dr. Kevin Leyton-Brown)
545: Algorithms for Bioinformatics (Faculty contact for Bioinformatics: Dr. Anne Condon)
547: Information Visualization (Faculty contact: Dr. Tamara Munzner)
*Besides the courses listed above, graduate courses from other departments that have relevance to computer science or the student’s research area can be counted in the interdisciplinary area. If a student wishes to count such as course towards their Comprehensive Course Requirement, then their research supervisor adjudicates on whether it should qualify; if so, the supervisor should write a short (typically 2-3 sentence) rationale to be sent along with the CCR.