Fall Term 2025 (1930)
CMPUT 174 - Introduction to the Foundations of Computation I
3 units (fi 6)(EITHER, 3-0-3)
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. Students learn to program by reading and modifying existing programs as well as writing new ones. No prior programming experience is necessary. Prerequisite: Math 30, 30-1, or 30-2. See Note (1) above. Credit cannot be obtained for CMPUT 174 if credit has already been obtained for CMPUT 274, 275, or ENCMP 100, except with permission of the Department.
LECTURE A2 (52475)
2025-09-02 - 2025-12-08
TR 09:30 - 10:50
LECTURE A4 (52477)
2025-09-02 - 2025-12-08
TR 14:00 - 15:20
CMPUT 366 - Search and Planning in Artificial Intelligence
3 units (fi 6)(EITHER, 3-0-3)
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. Prerequisites: CMPUT 204 or 275, and CMPUT 272.
LECTURE A1 (51389)
2025-09-02 - 2025-12-08
TR 14:00 - 15:20
Winter Term 2026 (1940)
CMPUT 267 - Machine Learning I
3 units (fi 6)(EITHER, 3-0-0)
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. Prerequisites: CMPUT 174 or 274; one of MATH 100, 114, 117, 134, 144, or 154. Corequisites: CMPUT 175 or 275; CMPUT 272; MATH 102, 125 or 127; one of STAT 151, 161, 181, 235, 265, SCI 151, or MATH 181.
LECTURE B1 (84560)
2026-01-05 - 2026-04-10
TR 14:00 - 15:20
CMPUT 272 - Formal Systems and Logic in Computing Science
3 units (fi 6)(EITHER, 3-3S-0)
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: CMPUT 101, 174, 175, 274, SCI 100, or ENCMP 100.
LECTURE EB1 (82754)
2026-01-05 - 2026-04-10
TR 12:30 - 13:50
LECTURE B1 (82905)
2026-01-05 - 2026-04-10
TR 12:30 - 13:50