Course Directory

This is the current graduate course directory for 2019-2020 (subject to change). Click on the title of a course for a more detailed overview.

Course Registration FAQ

You can refer to the Graduate Program Manual for information about registration such as:

  • How to register using Bear Tracks
  • Making changes to registration
  • Maintaining registration in your program
  • Auditing a course
  • Withdrawing from the University

If you have further questions, please email the Grad Program Advisor for assistance.

The Office of the Registrar sets the registration deadlines for each term.

You can continue to add, drop, and change classes in your schedule until the add/drop deadline in each term. After that deadline, if you drop or withdraw from a course, you will still need to pay some or all of the tuition fee for that course, and that course will appear on your transcript.

Full-time thesis-based students must be registered in ★9 credits per term in both the Fall and Winter (6.10 Full-time Registration Policy).

You may need to register in thesis sections in combination with regular course registrations in order to achieve ★9 credits of course weight for registration status.

  • THES 903: equivalent to a ★3 credit course
  • THES 906: equivalent to a ★6 credit course
  • THES 909: equivalent to a ★9 credit course

Most course registration is first-come, first-served.

If there is a class you want to take but it is already full, you can place that class on your Watch List in Bear Tracks. When a space becomes available in that class, you will be notified by email or SMS (along with anyone else who has that class on their Watch List) and will have an opportunity to register on a first-come, first-served basis.

Priority for CMPUT courses is given to students in our program, so you may not be able to enroll on Bear Tracks. If you are interested in taking Computing Science courses and are not in our department:

  • Email (from your @ualberta account) the instructor who teaches the course, to request written permission.
    • Note: It is up to the instructor of the course to decide if you are eligible to enroll. Even if space is available, it does not guarantee your request will be approved.
  • Once permission is granted, forward the email of confirmation from the professor to and include:
    • Your full name
    • ID number
    • Course/class number you want to enroll in
  • Enrollment will be done manually by the Graduate Program Administrator.
    Once enrolled you will get an email indicating you have been enrolled and will be able to see this on Bear Tracks.



Graduate Courses 2019-20

Course Number



Term(s) / Course Website

CMPUT 500 Foundations of Program Analysis ★3 Karim Ali Fall
CMPUT 500 Modelling and Performance Evaluation ★3 Omid Ardakanian Winter
CMPUT 501 Introduction to Natural Language Processing ★3 Greg Kondrak Fall
CMPUT 501 Graduate Numerical Methods I ★3 Martin Jagersand Fall
CMPUT 530 Computer Systems and Architecture ★3 Nelson Amaral Fall
CMPUT 563 Probabilistic Graphical Models ★3 Russ Greiner Fall
CMPUT 566 Introduction to Machine Learning ★3 Martha White
Lili Mou
CMPUT 600 Computational Linguistics ★3 Greg Kondrak Winter
CMPUT 603 Teaching and Research Methods ★3 Janelle Harms Fall
CMPUT 604 Quantum Computing for Computer Scientists ★3 Pierre Boulanger Winter
CMPUT 605 Individual Study ★3 N/A Fall
CMPUT 606 Algorithms in Bioinformatics ★3 Guohui Lin Winter
CMPUT 609 Reinforcement Learning II ★3 Rich Sutton Winter
CMPUT 615 3D Computer Vision ★3 Martin Jagersand Winter
CMPUT 617 Medical Image Analysis with Deep Learning ★3 Nilanjan Ray Fall
CMPUT 620 Answer Set Programming ★3 Jia You Winter
CMPUT 631 Autonomous Robot Navigation ★3 Hong Zhang Fall
CMPUT 640 Sensor Networks and Edge Computing ★3 Ioanis Nikolaidis Winter
CMPUT 651 Deep Learning for NLP ★3 Lili Mou Fall
CMPUT 651 Machine-learning in Real-time Heuristic Search and Artificial Life ★3 Vadim Bulitko Winter
CMPUT 652 Reinforcement Learning with Robots ★3 Rupam Mahmood Fall
CMPUT 652 Machine Learning for Procedural Content Generation in Games ★3 Matthew Guzdial Winter
CMPUT 654 Modelling Human Strategic Behavior ★3 James Wright Fall
CMPUT 655 Machine Learning and the Brain ★3 Alona Fyshe Fall
CMPUT 656 Bandit Algorithms ★3 Csaba Szepesvari Fall
CMPUT 657 Heuristic Search ★3 Michael Buro Winter
CMPUT 659 XAI in Games ★3 Levi Lelis Winter
CMPUT 660 Internet of Things ★3 Eleni Stroulia Winter
CMPUT 663 Software Analytics ★3 Sarah Nadi Fall
CMPUT 664 Secure Software Engineering ★3 Karim Ali Winter
CMPUT 670 Combinatorial Game Theory ★3 Ryan Hayward Winter
CMPUT 675 Algorithms for Streaming and Big Data ★3 Mohammad Salvatipour Fall
CMPUT 696 Information Extraction & Knowledge Graphs ★3 Denilson Barbosa Winter
CMPUT 697 Intro to Knowledge Discovery in Databases ★3 Joerg Sander Fall
CMPUT 701 Capstone ★6 Choose your own Fall