ECE 699 Project Course - Fall 2023

ECE 699 - Master of Engineering Project

This is a project course, designed exclusively for MEng students. Students will carry out a research project over one academic term, under the direct supervision of an ECE faculty member. At the end of the term, a written Project Report has to be submitted, which will be evaluated and marked by the Supervisor.

Eligibility and Guidelines:

  • MEng students from ECE Department only (MASc and PhD students are NOT eligible).
  • Coursework average ≥ 80%, after at least 3 courses.
  • No RA or GRS is paid.
  • The course is not transferable to the ECE MASc program.

Course enrolment process is as follows:

  • Projects that are available with ECE faculty members are listed below.
  • Students should contact the faculty member, and the faculty member shall confirm allocating the project to the student.
  • Faculty member will notify the MASc/MEng Coordinator, who will issue a Permission Number to the student for registering in the course.

Information for course supervisors:

  • Fall 2023 ECE 699 grades are to be submitted by December 15th, 2023 to the Faculty Coordinator (currently, Prof. Andrew Heunis) and the MASc/MEng Coordinator (currently, Amber Beaudoin).

Note: Spring deadline for grade submission - August 8th 2023 

Projects Available for Fall 2023 (the list will be updated as projects become available or unavailable).

Project: Perceptually motivated and deep learning approaches for image and video processing

The objective of this project is to develop novel methodologies for image and video processing, optimization, compression, transmission, and streaming based on advanced technologies including perceptually motivated and deep learning approaches. Working with a group of experienced researchers and fellow students, the student will carry out research in the forms of algorithm and software development, experiment design and setup, perceptual testing, and data processing and analysis

Supervisor: Prof. Zhou Wang
Email: zhou.wang@uwaterloo.ca
Phone: 519-888-4567 x35301
Location: E5-5113

Project: Application of neural network or deep learning algorithms in pattern recognition

This project aims to build deep machine learning models (e.g. recurrent neural networks, transformer models, etc.) to perform experimental data analysis where tasks of classification and pattern recognition are performed. 

Required skills: Python, machine learning algorithms.

Supervisor: Prof. Na Young Kim
Email: nayoung.kim@uwaterloo.ca
Phone: 519-888-4567 x30481
Location: Remote/RAC-2101

Project: Programming to control a robot arm

This project establishes programming to control a cobot arm for designated actions of a  processing procedure in the lab. A task includes the programming environment interface setup and the building of a protocol to perform a sequence of cobot arm actions. 

Required skills: Python/C++

Supervisor: Prof. Na Young Kim
Email: nayoung.kim@uwaterloo.ca
Phone: 519-888-4567 x30481
Location: Remote/RAC-2101

Project: Accelerating real-time AI on SoC FPGAs

In this project, students will work on design and implementation of an open-source, VTA-based accelerator framework for real-time AI. Prior knowledge of compilers, FPGA design, and kernel programming is necessary.

Supervisor: Prof. Seyed Majid Zahedi
Email: smzahedi@uwaterloo.ca
Phone: 519-888-4567 x35761
Location: DC 2524

Project: An Adaptive Heuristic-Based Framework to Enhance JITServer Technology

Just-in-time (JIT) compilation in Java Virtual Machines (JVMs) provides a method of improving the throughput of Java applications at the cost of consuming local CPU and memory resources. The resources consumed by JIT compilation may impede normal application execution, especially in resource-constrained settings such as the containers of microservices. To address this, JITServer technology, implemented as a part of Eclipse OpenJ9 by IBM, is a solution that decouples the JIT compiler from JVMs to offload the overhead of compilation from client runtimes to separate processes. The goal of this project is to explore areas to further improve the performance of JITServer technology in containerized cloud environments by incorporating self-adaptive solutions and techniques. The project provides graduate students with a great opportunity to gain hands-on experience with state-of-the-art run-time technologies and self-adaptation mechanisms.

Prof. Ladan Tahvildari
Email: ladan.tahvildari@uwaterloo.ca 
Phone: 519-888-4567 x36093
Location: EIT 4136

Project: Open-Source Benchmark Suite for Explainable Artificial Intelligence (XAI) Methods

The responsible deployment of AI systems depends significantly on several factors, such as robustness, fairness, privacy, and explainability. The latter, in particular, is often utilized as a certification that the model operates as anticipated, aligned with other vital criteria. However, this presumption is contingent on the explanations themselves functioning as intended, which may not always be the case. The primary goal of this Explainable Artificial Intelligence (XAI) research project is to create an open-source suite of benchmarks for certifying various attributes of existing explanation methods. This endeavor aims to furnish the XAI community with a robust benchmark to gauge progress towards more reliable and transparent explanations. Prospective students participating in the course will gain insights into recent advances in XAI, engaging with methods such as saliency-based explanations, concept-based methods, Shapley values, and recourse-based methods. A comprehensive understanding of these topics will equip students with the skills necessary to apply these methods in fields where responsible AI is of paramount importance.

Prof. Amir-Hossein Karami
Email: (a6karimi@uwaterloo.ca)

Prof. Ladan Tahvildari
Email: ladan.tahvildari@uwaterloo.ca 
Phone: 519-888-4567 x36093
Location: EIT 4136

Project: Performance Comparison of Rule and Integrity Checkers

Modern safety-critical systems require runtime monitoring to ensure integrity and safety. At the same time, these systems remain energy efficient to support small device size and operate without fans. The goal of this project is to evaluate runtime monitoring frameworks and perform a gap analysis which can then lead to subsequent research.

You will learn about: runtime verification, stream processing, embedded software, safety-critical systems, data analysis, performance evaluation

Supervisor: Prof. Sebastian Fischmeister
Email: sebastian.fischmeister@uwaterloo.ca
Phone: 519-888-4567 x33694
Location: E5 4112

Project: Root-Cause Analysis for Safety and Security Incidents

Security and safety are paramount for modern systems like autonomous vehicles, airplanes, and medical devices. The challenge is to reason about incidents in such systems. The goal of the project is to review open-source reasoning frameworks and build a prototype for incident response for embedded systems.

You will learn about: root-cause analysis, data analysis, reasoning and AI, embedded systems, safety-critical systems

Supervisor: Prof. Sebastian Fischmeister
Email: sebastian.fischmeister@uwaterloo.ca
Phone: 519-888-4567 x33694
Location: E5 4112

Project: Pwn-a-Truck: Cybersecurity of Heavy Vehicles

Security of autonomous vehicles is crucial to eventually deploy them at scale. We own a truck that we use for cybersecurity. The goal of the project is to identify exploitable vulnerabilities in electronic control units of an actual truck on campus. Pwn a truck!

You will learn: embedded systems security, low level programming, CAN, cybersecurity attack tools

Supervisor: Prof. Sebastian Fischmeister
Email: sebastian.fischmeister@uwaterloo.ca
Phone: 519-888-4567 x33694
Location: E5 4112

Project: Battery Management Systems for New and Used/Repurposed EV Battery Packs  

This project has been inspired by the expected high volume of EV battery packs that will become available after the end of their first lives in the vehicles and their potential application in stationary energy storage systems before their end of second life and being recycled. The project consists of: 

  • A Critical Review of Battery Management Systems (BMSs) for EV Battery Packs – Requirements, Design Specifications, Performance Parameters, Relation to Type and Age of Battery Cells, Relation to Safety Requirements, Relation to Charging System
  • Proposing required changes to the design and settings of existing battery management systems to make them compatible with characteristics and safety requirements of used/repurposed battery packs   

Supervisor: Prof. Mehrdad Kazerani
Email: mkazerani@uwaterloo.ca
Phone: 519-888-4567 x33737
Location: EIT 4171

Project: Feasibility Analysis of Electrical Braking in More-Electric Airplanes

Electrification is the future of transportation. This project focuses on electrification of air transportation. As electric propulsion and actuation systems are being studied and tested for incorporation in more-electric airplanes, electric braking (both in the air and on the ground) must be considered as a viable option with great potential in energy saving. This project starts with a thorough and critical literature survey and analysis of the methods proposed/implemented for electric braking in more-electric airplanes. It will then continue with modeling and simulation of the most promising schemes and assessing their feasibility, as well as techno-economic and environmental benefits.         

Supervisor: Prof. Mehrdad Kazerani
Email: mkazerani@uwaterloo.ca
Phone: 519-888-4567 x33737
Location: EIT 4171

Project: Techno-Economic Analysis of Green Ammonia Production via Electrochemical Nitrogen Reduction Technique 

Ammonia is a versatile chemical that has traditionally been used in the fertilizer industry for decades. However, ammonia’s inherent characteristics such as high hydrogen density, high volumetric density, ease of liquification, low flammability, and ease of transportation make it attractive as an energy storage medium in load-leveling applications. Renewable energy-based green ammonia is commonly produced using the electrified Haber Bosch (E/H-B) process; however, an alternative approach for green ammonia production using the “Electrochemical Nitrogen Reduction (ENR) Technique” is gaining attention. The E/H-B process is energy-intensive, requires expensive hydrogen electrolyzers, and a large, centralized HB plant (i.e., a high capital cost). The ENR technique, on the contrary, has low energy and capital costs, as it requires neither a hydrogen electrolyzer nor an HB plant, and it is decentralized which reduces transportation costs and enables deployment in remote locations. The objective of this project is to conduct and develop a techno-economic analysis of the ENR technique for ammonia production based on the Ontario electricity grid data. Conducting a sensitivity-analysis to study the economic impacts of ammonia production via the ENR technique, computing the Levelized Cost of Ammonia (LCOA) for the ENR technique, and comparing it with that of the E/H-B process will be used to show the economic competitiveness of the ENR approach. 

Supervisor: Prof. Mehrdad Kazerani

Email: mkazerani@uwaterloo.ca
Phone: 519-888-4567 x33737
Location: EIT 4171

Project: Geometric nonlinear control of underactuated mechanical systems

We will design and implement a nonlinear feedback controller for motion control of a rotational inverted pendulum. We will use the tools of nonlinear control and differential geometry to motivate our design and mathematically prove its effectiveness. The task includes (1) modelling the system (2) analyzing the resulting model (3) design and simulate a path following controller to move the pendulum in a desired manner (4) implement the controller on a Quanser designed hardware platform.m.      

Supervisor: Prof. Chris Nielsen
Email: cnielsen@uwaterloo.ca
Phone: 519-888-4567 x32241
Location: EIT 4106

Project: Fault Detection in Hybrid HVDC Grids

High voltage direct current (HVDC) grids, where a number of point-to-point HVDC links are connected together in a meshed configuration, have recently gained substantial attention in Europe, China and Canada. These HVDC grids enable the bulk and low-loss transfer of power and allow for large integration of renewable resources.  As future HVDC grids will be built by different manufacturers, various types of converters will be operating in the same grid. The creation of such hybrid HVDC grids will bring forth significant technical challenges. One significant challenge is the hybrid HVDC grid protection. This project revolves around developing a relaying algorithm for hybrid HVDC grids.   

Supervisor: Prof. Sahar Azad
Email: sahar.azad@uwaterloo.ca
Phone: 519-888-4567 x33974
Location: EIT 4017

Project: STATCOMs and Beyond

In this project, an existing STATCOM, which is based on a full bridge modular multi-level converter, is used to provide power oscillation damping and other ancillary services to the power grid. The various steps in this project are:

1) Using the existing modular multi-level converter models in PSCAD to build a STATCOM

2) Develop the control and switching mechanism of the STATCOM to provide oscillation damping

3) Explore the STACOM capabilities to achieve other ancillary services such as frequency support

Supervisor: Prof. Sahar Azad
Email: sahar.azad@uwaterloo.ca
Phone: 519-888-4567 x33974
Location: EIT 4017

Project: Protection of Modernized Distribution Systems

The conventional protection strategies and protective relays in the electric power distribution systems have been developed based on the characteristics of large centralized generation systems, i.e.,  synchronous generators. The existing protection systems are not designed taking into account the different behaviour of electronically‐interfaced Distributed Energy Resources (DERs), e.g.,  renewables and energy storage systems. This project aims to enable reliable protection of the modernized distribution systems with increased penetration of electronically‐interfaced DERs, especially the large‐scale wind and solar power plants.

Supervisor: Prof. Sahar Azad
Email: sahar.azad@uwaterloo.ca
Phone: 519-888-4567 x33974
Location: EIT 4017

Project: Distance relays for protection of systems with wind farms

The protection of power systems with renewable energy resources against large fault currents and voltage transients are one of the main technical challenges hindering the large integration of renewable resources to the electric grid. This research project aims to address the protection challenges by developing and experimentally validating innovative relaying strategies for grids with wind farms.

Supervisor: Prof. Sahar Azad
Email: sahar.azad@uwaterloo.ca
Phone: 519-888-4567 x33974
Location: EIT 4017

Project: Developing a microfluidic biosensor for profiling cancer biomarkers  

During cancer progression, many tumors shed cancer biomarkers, including circulating tumor cell (CTC), exosomes and cell-free circulating tumor DNA (ctDNA) into the bloodstream. In this project, the candidate will be working on developing a platform for in-line detection of exosomes as a biomarker for early cancer diagnosis. They will fabricate a specially designed microfluidic device and integrate a bead-based assays for in-line capture of exosomes from whole blood sample.

For further information please visit: https://uwaterloo.ca/integrated-devices-early-awareness-lab/

Supervisor: Prof. Mahla Poudineh
Email: mahla.poudineh@uwaterloo.ca
Phone: 519-888-4567 x33319
Location: QNC 3622

Project: Developing a real-time, electrochemical biosensor for glucose and insulin detection 

In this project, an electrochemical biosensor will be developed for multiplexed and real-time detection of glucose and insulin. The detection is based on aptamer switching probes where a redox agent is conjugated to the aptamer probe and upon binding of the target, a change in conformation of aptamer happens and this will allow target detection.

For further information please visit: https://uwaterloo.ca/integrated-devices-early-awareness-lab/

Supervisor: Prof. Mahla Poudineh
Email: mahla.poudineh@uwaterloo.ca
Phone: 519-888-4567 x33319
Location: QNC 3622

Project: Path Planning/Controls for Autonomous Racing

In this project you will be designing, implementing, validating, and iterating upon various path planning and control algorithms to drive a modified Dallara IL-15 Indy Lights vehicle around the Indianapolis Motor Speedway in simulation. This project is a part of Waterloo Autonomous Racing (WATORACE)’s stack for competing in the Indy Autonomous Challenge.

Supervisor: Prof. Derek Rayside
Email: drayside@uwaterloo.ca
Phone: 519-888-4567 x40248
Location: E7 5426

Project: Action Detection in Road Scenes

Leveraging the ROAD Dataset, WATonomous is developing an action classifier for road participants from video streams. The system will be deployed on-vehicle and validated in lead vehicle overtaking and pedestrian interaction scenarios. The team is looking for experience in computer vision research, development with PyTorch and Docker, and deploying neural networks to on-vehicle GPUs.

Supervisor: Prof. Derek Rayside
Email: drayside@uwaterloo.ca
Location: E7 5426

Project: Urban Decision Making for Autonomous Vehicles 

Developing decision-making frameworks for safe, yet efficient, urban autonomous driving under environment uncertainties is a challenging topic for modern learning-based algorithms. Therefore, in this project, reinforcement learning-based decision-making schemes are developed to learn optimal policies for driving in multi-agent environments where intents of road users and other dynamic states are unforeseeable. Candidates with programming experience with PyTorch/ TensorFlow and familiarity with the CARLA simulator are preferable.  

Supervisor: Prof. Derek Rayside
Email: drayside@uwaterloo.ca
Location: E7 5426

Project: Sim-to-Real Applications for Autonomous Driving 

As driving simulators become more photorealistic and simulation platforms become more flexible in terms of sensor configuration and environmental setting, synthetic data has a greater chance of filling gaps in existing real-world datasets. Nonetheless, there is a domain difference between the appearance of simulation and real-world data, which can be bridged using transfer learning techniques. Watonomous researchers have been working on developing such schemes for autonomous driving applications. Candidates with programming experience with PyTorch/ TensorFlow and familiarity with the CARLA simulator are preferable.  

Supervisor: Prof. Derek Rayside
Email: drayside@uwaterloo.ca
Location: E7 5426

Project: Three structured mini-projects: machine learning, robotics, control

This project offers exposure to multi-disciplinary design theory and practice with a strong focus on experiential learning. Through a series of mini-projects, the objective is to provide the student with the opportunity to have practical hands-on experience that will enhance their ability to be innovators in industry and leaders in experimental research. These mini-projects will cover topics such as robotics, control, perception, machine learning and automation. Each design activity will be approached from a holistic sense, including conceptualizing, synthesizing, analyzing, prototyping and optimizing followed by a reflection. Students are encouraged to utilize a variety of techniques/tools to both model, analyze and implement their designs (support on aforementioned resources will be provided). The project will be split into 3 separate project modules, with a report deliverable after each module’s completion. The project is designed in a hybrid-studio format, incorporating theoretical lectures alongside lab experiments, hands-on activities, and other practical components. Project content dissemination will happen through a combination of scheduled meetings/consultations, lab milestones as well as pre-recorded video content.

Supervisor: Prof. Derek Rayside
Email: drayside@uwaterloo.ca
Location: E7 5426

Project: Robust Deep Learning of Deep Neural Networks

Deep neural networks (DNNs) are vulnerable to adversarial examples, maliciously modified raw input data which is imperceptible to human vision, but once fed into DNNs, can lead DNNs to produce incorrect outputs. The existence and easy construction of adversarial examples pose significant security risks to DNNs, especially in safety-critical applications, including visual object recognition and autonomous driving. One way to partially mitigate this problem is to formulate deep learning as a type of minimax problem instead of the standard minimization problem. The objective of this project is to explore and implement effective methods for solving such a minimax problem, yielding robust deep learning.

Supervisor: Prof. En-Hui Yang
Email: ehyang@uwaterloo.ca
Phone: 519-888-4567 x32873
Location: EIT 4157

Project: Modelling Adversarial Perturbations in Deep Neural Networks

Deep neural networks (DNNs) are vulnerable to adversarial examples, maliciously modified raw input data which is imperceptible to human vision, but once fed into DNNs, can lead DNNs to produce incorrect outputs. The existence and easy construction of adversarial examples pose significant security risks to DNNs, especially in safety-critical applications, including visual object recognition and autonomous driving. The objective of this project is to model adversarial perturbations in DNNs through statistical analysis and DNN visualization. The established model will provide a basis for developing a radically different approach for detecting adversarial examples.

Supervisor: Prof. En-Hui Yang
Email: ehyang@uwaterloo.ca
Phone: 519-888-4567 x32873
Location: EIT 4157

Project: Comparing the accuracy of bone density measurements obtained from a dual energy chest radiograph to a state-of-the-art DEXA scan

DEXA is the established gold standard when it comes to bone density measurements. However, it is a test that requires specialized equipment and is prescribed for a very targeted population e.g. seniors.  In contrast, X-ray imaging is a commonly prescribed imaging test in outpatient clinics and emergency departments across Canada. This project will investigate the difference in error between a bone density measurement extrapolated from a dual energy X-ray image and compare it to the measurement obtained from a Dual Energy X-ray Absorptiometry (DEXA) scan.

Supervisor: Prof. Karim S. Karim
Email: kkarim@uwaterloo.ca
Location: E7 1326A

Project: Memory Visualization for an Assistive Robot

The student will develop a basic software tool for a robot to store and view memory of salient objects in a lab environment. This will require strong familiarity with Python or C++. It will also be beneficial if the student has some knowledge of object tracking and basic GUI design. The task includes: 1) Implement an off-the-shelf object detector and object tracking mechanism from OpenCV to detect and track some salient objects, 2) Store videos of salient objects in memory, 3) Develop a simple GUI to search and visualize videos of salient objects stored in memory.

Supervisor: Prof. Kerstin Dautenhahn
Email: kerstin.dautenhahn@uwaterloo.ca
Location: E5 5027

Project: Detect and grasp objects into a bin using a depth camera on a robot manipulator

In this project, the student will implement a pick-and-place task for a robot manipulator using its depth camera and point cloud data. The task includes using a Fetch robot to detect some cuboids on a table, pick them up and drop them in a bin. To accomplish this the robot needs to 1- find the bounding box and the pose of the cuboids, 2- generate the planning scene, and 3- pick and place the object.

Candidates will require a strong background in Python\C++ and deploying different libraries. Familiarity with ROS is a plus.

Supervisor: Prof. Kerstin Dautenhahn
Email: kerstin.dautenhahn@uwaterloo.ca
Location: E5 5027

Project: Vision-based remote control of a mobile manipulator

In this project, a graphical user interface will be designed for a mobile manipulator, Fetch robot, enabling the human user to control the robot remotely and fetch objects. In this GUI, the user can move the robot using a control stick while getting the real-time video of the robot's camera. However, the robot needs to autonomously avoid collisions and override the users' command if they drive it too close to an obstacle. The user can select an object in the received images and ask the robot to pick it up and fetch it for the user.

Candidates will require a strong background in Python\C++ and deploying different libraries. Familiarity with ROS is a plus.

Supervisor: Prof. Kerstin Dautenhahn
Email: kerstin.dautenhahn@uwaterloo.ca
Location: E5 5027

Project: Human-Robot collaboration planning for packaging (assembly) task

Collaborative robots, or cobots, represent a new generation of robots that enable humans and robots to work closely together and share their workspace. However, for a seamless collaboration, the robot must be able to take into account its human coworker's actions and preferences in its planning. This project focuses on implementing human-robot collaboration on a robot named Fetch for packaging (assembly) tasks in various scenarios where the robot's role can range from being a leader to a follower, depending on the situation.

Candidates will require a strong background in Python\C++ and deploying different libraries. Familiarity with ROS is a plus.

Supervisor: Prof. Kerstin Dautenhahn
Email: kerstin.dautenhahn@uwaterloo.ca
Location: E5 5027

Project: Human-Robot collaborative objects sorting

The objective of this project is to plan for the human-robot collaboration to remove a certain number of objects from a conveyer belt and sort them based on their color. This requires the robot to consider the human coworker's performance and preference and minimize the number of failed objects falling on the ground from the conveyer belt (as none of the human and robot agents remove it). The whole setup needs to be implemented on a robot, called Fetch, and two conveyer belts. 

Candidates will require a strong background in Python\C++ and deploying different libraries. Familiarity with ROS is a plus.

Supervisor: Prof. Kerstin Dautenhahn
Email: kerstin.dautenhahn@uwaterloo.ca
Location: E5 5027

Project: Eye Gaze Tracker Video Output Segmentation

The Tobii Pro 2 eye tracker glasses are a wearable device that monitors a person's gaze target. Outputs of this device are in the form of scene camera videos, which is what a person is seeing, along with their gaze target as a pixel value in every time frame. This project aims to make a computational tool to detect and localize relevant objects in that video in real-time, in order to identify the gaze target of a person. Knowledge of image processing and machine vision, along with an interest in learning how to use the glasses API (documentations are available), is required.

Supervisor: Prof. Kerstin Dautenhahn
Email: kerstin.dautenhahn@uwaterloo.ca
Location: E5 5027

Project: Skeleton Tracking and Motion Analysis for Human-Robot Interaction Applications

When humans interact with a robot, their gestures, actions, and behaviours are important social cues. The objective of this project is to build a computational tool for automatic detection of a set of social cues in videos of a person interacting with a robot. These cues can include, for example, a person waving a hand to the robot or having touched a particular part of it. The videos to work with can be obtained from the robot’s own camera or an external camera located at a suitable position. Knowledge of image processing and machine vision, in particular, familiarity with the latest skeleton tracking tools, is required.

Supervisor: Prof. Kerstin Dautenhahn
Email: kerstin.dautenhahn@uwaterloo.ca
Location: E5 5027

Project: Planning collision free paths for unmanned aerial vehicles (UAVs) in cluttered environments

Project description: This project aims to develop a computationally lightweight method to generate trajectories for UAVs flying in a cluttered environment, possibly with compromised abilities due to damage (e.g., a broken rotor blade). In addition to being computationally lightweight, we also want a certificate of completeness of the approach, i.e., if there exists a safe trajectory, the proposed method will find it.

Required skills: Strong background in at least one of: a) Control Theory, b) Reinforcement Learning, c) Optimization; Python or Matlab programming (including familiarity with Tensorflow/PyTorch); familiarity with working in a Unix environment.

What you will learn: Fundamentals of motion/trajectory planning for aerial vehicles (including multi-rotor and fixed-wing UAVs), motion primitive-based approaches for trajectory planning, predictive motion planning.

Supervisor: Prof. Yash Vardhan Pant
Email: yash.pant@uwaterloo.ca
Location: E5-5044

Project: Automatic crash scenario reconstruction from limited data

Project description: This project aims to develop a method for automatically constructing traffic scenarios and behaviors which could have lead to a recorded crash between one or more vehicles. Leveraging synthetic data from programmable vehicle simulators (e.g., CARLA), the project will involve probabilistic modeling of traffic agents and elements of causal inference.

Required skills: Python programming (including familiarity with Tensorflow/PyTorch), background in probability and Markov Decision Processes (MDPs), familiarity with working in a Unix environment.

What you will learn: State-of-the-art autonomous vehicle simulators (CARLA and LGSVL); Probabilistic traffic modeling; causal inference; reachability over MDPs and POMDPs.

Supervisor: Prof. Yash Vardhan Pant
Email: yash.pant@uwaterloo.ca
Location: E5-5044

Project: Domain adaptation for data-driven aircraft modeling

Project description: To meet certification requirements, new aeronautical products requires extensive flight testing. The prohibitive cost of this has resulted in a trend where new aeronautical products are becoming scarce, and smaller OEMs such as Bombardier and Embraerer are risking bankruptcy while larger ones are becoming more risk averse. To counter this trend, Certification by Analysis (CbA) has the goal of certifying aeronautical products (in part or fully) using a lower means of compliance other than the currently recognized and accepted Physical Flight Testing, and in the process, reducing development costs. This project aims to enable sustainable CbA by learning high-fidelity dynamics models for an aircraft by utilizing existing data from similar aircrafts and only limited flight test data of the target aircraft. This will involve deep learning-based modeling and domain adaptation techniques to reliably learn such models.

Required skills: Basic knowledge of deep learning, both theoretical and practical (e.g., implementations via tensorflow or Pytorich); dynamical systems modeling via ordinary differential equations/difference equations;  familiarity with working in a Unix environment.

What you will learn: Physics-based Neural Networks; introduction to aircraft modeling and dynamics; implementing and training different deep learning architectures (such as GNNs and GANs); elementary domain adaptation for deep learnibng-based models.

Supervisor: Prof. Yash Vardhan Pant
Email: yash.pant@uwaterloo.ca
Location: E5-5044

Project: Electrical Characterization Studies on Power Cables used in Nuclear Power Plants

Research Description: The work will consist of electrical characterization studies on long samples (i.e. 3 to 10 meters) prepared from medium voltage (MV) polymeric cables utilized in power generation and distribution applications.  The samples will be subjected to varying degrees of thermal aging. The work will be conducted as a part of an overall industry-partnered R&D study with Kinectrics Inc. to localize the thermal aging related defects in polymeric cables used in nuclear power plants.

Research Objectives and Methodolgies: You will be taught different, efficient, and practical characterization methods of power cables which are used in industry. These methods include but not limited to Dielectric Spectroscopy (DS), Polarization and Depolarization Current (PDC) measurements, Time- and Frequency- Domain Reflectometry (TDR and FDR) tests, high-frequency dielectric characterizations, and polymer tests such as tensile tests.

Supervisor: Prof. Shesha Jayaram
Email: shesha.jayaram@uwaterloo.ca
Location: EIT 3105

Project: Investigating the degradation of windfarm connected transformer insulation under repetitive transient voltages

The step-up transformers in the windfarms are prone to premature failure due to high-frequency repetitive transients generated by the operation of power electronics switching and frequent circuit breaker operations. In this work, transformer insulation degradation under repetitive transient voltages will be evaluated. Partial discharge inception voltage, intensity of discharges, time to failure and the rate of hydrogen gas generation are the parameters considered to evaluate the level of degradation under different operating conditions.

Supervisor: Prof. Shesha Jayaram
Email: shesha.jayaram@uwaterloo.ca
Location: EIT 3105

Project: Hardware Architecture for Machine Learning Algorithms Based on Stochastic Computing

In this project, you will implement an RTL hardware architecture for a convolutional neural network (CNN) based on stochastic computing, which offers compact arithmetic node implementation, to be applied to problems in medical imaging. The target will be a field-programmable gate array (FPGA) platform.

Supervisor: Prof. Vincent Gaudet
Email: vcgaudet@uwaterloo.ca
Location: E5 5117

Project: Robot design for long-term environmental monitoring

The deployment of robots in the wild to monitor the environment over long time horizons poses a number of challenges which should be addressed at the design stage. This project aims at developing novel mechanical, electronic, and control systems design principles which will allow robots to be deployed for sustained amounts of time with the objective of monitoring environmental phenomena of interest.

Prior experience with either (i) CAD of mechanical and electronic components or (ii) embedded control systems is required.

Supervisor: Prof. Gennaro Notomista
Email: gennaro.notomista@uwaterloo.ca
Location: E5 4006

Project: Safety in human-robot interaction

This project aims at advancing the state of the art in understanding the concept of safety in human-robot interaction. Recently developed theoretical tools in dynamical systems have allowed us to formalize the idea of safety. These will serve as building blocks for defining and enforcing safety in dynamical systems comprised of robotic platforms interacting with humans.

Good knowledge of dynamical systems and control theory is required.

Supervisor: Prof. Gennaro Notomista
Email: gennaro.notomista@uwaterloo.ca
Location: E5 4006

Project: Control of teams of quadcopters for long-term environmental monitoring

This project explores coordination strategies for teams of quadcopters deployed in the field and tasked with monitoring the environment for long time horizons. Novel strategies to combine team-level coordination and energy management will be developed with the goal of defining a new control framework suitable for long-term monitoring of environmental phenomena using teams of autonomous mobile robots.

Requirements: Good knowledge of control theory and mobile robots. Experience with robot programming (Python, C++, ROS).

Supervisor: Prof. Gennaro Notomista
Email: gennaro.notomista@uwaterloo.ca
Location: E5 (and outdoor)

Project: Robots painting music

“Dark sounds” and “Dissonant colors” are just two of the many expressions highlighting the tight relationship between music and painting. The goal of this project is to connect these forms of art and human creativity via robot motion. This will be attempted by designing algorithms for a team of brushbots to transform musical inputs into paintings by leaving trails of color while moving on a canvas, controlled by music.

Requirements: Experience with control of mobile robots and robot programming (Python and ROS).

Supervisor: Prof. Gennaro Notomista
Email: gennaro.notomista@uwaterloo.ca
Location: E5

Project: Antenna Measurements

The goal of this course project is to familiarize students with antenna concepts that affect the performance of wireless devices. The students will learn how to perform basic antenna measurements in an anechoic chamber. The students will then need to propose a setup that characterizes/demonstrates the properties of an antenna system and provide detailed material to explain these properties. These properties include (but are not limited to) impedance, efficiency, frequency of operation, bandwidth, gain, polarization, beam width, RCS, noise immunity, and data throughput.

Supervisor: Prof. G. Shaker (Adjunct)
Email: gshaker@uwaterloo.ca
Location: E5 4020

Project: Antenna Design for the Internet of Things

The goal of this course project is to empower students with antenna design skills to meet the increasing demand for custom wireless internet of things (IoT) devices. The students will decide upon a given IoT application. The students will then use a conceptual CAD model for the IoT device and utilize numerical computer aided design tools (Ansys HFSS & Keysight ADS) to design a suitable antenna solution.

Supervisor: Prof. G. Shaker (Adjunct)
Email: gshaker@uwaterloo.ca
Location: E5 4020

Project: Building a Radar System

The goal of this course project is to help students understand basic radar concepts. The course spans topics of applied electromagnetics, antennas, RF design, analog circuits, digital signal processing, machine learning, and artificial intelligence. Students will decide upon a radar application (whether for autonomous drones/robots/vehicles or in the general theme of sensing for healthcare). Students will then get to work towards building a simulation model of their own radar system.

Supervisor: Prof. G. Shaker (Adjunct)
Email: gshaker@uwaterloo.ca
Location: E5 4020

Project: An AXI-compliant Platform Cache for RISC-V Embedded SoCs

The goal of this project is to design a platform-level cache IP for integration in a RISC-V System-on-a-Chip (SoC) based on an ARM AXI interconnection. Specifically, the student will design and implement advanced cache replacement, locking and partitioning policies suitable for safety-critical embedded systems, and work with the rest of the team to integrate and test them in a full stack system.

Required knowledge & skills: computer architecture, RTL design

Supervisor: Prof. Rodolfo Pellizzoni
Email: rpellizz@uwaterloo.ca
Location: E5 4108

Project: Gem5 Evaluation Platform for High-Performance Real-Time Systems

The goal of this project is to create a suitable simulation platform to evaluate the effects of QoS regulation on traffic flows in an heterogeneous system-on-chip platform used for real-time computation. Specifically, following a case study proposed by Arm, the student will first determine how to connect specific traffic injectors and memory simulators to Gem5, and then study how QoS parameters affect the behaviour of a mixed CPU/GPU workload.

Required knowledge & skills: software engineering, computer architecture, familiarity with Gem5 a plus

Supervisor: Prof. Rodolfo Pellizzoni
Email: rpellizz@uwaterloo.ca
Location: E5 4108

Project: Application of machine/deep learning to assess outdoor insulators

Outdoor insulators are crucial components to the power system. As they age in the field, they suffer from different defects that need to be detected at an early stage to avoid any sudden failure. Different sensors have been implemented to detect these defects and among them is the RF Antenna. In this project, different defects will be simulated in the high voltage lab and an RF antenna will be used to measure the electromagnetic waves produced by these defects. The focus of the project will be in using state-of-the-art machine and/or deep learning algorithms to classify these defects.

Supervisor: Prof. Ayman El-Hag
Email: ahalhaj@uwaterloo.ca
Location: EIT 4016

Project: Robot learning to adapt to user preferences

Robots are being deployed in human-centric environments, working alongside and with humans.  However, different people have different preferences on how a robot should act -- how fast it should move, how close it can come, and how it should interact.  These preferences are user specific, and so the robot should learn them online, and adapt in real-time.  This project will build on our recent work to develop learning algorithms for robots to adapt to human preferences and improve robot performance.  


Supervisor: Prof. Stephen L. Smith
Email: stephen.smith@uwaterloo.ca
Location: E5 5112

Project: 

Self-driving vehicles are becoming reality. Thanks to technological advances in communication and in artificial intelligence, self-driving vehicles are becoming a much closer reality than we think. Indeed, recognizing the undisputed promise of self-driving to improve safety and road efficiency, several cities around the globe have started to conduct self-driving trials in order to ensure their readiness for deploying this revolutionary technology. Nonetheless, self-driving vehicles currently face several challenges: They are limited in their speed performance, crash prevention, sensing, cooperation, and coordination capabilities. Their decision making, and hence their actions, rely merely on their on-board sensory and internal control models. To avoid crashes and prevent traffic congestion, self-driving vehicles must anticipate the behavior of other vehicles in their environment (self-driving and human-operated vehicles), share their internal state with these vehicles, and cooperatively operate to choose joint safe and efficient control policies. A primitive example of self-driving cooperative behavior can be seen in platooning, where a small group of trucks assemble in a linear structure, using wireless connectivity to maintain a prescribed distance between each other. However, more research is needed to investigate and develop techniques that enable full autonomy performance in irregular vehicle arrangements such as convoys, and in unstructured driving situations. Moving from structured small-scale working environments to large-scale unstructured working environments presents a major challenge to the future of self- driving technology due to the lack of proper understanding and modeling of the interaction dynamics in such situations; as well as due to the lack of collective sensing and cooperating methodologies that can facilitate cooperation in complex driving situations. Such collaboration is potentially feasible, given the emerging communication technology (e.g., IEEE 802.11p standard) and V2X communications services under the future 5G wireless standard. In this context, the goal of this research program is the development of a framework for coordinating interaction and cooperation among a convoy of self-driving vehicles, operating in complex driving conditions in the presence of human-operated vehicles.

1. Behaviour Modeling of Human-Driven Vehicles

Develop a class of models that can mimic the behavior of human-operated vehicles under various driving conditions- environmental, infrastructure, and traffic, and for mitigating the impact of human-operated vehicles on self-driving performance, in general, and safety in particular.

2. Situation Assessment in Human/Machine Driven Environments

Develop strategies for situational assessment, both at the vehicle level and the convoy level.

3. Self-Driving Cooperation Strategies

Develop tactical self-driving strategies that can enable interaction and cooperation between self-driving vehicles to facilitate joint mobility control and coordination, in the presence of human-operated vehicles.

4. Cooperative Resource Sharing in Self-Driving Applications

Develop self-driving strategies that can enable cooperation between convoys (coalitions) of self-driving vehicles to facilitate optimal trip planning and infrastructure resources sharing.

Note: Various group/collective behavior use-case studies should be conducted to validate the outcome of each project, both theoretically and using simulations. Examples of use cases of interest include speed harmonization, emergency response, intersection negotiation, crash avoidance, platoons and Convoys.

Supervisor: Prof. Otman Basir
Email: otman.basir@uwaterloo.ca
Location: E5 5116

Project: Software implementation of  FRI protocol in zkSNARK systems

The blockchain privacy is implemented  by a zero knowledge succinct noninteractive argument of knowledge (zkSNARK) proof system.  FRI (fast Reed Solomon code Proximity)  protocol is a popular protocol employed in a number of efficient and practical zkSNARK systems. The project is to implement this protocol and test the performance when it is embedded into the existing zero knowledge proof systems for blockchain privacy.