Courses & Teaching Assistant.

Hey Everyone~


Important courses that I have taken/taking and was a Teaching Assistant for at the University of Alberta. The courses that I TA’ed are bolded. Most of the information is directly referenced from the University of Alberta’s course catalogue.


Semester Course Summary
Winter 2022 MATH 417 - Honors Real Variables I Brief review of set operations and countable sets. Measure theory, integration theory, Lebesgue measure and integrals on R^n, product measure, Tonelli-Fubini theorem. Functions of bounded variation, absolutely continuous functions.
Winter 2022 CMPUT 200 - Ethics of Data Science and Artificial Intelligence This course focuses on ethics issues in Artificial Intelligence ethics in Artificial Intelligence (AI) and Data Science (DS). The main themes are privacy, fairness/bias, and explainability in DS. The objectives are to learn how to identify and measure these aspects in outputs of algorithms, and how to build algorithms that correct for these issues. The course will follow a case-studies based approach, where we will examine these aspects by considering real-world case studies for each of these ethics issues. The concepts will be introduced through a humanities perspective before a technical treatment including implementation work.
Winter 2022 CMPUT 365 - Introduction to Reinforcement Learning This course provides an introduction to reinforcement learning, which focuses on the study and design of learning agents that interact with a complex, uncertain world to achieve a goal. The course will cover multi- armed bandits, Markov decision processes, reinforcement learning, planning, and function approximation (online supervised learning). The course will take an information-processing approach to the study of intelligence and briefly touch on perspectives from psychology, neuroscience, and philosophy. The course will use the University of Alberta MOOC on Reinforcement Learning. Any student who understands the material in this course will understand the foundations of much of modern probabilistic artificial intelligence (AI) and be prepared to take more advanced courses, or to apply AI tools and ideas to real-world problems.
Fall 2022 CMPUT 366 - Search and Planning in Artificial Intelligence This course provides an introduction to search and planning in artificial intelligence. The course covers deterministic single-agent and multi-agent problems. Students will learn how to model real-world problems as state-space search problems and how to solve such problems. The course covers algorithms for solving deterministic shortest path problems with factored and non-factored states, combinatorial optimization problems, constraint satisfaction problems, and multi- agent problems
Fall 2022 CMPUT 261 - Introduction to Artificial Intelligence Introduction to artificial intelligence focusing on techniques for building intelligent software systems and agents. Topics include search and problem-solving techniques, knowledge representation and reasoning, reasoning and acting under uncertainty, machine learning and neural networks.
Fall 2022 MATH 436 - Intermediate Partial Differential Equations I Partial differential equations as physical models. Introduction to basic generalized functions. Theory of linear and quasi-linear first-order equations: general solution, initial value problem, generalized solutions and propagation of singularities, characteristic surfaces, shock formation. Theory of fully nonlinear first order equations: complete solution and the initial value problem. Hamilton-Jacobi equation and its applications. Second order linear equations in n dimensions: classification, canonical form, characteristic surfaces and shock formation, initial and boundary value problem
Fall 2022 MATH 436 - Intermediate Partial Differential Equations I Partial differential equations as physical models. Introduction to basic generalized functions. Theory of linear and quasi-linear first-order equations: general solution, initial value problem, generalized solutions and propagation of singularities, characteristic surfaces, shock formation. Theory of fully nonlinear first order equations: complete solution and the initial value problem. Hamilton-Jacobi equation and its applications. Second order linear equations in n dimensions: classification, canonical form, characteristic surfaces and shock formation, initial and boundary value problem
Fall 2022 MATH 411 - Honors Complex Variables Complex number system. Analytic functions. Cauchy's Integral theorem and formula. Applications including the maximum modulus principle, Taylor expansion and Laurent expansion. Harmonic functions. The residue theorem with applications; calculus of residues, argument principle, and Rouche's theorem. Basics of analytic continuation. Additional topics at the instructor's discretion such as: Normal families, The Riemann mapping Theorem, Picard's Theorem. For Honors students
Winter 2021 CMPUT 474 - Formal Languages, Automata, and Computability Formal grammars; relationship between grammars and automata; regular expressions; finite state machines; pushdown automata; Turing machines; computability; the halting problem; time and space complexity
Winter 2021 CMPUT 469 - Artifical Intelligence Capstone Students will experience the challenges, and rewards, of working in a team to address a real-world task, related to artificial intelligence or machine learning. This will involve first identifying the task itself, then iteratively addressing relevant issues (typically with feedback from a domain expert), leading to an implementation and culminating in evaluating that system. Students will also learn about best practices in organizing team projects, as well as important information about effective communication
Winter 2021 MATH 499 - Research Project This course provides students in Specialization and Honors programs an opportunity to pursue research in mathematics under the direction of a member of the Department. Course requirements include at least one oral presentation and a written final report. Students interested in taking this course should contact the course coordinator two months in advance.
Winter 2021 MATH 298 - Problem Solving Seminar Problem solving techniques (pigeonhole principle, invariants, extremal principle, etc.) and survey of problems from various branches of mathematics: calculus, number theory, algebra, combinatorics, probability, geometry, etc. This credit/no-credit course is intended for students interested in mathematics contests and participation in the Putnam Mathematical Competition will be required.
Fall 2021 MATH 337 - Introduction to Partial Differential Equations Boundary value problems of classical Math Physics, orthogonal expansions, classical special functions. Advanced transform techniques.
Fall 2021 MATH 381 - Numerical Methods I Approximation of functions by Taylor series, Newton's formulae, Lagrange and Hermite interpolation. Splines. Orthogonal polynomials and least-squares approximation of functions. Direct and iterative methods for solving linear systems. Methods for solving non-linear equations and systems of non-linear equations. Introduction to computer programming
Fall 2021 CMPUT 367 - Intermediate Machine Learning This course in machine learning focuses on higher- dimensional data and a broader class of nonlinear function approximation approaches. Topics include: optimization approaches (constrained optimization, hessians, matrix solutions), kernel machines, neural networks, dimensionality reduction, latent variables, feature selection, more advanced methods for assessing generalization (cross-validation, bootstrapping), introduction to non-iid data and missing data.( Almost the same topics covered as the graduate ML course and covers more in depth than CMPUT 466)
Fall 2021 CMPUT 304 - Advanced Algorithms The second course of a two-course sequence on algorithm design. Emphasis on principles of algorithm design. Categories of algorithms such as divide-and-conquer, greedy algorithms, dynamic programming; analysis of algorithms; limits of algorithm design; NP-completeness; heuristic algorithms.
Winter 2020 CMPUT 267 - Basics of Machine Learning This course introduces the fundamental statistical, mathematical, and computational concepts in analyzing data. The goal for this introductory course is to provide a solid foundation in the mathematics of machine learning, in preparation for more advanced machine learning concepts. The course focuses on univariate models, to simplify some of the mathematics and emphasize some of the underlying concepts in machine learning, including: how should one think about data, how can data be summarized, how models can be estimated from data, what sound estimation principles look like, how generalization is achieved, and how to evaluate the performance of learned models.
Winter 2020 CMPUT 204 - Algorithms I The first of two courses on algorithm design and analysis, with emphasis on fundamentals of searching, sorting, and graph algorithms. Examples include divide and conquer, dynamic programming, greedy methods, backtracking, and local search methods, together with analysis techniques to estimate program efficiency.
Winter 2020 MATH 336 - Honors Ordinary Differential Equations First order differential equations. Linear systems of differential equations and linear differential equations of higher order. Stability and qualitative theory of 2-dimensional linear and non-linear systems. Laplace transform methods. Existences and uniqueness theorems.+ Research Project
Winter 2020 MATH 317 - Honors Advanced Calculus II Implicit function theorem. Transformations of multiple integrals. Line integrals, theorems of Green, Gauss and Stokes. Sequences and series of functions. Uniform convergence. Differential Forms. Topology and Multivariable Real Analysis
Winter 2020 MATH 372 - Mathematical Modelling I This course is designed to develop the students' problem-solving abilities along heuristic lines and to illustrate the processes of Applied Mathematics. Students will be encouraged to recognize and formulate problems in mathematical terms, solve the resulting mathematical problems and interpret the solution in real world terms. Typical problems considered include nonlinear programming, optimization problems, diffusion models
Fall 2020 MATH 217 - Honors Advanced Calculus I Axiomatic development of the real number system. Topology of Rn. Sequences, limits and continuity. Multi-variable calculus: differentiation and integration, including integration in spherical and polar coordinates. The differential and the chain rule. Taylor's Formula, maxima and minima. Introduction to vector field theory.
Fall 2020 MATH 328 - Algebra: Introduction to Group Theory Groups, subgroups, homomorphisms. Symmetry groups. Matrix groups. Permutations, symmetric group, Cayley's Theorem. Group actions. Cosets and Lagrange's Theorem. Normal subgroups, quotient groups, isomorphism theorems. Direct and semidirect products. Finite Abelian groups.
Fall 2020 MATH 322 - Graph Theory Graphs, paths and cycles, trees, planarity and duality, coloring problems, digraphs, matching problems, matroid theory.
Fall 2020 CMPUT 291 - Introduction to File and Database Management Basic concepts in computer data organization and information processing; entity-relationship model; relational model; SQL and other relational query languages; storage architecture; physical organization of data; access methods for relational data.
Fall 2020 CMPUT 328 - Visual Recognition/Computer Vision Introduction to visual recognition to recognize objects and classify scenes or images automatically by a computer. Supervised and unsupervised machine learning principles and deep learning techniques will be utilized for visual recognition. Successful commercial systems based on visual recognition range from entertainment to serious scientific research: face detection and recognition on personal devices, social media. Computer Vision Architectures like CNN, GAN, RNN, LSTM etc
Winter 2019 CMPUT 272 - Formal Systems and Logic in Computing Science 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
Winter 2019 MATH 227 - Honors Linear Algebra II Review of vector space axioms, subspaces and quotients; span; linear independence; Gram-Schmidt process; projections; methods of least squares; linear transformations and their matrix representations with respect to arbitrary bases; change of basis; eigenvectors and eigenvalues; triangularization and diagonalization; canonical forms (Schur, Jordan, spectral theorem).
Winter 2019 MATH 118 - Honors Calculus II Integration and the Fundamental Theorem. Techniques and applications of integration. Derivatives and integrals of the exponential, and trigonometric functions. Introduction to infinite series. Introduction to partial derivatives and complex analysis.(Real Analysis 2)
Winter 2019 CMPUT 175 - Introduction to the Foundations of Computation II A continuation of CMPUT 174, revisiting topics of greater depth and complexity. More sophisticated notions such as objects, functional programming, and Abstract Data Types are explored. Various algorithms, including popular searching and sorting algorithms, are studied and compared in terms of time and space efficiency.
Fall 2019 MATH 117 - Honors Calculus I Axiomatic systems, Real Analysis 1, Functions, continuity, and the derivative. Applications of the derivative. Extended limits and L'Hospital's rule.
Fall 2019 MATH 127 - Honors Linear Algebra I Systems of linear equations; vectors in Euclidean n-space; span and linear independence in Euclidean n-space; dot and cross product; orthogonality; lines and planes; matrix arithmetic; determinants; introduction to eigenvectors and eigenvalues; introduction to linear transformations; complex numbers; vector space axioms; subspaces and quotients.
Fall 2019 CMPUT 174 - Introduction to the Foundations of Computation I CMPUT 174 and 175 use a problem-driven approach to introduce the fundamental ideas of Computing Science. Emphasis is on the underlying process behind the solution, independent of programming language or style. Basic notions of state, control flow, data structures, recursion, modularization, and testing are introduced through solving simple problems in a variety of domains such as text analysis, map navigation, game search, simulation, and cryptography.
Fall 2019 STAT 151 - Introduction to Applied Statistics I Data collection and presentation, descriptive statistics. Probability distributions, sampling distributions and the central limit theorem. Point estimation and hypothesis testing. Correlation and regression analysis. Goodness of fit and contingency table.

I will be updating this page regularly based on the completion of a course.


-Robert