Combinatorics and Optimization

Student writing equations on transparent glass whiteboard while a group of students in the background observe.

Master two of math’s most powerful techniques

Hone the skills you need to solve problems in computer science, business, communications, and more.

Combinatorics looks at permutations and combinations. Optimization explores ways to make any operation work more efficiently within given constraints. Together, they provide powerful methods for modelling and solving large management problems, from optimizing flight schedules to making a factory’s layout as efficient as possible.

In Combinatorics and Optimization at Waterloo, you’ll learn concepts such as enumeration, combinatorical designs, graph theory, linear programming, nonlinear optimization, operations research, and combinatorical optimization, and how to use them in real-world applications. Plus, you'll have the opportunity to gain paid work experience through the co-op program.

When you graduate, you can put your skills to work in areas as diverse as cryptography, electronic security, software development, social media, and risk analysis.

What courses will you take in Combinatorics and Optimization?

First-year courses

You'll take a mix of Mathematics and Computer Science courses to give you the foundations for your upper-year classes, along with a few electives.

Note: You may also select advanced-stream courses for algebra, calculus, and computer science if you meet the requirements. Details will be sent during course selection in June.

September to December

  • MATH 135 – Algebra for Honours Mathematics
  • MATH 137 – Calculus 1 for Honours Mathematics
  • Choose one course from
    • CS 115 – Introduction to Computer Science 1
    • CS 135 – Designing Functional Programs
  • One communication skills course
  • One elective

January to April

  • MATH 136 – Linear Algebra 1 for Honours Mathematics
  • MATH 138 – Calculus 2 for Honours Mathematics
  • Choose one course from
    • CS 116 – Introduction to Computer Science 2
    • CS 136 – Elementary Algorithm Design and Data Abstraction
  • Two electives

This is a sample schedule. Courses or when a course is offered may change depending on availability.

After first year

You’ll take upper-year courses in Combinatorics and Optimization and other areas in the Faculty of Mathematics. With your remaining classes, you can choose electives from many of the 100 subject areas at Waterloo.

View a list of all the courses required for your degree.

Sample upper-year courses

CO 342 – Introduction to Graph Theory
CO 430 – Algebraic Enumeration
CO 452 – Integer Programming
CO 487 – Applied Cryptography

Customize your degree

You can add additional areas of expertise by including one of the minors available to all Waterloo students.

Once you're a student, advisors can help you explore which minors or specializations may fit into your plans.

Faculty:
Faculty of Mathematics

Degree:
Bachelor of Mathematics in Combinatorics and Optimization

Available as a co-op program?
Yes

Available as a regular program?
Yes

Available as a minor?
Yes

Have fun with other mathies. Take a break from your studies. The student-run Pure Math, Applied Math, Combinatorics and Optimization Club offers talks, food, board games, and more.

Add research to your résumé. As an undergraduate research assistant, you could spend a term working on a research problem with one of our award-winning professors.

Co-op = relevant paid work experience

Waterloo's co-op program, the largest in North America, is an amazing way to explore potential careers, learn to interview for jobs, graduate with up to two years of valuable experience — and make money!

Sample co-op job titles

  • Business technology analyst
  • Data analyst
  • Full stack developer
  • Quantitative trading associate
  • Software developer
  • Software QA specialist
  • Web interface developer

Co-op work-study sequence

Starting in second year, you'll normally alternate between school and work every four months, integrating your classroom learning with real-world experience. You can return to the same employer for a couple of work terms to gain greater knowledge and responsibility or work for different employers to get a broad range of experience.

Your first work term will be after first year (May to August 2026).

Year September to December (Fall) January to April (Winter) May to August (Spring)
First Study Study Co-op
Second Study Co-op Study
Third Co-op Study Co-op
Fourth Study Co-op Study
Fifth Co-op Study -

or halfway through second year (which can be January to April 2027).

Year September to December (Fall) January to April (Winter) May to August (Spring)
First Study Study Off
Second Study Co-op Study
Third Co-op Study Co-op
Fourth Study Co-op Study
Fifth Co-op Co-op Study

There are options where you can have your first work term in the spring term after first year and your second work term after second year, or in the fall term halfway through your second year. 

Learn more about co-op →

What can you do with a degree in Combinatorics and Optimization?

Waterloo Combinatorics and Optimization graduates often pursue careers in software development, data analysis, and more. They often work for entertainment companies, financial institutions, and software companies.

Recent graduates

  • Junior Quantitative Analyst — Green Brick Labs
  • Risk Analyst — Rogers Bank
  • Actuary — Sun Life Financial
  • Software Engineer — Amazon Canada
  • Statistical Analyst — Ministry of the Attorney General
  • Platform Developer — IGLOO
  • Engineer, Software Development — Microsoft Canada

Learn about the future of careers in business.

Tuition fees

First-year tuition

Type of fees Tuition (8 months of school)
Domestic (Ontario residents) $9,000
Domestic (Out of province students) $9,000
International (visa students) $60,000
     
  • Estimated amounts listed include incidental fees. Fees based on 2024-25 tuition rates.
  • Visit our financing page to learn about scholarships, estimate your total expenses, and see how co-op can help pay for your education.

Student life in mathematics and computer science

MathSoc

Math Society (MathSoc) is run by students for students and provides a wide range of clubs, services, and social and academic events to make your experience as a Waterloo math student the best it can be.

Campus-wide activities

Our campus is packed with opportunities to get involved, no matter how unique your interests. Between clubs supported by the Waterloo Undergraduate Student Association, sports and recreation, and an incredible range of events, there's something for everyone at Waterloo!

Women in Mathematics

The Women in Mathematics (WiM) community encourages and advocates for women of all ages who are interested in studying math and pursuing a career in a related area.

WiM strives for all genders to be well-represented in mathematics and welcomes people with under-represented gender identities.

Women in Computer Science

Women in Computer Science (WiCS) promotes gender equity for students interested in studying computer science.

WiCS is very active and offers events such as the Big CSters mentoring program, workshops, a speaker series, and panels about diversity in computer science and STEM.

Women in Science, Technology, Engineering, and Mathematics

Women in Science, Technology, Engineering, and Mathematics (WiSTEM) is a student-run club that welcomes all students (regardless of gender) to promote equality in STEM. Opportunities include skills workshops, discussions, homework help, and guest speakers.

Hack the North

As Waterloo Computer Science student, you’ll have the opportunity to participate in competitions such as Hack the North. This hack-a-thon is the largest in Canada and hosted annually at Waterloo.

Admission requirements

Ontario students: six Grade 12 U and/or M courses including

  • Advanced Functions
  • Calculus and Vectors
  • Any 4U English
  • One other 4U course

Recommended course: Grade 11 U Introduction to Computer Science

Admission averages: Individual selection from the mid-80s

How to apply?

Apply to Mathematics and choose Combinatorics and Optimization as your major at the end of first year. Once you've applied, you'll need to complete the Admission Information Form as part of the application process.

We strongly encourage you to participate in the Canadian Senior Mathematics Contest and/or the Euclid Mathematics Contest to enhance your admissions status.

To be considered for entrance scholarships in the Faculty of Mathematics, you must write one or both of the contests. If you complete both contests, we'll use the results of the contest in which you performed best.

Sign up for insider advice that can help you now and in the future.

Monthly topics include how to choose a program, what it's like to be a Waterloo student, the differences between high school and university, and more.

Contact a Faculty of Mathematics student ambassador to learn about their experience in the program.

Ask them questions such as why they chose their program, what the classes are like, and how you can get involved on campus.

Connect with us

Questions about courses, programs, requirements, or careers?

Please contact our Faculty of Mathematics recruitment coordinator who can answer any questions you have.