Courses

Current course schedule

Fall 2019

EECS 5111 Automata, Computability and Complexity
Introduction 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.

Instructor Day Start time Duration Location Group
George Tourlakis T 11:30 90 BRG 211 - Bergeron Building 1
R 11:30 90 BRG 213 - Bergeron Building

EECS 5323 Computer Vision
This course introduces the basic concepts in computer vision. Primarily a survey of current computational methods, we begin by examining methods for measuring visual data (image based operators, edge detection, feature extraction), and low-level processes for feature aggregation (optic flow, segmentation, correspondence). Finally, we consider some issues in "high-level" vision by examining current high-level vision systems.

Instructor Day Start time Duration Location Group
TBD MW 11:30 90 VH 3006 - Vari Hall 2, 6
M (Sec 1)
W (Sec 2)
16:00 120 LAS 1004 - Lassonde Building

EECS 5327 Introduction to Machine Learning and Pattern Recognition
Machine 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.

Instructor Day Start time Duration Location Group
TBD M 14:30 90 CB 129 - Chemistry Building 2, 6
W 14:30 90 CC 211 - Calumet College

EECS 5351 Human-Computer Interaction
This course introduces the concepts and technologu necessary to design, manage and implement interactive software. Students work in small groups and learn how to design user interfaces, how to realize them and how to evaluate the end result. Both design and evaluation are emphasized.

Instructor Day Start time Duration Location Group
Melanie Baljko TR 14:30 90 CC 211 - Calumet College 2, 6

EECS 5501 Computer Architecture
This 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.

Instructor Day Start time Duration Location Group
Sebastian Magierowski TR 10:00 90 BC 215 - Bethune College 3, 4

EECS 6326 Principles of Human Perception and Performance in Human-Computer Interaction
This 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.

Instructor Day Start time Duration Location Group
Robert Allison MW 13:00 90 SC 219 - Stong College 2, 6

EECS 6327 Probabilistic Models and Machine Learning
Intelligent 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.

Instructor Day Start time Duration Location Group
Hui Jiang MW 14:30 90 CB 122 - Chemistry Building 2, 6

EECS 6390D / PSYC 6225 Computational Modeling of Visual Perception
The process of computational modeling is developed in stages, including: statement of the computational problem, selection of representations, probabilistic formulation, statistical analysis, algorithm development, model evaluation and refinement. Constraints from psychophysical and physiological data are applied, particularly in selecting and evaluating representations and algorithms.

Instructor Day Start time Duration Location Group
James Elder W 11:30 180 RS 801 - Ross South 2, 6

EECS 6412 Data Mining

This 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.

Instructor Day Start time Duration Location Group
Aijun An T 13:00 90 CC 106 - Calumet College 3, 4
R 13:00 90 VH 3009 - Vari Hall

EECS 6421 Advanced Database Systems
This 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.

Instructor Day Start time Duration Location Group
Parke Godfrey
TR 10:00 90 SC 223 - Stong College 3, 4

EECS 6444 Mining Software Engineering Data
Software engineering data (such as source code repositories, execution logs, performance counters, developer mailing lists and bug databases) contains a wealth of information about a project's status and history. Applying data mining techniques on such data, researchers can gain empirically based understanding of software development practices, and practitioners can better manage, maintain and evolve complex software projects.

Instructor Day Start time Duration Location Group
Jack Jiang
MW 16:00 90 SC 203 - Stong College 3, 4

EECS 6505 Physical and Systems Design Issues in ASICs
Designers of modern very large scale integrated (VLSI) systems face the conflicting pressure of realizing application-specific integrated circuits (ASICs) with increasingly complex and varied functionality while subject to more demanding physical electronic constraints.  This design-centric course addresses critical issues in both of these aspects by giving students a hands-on opportunity to architect VLSI systems using modern CAD tools spanning both physical and systems design.  Topics include: high-speed/low-power circuit analysis and design strategies, interconnect, clock and power distribution, timing strategies, floor-planning and layout, synthesis and verification.

Instructor Day Start time Duration Location Group
Sebastian Magierowski TR 11:30 90 RS 125 - South Ross Building 5

EECS 6704 Smart Distributed Grids
The following topics are covered: introduction to electric power distribution system structure and components; concept of distributed and renewable energy resources (DG); distribution system load/DG characteristics and modelling; integration of DG in power flow analysis; voltage and reactive power planning and control with consideration of DG; self-healing mechanisms; microgrids concept, planning, operation, and energy management.

Instructor Day Start time Duration Location Group
Hany Farag
W 16:00 180 BC 325 - Bethune College 5

EECS 6802 Implantable Biomedical Microsystems
This course provides an introduction to implantable biomedical microsystems, their design, and applications. Engineering design, implementation, and test of a wide variety of biomedical implants is discussed. This includes system-level and architectural design, circuit design (analog and mixed-signal, generic/application-specific), wireless interfacing (power and bidirectional data telemetry), hardware-embedded biological signal processing, design & implementation of non-circuit modules such as microelectrode arrays.

Instructor Day Start time Duration Location Group
Amir Sodagar
MW 11:30 90 SC 219 - Stong College 5

PHIL 5340 Ethics and Societal Implications of Artificial Intelligence - for AI specialization students
This course is intended for students with professional interest in the social and ethical implications of AI. Topics include theoretical issues (could AI ever have moral rights?), practical issues (algorithmic bias, labour automation, data privacy), and professional issues (tech industry social responsibility).

Instructor Day Start time Duration Location Group
Regina Rini
W 8:30 180 MB G105 - McEwen Building (next to Schulich) -

Winter 2020

EECS 5101 Advanced Data Structures
The 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.

Instructor Day Start time Duration Location Group
Patrick Dymond TR 13:00 90 CC 108 - Calumet College 1

EECS 5326 Artificial Intelligence
This course will be an in-depth treatment of one or more specific topics within the field of Artificial Intelligence.

Instructor Day Start time Duration Location Group
Yves Lesperance TR 11:30 90 ACW 205 - Accolade West 2, 6

EECS 5327 Introduction to Machine Learning and Pattern Recognition
Machine 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.

Instructor Day Start time Duration Location Group
Pirathayini Srikantha MW 11:30 90 CC 108 - Calumet College 2, 6

EECS 5391 Computer Games: Simulation and Animation
This course covers the basic principles and practices related to motion synthesis and motion control for animated objects, such as those that appear in films and computer games.

Instructor Day Start time Duration Location Group
Petros Faloutsos TR 16:00 90 VH 3009 - Vari Hall 2, 6

EECS 5422 Performance Evaluation of Computer Systems
This course introduces the concept of modelling a computer system, using queuing theory techniques and simulation techniques, then it examines the practical applications of these concepts in some case studies. These case studies are chosen to have a practical impact.

Instructor Day Start time Duration Location Group
Hamzeh Khazaei TR 10:00 90 BC 215 - Bethune College 3, 4

EECS 5431 Mobile Communication
This 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.

Instructor Day Start time Duration Location Group
Ping Wang R 17:30 180 LSB 101 - Life Sciences Building 3, 4
W 11:30 120 LAS 1002/1004 - Lassonde Building

EECS 5443 Mobile User Interfaces
This course teaches the design and implementation of user interfaces for touchscreen phones and tablet computers. Students develop user interfaces that include touch, multi-touch, vibration, device motion, position, and orientation, environment sensing, and video and audio capture. Lab exercises emphasise these topics in a practical manner.

Instructor Day Start time Duration Location Group
Scott MacKenzie TR 14:30 90 BC 215 - Bethune College 3, 4
TR 17:30 120 LAS 1004 - Lassonde Building

EECS 5611 Advanced Analog IC Design

The course presents advanced design techniques for the realization of high-performance analog integrated circuits in modern technology. In particular, low-noise amplifiers are targeted along with certain nonlinear components employed in discrete-time signal processing and narrowband applications. The features and limitations of modern semiconductor devices are presented and the means of abstracting these to compact models applicable to hand design are outlined. A number of feedback system analysis and design techniques are presented (compensation, dominant-pole, root locus) and applied to wide-band amplifier realization. The origin of noise in electronic components is reviewed and means of mitigating it through circuit design explained. Key nonlinear analog device behavior are highlighted and applied to the design of critical nonlinear circuitry. Means by which robust designs treat component variability are addressed.

Instructor Day Start time Duration Location Group
Amir Sodagar TR 10:00 90 CC 318 - Calumet College 5
R 15:30 180 LAS 1002

EECS 5614 Electro-Optics
This course builds on the foundations of electromagnetic theory and wave propagation to teach fundamentals of optical propagation in solids and light-matter interaction. Topics include light propagation in crystals & optical fibers, polarization, semiconductors, light generation & detection, lasing, optical modulation and nonlinear optics. Three-hour weekly lab.

Instructor Day Start time Duration Location Group
Simone Pisana TR 11:30 90 CB 122 Chemistry Building 5
F 16:30 180 BRG 321

EECS 6127 Machine Learning Theory
This course takes a foundational perspective on machine learning and covers some of its underlying mathematical principles. Topics range from well-established results in learning theory to current research challenges. We start with introducing a formal framework, and then introduce and analyze learning methods, such as Nearest Neighbors, Boosting, SVMs and Neural Networks. Finally, students present and discuss recent research papers.

Instructor Day Start time Duration Location Group
Ruth Urner MW 10:00 90 SC 223 - Stong College 1

EECS 6323 Advanced Topics in Computer Vision
An 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.

Instructor Day Start time Duration Location Group
James Elder M 13:00 180 SC 219 - Stong College 2, 6

EECS 6333 Multiple View Image Understanding
This course considers how multiple images of a scene, as captured by multiple stationary cameras, single moving cameras or their combination, can be used to recover information about the viewed scene (e.g., three-dimensional layout, camera and/or scene movement). Theoretical and practical issues of calibration, correspondence/matching and interpretation will be considered. Prerequisite: EECS 5323 Introduction to Computer Vision or permission of the instructor.

Instructor Day Start time Duration Location Group
Richard Wildes TR 10:00 90 BC 225 - Bethune College 2, 6

EECS 6354 Digital Image Processing
Fundamental image processing theories and algorithms. Signal representation using transforms, wavelets and frames is overviewed. Signal reconstruction methods using total variation, sparse coding and low-rank prior, based on convex optimization, are discussed. Applications include image compression, restoration and enhancement.
Prior background in digital signal processing (EECS 4452 or equivalent) and numerical linear algebra is strongly recommended.

Instructor Day Start time Duration Location Group
Gene Cheung TR 14:30 90 BC 325 - Bethune College 2, 6

EECS 6414 Data Analytics and Visualization

Data analytics and visualization is an emerging discipline of immense importance to any data-driven organization. This is a project-focused course that provides students with knowledge on tools for data mining and visualization and practical experience working with data mining and machine learning algorithms for analysis of very large amounts of data. It also focuses on methods and models for efficient communication of data results through data visualization.

Instructor Day Start time Duration Location Group
Manos Papagelis M 16:00 180 ACE 013 - Accolade East 3, 4

EECS 6606 Low Power ASIC Design
This course introduces several important concepts and techniques in low power ASIC design. It covers VSLI design methodology, ASIC design flow, low power digital circuit design principles, timing closure in ASIC, power analysis, and power optimization. Student will have the opportunities to perform circuit design tasks using the state-of-the-art EDA tools. The concepts are enhanced through readings and projects.

Instructor Day Start time Duration Location Group
Peter Lian W 11:30 180 SC 223 - Stong College 5

EECS 6705 Power System Transients
Electromagnetic-transient modelling of power system is of the most crucial requirements for many power system studies and engineering practices. This course covers fundamentals of the transient phenomena such as lightning, faults, switching, and discusses the principles of protecting power system equipment from the transient overvoltages. Electromagnetic transient models of power equipment are presented and advanced modelling features are discussed.

Instructor Day Start time Duration Location Group
Afshin Rezaei-Zare M 16:00 180 SC 203 - Stong College 5

EECS 6808 Engineering Optimization
This course introduces classical and modern optimization techniques to solve engineering analysis and design problems. Students will learn how to formulate single- and multi-variable engineering problems as optimization problems and how to solve such problems using appropriate optimization techniques. The details of specific techniques required to solve the formulated problems will be discussed from theory and application points of view.

Instructor Day Start time Duration Location Group
Ali Sadeghi-Naini M 13:00 180 SC 223 - Stong College 5, 6

PHIL 5340 Ethics and Societal Implications of Artificial Intelligence - for AI specialization students
This course is intended for students with professional interest in the social and ethical implications of AI. Topics include theoretical issues (could AI ever have moral rights?), practical issues (algorithmic bias, labour automation, data privacy), and professional issues (tech industry social responsibility).

Instructor Day Start time Duration Location Group
Regina Rini
R 14:30 180 MB G101 - McEwen Building (next to Schulich) -

Groups of courses

Number Name
1 Theory of Computing & Scientific Computing
2 Artificial Intelligence & Interactive Systems
3 Systems: Hardware & Software
4 Computer Systems Engineering
5 Electrical Engineering
6 Interactive Systems Engineering

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, 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, will the graduate program director approve the request. More information can be found at the website of the Faculty of Graduate Studies.