New Graduate Student Orientation
- Complete five courses.
- at least four courses must be non-integrated graduate courses (course number starts with a 6)
- at most one may be an integrated graduate course (course number starts with a 5)
- at least one course from the theory of computing and scientific computing group (group 1 - the second digit of the course number is a 1 or 2)
- at least one course from the AI and interactive systems group (group 2 – the second digit of the course number is a 3)
- at least one course from the software systems and hardware systems group (group 3 - the second digit of the course number is a 4 or 5)
- Defend a thesis.
- Complete six courses.
- at least four courses must be non-integrated graduate courses (course number starts with a 6)
- at most two may be integrated courses (course number starts with a 5)
- at least three courses from the following list:
EECS 5326, EECS 5327, EECS 6127, EECS 6327, EECS 6412
- at least two courses from the following list:
EECS 5323, EECS 5324, EECS 5326, EECS 5327, EECS 5326, EECS 6127, EECS 6322, EECS 6323, EECS 6325, EECS 6327, EECS 6328, EECS 6332, EECS 6333, EECS 6340, EECS 6390A, EECS 6390D, EECS 6412, EECS 6414
- another three–credit graduate course
- Complete a research project in Artificial Intelligence in collaboration with an external partner
- Complete the course EECS 6400.
- Complete three other courses.
- at least two of those three courses must be non-integrated graduate courses (course number starts with a 6)
- at most one may be an integrated course (course number starts with a 5)
- the course selection must span at least two groups among:
computer systems engineering group (group 4)
electrical engineering group (group 5)
interactive systems engineering group (group 6)
- Defend a thesis.
- Complete three courses.
- at least two of the courses must be non-integrated graduate courses (course number starts with a 6)
- at most one may be an integrated course (course number starts with a 5)
- Attend departmental seminars.
- Attend at least one professional development workshop per year
- Pass a qualifying examination.
- Prepare a dissertation proposal.
- Complete an industrial internship (3 to 6 months) or a teaching practicum.
- Defend a dissertation.
- Complete program in five terms (20 months).
- Complete course requirements in first two terms.
- Maintain an average of at least B+ in the courses and satisfy the Faculty of Graduate Studies (FGS) grades regulations.
- Complete progress report #1 by December 30.
- Complete progress report #2 by April 30.
- Get the thesis proposal approved at least three months before the thesis oral examination.
- Complete the thesis four weeks before the thesis oral examination.
- Maintain satisfactory progress:
- Selection of a supervisory committee: Students are expected to have found a thesis supervisor by April 15 of the winter term of their first year (W1). Selection of a supervisor is primarily the responsibility of the student. As well, a second member of the supervisory committee must be identified. These two people will form the thesis or project supervisory committee.
- Research: Students are expected to work on research leading to a thesis or project by their first summer term (S1) and to submit a preliminary version of their theses proposal (thesis option) or a written agreement between the student and supervisor on project scope (project option) by the end of that term. The thesis proposal should include a clear statement of the project they are undertaking, a summary of the work performed on it during the summer term, and a timetable with milestones to be achieved during terms F2 and W2, leading to successful completion of the thesis by the end of term W2.
- Pass a qualifying examination within five terms (20 months).
- Maintain an average of at least B+ in the courses and satisfy the FGS grades regulations.
- Submit progress reports every term by April 15, August 15, December 15.
- Get the dissertation proposal approved at least six months before the dissertation oral examination.
- Complete the dissertation four weeks before the dissertation oral examination.
- Maintain satisfactory progress:
- Year 1:
Take graduate courses.
Select dissertation supervisor.
- Year 2:
Finish graduate courses.
Select dissertation supervisory committee (3 people) and inform FGS.
Do qualifying examination.
Work on dissertation proposal.
- Year 3:
Present dissertation proposal.
Send accepted dissertation proposal to FGS.
Do industrial internship/teaching practicum.
- Year 4:
- Year 1:
|September 5, 2018||classes start|
|September 14, 2018||last date to hand in the directed reading form|
|September 18, 2018||last date to add course without permission of instructor|
|October 1, 2018||last date to hand in the course selection form|
|October 2, 2018||last date to add course with permission of instructor|
|October 6-12, 2018||no classes (Fall reading days)|
|November 9, 2018||last date to drop course without receiving a grade|
|December 4, 2018||classes end|
|December 6-21, 2018||exam period|
|January 3, 2019||classes start|
|January 11, 2019||last date to hand in the directed reading form|
|January 16, 2019||last date to add course without permission of instructor|
|January 30, 2019||last date to add course with permission of instructor|
|February 8, 2019||last date to drop EECS 6400 (started in the Fall) without receiving a grade|
|February 16-22, 2019||no classes (reading week)|
|March 8, 2019||last date to drop course without receiving a grade|
|April 3, 2019||classes end|
|April 5-20, 2019||exam period|
|May 10, 2019||last date to hand in the directed reading form|
For breadth requirements, graduate courses are classified into six major groups. The second digit in the course number in some cases indicates the group to which the course belongs.
Group 1: Theory of Computing (x1xx) and Scientific Computing (x2xx)
Group 2: Artificial Intelligence and Interactive Systems (x3xx)
Group 3: Systems: Software (x4xx) and Hardware (x5xx)
Group 4: Computer Systems Engineering
Group 5: Electrical Engineering
Group 6: Interactive Systems Engineering
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||CC 106 - Calumet 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||BC 323 - Bethune College||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 S30 - 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||8:30||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.
|John Tsotsos||M||13:00||90||SC 220 - Stong College||2, 6|
|W||13:00||90||SC 223 - Stong College|
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||CC 109 - Calumet College||3|
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.
|Jack Jiang||MW||17:30||90||R–Ross Building S501||3, 4|
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||MW||11:30||90||BSB 328A - Behavioural Science Building||5, 6|
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.
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|
Thesis, Dissertation, Graduation
Useful and up-to-date information on thesis and dissertation can be found on the Faculty of Graduate Studies website.
If you are in the last term of your program and expect to graduate, you must apply to graduate. Please visit York Convocation – Apply to Graduate for more information.
All University-based research involving human participants, including thesis and dissertation research, is subject to the ethics review process. Research ethics approval must be granted BEFORE commencing the research. Consult your supervisor and the Graduate Program Director for information on the process. Information sessions about research ethics will be held in Fall and Winter terms at the Faculty of Graduate Studies.
Health & Safety
Health & Safety training is mandatory for all members of the University. Depending on your activities, there may be more advanced training modules that will be required BEFORE commencing your work (i.e. working with hazardous materials). This is relevant for both research and teaching assistanceship activities. Training sessions need to be repeated once their validity lapses. The following is a list of common training modules, but your individual case will vary according to the activities that you plan to do.
- Complete the first module (Health & Safety Orientation for Faculty & Staff, online).
- Complete WHMIS I (online)
Additional training (according to activity)
- Complete WHMIS II (in class). This is mandatory to work with chemicals or biological agents. Students needing to take WHMIS II can skip WHMIS I training, as WHMIS I information will be included in the WHMIS II training.
- Complete Biosafety training (in class) if you plan to work with biological materials and/or supervising workers with biological materials (e.g., viruses, bacteria, cell culture, etc.) in a certified containment level laboratory.
- Complete Chemical Handling & Volatile Rooms training (in class) if you will be working in Chemistry and Biology labs.
- Complete Laser Safety training (in class) if you will be working with any laser.
- See this link for additional training modules.
Guidelines, Policies & Forms
- Faculty of Graduate Studies (FGS) academic regulations
- FGS Registration Procedures: Important Information
MSc / MASc
- Breadth Request Form (.pdf)
- The Progress Report #1 Form (.pdf) is due April 15.
- The Progress Report #2 Form (.pdf) is due August 15.
PhD in Computer Science
EECS Graduate Student Association
We represent the students of Electrical Engineering and Computer Science in the graduate program at York University.
EECS-GSA Executive Committee for the 2018–2019 Year
President – Abdullah Abuolaim
VP Finance – Wenxiao Fu
VP External – Niloy Eric Costa
VP Internal – Maryam Taheri-Shirazi
VP Communications – Shima Khoshraftar
VP Organization – Saim Mahmoud
Student representative for CUPE council – Mehdi Hassan
Student representative for FGS council – Tilemachos Pechlivanoglou