Courses

Courses in fall 2016
coursetitleinstructordaystart timedurationlocationgroup
EECS 5111
Automata, Computability and ComplexityIntroduction to more advanced topics in theoretical foundations of computer science, including the study of formal languages and automata, formal models of computation, and computational complexity measures.
Patrick DymondMW11:3090
PSEPetrie Science & Engineering Building
321
1
EECS 5326
Artificial IntelligenceThis course will be an in-depth treatment of one or more specific topics within the field of Artificial Intelligence.
Zbigniew StachniakTR11:3090
LSBLife Science Building
101
2
EECS 5421
Operating Systems DesignA modern operating system has four major components: process management, input/output, memory management, and the file system. This project-oriented course puts operating system principals into action and presents a practical approach to studying implementation aspects of operating systems. A series of projects are included for students to acquire direct experience in the design and construction of operating system components and have each interact correctly with the existing software. The programming environment is C/C++ under UNIX.
Jia XuW19:00180
RRoss Building
S127
3, 4
EECS 5501
Computer ArchitectureThis course presents the core concepts of computer architecture and design ideas embodied in many machines and emphasizes a quantitative approach to cost/performance tradeoffs. This course concentratres on uniprocessor systems. A few machines are studies to illustrate how these concepts are implemented; how various tradeoffs that exit among design choices are treated; and how good designs make efficient use of technology. Future trends in computer architecture are also discussed.
Mokthar AboelazeTR10:0090
CBChemistry Building
122
3, 4
EECS 6117
Distributed ComputingCan a given problem be solved in a distributed system? If so, how efficiently can it be solved? We investigate how the answers to these questions depend on aspects of the underlying distributed system including synchrony, fault-tolerance and the means of communication between processes.
Eric RuppertT
R
13:0090
VHVari Hall
1154
VHVari Hall
1022
1, 4
EECS 6326
Principles of Human Perception and PerformanceThis course considers the role of human perception in human-computer interaction particularly computer generated graphics/sound and immersive virtual reality. Fundamental findings from sensory physiology and perceptual psychophysics are presented in the context of interface and display design.
Robert AllisonWF14:3090
BSBBehavioural Science Building
207
2, 5
EECS 6327
Probabilistic Models & Machine LearningIntelligent systems must make effective judgements in the face of uncertainty. This requires probabilistic models to represent complex relationships between random variables (learning) as well as algorithms that produce good estimates and decisions based on these models (inference). This course explores both probabilistic learning and inference, in a range of application areas.
Hui JiangWF13:0090
CCCalumet College
318
2, 5
EECS 6432
Adaptive Software SystemsAdaptive software systems are software systems that change their behaviour and structure to cope with changes in environment conditions or in user requirements. Adaptation includes self-optimization, self-protection, self-configuration and self-healing. This course covers basic and advanced concepts in engineering adaptive systems and has a special focus on self-optimization. It introduces the students to the mathematical foundations of adaptive systems including performance models, estimators for performance models, feedback loop architectures and strategies, and optimization.
Marin LitoiuTR16:0090
MCMcLaughlin College
109
3, 4
EECS 6701
High Frequency Power Electronic ConvertersThis course discusses the fundamentals of loss-less switching techniques in high frequency power converters: zero-voltage switching and zero-current switching. The course then focuses on various resonant converter topologies and soft-switching converters with auxiliary storage elements. The course then discusses various control techniques used in high frequency power converters. Special emphasis is placed on the design techniques using practical examples.
John LamMWF10:3060
RRoss Building
S202
6
Courses in winter 2017
coursetitleinstructordaystart timedurationlocationgroup
EECS 5101
Advanced Data StructuresThe course discusses advanced data structures: heaps, balanced binary search trees, hashing tables, red--black trees, B--trees and their variants, structures for disjoint sets, binomial heaps, Fibonacci heaps, finger trees, persistent data structures, etc. When feasible, a mathematical analysis of these structures will be presented, with an emphasis on average case analysis and amortized analysis. If time permits, some lower bound techniques may be discussed, as well as NP-completeness proof techniques and approximation algorithms.
Patrick DymondMW16:0090
CBChemistry Building
122
1
EECS 5324
Introduction to RoboticsThis course introduces concepts in Robotics. The course begins with a study of the mechanics of manipulators and robot platforms. Trajectory and course planning, environmental layout and sensing are discussed. Finally, high-level concerns are introduced. The need for real-time response and dynamic-scene analysis are covered, and recent development in robotics systems from an Artificial Intelligence viewpoint are discussed.
Burton MaMWF
R
14:30
11:30
60
120
CBChemistry Building
122
LASLassonde Building
1004
2, 5
EECS 5327
Introduction to Machine Learning and Pattern RecognitionMachine learning is the study of algorithms that learn how to perform a task from prior experience. This course introduces the student to machine learning concepts and techniques applied to pattern recognition problem in a diversity of application areas.
Marcus BrubakerTR10:3090
ACWAccolade West
205
2, 5
EECS 5331
Advanced Topics in 3D Computer GraphicsThis course introduces advanced 3D computer graphics algorithms. Topics may include direct programming of graphics hardware via pixel and vertex shaders, real-time rendering, global illumination algorithms, advanced texture mapping and anti-aliasing, data visualization.
Matthew KyanTR14:3090
VHVari Hall
3017
2, 5
EECS 5431
Mobile CommunicationThis course provides an overview of the latest technology, developments and trends in wireless mobile communications, and addresses the impact of wireless transmission and user mobility on the design and management of wireless mobile systems.
Sebastian MagierowskiTR17:3090
CCCalumet College
318
3, 4
EECS 5442
Real-Time Systems PracticeIntroduction to the technologies related to the design and implementation of real-time systems. State-of-the-art real-time system technologies and their use in typical real-time applications are studied in detail.
Jia XuTR
F
11:30
11:30
90
90
DBVictor Phillip Dahdaleh Building
0015
LASLassonde Building
1004
3, 4
EECS 5612
Digital Very Large Scale IntegrationA course on modern aspects of VLSI CMOS chips. Key elements of complex digital system design are presented including design automation, nanoscale MOS fundamentals, CMOS combinational and sequential logic design, datapath and control system design, memories, testing, packaging, I/O, scalability, reliability, and IC design economics.
Sebastian MagierowskiTR11:3090
FCFounders College
105
6
EECS 6111
Advanced Algorithm Design and AnalysisThis is an advanced theoretical computer science course directed at non-theory students with the standard undergraduate background. The goal is to survey the key theory topics that every computer science graduate student should know. In about two weeks for each selected topic, we will gain insights into the basics and study one or two example in depth. These might include: a deepening of student's knowledge of key algorithmic techniques, randomized algorithms, NPcompleteness, approximation algorithms, linear programming, distributed systems, computability, concurrency theory, cryptography, structural complexity, data structures, and quantum algorithms. Students will be expected to give a presentation on some topic new to them and solve some difficult problems in homework assignments.
Jeff EdmondsTR16:0090
PSEPetrie Science and Engineering Building
317
1
EECS 6323
Advanced Topics in Computer VisionAn advanced topics course in computer vision which covers selected topics in greater depth. Topics covered will vary from year to year depending on the interests of the class and instructor. Possible topics include: stereo vision, visual motion, computer audition, fast image processing algorithms, vision based mobile robots and active vision sensors, and object recognition.
Michael BrownMW10:0090
CCCalumet College
318
2
EECS 6340
Embodied IntelligenceThis course is intended as a follow-on from a first course on Artificial Intelligence. Whereas such first courses focus on the important foundations of AI, such a Knowledge Representation or Reasoning, this course will examine how these separate foundational elements can be integrated into real systems. This will be accomplished by detailing some general overall concepts that form the basis of intelligent systems in the real world, and then presenting a number of in-depth cases studies of a variety of systems from several applications domains. The embodiment of intelligence may be in a physical system (such as a robot) or a software system (such as in game-playing) but in both cases, the goal is to interact with, and solve a problem in, the real world.
John TsotsosMWF13:3060
BSBBehavioural Science Building
207
2
EECS 6412
Data MiningThis course introduces fundamental concepts of data mining. It presents various data mining technologies, algorithms and applications. Topics include association rule mining, classification models, sequential pattern mining and clustering.
Aijun AnMW11:3090
CBChemistry Building
129
3
EECS 6413
Information NetworksThe field of information networks is an emerging discipline of immense importance that combines graph theory, probability and statistics, data analysis, and computational social science. This course provides students with both theoretical knowledge and practical experience of the field by covering recent research on models and algorithms of information networks and their basic properties.
Manos PapagelisTR10:0090
SCStong College 219
3
EECS 6421
Advanced Data SystemsThis course provides an introduction to, and an in-depth study on, several new developments in database systems and intelligent information systems. Topics include: internet databases, data warehousing and OLAP, object-relational, object-oriented, and deductive databases.
Jarek GryzTR14:3090
BCBethune College
228
3, 4
EECS 6431
Software Re-EngineeringIndustrial software systems are usually large and complex, while knowledge of their structure is either lost or inadequately documented. This course presents techniques that aid the comprehension and design recovery of large software systems.
Bill TzerposW
F
8:30
9:30
120
60
VHVari Hall
1005
3, 4
EECS 6803
Micro-fluidics for Cellular and Molecular BiologyThis course offers an introduction to the micro-fluidics for life science applications. This course offers a unique opportunity to all science, health and engineering students to learn the fundamental of micro-fluidic technologies for a variety of cellular and molecular applications. The coverage is both practical and in depth integrating experimental, theoretical and simulation examples.
Ebrahim Ghafar-ZadehMW17:3090
BCBethune College
228
6

MSc Students (thesis option)

Students are required to complete five graduate courses. Of those five courses, at most one course can be an integrated course (the first digit of the course is a 5) and at most one course can be a directed reading course (see below). Students must take at least one course of group 1, at least one course of group 2, and at least one course of group 3. Full-time students are recommended to take three courses in the fall and two courses in the winter. Full-time students are required to complete their courses within the first two terms. Students are encouraged to discuss their course selection with their supervisor or the graduate program director. Students must maintain a B+ average in their courses.

MSc Students (project option)

Students are required to complete seven graduate courses. Of those seven courses, at most two courses can be an integrated course (the first digit of the course is a 5) and at most one course can be a directed reading course (see below). Students must take at least one course of group 1, at least one course of group 2, and at least one course of group 3. Full-time students are recommended to take three courses in the fall, three courses in the winter, and a directed reading course in the summer. Full-time students are required to complete their courses within the first four terms. Students are encouraged to discuss their course selection with their supervisor or the graduate program director. Students must maintain a B+ average in their courses.

MASc Students

Students are required to complete the research project course (see below) and three other courses. Of those three courses, at most one course can be an integrated course (the first digit of the course is a 5) and at most one course can be a directed reading course (see below). Students must take

Full-time students are recommended to take the research project course in the fall and the winter, two other courses in the fall, and one other course in the winter. Full-time students are required to complete their courses within the first two terms. Students are encouraged to discuss their course selection with their supervisor or the graduate program director. Students must maintain a B+ average in their courses.

PhD Students

Students are required to complete three graduate courses. Of those three courses, at most one course can be an integrated course (the first digit of the course is a 5) and at most one course can be a directed reading course (see below). Note that due to the prerequisite structure, students may have to complete more than three courses. Students are recommended to take three courses in the fall. Students are required to complete their courses within the first three terms. Students are encouraged to discuss their course selection with their supervisor. Students must obtain a B+ average in their courses.

Directed Reading Course

A directed reading course is suited for students with special interests. Students will select areas of study in consultation with their supervisor. These areas should not significantly overlap with material covered in courses currently offered at York University and undergraduate or graduate courses taken by the student either at York University or elsewhere. Directed reading courses require a completed directed reading form. Students should return the completed form to the graduate program assistant. A printout of an email confirming approval can be used in lieu of a signature on the form.

Research Project Course

The Electrical and Computer Engineering research project course (EECS 6400) spans two terms. This course provides an introduction to research methods and methodology in Electrical and Computer Engineering. Under the direction of the Electrical and Computer Engineering research project committee, which consists of the professors Ali Hooshyar (chair), Gerd Grau and Matthew Kyan, students engage in supervised research under one or two members of the graduate program. The topic of the project must be distinct from any assignments in any of the other courses and must also be distinct from the thesis. The research project course requires a completed project proposal form, which needs to be approved by the supervisor(s) and the chair of Electrical and Computer Engineering research project committee. Completed forms should be returned to the graduate program assistant. A printout of an email confirming approval can be used in lieu of a signature on the form.

Course Selection

Students are required to complete the course selection form in consultation with their supervisor. Completed forms should be returned to the graduate program assistant.

Courses in Another Graduate Program

Students may request to take courses offered by other graduate programs at York University. Such a course requires a completed request form, which needs to be approved by the course instructor, the graduate program director of the program offering the course and the graduate program director. Completed forms should be returned to the graduate program assistant. A printout of an email confirming approval can be used in lieu of a signature on the form.

Courses at Another Ontario University

Students may request to take a course offered at another university in Ontario. Students are required to complete the Ontario visiting graduate student application form. Completed forms should be returned to the graduate program assistant. Only if all the conditions listed on the second page of the form are satisfied, the graduate program director will approve the request. More information can be found at the website of the Faculty of Graduate Studies.

Important Dates

September 8, 2016classes start
September 16, 2016last date to hand in the directed reading form
September 21, 2016last date to add course without permission of instructor
October 1, 2016last date to hand in the course selection form
October 5, 2016last date to add course with permission of instructor
October 10, 2016no classes (Thanksgiving)
October 27-30, 2016no classes (Fall reading days)
November 11, 2016last date to drop course without receiving a grade
December 5, 2016classes end
December 7-22, 2016exam period
January 5, 2017classes start
January 13, 2017last date to hand in the directed reading form
January 18, 2017last date to add course without permission of instructor
February 1, 2017last date to add course with permission of instructor
February 10, 2017last date to drop EECS 6400 (started in the Fall) without receiving a grade
February 18-24, 2017no classes (reading week)
March 10, 2017last date to drop course without receiving a grade
April 5, 2017classes end
April 7-24, 2017exam period
May 15, 2017last date to hand in the directed reading form and the project proposal form
July 7, 2017last date to drop EECS 6400 (started in the Winter) without receiving a grade

Other important dates can be found at the website of the Faculty of Graduate Studies.

Additional Information

More information about graduate courses and grading can be found at the website of the Faculty of Graduate Studies.