91ÅÝܽ

Welcome to SFU.ca.
You have reached this page because we have detected you have a browser that is not supported by our web site and its stylesheets. We are happy to bring you here a text version of the SFU site. It offers you all the site's links and info, but without the graphics.
You may be able to update your browser and take advantage of the full graphical website. This could be done FREE at one of the following links, depending on your computer and operating system.
Or you may simply continue with the text version.

*Windows:*
FireFox (Recommended) http://www.mozilla.com/en-US/firefox/
Netscape http://browser.netscape.com
Opera http://www.opera.com/

*Macintosh OSX:*
FireFox (Recommended) http://www.mozilla.com/en-US/firefox/
Netscape http://browser.netscape.com
Opera http://www.opera.com/

*Macintosh OS 8.5-9.22:*
The only currently supported browser that we know of is iCAB. This is a free browser to download and try, but there is a cost to purchase it.
http://www.icab.de/index.html
| |

TOC PREV NEXT INDEX

School of Computing Science

9971 Applied Science Building, 778.782.4277 Tel, 778.782.3045 Fax,

Director

  • R.D. Cameron BASc, PhD (Br Col)

Graduate Program Director

  • A.L. Liestman BGS (Kansas), MS, PhD (Ill)

Faculty and Areas of Research

For a complete list of faculty, see “School of Computing Science” on page 76 and

  • M.S. Atkins – medical image display and analysis, medical image denoising, human-computer interfaces for medical radiology workstations, eyegaze applications in medicine and sleep disorders, virtual laparoscopy training
  • P. Berenbrink – probabilistic methods, randomized algorithms, analysis of dynamic processes, ad hoc networks, load balancing, routing and scheduling
  • D. Beyer – software engineering, formal verification, analysis of large systems
  • B.K. Bhattacharya – computational geometry, robust geometric computation, resource allocation optimization
  • A. Bulatov constraint problems, computational complexity, combinatorics, clone theory and universal algebra
  • F.W. Burton – functional programming, parallel computing
  • T.W. Calvert* – information processing in man and machines, biomedical applications, graphics
  • R.D. Cameron – internet protocols, programming languages and systems, software engineering
  • V. Dahl – logic programming, computational linguistics, bioinformatics, deductive knowledge bases, information extraction, web-based technology
  • J.P. Delgrande – knowledge representation, nonmontonic reasoning, belief revision, reasoning with preferences, logic in computer science, reasoning about action
  • M.S. Drew – multimedia, computer vision, computer graphics, color
  • A.F. Ergun – quality of service in high speed networks, combinatorial property testing, sublinear algorithms, randomized algorithms
  • M. Ester – database systems, data mining, text mining, bioinformatics
  • A. Fedorova – operating systems, multiprocessors, transactional memory
  • B.V. Funt – color imaging, computer vision
  • U. Glässer – software systems engineering: mathematical foundations, requirements specification and validation, formal semantics, system design languages, concurrent and reactive systems
  • Q. Gu – network communications, parallel/distributed computing, algorithms and computation, machine learning, computational biology
  • A. Gupta – constructive combinatorics, parallel complexity theory, bioinformatics
  • R.F. Hadley – computational approaches to cognitive science, connectionist models of mental processes, cognitive architecture
  • L.J. Hafer – constrained optimization, mixed-integer linear programming, scheduling
  • G. Hamarneh – medical image analysis (computational/artificial intelligence, computer vision and image processing in medical imaging); geometry, physics and statistics based shape modeling, web-based medical image computing
  • R. Harrop* – medical applications, automata theory, logic
  • W.S. Haven* – artificial intelligence, constraint programming, intelligent systems
  • M. Hefeeda – computer networks and distributed systems, multimedia communications, peer-to-peer systems
  • P. Hell – computational combinatorics, algorithmic graph theory
  • V. Kabanets – computational complexity, randomness in computation, pseudorandomness and derandomization
  • T. Kameda* – distributed computing, computational geometry, polygon search problems, video-on-demand
  • A. Kirkpatrick – human-computer interaction
  • R. Krishnamurti – approximation algorithms, combinatorial optimization
  • Z.N. Li – computer vision, mulimedia, pattern recognition, image processing, artificial intelligence
  • A.L. Liestman – analysis of algorithms, graph theory, network communications
  • J.C. Liu – internet architecture and protocols, multimedia (video) communications, wireless networks, mobile ad hoc networks, overlay networks and peer-to-peer communications
  • W.S. Luk – database systems, distributed processing
  • D. Mitchell – constraint satisfaction and satisfiability testing, computational logic, propositional proof complexity
  • T. Möller – computer graphics, scientific visualization, signal processing, approximation theory
  • G. Moricomputer vision, object recognition, pose estimation, activity recognition, machine learning
  • J. Pei – data mining and knowledge discovery, online analytical analysis and data warehousing, database systems, bioinformatics and biometrics
  • J.G. Peters – networks and communication, mathematical modeling, graph theory
  • F. Popowich – artificial intelligence, computational linguistics, natural language understanding/processing
  • S.C. Sahinalp – algorithms: pattern matching, sequence embeddings, data structures; computational genomics: genome analysis, comparative genomics, functional evolution of the human genome
  • A. Sarkar – artificial intelligence, statistical natural language processing, computational linguistics, machine learning, probabilistic grammars and formal language theory
  • O. Schulte – computational logic, computation decision theory and game theory, machine learning
  • T.C. Shermer – computer graphics, graph theory, computational geometry
  • T. Smyth – physics-based sound synthesis and digital audio signal processing for music applications
  • G. Tardos – combinatronics, discrete and computational geometry, complexity theory
  • E. Ternovska – computational logic, complexity of reasoning, formal verification, semantics of logic programming
  • R.T. Vaughan – autonomous systems, robotics, artificial intelligence, adaptive and distributed systems
  • K. Wang – database, data mining, data mining in bioinformatics
  • J.J. Weinkam* – computational epidemiology, programming languages
  • K. Wiese – bioinformatics, evolutionary computation and biocomputing, intelligent systems and optimization
  • H. Zhang – 3D computer graphics, digital geometry processing, geometric mode

Associate Members

For areas of research, refer to the department listed.

  • J. Borwein, Department of Mathematics
  • P.B. Borwein, Department of Mathematics
  • J.C. Dill, School of Engineering Science
  • M.B. Monagan, Department of Mathematics
  • F.J. Pelletier, Cognitive Science Program
  • R.D. Russell, Department of Mathematics
  • L. Trajkovic, School of Engineering Science
  • M.R. Trummer, Department of Mathematics

*emeritus

Research Facilities

The school operates several interconnected local area networks in co-operation with other Faculty of Applied Sciences departments. These networks are connected to 91ÅÝܽ LAN, the campus-wide network, for access to the Internet.

Facilities include over 300 networked workstations, file servers, CPU servers, and other specialized systems. The workstations are mostly SUN UltraSparc and PC, with some Silicon Graphics and Macintosh workstations. Additionally, the school has comprehensive resources to facilitate VLSI design, simulation, fabrication and testing.

Other computing resources are provided by Academic Computing Services including six large SGI 4D multi-processor systems, four Sun SPARC-II computers, an IBM RS6000, and an Auspex file server. These systems and a range of software and services are available to the campus community.

Degrees Offered

The school offers programs leading to the MSc and PhD. It provides graduate studies in theoretical computing science; artificial intelligence; database systems; computer graphics and multimedia computing; hardware design; distributed computing; programming languages and systems; computer vision and medical imaging.

Admission Requirements

To qualify for MSc program admission, a student must satisfy the University admission requirements stated in section 1.3 of the Graduate General Regulations and must have a bachelor’s degree or the equivalent in computing science or a related field.

To qualify for PhD program admission, a student must satisfy the University admission requirements stated in Graduate General Regulations 1.3 (page 219) and

have a master’s degree or the equivalent in computing science or a related field or

have a bachelor’s degree or the equivalent in computing science or a related field, with a cumulative grade point average of 3.5 (on a scale of 0.0-4.0) or the equivalent.

At its discretion, the school’s graduate admission committee may offer either MSc or PhD admission to students applying to the PhD program without a master’s degree or equivalent in computing science or a related field. Students enrolled in the MSc program may apply to transfer to the PhD program after two terms in the MSc program; the school’s evaluation procedure for such applications is the same as that used for outside applicants.

Breadth and Course Requirements

For purposes of defining the MSc and PhD breadth requirements, courses are grouped into the five major areas shown in Table 1. Courses not related to the breadth requirements are shown in Table 2. Any courses completed outside the School of Computing Science must be approved by the student’s senior supervisor and the director of the graduate program.

Only two special topics courses (two of CMPT 829, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889) may be used toward satisfaction of breadth requirements, except with permission of the graduate program breadth committee.

The courses used to satisfy the breadth requirements must include either CMPT 705 or 710, unless the student already has credit for one of these courses (or equivalent) from a previous degree as determined by the graduate program breadth committee.

Table 1

Area I – Algorithms and Complexity Theory

CMPT 701-3 Computability and Logic

CMPT 705-3 Design and Analysis of Algorithms

CMPT 710-3 Computational Complexity

CMPT 711-3 Bioinformatics Algorithms

CMPT 813-3 Computational Geometry

CMPT 814-3 Algorithmic Graph Theory

CMPT 815-3 Algorithms of Optimization

CMPT 881-3 Special Topics in Theoretical Computing Science

Area II – Networks, Software and Systems

CMPT 730-3 Programming Languages

CMPT 731-3 Functional Programming

CMPT 745-3 Software Engineering

CMPT 755-3 Compiler Theory

CMPT 760-3 Operating Systems

CMPT 765-3 Computer Communication Networks

CMPT 771-3 Internet Architecture and Protocols

CMPT 777-3 Formal Verification

CMPT 816-3 Theory of Communication Networks

CMPT 885-3 Special Topics in Computer Architecture

CMPT 886-3 Special Topics in Networks, Software and Systems

Area III – Artificial Intelligence

CMPT 721-3 Knowledge Representation and Reasoning

CMPT 725-3 Logical Methods in Computational Intelligence

CMPT 726-3 Machine Learning

CMPT 823-3 Formal Topics in Knowledge Representation

CMPT 825-3 Natural Language Processing

CMPT 826-3 Automated Learning and Reasoning

CMPT 827-3 Intelligent Systems

CMPT 882-3 Special Topics in Artificial Intelligence

Area IV – Databases, Data Mining and Computational Biology

CMPT 505-3 Problem Based Learning in Bioinformatics

CMPT 740-3 Database Systems

CMPT 741-3 Data Mining

CMPT 829-3 Special Topics in Bioinformatics

CMPT 842-3 Concurrency Control in Database Systems

CMPT 843-3 Database and Knowledge-base Systems

CMPT 884-3 Special Topics in Database Systems

Area V – Graphics, HCI, Vision and Visualization

CMPT 761-3 Image Synthesis

CMPT 764-3 Geometric Modeling in Computer Graphics

CMPT 773-3 User Interface Design

CMPT 767-3 Visualization

CMPT 768-3 Computer Music Theory and Sound Synthesis

CMPT 820-3 Multimedia Systems

CMPT 821-3 Robot Vision

CMPT 822-3 Computational Vision

CMPT 888-3 Special Topics in Computer Graphics, HCI, Vision and Visualization

Table 2

CMPT 880-3 Special Topics in Computing Science

CMPT 889-3 Special Topics in Interdisciplinary Computing

CMPT 894-3 Directed Reading

The course requirements for the MSc and PhD degrees each have a distribution requirement to ensure breadth across the major areas defined in table 1. This requirement specifies the number of courses selected from each of the five major areas.

Supervisory Committees

A supervisory committee, at either the MSc or PhD level, consists of the student’s senior supervisor, at least one other computing science faculty member, and others (typically faculty) as appropriate. The choice of senior supervisor should be made by mutual consent of the graduate student and faculty member based on commonality of research interests. The student and senior supervisor should consult on the remainder of the committee members.

Graduate General Regulations 1.6 specifies that a senior supervisor be appointed normally no later than the beginning of the student’s third term in the program, and that the remainder of the supervisory committee be chosen normally in the same term in which the senior supervisor is appointed.

Research Topics Seminars

The research topics seminar series CMPT 891 is presented each year by faculty and graduate students to acquaint new students with faculty research interests, and to introduce relevant issues. Graduate students complete CMPT 891 in the first year.

MSc Program

Students acquire breadth of knowledge through a course sequence, and depth of knowledge through completion and defence of a thesis or a project. Under normal circumstances, an MSc program is within six terms and not longer than eight. Students must choose between thesis and project options by the second term’s end. Any change thereafter must be approved by the graduate program committee.

Breadth Requirement

Thesis MSc students must complete a breadth requirement consisting of five graduate courses (which is equivalent to 15 units). At least four of the courses must be drawn from table 1 so that at least one course must be from area I (Algorithms and Complexity Theory) and two of the four courses must be from two other areas.

Project MSc students complete a breadth requirement consisting of eight graduate courses (which is equivalent to 24 units). At least six of the courses must be drawn from table 1 so that at least one course must be from area I (Algorithms and Complexity Theory) and so that the six courses cover at least three different areas.

Any 700 division course used to satisfy the MSc breadth requirement might be waived and replaced by an 800 division course. Students must produce convincing evidence to the graduate program committee that they have completed a comparable course or have comparable training in industry.

Any courses completed outside the school must be approved by the student’s senior supervisor and the graduate breadth committee.

Depth Requirement

Thesis MSc students are required to demonstrate depth of knowledge in their research area through a thesis seminar and defence based on their independent work. Students should consult with their supervisory committee members, and formulate and submit a written thesis proposal for approval. This should not be done any later than the third term.

Project MSc students must choose an area of specialization and submit a project report. Project topics may include a comprehensive survey of the literature of some computing science related research areas; implementation and evaluation of existing techniques/algorithms; development of interesting software/hardware applications.

Regulations specifying the examining committee’s composition and procedures for the thesis or project exam appear in the Graduate General Regulations.

PhD Program

Students will demonstrate breadth of knowledge as outlined below, and demonstrate the capacity to conduct original research through completion and defence of an original thesis. A PhD degree should be completed within 12 terms and should not require longer than 15 terms.

Breadth Requirement

PhD students who already possess an MSc in computing science or a related field must complete a breadth requirement of four graduate courses (which is equivalent to 12 units of graduate course work). At least three of the courses must be drawn from table 1 so that they are all in different areas.

PhD students who do not possess an MSc in computing science or a related field must complete a breadth requirement of eight graduate courses (which is equivalent to 24 units of graduate course work). At least six of the courses must be drawn from table 1 so that at least one course must be from area I (Algorithms and Complexity Theory) and so that the six courses cover at least three different areas.

A PhD student must achieve a minimum 3.4 CGPA and passing grades in all courses.

Depth Requirement

PhD students demonstrate depth of knowledge in their research area through a public depth seminar and oral examination, give a thesis proposal seminar, and submit and defend a thesis based on their independent work which makes an original contribution to computing science.

Depth Examination

The depth seminar and examination may be scheduled at any time following the completion of breadth requirements. Typically this is between the fifth and seventh term in the PhD program; a recommendation is made by the graduate breadth committee, in proportion to the amount of course work required to satisfy the breadth requirement.

The examining committee consists of the supervisory committee and one or two additional examiners recommended by the examining committee, and approved by the graduate program committee. The depth exam centres on the student’s research area. The examining committee, in consultation with the student, specifies the examination topics. The student prepares a written survey and gives a public depth seminar; the oral exam follows, and then the committee evaluates the student’s program performance. The committee’s evaluation is diagnostic, specifying additional work in weak areas if such exists. A second depth exam or withdrawal from the program may be recommended in extreme cases.

Thesis Proposal

The student, in consultation with the supervisory committee, formulates and submits, for approval, a written thesis proposal consisting of a research plan and preliminary results. The student gives a seminar and defends the originality and feasibility of the proposed thesis to the supervisory committee. The thesis proposal is normally presented and defended within three terms of the depth examination.

Thesis Defence

Regulations specifying the examining committee composition and procedures for the final public thesis defence are in the Graduate General Regulations. PhD students give a seminar; typically this will be about their thesis research and is presented in the interval between distribution of the thesis to the committee and the defence.


TOC PREV NEXT INDEX