|
Computing and Information Science
Faculty
MSc Program
Courses
Disclaimer
Chair Wlodek Dobosiewicz (313 Reynolds, Ext. 2250) (E-mail: chair@cis.uoguelph.ca)
Graduate co-ordinator Yang Xiang, (1389 Thornborough, Ext. 2824) (E-mail:
yxiang@cis.uoguelph.ca)
Graduate secretary Colleen O'Brien (312 Reynolds, Ext. 6402) colleen@cis.uoguelph.ca
- Graduate Faculty
Dilip K. Banerji BTech Indian Inst. of Tech., MSc Ottawa, PhD
Waterloo - Professor
David A. Calvert B.A. Hnrs. Guelph, M.Sc. Guelph, PhD Waterloo - Assistant
Professor
David K.Y. Chiu BA Waterloo, BSc Guelph, MSc Queen's, PhD Waterloo - Professor
Wlodek Dobosiewicz BSc, MA, MSc, PhD Warsaw - Chair & Professor
Gary Gréwal BSc Brock, M.Sc. Guelph, Ph.D. Guelph - Assistant Professor
Stefan C. Kremer B.Sc. Hnrs. Guelph, Ph.D. Alberta - Assistant Professor
Xining Li BSc, MSc Nanjing, PhD Calgary - Professor
James G. Linders BASc, MASc Toronto,
PhD Imperial College, London - Professor
Jay C. Majithia BSc London, MEng, PhD McMaster - Professor
Emeritus
Charlie F. Obimbo MSc Kiev, PhD New Brunswick - Assistant Professor
Deborah A. Stacey BSc Guelph, PhD Waterloo -
Associate Professor
David A. Swayne BSc Waterloo, MA York, PhD Waterloo - Professor
Fangju Wang BE
Changsha, MSc Peking, PhD Waterloo - Associate Professor
Thomas C. Wilson BA Iowa, MSc Chicago, PhD
Waterloo - Professor
Mark Wineberg BSc Toronto, MSc, Phd Carleton - Assistant Professor
Michael A. Wirth BSc New England (Aust.), MSc Manitoba, PhD
RMIT Melbourne - Assistant Professor
Yang Xiang BSs, MSc BUAA (Beijing), PhD UBC - Associate Professor
Associated Graduate Faculty
Brian Ross BSc Manitoba, MSc British Columbia, PhD Edinburgh - Adjunct Professor
The Department of Computing and Information Science offers a program of
study leading to the MSc degree in applied computer science.
MSc Program
The MSc program has a distinctive applied
orientation, emphasizing research that can potentially contribute to industry and government. Interaction with
other disciplines is encouraged. The program is based on three areas of technical specialization: (1) parallel and
distributed computing, (2) interactive software environments, and (3) artificial intelligence. A software
engineering initiative is underway and students will be considered in this area. Research in the department is
conducted by groups centred in these areas of activity. Research in distributed systems includes distributed
databases, VLSI design automation, computer architecture and networks, and parallel processing. Research in
interactive software environments includes human-computer interaction, user-interface software and hypertext.
Research in artificial intelligence includes uncertainty management, knowledge acquisition, expert systems,
image processing, neural networks and pattern recognition. In addition, applied research is carried out in areas
such as information management, including geographical-information systems, statistical databases, and office
information systems.
Admission Requirements
To be considered for admission, applicants must meet the
minimum admission requirements of both the university and the department, including at least a 75% ('B')
average during the previous four semesters of university study. Applicants must possess a four-year honours
degree in computer science. However, a student with a minor in computer science and an honours degree in
another applicable discipline may be granted provisional admission. Owing to the applied nature of the program,
we encourage students with such backgrounds to apply. To assist in identifying a suitable thesis adviser,
applicants are requested to submit descriptions of their research interests.
Most available spaces will be filled
in May for entry the following September. A limited amount of spaces are available in January with admission
given in the previous October.
Degree Requirements
Degree requirements include a master's thesis,
participation in a research seminar and at least four graduate-level courses: two in the student's research area
and others outside of that area. There is no qualifying exam or second-language requirement. Heavy emphasis is
placed on the thesis, which usually requires at least two semesters. Students should plan on spending at least
four full-time semesters in the program assuming adequate preparation for graduate work. Normally, students
are expected to fulfill all the requirements in five semesters.
Graduate courses are organized around the areas of
specialization mentioned earlier. The courses chosen must include at least two of these areas. In exceptional
cases, one graduate-course requirement may be met by an approved 0.5-credit graduate course from another
department or by two approved 400-level 0.5-credit courses which have not already been taken for credit. The
specific course requirements for each student will be determined in consultation with the thesis adviser and
advisory committee, subject to the above constraints.
Courses
Course/(Credit Value) |
Term |
Course Description |
Distributed Systems |
CIS*6000 Distributed Systems (0.5) | |
The evolution of high-performance distributed computer systems. Models for distributed processing. Taxonomy
and performance evaluation of multiprocessor systems. Interconnection networks. Memory and I/O system for
multiprocessor architectures. Performance of distributed systems. Architectural issues of distributed database
systems. |
CIS*6100 Parallel Processing (0.5) | |
Introduction to parallel processing. Discussion of possible
alternative architectures such as bus architecture and n-cube architecture machines. Comparison of SISD,
SIMD, MISD and MIMD machines. The complexity of sorting and other algorithms in a parallel-processing
context. Topics may include systolic processing and/or array processing. |
CIS*6200 Design Automation in Digital Systems (0.5) | |
Techniques and software tools that provide a computer-aided-design (CAD) facility to
designers of digital systems. Most of the material will be on high-level synthesis and optimizations, sufficiently
abstracted from circuit/logic-level details. |
CIS*6600 Topics in Distributed Systems (0.5) | |
Selected topics in distributed systems that are not covered by existing courses. The topics will be chosen from: local-area networks, distributed databases, performance evaluation and reliability, introduction to VLSI. |
Interactive Software Environments |
CIS*6010 Interactive Software Tools (0.5) | |
Recent advances in understanding the development of interactive software. Topics include conceptual paradigms for interactive software, tools for developing interactive software, knowledge-based tools and human factors of software development. |
CIS*6110 Models for Design of Human-Computer Interaction (0.5) | |
Formal and informal models applicable to the design of human-computer interaction. Topics include history of human-computer interaction models, models of users, models of interactions, models of interactive systems, and models of the design and development
process. |
CIS*6210 Research in Design Methods for Human-Computer Interaction (0.5) | |
Current developments in design methods for human-computer interaction. Topics include the history of design methods in human-computer interaction, the acquisition and formalization of design knowledge and advanced techniques in user interfaces (e.g., knowledge-based interfaces). |
CIS*6610 Topics in Interactive-Software Environments (0.5) | |
Topics of current interest to the department and students and not covered by existing courses. The topics will be
chosen from: CAI applications, human-factor research in software development, applied cognitive science for
human-computer interaction, office software environments. |
Artificial Intelligence |
CIS*6020 Knowledge Representation and Expert Systems (0.5) | |
The major features of expert systems today: a discussion of logic and
rule-based systems; forward and backward chaining; frames, scripts, semantic nets and the object-oriented
approach; the evaluation of expert systems and knowledge acquisition. A sizeable project is required and
applications in other areas are encouraged. |
CIS*6120 Uncertainty Reasoning in Intelligence Systems (0.5) | |
Different paradigms for handling uncertainty in reasoning. Topics include the incorporation of uncertainty into
logical models, e.g., fuzzy logic, probabilistic logic and non-nontonic reasoning; and introduction to Dempster-
Shafer theory. The role of belief networks, complexity issues. Applications will be presented and a project
required. |
CIS*6220 Pattern Recognition and Machine Learning (0.5) | |
An interdisciplinary approach to
knowledge discovery, machine learning and pattern analysis. Possible topics include: information measures,
inductive learning, statistical and structural pattern recognition, neural networks, applications in computational
molecular biology and image analysis. |
CIS*6320 Image Processing Algorithms and Applications (0.5) | |
Topics in
image processing algorithms, and their analysis and implementation. The emphasis is on representation and data
structures, analysis of algorithms and complexities, parallel architectures and algorithms for image processing,
as well as implementation issues including image-processing language design and software-development
environments. |
CIS*6420 Artificial Neural Networks (0.5) | |
An introductory survey course concentrating on
analysis of various artificial neural network models in terms of their underlying principles, topologies,
behaviours and learning algorithms. Some applications will also be discussed. |
CIS*6620 Topics in Artificial Intelligence (0.5) | |
Topics in areas of artificial intelligence that are of current interest to the department and
students that are not covered by existing courses. Possible topics include search, planning; natural language
understanding; special topics in knowledge representation, robotics, knowledge-based modelling, intelligent
databases and decision support systems. |
Other Miscellaneous Courses |
CIS*6150 Complexity of Parallel Computation (0.5) | |
Computing models, sequential model, complexity models, evolution of parallelism, parallel complexity, P-completeness, survey of P and NC, open problems. |
CIS*6450 Software Systems Development and Integration (0.25) | |
Techniques and tools used in the development of large software systems. Methods for organizing and constructing modular systems, manipulating files, an introduction to interface design, and use of databases. Software tools for managing projects, database connectivity, configuration management, and system application programmer interfaces. |
CIS*6490 The Analysis and Design of Computer Algorithms (0.25) | |
The design and analysis of efficient computer algorithms: standard methodologies, asymptotic behaviour, optimality, lower bounds, implementation considerations, graph algorithms, matrix computations (e.g. Strassen's method), NP-completeness. |
CIS*6630 Topics in Information Management (0.5) | |
This course will cover topics in a variety of areas of information management that are of
current interest to the department and students. Possible topics include geographical-information systems,
object-oriented databases, statistical databases, spatial databases, office-information systems. |
CIS*6640 Topics in Computer Science (0.5) | |
This course will cover selected topics in computer science that are of current
interest to the department and students. The topics include advanced algorithms and computational complexity,
theory of parsing and compilation, database theory. |
CIS*6900 Computer Science Seminar (0.0) | |
A regular
weekly seminar presenting research problems currently under investigation. Each student is expected to
regularly attend for three semesters and to present one of the talks. |
The Office of Graduate Studies has attempted to ensure the accuracy of this
on-line Graduate Calendar. However, the publication of information in this document does not
bind the university to the provision of courses, programs, schedules of studies, fees, or facilities as
listed herein. Other limitations apply.
|
|