¶¡ÏãÔ°AV

Please note:

To view the current calendar go to

| ¶¡ÏãÔ°AV Calendar | Spring 2018

Computing Science Dual Degree

Doctor of Philosophy

Students in this graduate dual degree program (GDDP), jointly developed by ¶¡ÏãÔ°AV and Zhejiang University (ZJU), China, will acquire two graduate degrees. Graduates will receive a doctor of philosophy (PhD) degree from ¶¡ÏãÔ°AV, and a second doctor of philosophy (PhD) degree from Zhejiang University. Students will study and conduct research at both universities.

The language of instruction at ¶¡ÏãÔ°AV is English, while at Zhejiang University, it is either English and/or Chinese.

¶¡ÏãÔ°AV Requirements

Students must be admitted to one university, and then apply and be admitted to the other university.

To qualify for admission, students must satisfy the usual admission requirements as specified by each university. The university of first admission will be referred to as the student's 'home' university. Students whose home university is ¶¡ÏãÔ°AV are called ¶¡ÏãÔ°AV students while those whose home university is Zhejiang are called ZJU students.

Once admitted to the home university, the student may then apply for admission to the graduate dual degree program, normally within 18 months of admission to their home university graduate program. The program application requires the support and involvement of the student's supervisor at the home university. The graduate program committee at the home university decides whether or not to recommend the student for admission to the GDDP. A recommended individual's application will then be forwarded to the other 'partner' university. Applicants must meet the admission requirements of that partner university.

Program Withdrawal

A student may withdraw from this dual degree program at any time to become a doctoral student at the home university. The full academic record at the partner university may be used to determine standing at the home university. A student may withdraw by transferring to the PhD program of the partner university only with the permission of the graduate program committee of the partner university, considering the full academic records at both universities.

Time Limits

Under normal circumstances, the time limit to complete this program is within six years for students entering with a bachelor of science (BSc) degree, and within four years for a student entering with a master of science degree (MSc) in computing science or equivalent. The maximum time to complete the degree is eight calendar years.

Supervisory Committee

Each student will be supervised by a supervisory committee consisting of a senior supervisor and another faculty member at the home university, and a co-senior supervisor and another faculty member at the partner university. Each student is required to have an annual progress evaluation by the supervisory committee. Meetings of the supervisory committee are normally once per year and may involve the use of new media.

Program Requirements

All students will demonstrate a breadth of learning in computing science by completing at least one of

CMPT 705 - Design and Analysis of Algorithms (3)

The objective of this course is to expose students to basic techniques in algorithm design and analysis. Topics will include greedy algorithms, dynamic programming, advanced data structures, network flows, randomized algorithms. Students with credit for CMPT 706 may not take this course for further credit.

CMPT 710 - Computational Complexity (3)

This course provides a broad view of theoretical computing science with an emphasis on complexity theory. Topics will include a review of formal models of computation, language classes, and basic complexity theory; design and analysis of efficient algorithms; survey of structural complexity including complexity hierarchies, NP-completeness, and oracles; approximation techniques for discrete problems. Equivalent Courses: CMPT810.

2122001-2 Elements of the Theory of Computation (ZJU course)

Additional requirements vary for students without or with a master of science degree.

  • ¶¡ÏãÔ°AV students without an MSc in computing science or an equivalent must complete at least 12 units at each university. Of those units, at least nine from each university must be chosen from the courses listed in groups I, II, and III. At Zhejiang University, the approval of the student's supervisor and the Zhejiang University graduate program director are required for the student to complete courses that are not listed in groups I, II, and III.

  • ¶¡ÏãÔ°AV students with an MSc in computing science or an equivalent must complete at least six units at each university from the courses listed in groups I, II, and III.

  • ZJU students without an MSc in computing science or an equivalent must complete at least 12 units at ¶¡ÏãÔ°AV and at least 14 units at Zhejiang University. Of those units, all but three from ¶¡ÏãÔ°AV must be chosen from the courses listed in groups I, II, and III. At Zhejiang University, these students must complete courses 2111001, 2111002, 2112001, and at least four additional Zhejiang University courses in groups I, II, and III.

  • ZJU students with an MSc in computing science or an equivalent must complete at least six units at each university from the courses listed in groups I, II, and III. At Zhejiang University, these students must complete courses 2111001, 2111002, 2112001.

  • All students must complete at least one course in each of the groups and at least one of these courses must be chosen from CMPT 705, CMPT 710, and 2122001. At most two special topics courses at ¶¡ÏãÔ°AV (two of CMPT 829, 881, 882, 885, 886, 888) may be used to meet the breadth requirement, except with permission from the graduate program director at ¶¡ÏãÔ°AV.

  • All Zhejiang University students must complete additional research seminars as specified by Zhejiang University.

  • In special circumstances, with the approval of the student's supervisors and the graduate program director at the partner ( home) university, up to three of the units at the partner (home) university may be completed at the home (partner) university.

A ¶¡ÏãÔ°AV course and a Zhejiang University course are deemed to be similar if the two courses overlap substantially. Students with credit for one of two similar courses may not complete the other course for further credit. ¶¡ÏãÔ°AV's graduate program breadth committee and the corresponding Zhejiang University committee will decide on the list of similar courses.

At most, two of the following ¶¡ÏãÔ°AV special topics courses may be completed to fulfill the breadth requirement, except with permission from ¶¡ÏãÔ°AV's graduate program director.

CMPT 829 - Special Topics in Bioinformatics (3)

Examination of recent literature and problems in bioinformatics. Within the CIHR graduate bioinformatics training program, this course will be offered alternatively as the problem-based learning course and the advanced graduate seminar in bioinformatics (both concurrent with MBB 829). Prerequisite: Permission of the instructor.

Section Instructor Day/Time Location
Kay C Wiese
Jan 3 – Apr 10, 2018: Tue, 2:30–3:50 p.m.
Jan 3 – Apr 10, 2018: Thu, 2:30–3:50 p.m.
Burnaby
Burnaby
Maxwell Libbrecht
Jan 3 – Apr 10, 2018: Mon, Wed, Fri, 12:30–1:20 p.m.
Burnaby
CMPT 882 - Special Topics in Artificial Intelligence (3)

Section Instructor Day/Time Location
Richard Vaughan
Jan 3 – Apr 10, 2018: Wed, Fri, 1:30–2:50 p.m.
Burnaby
CMPT 886 - Special Topics in Operating Systems (3)

Section Instructor Day/Time Location
Rob Cameron
Jan 3 – Apr 10, 2018: Mon, Wed, Fri, 9:30–10:20 a.m.
Burnaby
Keval Vora
Jan 3 – Apr 10, 2018: Tue, 12:30–1:20 p.m.
Jan 3 – Apr 10, 2018: Thu, 12:30–2:20 p.m.
Burnaby
Burnaby
CMPT 888 - Special Topics in Computer Graphics, HCI, Vision and Visualization (3)

Examines current research topics in computer graphics, human computer interaction (including audio), computer vision and visualization.

Section Instructor Day/Time Location
Parmit Kaur Chilana
Jan 3 – Apr 10, 2018: Tue, Thu, 9:30–10:50 a.m.
Burnaby
Yasutaka Furukawa
Jan 3 – Apr 10, 2018: Tue, 1:30–2:20 p.m.
Jan 3 – Apr 10, 2018: Thu, 12:30–2:20 p.m.
Burnaby
Burnaby
Jan 3 – Apr 10, 2018: Mon, Fri, 1:30–2:50 p.m.
Burnaby

For more information about breadth requirements, please visit the website.

Research

¶¡ÏãÔ°AV's School of Computing Science requires students to complete all of the following depth requirements.

  • present a depth seminar and examination
  • write a thesis proposal and present a seminar and defend the material
  • submit a written thesis proposal and defend that thesis based on independent original work

All requirements may be completed at either university. Additional requirements concerning the thesis are found at the website.

For more information about the thesis defense, see 1.9 and 1.10 of ¶¡ÏãÔ°AV's .

Residency Requirement

Students are expected to conduct research at both ¶¡ÏãÔ°AV and Zhejiang University, and to reside at each university for at least one year.

Tuition Fees

Students who are resident at ¶¡ÏãÔ°AV pay per term tuition fees. Students who are resident at Zhejiang University pay per year tuition fees.

Table 2

Group I: Algorithms and Theory Credits

Courses at ¶¡ÏãÔ°AV

CMPT 701 - Computability and Logic (3)

Deep connections between logic and computation have been evident since early work in both areas. More recently, logic-based methods have led to important progress in diverse areas of computing science. This course will provide a foundation in logic and computability suitable for students who wish to understand the application of logic in various areas of CS, or as preparation for more advanced study in logic or theoretical CS.

CMPT 705 - Design and Analysis of Algorithms (3)

The objective of this course is to expose students to basic techniques in algorithm design and analysis. Topics will include greedy algorithms, dynamic programming, advanced data structures, network flows, randomized algorithms. Students with credit for CMPT 706 may not take this course for further credit.

CMPT 710 - Computational Complexity (3)

This course provides a broad view of theoretical computing science with an emphasis on complexity theory. Topics will include a review of formal models of computation, language classes, and basic complexity theory; design and analysis of efficient algorithms; survey of structural complexity including complexity hierarchies, NP-completeness, and oracles; approximation techniques for discrete problems. Equivalent Courses: CMPT810.

CMPT 711 - Bioinformatics Algorithms (3)

Fundamental algorithmic techniques used to solve computational problems encountered in molecular biology. This area is usually referred to as Bioinformatics or Computational Biology. Students who have taken CMPT 881 (Bioinformatics) in 2007 or earlier may not take CMPT 711 for further credit.

CMPT 813 - Computational Geometry (3)

This course covers recent developments in discrete, combinatorial, and algorithmic geometry. Emphasis is placed on both developing general geometric techniques and solving specific problems. Open problems and applications will be discussed.

CMPT 814 - Algorithmic Graph Theory (3)

Algorithm design often stresses universal approaches for general problem instances. If the instances possess a special structure, more efficient algorithms are possible. This course will examine graphs and networks with special structure, such as chordal, interval, and permutation graphs, which allows the development of efficient algorithms for hard computational problems.

CMPT 815 - Algorithms of Optimization (3)

This course will cover a variety of optimization models, that naturally arise in the area of management science and operations research, which can be formulated as mathematical programming problems. Equivalent Courses: CMPT860.

Courses at Zhejiang University

2111001-2 Applied Mathematics for Computer Science (1)

2111002-2 Applied Mathematics for Computer Science (2)

2122001-2 Elements of the Theory of Computation

2122019-2 Advanced Formal Methods

Group II: Systems

Courses at ¶¡ÏãÔ°AV

CMPT 745 - Software Engineering (3)

This course examines fundamental principles of software engineering and state-of-the-art techniques for improving the quality of software designs. With an emphasis on methodological aspects and mathematical foundations, the specification, design and test of concurrent and reactive systems is addressed in depth. Students learn how to use formal techniques as a practical tool for the analysis and validation of key system properties in early design stages. Applications focus on high level design of distributed and embedded systems.

CMPT 765 - Computer Communication Network (3)

This course will cover the fundamentals and recent advances in computer communication networks. The emphasis will be on the design and analysis of networks, especially switching, routing, and network topology.

CMPT 771 - Internet Architecture and Protocols (3)

Investigates the design and operation of the global network of networks: the Internet. This course studies the structure of the Internet and the TCP/IP protocol suit that enables it to scale to millions of hosts. The focus is on design principles, performance modelling, and services offered by the Internet.

CMPT 777 - Formal Verification (3)

The goal of formal verification is to prove correctness or to find mistakes in software and other systems. This course introduces, at an accessible level, a formal framework for symbolic model checking, one of the most important verification methods. The techniques are illustrated with examples of verification of reactive systems and communication protocols. Students learn to work with a model checking tool such as NuSMV.

CMPT 816 - Theory of Communication Networks (3)

This course investigates the design, classification, modelling, analysis, and efficient use of communication networks such as telephone networks, interconnection networks in parallel processing systems, and special-purpose networks. Equivalent Courses: CMPT881.

CMPT 886 - Special Topics in Operating Systems (3)

Section Instructor Day/Time Location
Rob Cameron
Jan 3 – Apr 10, 2018: Mon, Wed, Fri, 9:30–10:20 a.m.
Burnaby
Keval Vora
Jan 3 – Apr 10, 2018: Tue, 12:30–1:20 p.m.
Jan 3 – Apr 10, 2018: Thu, 12:30–2:20 p.m.
Burnaby
Burnaby

Courses at Zhejiang University

2122002-2 Advanced Operating System

2122003-2 Advanced Computer Architecture

2122006-2 Modern VLSI Design: System on Chip Design

2122018-2 Advanced Computer Networks

2124003-2 Computer Security

2124012-2 Grid Computing and Distributed Systems

2124014-2 Advanced Software Engineering

2124028-2 Pervasive Computing

2124057-2 High End Computing and Its Applications

2124058-2 Advanced Topics in Compilers

2124059-2 Multi-core Computing

2124060-2 Network Multimedia Computing

2124072-2 Principles of Embedded System Design

2124069-2 Sensor Network and Information Processing

2124070-2 Parallel Computer Architecture and Programming

2124071-2 Network Algorithms

Group III: Applications

Courses at ¶¡ÏãÔ°AV

CMPT 721 - Knowledge Representation and Reasoning (3)

Knowledge representation is the area of Artificial Intelligence concerned with how knowledge can be represented symbolically and manipulated by reasoning programs. This course addresses problems dealing with the design of languages for representing knowledge, the formal interpretation of these languages and the design of computational mechanisms for making inferences. Since much of Artificial Intelligence requires the specification of a large body of domain-specific knowledge, this area lies at the core of AI. Prerequisite: CMPT 310/710 recommended. Cross-listed course with CMPT 411.

Section Instructor Day/Time Location
James Delgrande
Jan 3 – Apr 10, 2018: Mon, 3:30–4:20 p.m.
Jan 3 – Apr 10, 2018: Wed, Fri, 3:30–4:20 p.m.
Burnaby
Burnaby
CMPT 726 - Machine Learning (3)

Machine Learning is the study of computer algorithms that improve automatically through experience. Provides students who conduct research in machine learning, or use it in their research, with a grounding in both the theoretical justification for, and practical application of, machine learning algorithms. Covers techniques in supervised and unsupervised learning, the graphical model formalism, and algorithms for combining models. Students who have taken CMPT 882 (Machine Learning) in 2007 or earlier may not take CMPT 726 for further credit.

CMPT 740 - Database Systems (3)

Introduction to advanced database system concepts, including query processing, transaction processing, distributed and heterogeneous databases, object-oriented and object-relational databases, data mining and data warehousing, spatial and multimedia systems and Internet information systems.

CMPT 741 - Data Mining (3)

The student will learn basic concepts and techniques of data mining. Unlike data management required in traditional database applications, data analysis aims to extract useful patterns, trends and knowledge from raw data for decision support. Such information are implicit in the data and must be mined to be useful.

CMPT 764 - Geometric Modelling in Computer Graphics (3)

Advanced topics in geometric modelling and processing for computer graphics, such as Bezier and B-spline techniques, subdivision curves and surfaces, solid modelling, implicit representation, surface reconstruction, multi-resolution modelling, digital geometry processing (e.g., mesh smoothing, compression, and parameterization), point-based representation, and procedural modelling. Prerequisite: CMPT 361, MACM 316. Students with credit for CMPT 464 or equivalent may not take this course for further credit.

CMPT 767 - Visualization (3)

Advanced topics in the field of scientific and information visualization are presented. Topics may include: an introduction to visualization (importance, basic approaches and existing tools), abstract visualization concepts, human perception, visualization methodology, 2D and 3D display and interaction and their use in medical, scientific, and business applications. Prerequisite: CMPT 316, 461 or equivalent (by permission of instructor). Students with credit for CMPT 878 or 775 may not take this course for further credit.

CMPT 820 - Multimedia Systems (3)

This seminar course covers current research in the field of multimedia computing. Topics include multimedia data representation, compression, retrieval, network communications and multimedia systems. Computing science graduate student or permission of instructor. Equivalent Courses: CMPT880.

CMPT 822 - Computational Vision (3)

A seminar based on the artificial intelligence approach to vision. Computational vision has the goal of discovering the algorithms and heuristics which allow a two dimensional array of light intensities to be interpreted as a three dimensional scene. By reading and discussing research papers - starting with the original work on the analysis of line drawings, and ending with the most recent work in the field - participants begin to develop a general overview of computational vision, and an understanding of the current research problems.

Section Instructor Day/Time Location
Brian Funt
Jan 3 – Apr 10, 2018: Mon, 1:30–4:20 p.m.
Burnaby
CMPT 823 - Formal Topics - Knowledge Representation (3)

This course surveys current research in formal aspects of knowledge representation. Topics covered in the course will centre on various features and characteristics of encodings of knowledge, including incomplete knowledge, non monotonic reasoning, inexact and imprecise reasoning, meta-reasoning, etc. Suggested preparation: a course in formal logic and a previous course in artificial intelligence.

CMPT 825 - Natural Language Processing (3)

In this course, theoretical and applied issues related to the development of natural language processing systems and specific applications are examined. Investigations into parsing issues, different computational linguistic formalisms, natural language syntax, semantics, and discourse related phenomena will be considered and an actual natural language processor will be developed.

CMPT 826 - Automated Learning and Reasoning (3)

This course covers topics shared both by AI and cognitive science. Current AI research papers are examined from the perspective of cognitive science, and vice versa. Topics covered in a given term will vary, depending upon the instructor, but most of the following topics will be addressed in any given term: connectionist models of intelligence; 'human-like' automated deduction; reasoning by analogy; topics in natural language; automated concept learning; and computational approaches to semantics. Prerequisite: At least one graduate or undergraduate AI course, or instructor's permission.

CMPT 827 - Intelligent Systems (3)

Intelligent systems are knowledge-based computer programs which emulate the reasoning abilities of human experts. This introductory course will analyze the underlying artificial intelligence methodology and survey advances in rule-based systems, constraint solving, incremental reasoning, intelligent backtracking and heuristic local search methods. We will look specifically at research applications in intelligent scheduling, configuration and planning. The course is intended for graduate students with a reasonable background in symbolic programming.

CMPT 829 - Special Topics in Bioinformatics (3)

Examination of recent literature and problems in bioinformatics. Within the CIHR graduate bioinformatics training program, this course will be offered alternatively as the problem-based learning course and the advanced graduate seminar in bioinformatics (both concurrent with MBB 829). Prerequisite: Permission of the instructor.

Section Instructor Day/Time Location
Kay C Wiese
Jan 3 – Apr 10, 2018: Tue, 2:30–3:50 p.m.
Jan 3 – Apr 10, 2018: Thu, 2:30–3:50 p.m.
Burnaby
Burnaby
Maxwell Libbrecht
Jan 3 – Apr 10, 2018: Mon, Wed, Fri, 12:30–1:20 p.m.
Burnaby
CMPT 843 - Database and Knowledge-base Systems (3)

An advanced course on database systems which focuses on data mining and data warehousing, including their principles, designs, implementations, and applications. It may cover some additional topics on advanced database system concepts, including deductive and object-oriented database systems, spatial and multimedia databases, and database-oriented Web technology.

Section Instructor Day/Time Location
Jiannan Wang
Jan 3 – Apr 10, 2018: Wed, Fri, 9:30–10:50 a.m.
Burnaby
CMPT 882 - Special Topics in Artificial Intelligence (3)

Section Instructor Day/Time Location
Richard Vaughan
Jan 3 – Apr 10, 2018: Wed, Fri, 1:30–2:50 p.m.
Burnaby
CMPT 888 - Special Topics in Computer Graphics, HCI, Vision and Visualization (3)

Examines current research topics in computer graphics, human computer interaction (including audio), computer vision and visualization.

Section Instructor Day/Time Location
Parmit Kaur Chilana
Jan 3 – Apr 10, 2018: Tue, Thu, 9:30–10:50 a.m.
Burnaby
Yasutaka Furukawa
Jan 3 – Apr 10, 2018: Tue, 1:30–2:20 p.m.
Jan 3 – Apr 10, 2018: Thu, 12:30–2:20 p.m.
Burnaby
Burnaby
Jan 3 – Apr 10, 2018: Mon, Fri, 1:30–2:50 p.m.
Burnaby

Courses at Zhejiang University

0711026-2 Bioinformatics Topics

2112001-2 Research Frontiers of Computer Science and Technology

2122020-4 Computer Graphics

2122021-2 Introduction to Computer Vision

2122022-2 Advanced Database Technology

2122023-2 Introduction to Artificial Intelligence

2124017-2 The Fundamental Principles of Non-Photorealistic Computer Graphics

2124025-2 Electronic Business Technology

2124027-2 Computer Animation and its Application

2124061-2 Network Multimedia Search Engine

2124062-2 Solid Modeling

2124063-2 Biologic Intelligence and Algorithm

2124064-2 Introduction to Machine Learning

2124065-2 Advanced Artificial Intelligence

2124066-2 Visualization in Scientific Computing

2124067-2 Speech and Language, Processing and Understanding

2124068-2 Image Processing and Modeling

2124073-2 Virtual Reality

2124074-2 HCI and Virtual Human

2124075-2 Data Mining