34 courses in Waterloo’s course catalog for 2020–21 (Fall 2020, Winter 2021, Spring 2021), from UW Open Data. ucalendar asks programs not to read that year’s calendar, so this stands in for it. Original: ucalendar.uwaterloo.ca/2021/COURSE/course-CO.html
CO 227Introduction to Optimization (Non-Specialist Level)
A broad introduction to the field of optimization, discussing applications, and solution techniques. Mathematical models for real life applications; algorithms: simplex, cutting plane, and branch & bound; linear programming duality. [Offered: F,W]
Prereq: One of MATH 106, 114, 115, 136, 146. Antireq: CO 250, 255, 352
A broad introduction to the field of optimization, discussing applications, and solution techniques. Mathematical models for real life applications; algorithms; aspects of computational complexity; geometry; linear programming duality, focusing on the development of algorithms. [Offered: F,W,S]
CO 255Introduction to Optimization (Advanced Level)
Linear optimization: feasibility theorems, duality, the simplex algorithm. Discrete optimization: integer linear programming, cutting planes, network flows. Continuous optimization: local and global optima, feasible directions, convexity, necessary optimality conditions. [Note: CO 255 may be substituted for CO 250 whenever the latter is a requirement in an Honours plan. Offered: W]
Prereq: MATH 235 or 245, 237 or 247. Antireq: CO 227, 250, 255, 352
CO 327Deterministic OR Models (Non-Specialist Level)
An applications-oriented course that illustrates how various mathematical models and methods of optimization can be used to solve problems arising in business, industry, and science. [Offered: W,S]
Prereq: One of CO 227, 250, 255, 352. Antireq: CO 370
The algebra of formal power series. The combinatorics of the ordinary and exponential generating series. Lagrange's implicit function theorem, applications to the enumeration of permutations, functions, trees and graphs. Integer partitions, geometric methods, enumerating linear transformations. Introduction to the pattern algebra, applications to the enumeration of strings. Lattice paths, Wiener-Hopf factorization. Enumeration under symmetries. [Offered: F]
A first course in error-correcting codes. Linear block codes, Hamming-Golay codes, and multiple error-correcting BCH codes are studied. Various encoding and decoding schemes are considered. [Offered: W]
An introduction to some of the key topics in graph theory: connectivity, planarity, and matchings. Connectivity: Menger's theorem, 3-connected graphs. Planarity: Kuratowski's theorem, uniqueness of planar embeddings. Matchings: Review of Konig's theorem, Tutte's theorem. [Offered: F,S]
Review of linear programming. Shortest path problems. The max-flow min-cut theorem and applications. Minimum cost flow problems. Network simplex and primal-dual algorithms. Applications to problems of transportation, distribution, job assignments, and critical-path planning. [Offered: F,S]
A course on the fundamentals of nonlinear optimization, including both the mathematical and the computational aspects. Necessary and sufficient optimality conditions for unconstrained and constrained problems. Convexity and its applications. Computational techniques and their analysis. [Offered: F]
Prereq: (One of CO 250, 255, 352) and MATH 128 with a grade of at least 70% or MATH 138 or 148
An applications-oriented course that illustrates how various mathematical models and methods of optimization can be used to solve problems arising in business, industry, and science. [Offered: F,W]
Computational optimization methodologies underlying portfolio problems in finance. Computational linear algebra, determining derivatives, quadratic, and nonlinear optimization. The efficient frontier problem. Applications of optimization in finance such as volatility surface determination and global minimization for value-at-risk. [Offered: F,W]
A course in problem solving. 100 problems are studied. Problems are taken mainly from the elementary parts of algebra, geometry, number theory, combinatorics, and probability. [Note: Offered in the spring term of even years.]
The algebra of Laurent series and Lagrange's Implicit function theorem, enumerative theory of planar embeddings (maps). The ring of symmetric functions: Schur functions, orthogonal bases, inner product, Young tableaux, and plane partitions. Non-intersecting paths, sieve methods, partially ordered sets, and Mobius inversion, strings with forbidden substrings, the Cartier-Foata commutation monoid. Introduction to the group algebra of the symmetric group, enumerative applications of sl(2). [Offered: W]
Prereq: CO 330; Cumulative overall average of at least 80%
Pairwise orthogonal latin squares. Transversal designs and finite planes. Balanced incomplete block designs, group divisible designs, and pairwise balanced designs. Symmetric designs and Hadamard matrices. Recursive constructions. Wilson's fundamental construction.
Prereq: PMATH 336 or 346 or 347; Cumulative overall average of at least 80%
An undergraduate seminar in combinatorics. The primary objective is to study current work in specific areas of combinatorics. Course content may vary from term to term.
An in-depth study of one or two topics in graph theory. Course content may vary from term to term. Topics may include planar graphs, extremal graph theory, directed graphs, enumeration, algebraic graph theory, probabilistic graph theory, connectivity, graph embedding, colouring problems.
An introduction to the methods of and some interesting current topics in algebraic graph theory. Topics covered will include vertex-transitive graphs, eigenvalue methods, strongly regular graphs and may include graph homomorphisms, Laplacians or knot and link invariants.
Prereq: MATH 239 or 249, PMATH 336 or 346 or 347; Cumulative overall average of at least 80%
This is an introductory course on matroid theory, with particular emphasis on graphic matroids and on topics that are applicable to graph theory. The topics include matroid intersection and partition, graphic matroids, matroid connectivity, regular matroids, and representable matroids. Applications include matching, disjoint paths, disjoint spanning trees, the 8-flow theorem for graphs, planarity testing, and recognizing totally unimodular matrices. [Offered: S]
Prereq: CO 342; Cumulative overall average of at least 80%
Characterizations of optimal solutions and efficient algorithms for optimization problems over discrete structures. Topics include network flows, optimal matchings, T-joins and postman tours, matroid optimization. [Offered: F]
Prereq: CO 255 or 351; Cumulative overall average of at least 80%
Formulation of problems as integer linear programs. Solution by branch-and-bound and cutting plane algorithms. Introduction to the theory of valid inequalities and polyhedral combinatorics.
Prereq: CO 255 or 351; Cumulative overall average of at least 80%
An overview of practical optimization problems that can be posed as scheduling problems. Characterizations of optimal schedules. Simple and efficient combinatorial algorithms for easy problems. A brief overview of computational complexity, definition of P, NP, NP-complete and NP-hard. Integer programming formulations, the traveling salesman problem, heuristics, dynamic programming, and branch-and-bound approaches. Polynomial-time approximation algorithms. [Offered: S]
Prereq: MATH 229 or 239 or 249 and (one of CO 227, 250, 255, 352)
A broad introduction to game theory and its applications to the modeling of competition and cooperation in business, economics, and society. Two-person games in strategic form and Nash equilibria. Extensive form games, including multi-stage games. Coalition games and the core. Bayesian games, mechanism design, and auctions.
Prereq: MATH 229 or 239 or 249 and (one of CO 227, 250, 255, 352)
An undergraduate seminar in optimization. The primary objective is to study recent work in specific areas of optimization. Course content may vary from term to term.
An introduction to the modern theory of convex programming, its extensions and applications. Structure of convex sets, separation and support, subgradient calculus for convex functions, Fenchel conjugacy and duality, Lagrange multipliers. Ellipsoid method for convex optimization. [Offered: W]
Prereq: (CO 255 or 367), (AMATH/PMATH 331 or PMATH 351); Cumulative overall average of at least 80%
Numerical algorithms for nonlinear optimization. Newton, variable-metric, quasi-Newton and conjugate gradient methods. Obtaining derivatives. Convexity. Trust region methods. Constrained optimization including optimality conditions, sequential quadratic programming, interior point, and active set strategies.
Prereq: (CO 367 and one of CO 250, 352) or CO 255; Cumulative overall average of at least 80%
Optimization over convex sets described as the intersection of the set of symmetric, positive semidefinite matrices with affine spaces. Formulations of problems from combinatorial optimization, graph theory, number theory, probability and statistics, engineering design, and control theory. Theoretical and practical consequences of these formulations. Duality theory and algorithms.
An in-depth examination of the origins of mathematics, beginning with examples of Babylonian mathematics. Topics may include Pythagorean triples, solution of equations, estimation of pi, duplication of the cube, trisection of an angle, the Fibonacci sequence, the origins of calculus. [Note: Offered in the spring term of odd years.]
Prereq: MATH 135 or 145, 106 or 136 or 146, 138 or 148; Level at least 3A
An in-depth study of public-key cryptography. Number-theoretic problems: prime generation, integer factorization, discrete logarithms. Public-key encryption, digital signatures, key establishment, secret sharing. Proofs of security. [Offered: F]
Prereq: One of PMATH 334, 336, 345, 346, 347; Cumulative overall average of at least 80%
A broad introduction to cryptography, highlighting the major developments of the past twenty years. Symmetric ciphers, hash functions and data integrity, public-key encryption and digital signatures, key establishment, key management. Applications to Internet security, computer security, communications security, and electronic commerce. [Offered: W]
Prereq: MATH 135 or 145, STAT 206 or 220 or 230 or 240; Level at least 3A