Current course schedule
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.
|George Tourlakis||MW||14:30||90||MC 111 - McLaughlin College||1|
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.
|James Elder||MW||10:00||90||SC 303- Stong College||2, 6|
|M||16:00||120||LAS 1004 - Lassonde Building|
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.
|Scott MacKenzie||TR||11:30||90||CC 106 - 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.
|Mokthar Aboelaze||TR||10:00||90||HNE 031 - Health, Nursing and Environmental Studies Building||3, 4|
EECS 6325 Mobile Robot Motion Planning
The focus of this course is on robot motion planning in known and unknown environments. Both theoretical (computational-geometric) models, as well as practical case studies will be covered in the course.
|Michael Jenkin||MT||8:30||90||SC 223 - Stong College||2, 6|
EECS 6330 Critical Technical Practise: Computer Accessibility and Assistive Technology
This course examines issues of technological design in computer accessibility and computational forms of assistive technology (hardware and/or software). Students learn to critically reflect on the hidden assumptions, ideologies and values underlying the design of these technologies, and to analyse and to design them.
|Melanie Baljko||TR||10:00||90||SC 222 - Stong College||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.
|Aijun An||M||11:30||90||BRG 313 - Bergeron Building||3|
|W||11:30||90||BRG 211 - Bergeron Building|
EECS 6421 Advanced Data 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.
||T||13:00||90||SC S203 - Stong College||3, 4|
|R||13:00||90||SC S216 - Stong College|
EECS 6432 Adaptive Software Systems
Adaptive 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.
||TR||16:00||90||CB 120 - Chemistry Building||3, 4|
EECS 6590A High Performance Computer Networks
This course focuses on high performance computer networks. It presents a comprehensive study of modern high speed communication networks that is capable of providing data, voice, and video services. It also covers mobile and wireless communication networks
|U.T. Nguyen||MW||16:00||90||BRG 211 - Bergeron Building||3, 4|
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.
|Afshin Rezaei-Zare||W||15:00||180||BSB 207 - Behavioural Science Building||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.
|Amir Sodagar||TR||11:30||90||SC 219 - Stong College||5|
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.
|Eric Ruppert||TR||11:30||90||DB 0005 - Daldaleh Building||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.
|Zbigniew Stachniak||TR||13:00||90||DB 0005 - Daldaleh Building||2|
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.
|Ruth Urner||TR||16:00||90||PSE 321 - Petrie Building||2, 6|
EECS 5331 Advanced Topics in 3D Computer Graphics
This 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.
|Petros Faloutsos||W||13:00||90||ACW 302 - Accolade West||2, 6|
|F||13:00||90||ACW 002 - Accolade West|
|M||10:30||120||LAS 1004 - Lassonde Building|
EECS 5421 Operating Systems Design
A 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 Xu||TR||10:00||90||R S103 - Ross South||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.
|Ping Wang||R||17:30||180||CB 129 - Chemistry Building||3, 4|
|F||11:30||120||LAS 1002 - 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.
|Scott MacKenzie||TR||14:30||90||HNE B15 - Health, Nursing and Environmental Studies Building||3, 4|
|T or R||17:30||120||LAS 1004 - Lassonde Building|
EECS 5612 Digital Very Large Scale Integration
A 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 Magierowski||TR||11:30||90||VH 1018 Vari Hall||5|
|F||16:30||180||BRG 321 - Bergeron Building|
EECS 6111 Advanced Algorithm Design and Analysis
This 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 Edmonds||M||11:30||90||R S125 - Ross South||1|
|W||11:30||90||R S130 - Ross South|
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.
|Ruth Urner||TR||10:00||90||BRG 213 - Bergeron Building||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.
|John Tsotsos||M||13:00||90||SC 220 - Stong College||2, 6|
|W||13:00||90||SC 223 - Stong College|
EECS 6331 Advanced Image Synthesis
This course concentrates on raster algorithms for image synthesis. Some of the topics may include visible surface algorithms, modelling, shading, global illumination, anti-aliasing, and texture mapping. Prerequisites: EECS5331 3.0 Introduction to Computer Graphics.
|Petros Faloutsos||WF||13:00||90||CC 208 - Calumet 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.
|Manos Papagelis||M||16:00||180||VH 2005 - Vari Hall||3|
EECS 6602 Printed Electronics
Printed electronics is a novel microfabrication technology that promises to fabricate low-cost microelectronics on large-area, flexible substrates such as plastic or paper. Potential applications include RFID tags, bendable displays or wearable sensors. Students learn the fundamentals and recent developments in the field. Topics covered include printable materials, printing physics, various printing methods and printed devices.
|Gerd Grau||M||11:30||90||BSB 328A - Behavioural Science Building||5, 6|
|W||8:30||90||BSB 328A - Behavioural Science Building|
EECS 6613 Advanced Analog Integrated Circuit Design
This course presents principles of advanced analog and mixed-signal integrated circuits and discusses hand analysis, simulation, and characterization techniques for them. It includes subjects such as metal-oxide-semiconductor (MOS) transistor models for analog design, principles of random electronic noise, low-noise amplifier design, amplifiers stability and settling time, comparators, offset cancellation, wide-swing current references, bandgap reference, sampling circuits, and analog scaling.
|SC 220 Stong College
SC 223 Stong College
EECS 6801 Advanced Microelectronic Biochips
This course offers an introduction to the Biochips. This course takes a multi-path approach: micro-fabrication techniques, microelectronic design and implementation of bio interfaces offering a vital contemporary view of a wide range of integrated circuits and system for electrical, magnetic, optical and mechanical sensing and actuating devices and much more; classical knowledge of biology, biochemistry as well as micro-fluidics. The coverage is both practical and in depth integrating experimental, theoretical and simulation examples.
|Ebrahim Ghafar-Zadeh||MW||14:30||90||SC 223 - Stong College||5|
Groups of courses
|1||Theory of Computing & Scientific Computing|
|2||Artificial Intelligence & Interactive Systems|
|3||Systems: Hardware & Software|
|4||Computer Systems 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.
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.