|
Computing and Information Science
Faculty
MSc Program
Courses
Disclaimer
Chair
Wlodek Dobosiewicz (313 Reynolds, Ext. 52250)
(E-mail: chair@cis.uoguelph.ca)
Graduate co-ordinator
Yang Xiang, (1389 Thornborough, Ext. 52824)
(E-mail: yxiang@cis.uoguelph.ca)
Graduate secretary
Colleen O'Brien (312 Reynolds, Ext. 56402)
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
William Gardner
BSEE MIT, BEd Toronto, PhD Victoria - Assistant 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
Pascal Matsakis
BSc, MSc, PhD - Paul Sabatier - Associate Professor
Blair Nonecke
BSc, MSc Guelph, PhD South Bank - Assistant Professor
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
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 advisor, 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 advisor and advisory committee, subject to the above constraints.
-
Courses
Course/(Credit Value) |
Term |
Course Description |
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*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*6030
Advanced Database Systems (0.5) |
|
Relational database systems, advanced features of database
management, concurrency protocols, data integrity, transaction
management, distributed databases, remote access, data warehousing,
data mining, and deductive databases. |
CIS*6040
Advanced Image Analysis (0.5) |
|
An insight into advanced topics in image processing and analysis.
A study of methods for analyzing and interpreting information
from two and three-dimensional images obtained from a variety
of medical and biological imaging modalities. |
CIS*6050
Advanced Neural Networks: Dynamical Recurrent Networks
(0.5) |
|
Artificial neural networks, dynamical recurrent networks, dynamic
input/output sequences, communications signal identification,
syntactic pattern recognition. |
CIS*6060
Bioinformatics (0.5) |
|
Data mining and bioinformatics, molecular biology databases,
taxonomic groupings, sequences, feature extraction, Bayesian inference,
cluster analysis, information theory, machine learning, feature
selection. |
CIS*6070
Discrete Optimization (0.5) |
|
This course will discuss problems where optimization is required
and describes the most common techniques for discrete optimization
such as the use of linear programming, constraint satisfaction
methods, and genetic algorithms. |
CIS*6080
Genetic Algorithms (0.5) |
|
This course introduces the student to basic genetic algorithms,
which are based on the process of natural evolution. It is explored
in terms of its mathematical foundation and applications to optimization
in various domains. |
CIS*6090
Hardware/Software Co-design of Embedded Systems (0.5)
|
|
Specification and design of embedded systems, system-on-a-chip
paradigm, specification languages, hardware/software co-design,
performance estimation, co-simulation and validation, processes
architectures and software synthesis, retargetable code generation
and optimization. |
CIS*6100
Parallel Processing Architectures (0.5) |
|
Parallelism in uniprocessor systems, parallel architectures,
memory structures, pipelined architectures, performance issues,
multiprocessor architectures. |
CIS*6120
Uncertainty Reasoning in Knowledge Representation (0.5)
|
|
Representation of uncertainty, Demster-Schafer theory, fuzzy
logic, Bayesian belief networks, decision networks, dynamic networks,
probabilistic models, utility theory. |
CIS*6130
Object-Oriented Modeling, Design and Programming (0.5)
|
|
Objects, modeling, program design, object-oriented methodology,
UML, CORBA, database |
CIS*6140
Software Engineering (0.5) |
|
An introduction to the field of software engineering, assuming
no prior knowledge in this area. Course covers issues such as
requirements analysis, specifications, software architectures,
quality assurance, and software metrics. |
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*6200
Design Automation in Digital Systems (0.5) |
|
Techniques and software tools for design of digital systems.
Material covered includes high-level synthesis, design for testability,
and FPGAs in design and prototyping. |
CIS*6320
Image Processing Algorithms and Applications (0.5) |
|
Brightness transformation, image smoothing, image enhancement,
thresholding, segmentation, morphology, texture analysis, shape
analysis, applications in medicine and biology. |
CIS*6420
Artificial Neural Networks (0.5) |
|
Neural networks, artificial intelligence, connectionist model,
back propagation, resonance theory, sequence processing, software
engineering concepts. |
CIS*6450
Software Systems Development and Integration (0.5) |
|
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.5) |
|
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*6650
Topics in Computer Science I (0.5) |
|
Selected, advanced topics in computer science that are not covered
by existing courses. The topic(s) will vary depending on the need
and the instructor. |
CIS*6660
Topics in Computer Science II (0.5) |
|
Selected, advanced topics in computer science that are not covered
by existing courses. The topic(s) will vary depending on the need
and the instructor. |
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.
|
|