Teaching

Below, you can find information about the courses I have taught.

CPS721: Artificial Intelligence I, F2022, F2023
Department of Computer Science, Toronto Metropolitan University

This course focuses on the foundations of Artificial Intelligence and automated reasoning approaches.


CP8326: Heuristic Search, W2022, F2022, W2024
Department of Computer Science, Toronto Metropolitan University

This course focuses on algorithms for solving single-agent search problems and for automatically generating heuristic functions.


CPS209: Computer Science II, W2022, W2023, W2024
Department of Computer Science, Toronto Metropolitan University

This course focuses on code structure, algorithm development, and object-oriented principles.


MMAI 845: Reinforcement Learning, 2019-2021
Smith School of Business, Queen's University

This course focuses on the fundamentals and applications of reinforcement learning. It was taught as part of a Masters of Management in AI professional program at Queen's University.


CSC2542: Topics in Knowledge Representation and Reasoning - Algorithms for Sequential Decision Making, 2016
Department of Computer Science, University of Toronto

This course, which was co-taught by myself and Sheila McIlraith, focused on sequential decision making techniques from reinforcement learning and heuristic search.


CMPUT 175: Foundations of Computation II, 2012
Department of Computing Science, University of Alberta

This course, which was co-taught by myself and Mohammad Salavatipour, is the second course that computing science students take at the University of Alberta. The focus of the course is on basic programming concepts, data structures, and an introduction to program analysis.