Registration Information:

  • All graduate AND undergraduate courses must be registered on paper using an Academic Change Form (PDF) and approved by your supervisor.
  • When registering for a course, you must indicate whether the course will be primary or secondary to your program
  • All courses which are part of your required program must be listed as primary
  • All primary courses require a pass mark of B- or 2.7 or 70%
  • Courses taken outside the department and that are used to meet degree requirements should be in a related field to the student's research and must have course instructor's approval
  • Students who audit graduate courses may be required to participate in assignments but not final examinations; consult the instructor beforehand.
  • It is the student's responsibility to adhere to the guidelines for dropping and adding courses by the relevant deadlines.

Graduate Timetable, Winter 2024  (PDF) Version 4

Courses offered at Royal Military College 2023-2024 (PDF) 

RMC course descriptions

To register for a course at RMC, complete and submit the application form.

ECE Graduate Courses 

Fall 2023 Courses Winter 2024 Courses Not Currently Offered


F. Pourpanah Navan


Basic machine learning concepts in supervised and unsupervised learning; discriminative and generative models; backpropagation, FFN, CNN, RNN, autoencoders; regularization technologies; attention-based models, Transformer, Capsule Networks; pretraining and self- supervised models; Generative Adversarial Networks (GANs), variational autoencoders; applications.


ELEC 326 or equivalent, or permission of the instructor 


Y.-F. Liu


This course covers the modeling and control techniques for switching power converters. Small signal models and large signal models will be presented. Peak current mode control and average current mode control for switching power converters will be investigated. System stability issues when several power supplies are connected together are investigated and solutions are presented and analyzed. Digital control techniques, using FPGA or DSP, will be investigated and analyzed. Conventional fuzzy logic control and improved version of fuzzy logic control will be analyzed in detail. Sliding mode control and sliding mode like control will be analyzed. Digital control techniques for AC-DC converter with power factor correction will be analyzed. It is expected the students will do a project based one or more of the above mentioned techniques.


A. Bakhshai


Introduction. Power semiconductor devices. Line- and force-commutated converters. High power ac/dc and dc/ac converter structures and switching techniques. Principles of HVDC and HVAC systems. Large and small scale stabilities, sub-synchronous resonances, inter-area oscillations, voltage sags, and harmonic instability. Voltage, power angle, and impedance control, phase balancing, and power factor correction by means of solid-state power converters. Flexible AC Transmission Systems (FACTS).  




The objective of this course is to introduce graduate-level engineering students to the fundamentals of robotic vehicles engineering. The course focuses on those tasks usually carried out by autonomy engineers, including sensor selection, applied control (e.g., trajectory and path following) and navigation techniques for autonomous vehicles that operate in real environments (e.g., mining, construction, warehouses, roadways, etc.). Although the focus in this course is on ground vehicles, the presented methods are also applicable more broadly. The audience is engineers from all relevant engineering and applied science disciplines who have an interest in mobile robotics, applied control and estimation, and robotic vehicle applications.


S. Whitehall


Investigation of the design and performance of wireless circuits and systems at microwave and millimeter-wave frequencies. Topics include: communications transceivers, millimeter-wave imaging systems, RFID, radar systems, transmission lines and passive circuits, resonators, microstrip and lumped element low-pass and bandpass filters, amplifier noise and linearity, diode and transistor mixers, LC and relaxation oscillators, frequency multipliers and dividers, phase shifters, FSK QPSK and GMSK modulators and demodulators. 


S. Kabiri Ameri


This course teaches the fundamentals of electron devices in nanometer regime. The course will cover introduction to the nanoelectronics, basics of quantum mechanics and band theory of solids. The concept of Coulomb blockade, many electrons phenomenon, ballistic and spin transport will be discussed and single electron transistor, quantum dots, nanowire and quantum wells based devices will be taught.

Course outline:

Introduction to nanoelectronics (1 Lecture)

  • Applications of nanoelectronics
  • Fabrication approaches
  • • Top-Down
  • • Bottom-up

Introduction to Quantum mechanics (5 Lectures)

  • Operators in quantum mechanics
  • Eigenfunctions and Eigenvalues
  • Measurement probability
  • Schrodinger’s equation
  • Multiple particle systems
  • Spin and angular momentum

Band theory of solids (6 Lectures)

  • Solids crystalline structures
  • Electrons in periodic potential: the Bloch theorem
  • Kronig-Penney potential
  • Metals, insulators and semiconductors
  • Band structure of graphene and carbon nanotubes

Coulomb blockade and single electron transistor (6 Lectures)

  • Coulomb blockade
  • Tunneling junction
  • Single electron transistor
  • Carbon nanotube transistor

Many electrons phenomenon (5 Lectures)

  • Density of states
  • Quantum statistics

Semiconductor quantum wells, quantum dots and nanowires (5 Lectures)

Ballistic transport, nanowire transport and spin transport (5 lectures)

  • Classical and semi classical transport
  • Ballistic transport
  • Carbon nanotubes and Nanowires
  • Spintronic

Required textbook:

“Fundamentals of Nanoelectronics,” Goerge W. Hanson, Prentice-Hall, New Jersey, 2009

Recommended reading:

  • Modern Physics for Engineers,” Singh J., Wiley-Interscience, New York, 1999
  • 2. “Solid State Electronic Devices,” Ben G. Streetman and Sanjay K. Banerjee, Pearson Education Limited, Boston, 2016
  • 3. “Modern Quantum Mechanics,” J. J. Sakurai and Jim Napolitano, Cambridge University Press, 2017

Marking plan:

  • Assignments 20 %
  • Course project 20 %
  • Midterm 25 %
  • Final Exam 35 %

Course Website


M. Alam


The course will provide an overview of the principles of operation of current nanophotonic devices, and recent advances in nanophotonics. Topics covered will include: light-matter interaction, optical waveguides, modeling of nanophotonic devices, light propagation in periodic and anisotropic media, coupled mode devices, plasmonics, metamaterial and metasurface. Emphasis of the course will be on the underlying physics behind the operation and design of nanophotonic devices.

Course Outline

Light-matter interaction

  • Constitutive relations, Dielectric function, Kramers-Kronig relation
  • Optical properties of metals, semiconductors and dielectrics

Optical waveguides

  • Slab waveguides
  • Two dimensional waveguides, Effective index method, Transfer matrix method
  • Numerical modeling: Finite difference time domain, Finite element, Beam propagation method

Coupled waveguide devices

  • Coupled mode theory
  • Directional couplers
  • Grating analysis using coupled mode theory

Light propagation in periodic media

  • Optics of dielectric layered media
  • Bragg gratings
  • Two- and three-dimensional photonic crystals

Light propagation in anisotropic media

  • Index ellipsoid, Ordinary and extraordinary waves
  • Electro-optic effect in anisotropic media
  • Applications


  • Localized and guided surface plasmon polaritons
  • Guiding and focusing of light below the diffraction limit
  • Plasmonics for biosensing

Metamaterial and metasurface

  • Electric and magnetic metamaterials, Negative refractive index, Superlens
  • Metasurface and phase engineering

Fabrication of nanophotonic devices

  • Epitaxial growth of semiconductors
  • Thin film deposition
  • Photo lithography and electro beam lithography
  • Dry and wet etching

Required textbook:

B. A. Saleh, and M. C. Teich, Fundamentals of Photonics, John Wiley & Sons Inc., 2007

Recommended reading:

  • S. V. Gaponenko, Introduction to Nanophotonics, Cambridge University Press, 2010.
  • L. Novotny, Principles of nano-optics, Cambridge University Press, 2012.
  • D. L. Lee, Electromagnetic principles of integrated optics, John Wiley & Sons Inc., 1986.
  • Marking plan:

    • Assignments 25 %
    • Course project 25 %
    • Midterm 20 %
    • Final Exam 30 %


    I.-M. Kim


    Channel characterization and transmission impairments, performance evaluation, baseband pulse transmission, linear modulation, frequency and phase modulation, detection theory and system optimization, equalization, coded modulation.

    ELEC 867 - Data Communications: Fundamentals, 6G/IoT, and AI Fall 2023

    Course Instructor 

    • Dr. IL-MIN KIM
    • Office: Walter Light Hall, Room 409 Tel: 533-6000, ext. 77672
    • Email:[at]
    • Lab: Wireless AI Laboratory (WAI Lab)

    Date, Time, Location 

    • Mondays, 2pm-5pm, WLH 620

    Course Objectives 

    • To provide (i) the fundamental theories of data communications, (ii) the state-of-the-arts (6G/IoT), and (iii) AI and data communications

    Course Topics 

    I. Fundamentals 

    • Introduction
    • Baseband Demodulation/Detection
    • Bandpass Modulation and Demodulation/Detection
    • Power and Bandwidth Trade-offs
    • Wireless Digital Communications

    II. 6G and IoT

    • 1G-5G and 6G (and beyond)
    • IoT

    III. AI and Data Comm

    • Basics of deep learning
    • Data comm for AI / AI for Data comm
    • Federated learning (when data comm meets AI)


    A. Afsahi


    This course covers topics related to high-performance computing (HPC) systems, from traditional to heterogeneous GPU clusters, parallel programming models, and high-performance communication subsystems, for both HPC and Deep Learning workloads, among others. Research papers from literature, a term paper and presentation, project (optional), paper critique and presentation, and hands-on programming on clusters will play an important role in the learning process.


    G. Chan


    This course covers selected topics in statistical signal processing and machine learning.
    The methods studied enable numerous applications that need analysis, enhancement, and understanding of information bearing signals and data, such as speech, communications, biomedical/health, etc. The lectures are divided into two parts, with the first covering spectral modeling and adaptive filtering, setting the stage to study machine learning next.
    At its core, DSP is about designing algorithms which are amenable to software and/or hardware processing of the target signals/data. The course project enables you to practice algorithm design. The project work has three components: computer simulation (using any suitable language), oral presentation, and a written report.

    Course Website

    Please visit the course website linked above for current information on ELEC 823.




    This course provides students with an in-depth understanding of optimization methods specifically tailored for machine learning. It covers the foundations of convex analysis and widely used optimization algorithms in machine learning such as gradient descent, subgradient, and projected gradient methods. Proximal methods and regularized optimization will be covered for handling optimization problems with non-smooth objectives or constraints. Stochastic gradient methods, including stochastic (sub)gradient descent and variance-reduced stochastic gradient, will be discussed for handling large datasets. The course will conclude by exploring non-convex optimization using coordinate descent, Newton’s and Quasi-Newton Methods, and adaptive methods. The course emphasizes both the theoretical foundations and practical applications of these optimization techniques within the context of machine learning algorithms. By the end of the course, students will be well-versed in advanced optimization methods and equipped to apply them effectively in machine learning scenarios, enhancing model performance, convergence rates, and robustness.


    Foundations of Convex Analysis

    Gradient Descent

    Sub gradient Methods

    Projected Gradient Methods

    Proximal Methods and Regularized Optimization

    Stochastic Gradient Methods

    Non-Convex Optimization and Adaptive Methods


    Working knowledge of linear algebra and probability. Prior exposure to optimization is a plus but not necessary.


    P. Jain


    Fundamentals of loss-less switching techniques: zero-voltage switching, zero-current switching. Resonant converters: series, parallel and series-parallel topologies; Soft-switching converters: natural and auxiliary commutation converter topologies; Control techniques: variable frequency, phase-shift and hybrid control. Applications to single-phase three-phase and multi-level converters. Special emphasis will be placed on the design techniques using practical examples.

    PREREQUISITE: ELEC 431 or permission of instructor.


    Dr. Majid Pahlevani


    This course provides an overview of advanced nonlinear control and its application in power electronics. It covers mathematical background and major topics in this area. Students will be introduced to the rigorous mathematical background for nonlinear systems particularly differential geometry. Then, the design of nonlinear control systems will be covered for power electronics applications.


    ELEC 431 (Power Electronics) or equivalent or permission of the instructor, and ELEC 443 (Linear Control Systems) or equivalent.


    M. Korenberg


    Focus is on methods of representing, analyzing, and identifying nonlinear systems without approximating them by linear systems. Analytical methods for nonlinear systems; nonlinear difference equation models; functional expansions, Volterra and Wiener kernels; kernel estimation techniques; identification of cascades of linear and static nonlinear systems. One algorithm taught is Fast Orthogonal Search, which has been used for both system identification given only system input/output data, and time series analysis. Applications include navigation, jamming detection and remedial action to recover GPS signals, control of UAVs including quadcopters, and modeling of physiological systems.

    Course Overview

    The course has an assigned project involving simulation and testing of one of the system identification algorithms. The lectures are interactive and questions are encouraged. Some students have used the system identification in their thesis work, the purpose of the project is to learn and understand an algorithm so that it can be used later.

    Course Content

    Course Webpage


    K. Hashtrudi-Zaad


    This course provides an overview of manipulator modeling, and presents and analyzes various control architectures designed for robots and telerobots. Topics include introduction to robotics, serial manipulator forward and inverse kinematics, Jacobian, singularities and dynamics, robot position and force control methodologies and their stability analyses; introduction to telerobotics and haptics, haptic devices and their specifications, network modeling of telerobotic systems, stability and performance measures, bilateral control architectures, issues of communication delays and dynamic uncertainties and proposed treatments, rate control.

    Course Overview

    1.Robot Modeling

    a.Spatial description and transformations.

    b.Serial manipulators: Forward and inverse kinematics, Jacobian and singularities, Dynamics using Euler-Lagrange method.

    2.Robot Control:

    a.Position control methods: Centralized and decentralized control, Multivariable control, Robust control, Stability in the sense of Lyapunov, Variable structure control, Adaptive control.

    b.Force control methods: Hybrid control, Impedance control, Parallel force/position control.

    3.Telerobotics and Haptics:

    a.Introduction to telerobotics and applications, Haptic devices and their specifications, Network modeling of telerobotic systems, Kinesthetic and task-based performance measures, Stability and stability robustness.

    b.Four-channel control formalism, Traditional control architectures, Trade-off between stability and performance

    c.Issue of time-delay, Proposed solutions: passivity-based, optimization-based, predictive-based methods and supervisory control

    d.Adaptive and variable parameter control methods

    e.Issue of rate mode control, Stability and performance

    f. Current research topics


  • 1.B. Siciliano, L. Scavicco, L. Villani, and G. Oriolo, "Robotics," 2009. Available online through Queen's Library.
  • J.J. Craig, “Introduction to Robotics: Mechanics and Control,” 2004.
  • M.W. Spong and M. Vidyasagar, "Robot Dynamics and Control," Wiley, 1989.
  • M.W. Spong, S, Hutchinson and M. Vidyasagar, "Robot Modeling and Control," Wiley, 2006.
  • Courses Recommended:

    Any introductory courses in linear control systems (e.g. ELEC-443 or MECH-350 or MTHE-332) and in robotics (e.g. ELEC-448 or MECH-456).






    A test will be held on spatial descriptions, transformations, kinematics and dynamics.


    Three or four assignments on robot and telerobot control will be handed out, collected and marked.


    This part consists of a group simulation project or survey. The deliverables are an oral presentation and a report.


    A. Tait


    This course gives an overview of computing hardware from classic conventions to emerging frontiers: machine learning accelerators, quantum circuits, and others. It covers unconventional information representations, architectures, and programming. Assignments measuring cloud-based CPU, GPU, FPGA, neuromorphic, and quantum computers will give hands- on exposure to the physicality – the time, energy, and matter – of information processing.



    S. Gazor


    The review of probability theory including probability spaces, random variables, probability distribution and density functions, characteristic functions, convergence of random sequences, and laws of large numbers. Fundamental concepts of random processes including stationarity, ergodicity, autocorrelation function and power spectral density, and transmission of random processes through linear systems. Special random processes, including Gaussian processes, with applications to electrical and computer engineering at a rigorous level. Three term-hours, lecture, Winter.


    S.D. Blostein


    This is a general introduction to the theory and application of detection and estimation involving probabilistic / statistical inference as needed for engineering problems, focusing on systems involving signal processing, communications, biomedical, control, tracking, radar and navigation systems. Formulations and methodologies for the solutions of problems as well as understanding of underlying assumptions and limitations of concepts presented are emphasized. It it assumed that students have had prior exposure to basic concepts in probability and random processes as typically encountered in an upper-year undergraduate or entry-level graduate course. It also assumed that students have had exposure to  signals and systems  including linear time invariant systems, filtering and frequency domain descriptions as found in a core ECE or related undergraduate program.

    Midterm Exam (covering Weeks 1-7): 30% 
    Final Exam: 60% 
    Assignments (approximately every 2 weeks): 10% 

    Course Schedule 

    Weeks 1-3: Background: elementary concepts from vector spaces, optimization, least squares, and linear systems, including transmission of wide sense stationary random processes. 

    Weeks 4-7: Hypothesis testing. signal detection in discrete time including problem formulations for applications in communications, signal and image processing, and others. Performance evaluation methods for signal detection, theory of optimal stopping, sequential, and quickest detection. 

    Weeks 8-10: Parameter estimation, including Bayesian, nonrandom, and maximum likelihood. Performance of estimators and asymptotic properties. 

    Weeks 11-12: Topics in maximum likelihood estimation, expectation-maximization, signal estimation in discrete time, including Kalman filtering, Wiener filtering, linear estimation. 

    Applications include communications, sensor array processing, image processing and target tracking. 

    Main Reference Texts:

    1. "Fundamentals of Statistical Signal Processing: Estimation Theory", Kay,Prentice Hall, ISBN: 0 -13-345711-7.
    2. "An Introduction to Signal Detection and Estimation" H. V. Poor, Springer-Verlag, ISBN: 0-387 -94173-8.
    3. Course notes package containing lecture notes and a variety of other reference material available first week of term. 


    J. Ni


    This course covers the fundamentals of cybersecurity and machine learning, selected topics in machine learning for cybersecurity, including anomaly detection, malware analysis, network traffic analysis, and fake news defense, and the advanced topics in artificial intelligence (AI) security, including privacy-preserving AI, fairness in AI, and adversarial machine learning.

    Course Outline

    1. Fundamentals of Cybersecurity

    • The concepts of confidentiality, availability, integrity, privacy and anonymity
    • The introduction of network attacks and the exploration of cryptographic algorithms to prevent these attacks

    2. Fundamentals of machine learning

    • Machine Learning: problems and approaches
    • Classification: logistic regression, decision trees, decision forests, support vector machine, naïve Bayes, k-nearest neighbors, and neural networks

    3. Selected topics in AI for cybersecurity

    • Anomaly detection
    • Malware analysis
    • Network traffic analysis

    4. k-anonymity and differential privacy

    5. Adversarial Machine Learning

    • Adversarial examples
    • Evasion attacks and the defense
    • Data poisoning attacks and the defense


    There is no required textbook for this course. Course materials have been gathered from recent research papers and selected chapters of different textbooks.


    R. Grant


    This course will provide students with understanding of the field of Extreme-scale Systems with an emphasis on Extreme-Scale networks. Students will learn the fundamentals of Extreme-scale systems networks and an ability to read, understand, discuss and critique research. Use cases like Scientific computing, AI/ML, big data and commercial applications will be discussed. 

    PREREQUISITE: ELEC 373 (networks) or equivalent. Pre-requisites may be waived with permission of the instructor.




    Burgeoning internetworking and proliferation of smart devices has multiplied the scope and instances of applications that employ multimedia signal processing functions. These functions can be found embedded in networked machines that interact with humans and mediate human-human collaboration. Multimedia signal processing embodiments abound, e.g., sensor signal processing and information extraction for portable/wearable devices; multimedia content generation, distribution, and playback; point-to-point and multipoint communications over wireless networks and the Internet. An overarching theme of this course is the human centered aspect of multimedia, in terms of its ultimate users and source of signals. The focus on auditory and visual signals enables learning specific signal processing approaches and techniques, thereby laying a foundation to work with a variety of existing and emerging interface modalities. Thus, this course will cover human perception and signal production modeling and analysis; machine learning techniques for information extraction; coding for data compression and transmission; anthropomorphic machine intelligence, etc. Through a course project, each student will apply the lecture materials to study a class of signals of his/her choosing, where "signal" is broadly defined ( see here for what constitutes a "signal").


    Study of multimedia signal processing for network mediated human-human communication and human-machine interaction (HMI). Topics covered include: overview of multimedia applications and processing functions; speech production; human auditory and speech perception; image formation; human visual perception; perceptual quality and user experience modeling; speech and image analysis and synthesis methods; lossless and lossy compression techniques; coding for communication and storage; sensing modalities for HMI; machine learning algorithms for information extraction and understanding.


    Students taking this course should have taken an introductory course to probability and random variables, and digital signal processing. Proficiency in computer programming (e.g., using Matlab) is necessary as the course project requires running computer simulations to process signals.


    A. Bakhshai


    Renewable energy generation; wind and Photovoltaic energy conversion; energy storage; distributed energy generation; hybrid systems; Power electronics interfaces and control. Grid- connected distributed sources. Stand-alone operation of distributed sources and micro-grid systems. System protection. Economical dispatch. Centralized and decentralized control. Smart grid.


    Dr. Suzan Eren


    This course covers various power electronics technologies for micro-grids, nano-grids and energy harvesting systems. In this course various types of micro-grids will be covered (e.g., AC microgrids, hybrid micro-grids, and DC micro-grids), along with their respective architectures and control systems.


    ELEC 431 and ELEC 443, or equivalent, or permission of the instructor.




    In this course we will study discrete-event processes, such as computer systems and manufacturing systems, that require control to induce desirable behaviour. Informally, a discrete-event system (DES) is a process (or set of processes) that starts out in some initial state, and is transformed from state to state by the occurrence of discrete events. Such a system can be thought of as a set of sequences of events, each sequence describing a series of actions that occur within the system. Control amounts to inhibiting the behaviour of such processes by disabling events (or preventing certain actions from occurring). Standard models for the control of discrete-event systems are taken from computer science and mathematics and include automata or finite-state machines, directed graphs, Petri nets, modal logic (such as temporal logic) and algebras.

    Topics covered in the course will include some of the following: basic automata and formal language theory; modeling of plants and supervisors for discrete-event control problems; centralized control problems; modular supervision; partial observation; nonblocking solutions; decentralized control problems; computational complexity of DES control problems; timed discrete-event systems; and control using a limited-lookahead approach. Small-scale examples will be used to motivate material. We will show how the course material can be used to model applications such as communication protocol verification, system secrecy , factory automation, concurrency control, and emergency response to medical outbreaks.

    Much of the material that will be used in this course comes from automata theory and formal languages and the mathematics used is discrete mathematics and is closest in flavour to algebra, as opposed to calculus. Students are not expected to have any specific course prerequisites or formal background; however, students are expected to be competent at mathematical proofs (especially mathematical induction), formal reasoning and logical arguments. Some familiarity with automata theory, graph theory, or propositional logic is a bonus but is not essential.


    1. Introduction (1.3)
    • What are discrete-event systems (DESs)?
    • Why should we study how to control them?
    • What types of mathematical models are used to represent DESs?
    • Automata, finite-state machines, directed graphs (2.1-2.4)
    • Petri nets (4.1-4.2)
    • Mathematical Logic
    • Algebra
    2. Automata Theory and the Theory of Formal Languages (2.1-2.4)
    • Formal languages (2.2.1)
    • Regular expressions (2.4.2)
    • Automata (2.2.2)
    • How can automata and languages be used to describe DESs?
    • The relationship between finite-state automata and regular languages (2.4)
    • Nondeterministic finite-state automaton (NFA); converting NFA to language-equivalent deterministic finite-state automation (DFA) (2.3.3)
    3. DES Control Problems (3.1-3.3)
    • Basic Ramadge-Wonham concepts: how to model the process to be controlled (as an automaton), how to model "desired behaviour", how to formulate control problems (3.1-3.2)
    • Concept of legal language (3.3)
    • Concept of supervisor (3.2)
    • Generated versus marked behaviour (3.2.1)
    • Concept of nonblocking solutions (3.2.1)
    • Ways to combine several processes: shuffle, intersection, synchronous product (2.3.2)
    4. Centralized DES Control Problems (3.4-3.5)
    • Motivating examples
    • Concept of controllability (3.4.1)
    • Concept of supremal controllable sublanguage (3.4.3)
    • Formulations of centralized DES problems and their solutions (3.4.4-3.4.5)
    • Computing supremal controllable sublanguage (3.5.3)
    • Cat and Mouse example
    5. Modular Supervision (3.6)
    • Supervisor conjunction
    • Nonblocking solutions (3.6)
    • Small-scale manufacturing system example
    6. Centralized DES Control Problems with Partial Observation (3.7)
    • Motivation, discussion of why it's harder to control system that cannot be fully observe
    • Concept of observability (3.7.1)
    • Formulations of centralized, partial observation DES problems and their solutions (3.7.4)
    • Suboptimal solutions: concept of "normality" (3.7.5)
    • Small example: trains on subway tracks
    • Failure diagnosis as an example of partial observation (2.5.3)
    7. Decentralized DES Control Problems (3.8)
    • Local versus global specification
    • Motivating examples
    • Formulations of decentralized DES problems
    • Concepts of decomposability, co-observability (3.8.1)
    • How to solve decentralized DES problems
    • Communication protocol verification example
    • Computational complexity (3.8.5)
    • Using formal reasoning about knowledge and modal logic to model decentralized DES problems
    8. Timed DESs
    • How to model DESs where events have time bounds (thus permitting real-time constraints to be realized)
    • Small-scale industrial automation problem
    9. Limited Lookahead, Online Control and Dynamic DESs
    • What is limited lookahead?
    • What is online control?
    • What if plant being controlled changes over time?
    • How limited lookahead policies and online control can be applied to dynamic DESs
    • Truck company scheduling example
    10. Other Applications of DES
    • Truck dispatching for mining industry
    • Emergency response protocols for epidemiological outbreaks
    • Concurrency control in software development
    • Supervisory control of biological pathways
    • Using DES to maintain secrecy
    Student Accessibility

    Queen’s University is committed to achieving full accessibility for persons with disabilities. Part of this commitment includes arranging academic accommodations for students with disabilities to ensure they have an equitable opportunity to participate in all of their academic activities. If you are a student with a disability and think you may need accommodations, you are strongly encouraged to contact Student Wellness Services (SWS) and register as early as possible. For more information, including important deadlines, please visit the Student Wellness website at:

    Academic Integrity

    It is your responsibility to adhere to academic integrity. Copying other people's work (in whole or in part) is plagiarism and is not allowed. Facilitating or allowing your work to be plagiarized is also an infringement of academic integrity. See the link to the SGS guidelines on academic integrity:


    C. Saavedra


    Investigation of the design and performance of wireless circuits and systems at microwave and millimeter-wave frequencies. Topics include: communications transceivers, millimeter-wave imaging systems, RFID, radar systems, transmission lines and passive circuits, resonators, microstrip and lumped element low-pass and bandpass filters, amplifier noise and linearity, diode and transistor mixers, LC and relaxation oscillators, frequency multipliers and dividers, phase shifters, FSK QPSK and GMSK modulators and demodulators. Three term hours; lectures.


    C. Saavedra


    This course will cover advanced techniques in high-frequency electronics. Possible topics include ultra-low power circuits, wireless sensors, integrated antennas, microwave photonic circuits, RF technology for high-performance instrumentation.

    PREREQUISITES: ELEC 353 and ELEC 381 (or their equivalents).




    This course provides an analytical study of communication networks that covers many of the major advances made in this area. Students will be introduced to the mathematical preliminaries in queueing theory, optimization and control, followed by a rigorous treatment of network architectures, protocols and algorithms, including resource allocation, congestion control, routing, and scheduling, that are essential to existing and future communication networks and the Internet.


    Introduction to communication network analysis

    Network resource allocation: utility maximization

    Network resource allocation: distributed algorithms

    Links: statistical multiplexing

    Links: delay and packet loss analysis in queues

    Scheduling in packet switches

    Scheduling in wireless networks

    Joint scheduling, congestion control, power control

    Large deviations for queues

    Continuous-time queueing theory

    Geometric random graph models of wireless networks


    • Homework (50%)
    • Paper presentation (10%)
    • Final exam (closed book, 40%)


    J. Cartledge


    Selected topics in optical communications will be studied. Possible topics include semiconductor lasers, optical modulators, modulation formats, multiplexing and demultiplexing techniques, optical fibers, dispersion compensation, optical amplifiers, optical receivers, system performance, optical time division multiplexing, optical signal processing (e.g., wavelength conversion, optical regeneration, clock recovery), passive components, optical networks, and applications (e.g., access, metro, long-haul, ultra-long haul).  


    S. Yam


    This course presents the fundamentals of fiber optic communications, with focus on dense wavelength division multiplexed (DWDM) systems. Topics: components (lasers, modulators, receivers, and optical fibers) and detailed study of system issues in DWDM transmission (interplay between fiber dispersion and non-linearities, transmitter chirp, optical amplification, and polarization mode dispersion).

    The course will include the following topics:

    • Topic 1: Introduction: semi-conductor lasers, photodiodes, optical fibers
    • Topic 2: WDM transmission system, receiver performance, Q-factor, sensitivity
    • Topic 3: Modulators and transmitter chirp
    • Topic 4: Dispersion management and compensation, impact on WDM system performance
    • Topic 5: Fiber non-linear effects (scattering, Kerr)
    • Topic 6: Interplay between fiber nonlinearities, dispersion, and transmitter chirp.
    • Topic 7: Optical amplification (doped fiber amplifier, Raman, parametric amplification)
    • Topic 8: Polarization mode dispersion Project
    1. Students can select from a list of suggested topics or any topic in the area of optical communications (with instructor’s consent).
    2. The project will be evaluated by a number of criteria (specifics to be determined). Criteria include thoroughness of background literature search, novelty of proposed research, and quality of research (theory and/or simulation and/or experiment).
    Marking Scheme

    Homework Assignments - 0%
    Class Project - 50%
    Final Exam - 50%

    Course Material

    Fiber-Optic Communication Systems, 4th Edition, Govind P. Agrawal, Wiley, 2010, ISBN 978-0-470-50511-3
    Lecture Notes
    Research Literature


    S. Yousefi


    his course will be an introductory course on Error Control Coding. The field of error control coding targets the problem of reliable transmission of information over time or space in the presence of noise. The birth of this area from both mathematical as well as engineering perspective can be regarded the same as that of Information Theory: the year of 1948 when Claude Shannon published his landmark paper on communications over noisy channels. Shannon's work in essence was quite a tease! His central result was that if the rate of communication is kept below a certain value (Channel Capacity), reliable communication can be achieved if one chooses proper channel encoding/decoding. He never said what would this proper scheme be for any given channel. Researchers have been addressing this for more than half a century starting with primarily algebraic structures (algebraic coding) and shifting towards random and heuristic schemes (turbo, turbo-like, and low-density parity-check Codes) lately. We put the emphasis on the decoding as Elwyn Berlekamp observes "from a practical standpoint, the essential limitation of all coding and decoding schemes proposed to date has not been Shannon's capacity but the complexity of the decoder. For this reason, efforts have been directed toward the design of coding and decoding schemes which could easily be implemented." In this course we will study a number of efficient encoding/decoding strategies which have proven important in practice with a categorization on the notion of decoding. The course will roughly consist of the following subjects:

    1. Introduction to channel coding: Channel capacity, Shannon theory, performance bounds, discrete and analog channel models

    2. Algebraic decoding: Hard-decision decoding, algebraic coding theory, group theory, codes over fields, codes over rings/groups, linear binary block codes, cyclic codes, BCH codes, RS codes

    3. Trellis decoding: Soft-decision decoding, graphical representations of codes: trellis diagram, Tanner/factor graph, the Viterbi algorithm, convolutional codes, list decoding, sequential decoding, coded modulation

    4. Iterative decoding: Codes over graphs, the forward-backward algorithm, soft-output decoding, low-density parity-check codes, turbo codes, repeat-accumulate codes, block turbo coding, fountain codes, EXIT analysis

    PREREQUISITES: Knowledge of digital communications, basic information theory, probability theory, stochastic processes, and (abstract) algebra [group theory] would be a plus (and at times crucial). Also MATLAB and C will be needed for your projects and home works. LATEX is a must for some of the projects (scribe) and reports.

    Course Material 
    1. Course notes, slides, and a number of papers
    2. E. R. Berlekamp, Algebraic Coding Theory, McGraw-Hill, New York, 1968
    3. R. E. Blahut, Theory and Practice of Error Control Codes, Addison-Wesley, 1983
    4. S. Lin and D. J. Costello, Jr., Error Control Coding, Prentice Hall, 2nd Edition, 2004
    5. R. G. Gallager, Low-Density Parity-Check Codes, MIT Press, Cambridge, MA, 1963
    6. R. Johannesson and and K. Sh. Zigangirov, Fudamentals of Convolutional Coding, IEEE Press, 1999
    7. D. J. C. MacKay, Information Theory, Inference, and Learning Algorithms, Cambridge University Press, 2003
    8. F.J. MacWilliams and N. J. A. Sloane, The Theory of Error-Correcting Codes, North-Holland, 1978
    9. J. Pearl, Probabilistic Reasoning in Intelligent Systems: Netwroks of Plausible Inference, Morgan Kaufmann, 1988
    10. W. W. Peterson and E. J. Weldon, Jr., Error Correcting Codes, MIT Press, Cambridge, MA, 1972
    11. V. Pless and W. C. Huffman, Eds., Handbood of Coding Theory, Elsevier, 1998
    12. B. Vucetic and J. Yuan, Turbo Codes, Principles and Applications, Kluwer Academic Publishers, 2003
    13. S. B. Wicker and S. Kim, Fundamentals of Codes, Graphs, and Iterative Decoding, Kluwer Academic Publishers, 2003
    14. S. B. Wicker, Error Control Systems for Digital Communication and Storage, Prentice Hall, 1995
    15. T. Richardson and R. Urbanke, Modern Coding Theory, Cambridge University Press, 2008


    I.-M. Kim


    This course introduces fundamental theories of multiple-input multiple-output (MIMO) communications systems and design of space-time codes. Topic includes: MIMO channel models; capacity of MIMO systems; transmit and receive diversity; design criteria for space-time codes; space-time block codes; space-time trellis codes; layered space-time codes; differential space-time block codes; combined space-time codes and interference suppression; super-orthogonal space-time codes; variable rate space-time block codes.

    • Linear algebra, probability theory, optimum decision rules, fading channels
    Fundamental MIMO Theories
    • Capacity of MIMO systems
    • Error probability analysis of MIMO systems
    • Diversity-multiplexing tradeoffs
    Key MIMO Techniques
    • Space-time block coding
    • Space-time trellis coding
    • Beamforming
    • Differential space-time block codes
    • Layered MIMO systems (BLAST)
    Other Topics
    Presented by students for their final projects
    • MIMO for 5G Standard
    • Massive MIMO
    • MIMO for NOMA
    • MIMO for millimeter wave
    • 3D MIMO
    • MIMO for small cells
    • MIMO for cloud radio access network (CRAN)
    • MIMO with Energy Harvesting
    • MIMO for Optical Communications
    • MIMO for full duplex communications
    • MIMO for physical layer security
    • MIMO for Machine-to-Machine communications
    • etc


    M. Pan


    This course focuses on the study and design of human-robot interactions (HRIs). Students will
    gain exposure to a broad cross-section of HRI research, exploring topics such as sensors and
    actuators, software architectures and design and evaluation tools. Selected HRI subdomains will
    be examined, including nonverbal communication, trust, and ethics.

    PREREQUISITE: ELEC 344 or similar course.
    CO-REQUISITES: ELEC 448 or MECH 456 or MREN 348 or similar from another university, OR permission of the instructor. 


    N. Manjikian


    This course provides a comprehensive overview of shared-memory multiprocessing. Topics include: shared-memory programming, system and application software considerations, cache coherence protocols, memory consistency models, small-scale and large-scale shared-memory architectures, and case studies to explore practical considerations in multiprocessor systems ranging from single-chip implementations to scalable high-performance platforms.Three term hours; lectures. Winter. N. Manjikian


    A. Etemad


    Fundamental concepts and applications of intelligent and interactive system design and implementation. Topics include: (1) Sensors and Signals in Interactive Systems (2) Data Preprocessing: data acquisition, filtering, missing data, source separation, feature extraction, feature selection, dimensionality reduction; (3) Machine Learning: supervised learning, ensemble learning, multi-task learning, unsupervised learning; (4) Identity Recognition; (5) Activity Recognition and Analysis; (6) Affective Computing.

    PREREQUISITE: ELEC 326 or equivalent, or permission of the instructor.


    M. Greenspan


    This course will study advances in Deep Learning as applied to the field of Computer Vision. The course will start with the introduction of AlexNet in 2012, and will advance chronologically, exploring the innovations that led to the significant improvements in performance. Topics covered will include object detection and recognition, region proposal networks, instance and semantic segmentation, depth and video processing.

    PREREQUISITES: ELEC 474, ELEC 425 or equivalent, or permission of instructor.


    T. Dean


    Design recovery is the extraction of a design model from the artifacts of an existing software system. This design model is used to continue the evolution of the system. The model can be used in the planning and impact analysis stage, while making the changes and to test the result. The extracted design model can also be used to automate each of these tasks to varying degrees. Topics include design models, design recovery techniques, software evolution tasks, the semantics of programming languages and execution environments, and source code transformation. 




    This course covers software re-engineering techniques and tools that facilitate the evolution of legacy systems. This course is broken into three major parts. In the first part, the course discusses the terminology and the processes pertaining to software evolution. In the second part, the course provides the fundamental re-engineering techniques to modernize legacy systems. These techniques include source code analysis, architecture recovery, and code restructuring. The last part of the course focuses on specific topics in software re-engineering research. The topics include software refactoring strategies, migration to Object Oriented platforms, quality issues in re-engineering processes, migration to network-centric environments, and software integration.

    Text: Lecture notes, book chapters, journal and conference papers


    1. Introduction to software re-engineering
    2. Program comprehension
    3. Software re-engineering techniques in source code transformation and refactoring strategies
    4. Software metrics & quality
    5. Re-engineering economics
    6. Techniques for the migration of legacy systems into network centric environments
    7. Software integration issues and enabling technologies in web-enabled and distributed environments.

    Course Material Info

    The course will be consisted of lectures and student presentations. There are about 6 weeks of lectures. The other 6 weeks will be seminar format where students will present assigned research papers. Students will also do a project singly or in pairs, including a class presentation of the project. The marking scheme is:

    Paper Critiques (2 papers per student 10%
    Paper Presentation 10%
    Project Proposal 10%
    Project Progress Reports 10%
    Final Report 50%
    Class discussion 10%

    Resources for Lectures

    Software Reengineering Tools


    A. Etemad


    This course focuses on recent advances and computing trends in wearable technologies, mobile devices, the Internet of Things (IoT), smart homes, and smart vehicles. The history, background, and applications of these systems are reviewed, followed by the description of common sensing technologies often utilized in these devices. Signal/time-series analysis techniques, machine learning algorithms, and computing methods that are often utilized in such applications will be covered in detail. The course is highly applied and students will complete a project and present their results.

    The course is an option for graduate students and the delivery will be primarily in the form of lectures, as well as student-led seminars and presentations. It is anticipated that this course will appeal to students from the Department of Electrical and Computer Engineering, as well as students from other departments such as Computing, Mechanical Engineering, and Mining.

    Evaluation Criteria:

    • Project and presentation: 50%
    • Seminar: 20%
    • Final Exam: 30%

    Covered Topics:

    1. Introduction, background, and applications:
      • Mobile devices
      • Wearables for activity monitoring, health, entertainment, and rehabilitation
      • Virtual reality (VR) and augmented reality (AR)
      • IoT devices, smart homes, and smart vehicles
    2. Common sensors available in mobile, wearable, and IoT devices:
      • Inertial measurement unit (IMU): accelerometer, gyroscope, and magnetometer
      • Photoplethysmography (PPG)
      • Electrocardiography (ECG), electromyography (EMG), and electroencephalography (EEG)
      • Electrical bio-impedance (EBI) and galvanic skin response (GSR)
      • Textile sensors
      • Stretch and pressure sensors
    3. State of the art algorithms used in wearables and IoT devices:
      • Pre-processing: de-noising, feature extraction, dimensionality reduction, etc.
      • Machine learning (supervised and unsupervised)
    4. Other computing-related concepts in wearables and IoT:
      • Resource-constrained computing
      • Cloud computing
      • HCI
      • Case-studies


    X. Zhu


    Human (or natural) language data permeate almost all aspects of our daily life. This course covers basic machine learning approaches to modelling natural language, including fundamental supervised and unsupervised methods for modelling sequences and structures in the data. Based on this, students learn how to develop various applications such as chatbots and information extraction systems. The course will also include state-of-the-art artificial intelligence and deep learning approaches to natural language processing.

    1. The Department of Electrical and Computer Engineering may not offer a specific graduate course if registration is less than three students.
    2. Winter Term courses and instructors may change.  Students will be notified.

    Fourth Year Courses

    Fourth year undergraduate courses listed below may be taken by MASc or MEng students for credit toward their program requirements, subject to the regulations set forth in the Departmental prescription for the MASc or MEng program, Smith Engineering at Queen's Graduate Council, and the School of Graduate Studies.  PhD students cannot take fourth year undergraduate courses for credit toward their PhD program requirements, as per the Graduate Council Regulation 2.1.4.

    External Course Lists