2016-2017 Graduate Calendar

Computer Science

 

Master of Science in Computer Science

Dean

S. Ejaz Ahmed

Faculty of Mathematics and Science

Associate Dean

Alan Castle

Faculty of Mathematics and Science

Core Faculty

Professors

Ivo Düntsch (Computer Science), Sheridan Houghten (Computer Science), Beatrice Ombuki-Berman (Computer Science), Ke Qiu (Computer Science), Brian Ross (Computer Science), Michael Winter (Computer Science)

Associate Professors

David Hughes (Computer Science), David McCarthy (Computer Science), Jon Radue (Computer Science), Vladimir Wojcik (Computer Science)

Participating Graduate Faculty

Professors

Frank Fueten (Earth Sciences), Omar Kihel (Mathematics), Thomas Wolf (Mathematics)

Associate Professors

John Bonnett (History), Babak Farzad (Mathematics), Ping Liang (Biological Sciences)

Adjunct Professors

Joseph Brown, Robert Teather

Graduate Program Director

Brian Ross

bross@brocku.ca

Administrative Assistant

Donna Phelps

905-688-5550, extension 3513

Mackenzie Chown J314

donna.phelps@brocku.ca

http://www.cosc.brocku.ca/graduate

Graduate Studies Administrative Assistant

Beulah Alexander

905-688-5550, extension 3115

Mackenzie Chown F204

http://www.brocku.ca/biotechnology

balexander@brocku.ca

 

Program Description

Go to top of document

The Department of Computer Science offers a program leading to the Master of Science (MSc) degree. Graduate research topics may be conducted in the broad areas of computational logic and algebra, data mining, evolutionary computation, artificial intelligence, algorithms, parallelism, and combinatorics. Please see the department web page for a listing of faculty and their specific research interests (http://www.cosc.brocku.ca/graduate).

 

Admission Requirements

Go to top of document

Successful completion of four year Bachelor's degree, or equivalent, in Computer Science, with at least a minimum average of 75 (B). In some circumstances, exceptional applicants with four year Bachelor's degree in a related discipline (e.g. mathematics, computer engineering) who have met the minimum average of 75 (B), and have a demonstrated proficiency in fundamental computer science topics (see list below), may be considered. Such applicants may consider submitting a result from the Graduate Record Examination (GRE) subject test in computer science to strengthen their application. Agreement from a faculty advisor to supervise the student is also required for admission to the program.

Applicants are expected to have completed courses in the following areas: computer organization, operating systems, file structures and data management, principles of programming languages, data structures, software analysis and design, formal languages and automata, calculus, linear algebra, statistics and/or probability, discrete mathematics, and additional four upper level (third or fourth year) half courses in other topics in computer science. Candidates lacking sufficient background in the area of the intended Master's degree may be required to complete additional preparatory courses in consultation with their supervisor.

Those applicants holding a three or four year Bachelor's degree and who meet academic requirements of an overall B average may be asked to complete a qualifying term/year to upgrade their application. Completion of a qualifying term/year does not guarantee acceptance into the program.

The Graduate Admissions Committee will review all applications and recommend admission for a limited number of suitable candidates.

Part-time study is available.

 

Degree Requirements

Go to top of document

For full-time students, the MSc is normally a six term or two year program. Every MSc candidate must prepare and defend a thesis, which demonstrates a capacity for independent work of high scientific calibre. A supervisory graduate committee will guide the student in all aspects of the student's graduate program. Students normally take four half-credit courses in the first year. Courses are selected in consultation with their assigned supervisor.

Degree requirements must include COSC 5F90 (Thesis) and four 5(alpha)00 or above level COSC half-credits, or three such COSC half-credits and one COSC 4(alpha)00 or above level half credit with the approval of the graduate committee. At most one of the graduate level courses may be a directed reading course. One of these half-credit courses can be a non-COSC course that is related to applications in computer science, with the approval of the Graduate Program Committte. All candidates are required to present seminars on their background research and thesis topics as part of the COSC 5F90 thesis course, attend all the seminars of fellow graduate students and departmental seminars.

 

Facilities

Go to top of document

A campus-wide fiber optic network links all of the university's academic computing facilities. The department's computers form an integral part of this resource. All faculty and graduate students are provided with an account on the departmental server. Most computers on campus can be accessed from microcomputers in any of the laboratories.

Brock is also a full member of the SHARCnet consortium with access to all its high performance clusters of powerful workstations.

In addition to three servers, the department also maintains several PC based labs and UNIX workstations for teaching and research.

 

Course Descriptions

Go to top of document

Note that not all courses are offered in every session. Refer to the applicable timetable for details

Students must check to ensure that prerequisites are met. Students may be deregistered, at the request of the instructor, from any course for which prerequisites and/or restrictions have not been met.

COSC 5F90

MSc Thesis

The preparation and defence of a thesis demonstrating the candidate's ability for independent and original research.

COSC 5P01

Coding Theory

The main concepts, problems and applications related to error-correcting codes. Different classes of codes and their properties. Emphasis on algorithms relating to codes, examination of algorithms for encoding and decoding, together with algorithms that may be used in computer searches for specific classes of codes.

COSC 5P02

Logic in Computer Science

A thorough introduction to mathematical logic, covering the following topics: propositional and first-order logic; soundness, completeness, and compactness of first-order logic; first-order theories; undecidability and Gödel's incompleteness theorem; and an introduction to other logics such as intuitionistic and modal logics. Furthermore, the course stresses the application of logic to various areas of computer science such as computability, programming languages, program specification and verification.

COSC 5P03

Universal Algebra for Computer Science

The study of the concepts and constructs of Universal Algebra, such as products, subalgebras, homomorphic images and congruences, term algebras, free algebras, its connections with Logic and Model Theory, decidability issues, lattices and relation algebras, and applications in Computer Science such as Type Theory, Specification, Complexity Theory, Uncertainty Management and others.

COSC 5P04

Parallel Algorithms

Introduction to parallel processing, various parallel computational models including both shared-memory and distributed-memory models, speed-up, cost, design and analysis of parallel algorithms and data structures for a variety of problems in searching, sorting, graph theory, computational geometry, strings, and numerical computation; brief introduction to parallel complexity.

COSC 5P05

Introduction to Lambda Calculus

Introduction to typed and untyped lambda calculi and their semantics. Syntax of the lambda calculus, conversion, fixed points, reduction, Church-Rosser theorem, representation of recursive functions, lambda models. Category theory, cartesian closed categories and categorical models of lambda calculus.

COSC 5P71

Genetic Programming

The synthesis of computer programs using evolutionary computation. The study of different representations, including tree, linear, grammatical. Theoretical analyses, including the effects of operators, representations, fitness landscapes. Practical applications in problem solving, decision making, classification, computer vision, design.

COSC 5P72

Robot Control Architectures

Survey of approaches to control in single and multi-robot systems. Examination and study of different mobile robot control architectures, including deliberative, reactive and hybrid with focus on the issues of resolving the fundamental conflict between thinking and acting, i.e., high-level deliberation and real-time control. Other relevant topics including communication techniques in multirobot systems and safety characteristics of the studied control architectures.

COSC 5P73

Computer Vision and Visual Computer Learning

Introduction to computer vision and pattern classification. The problems of WHAT and WHERE. The issue of knowledge representation and performance. Knowledge consolidation models. The concept of recursive (i.e. evolutionary) computer learning. Visual learning. Guided learning from infallible and fallible experts. Autonomous learning and experimentation. Analysis of HPC architectures conducive to visual computer learning.

COSC 5P74

Evolutionary Computation

Study of basic concepts of evolutionary algorithms (EAs) from a theoretical and application viewpoint. This includes genetic algorithms, evolutionary strategies, genetic programming, problem representation, genetic operations, overall control, theory of EAs and various examples of important applications. Includes related bio-inspired sub-areas such as swarm intelligence, and evolutionary robotics.

COSC 5P75

Directed Reading

A reading course designed for the individual student and subject to final approval by the department graduate committee. Usually offered by the student's thesis supervisor but may also be offered by other faculty members after consultation with the supervisor.

COSC 5P76

Non-invasive Data Analysis

A study of data analysis using information from the given data based on the rough set data model. Includes an overview of the data modeling process, principles of probability, non-parametric significance testing, data filtering and discretization, model selection, rule validation, case studies.

COSC 5V90-5V99

Selected Topics in Computer Science

Various advanced topics in computer science offered by faculty members.

 
Last updated: May 11, 2016 @ 10:19AM