Projects: NSERC Undergraduate Student Research Awards 2016

Updated Feb. 23, 2016

This page will see frequent updates as professors add new projects.

Here you will find descriptions of research projects being offered by professors in the Department of Electrical Engineering and Computer Science at York University for the Summer Session of 2016. Feel free to contact individual professors to ask questions about their projects, or if you wish to work on a project that is not advertised here.

Project Summaries

Information about individual projects are summarized in the Projects at a Glance table below. Use the links under the Project Title column to go to a detailed description for each project.

Projects at a Glance
Supervisor Subject Area Project Title
Dymond, Patrick and Jenkin, Michael Robotics and Algorithsms Robot leader election
Elder, James Vision Attentive Sensing for Better Two-Way Communication in Remote Learning Environments
  Vision Estimating Pedestrian and Vehicle Flows from Surveillance Video
  Vision Three-Dimensional Context from Linear Perspective for Video Surveillance Systems
Faloutsos, Petros Graphics Highly detailed, real-world building modelling for Steersuite and Unity3D
Farag, Hany Electrical Engineering Peer-to-Peer agent based applications in smart power grids
  Electrical Engineering A framework for smart meter privacy
Ghafar-Zadeh, Ebrahim Medical Devices Toward the development of Big Data for Early Disease Detection
Ghafar-Zadeh, Ebrahim Medical Devices Impedance spectroscopy technique for cellular studies
Ghafar-Zadeh, Ebrahim Medical Devices Miniaturised spirometer for lung diagnostics
Ghafar-Zadeh, Ebrahim Medical Devices Head mounted Eye Diagnostics System
Jiang, Hui Machine Learning Deep Learning to extract information from Web data
Jiang, Hui Speech and language processing Neural models for natural language processing
Jiang, Jack ZhenMing Software Engineering Leveraging binary instrumentation to support monitoring and debugging of large scale software system in the field
Lam, John Electrical Engineering A Robust and Fast Maximum Power Extraction Technique for Hybrid Renewable Energy Systems
MacKenzie, Scott Human Computer Interfaces Gaming Interactions for Mobile Devices
Eyes-free mobile text input with auto-correction
van Breugel, Franck Software Engineering Tracing Bugs in Java Code

 

Project Descriptions

Robot leader election

Dymond, Patrick and Jenkin, Michael

Robotics, Algorithms

How can a group of autonomous agents elect and maintain a leader to coordinate and control them? Utilizing the concept of an infection algorithm—a process much like the modelling of a disease in which agents infect each other with information—it is possible to develop a probabilistic approach to leader election. This project will explore certain properties of leader election with both a real and simulated group of robots.

Required background: Knowledge of Java or Python. Interest in operations on a collection of agents.

Attentive Sensing for Better Two-Way Communication in Remote Learning Environments

Elder, James

Vision

One of the challenges in remote learning is to allow students to communicate effectively with the lecturer. For example, when a student asks a question, communication will be more effective if the instructor has a zoomed view of the student's face, so that s/he can interpret expressions etc.

The goal of this project is to apply attentive sensing technology (www.elderlab.yorku.ca) to this problem. This technology is able to monitor a large environment such as a classroom and direct a high-resolution 'attentive' sensor to events of interest.

In particular, working with a senior graduate student or postdoctoral fellow, the successful applicant will:

1. Study the problem of detecting hand-raises in the preattentive sensor stream
2. Implement algorithms for detecting hand-raises based upon this investigation
3. Evaluate these algorithms in a real-classroom setting, using proprietary attentive sensing technology

Required skills:
1. Good programming skills
2. Good math skills
3. Knowledge of C and MATLAB programming languages

Estimating Pedestrian and Vehicle Flows from Surveillance Video

Elder, James

Vision

Facilities planning at both city (e.g., Toronto) and institutional (e.g., York University) scales requires accurate data on the flow of people and vehicles throughout the environment. Acquiring these data can require the costly deployment of specialized equipment and people, and this effort must be renewed at regular intervals for the data to be relevant.

The density of permanent urban video surveillance camera installations has increased dramatically over the last several years. These systems provide a potential source of low-cost data from which flows can be estimated for planning purposes.

This project will explore the use of computer vision algorithms for the automatic estimation of pedestrian and vehicle flows from video surveillance data. The ultimate goal is to provide planners with accurate, continuous, up-to-date information on facility usage to help guide planning.

The student will work closely with graduate students and postdoctoral fellows at York University, as well as researchers at other institutions involved in the project. The student will develop skills in using MATLAB, a very useful mathematical programming environment, and develop an understanding of basic topics in image processing and vision.

For more information on the laboratory: www.elderlab.yorku.ca

Requirements: Good facility with applied mathematics.

Three-Dimensional Context from Linear Perspective for Video Surveillance Systems

Elder, James

Vision

To provide visual surveillance over a large environment, many surveillance cameras are typically deployed at widely dispersed locations. Making sense of activities within the monitored space requires security personnel to map multiple events observed on two-dimensional security monitors to the three-dimensional scene under surveillance. The cognitive load entailed rises quickly as the number of cameras, complexity of the scene and amount of traffic increases.

This problem can be addressed by automatically pre-mapping two-dimensional surveillance video data into three-dimensional coordinates. Rendering the data directly in three dimensions can potentially lighten the cognitive load of security personnel and make human activities more immediately interpretable.

Mapping surveillance video to three-dimensional coordinates requires construction of a virtual model of the three-dimensional scene. Such a model could be obtained by survey (e.g., using LIDAR), but the cost and time required for each site would severely limit deployment. Wide-baseline uncalibrated stereo methods are developing and have potential utility, but require careful sensor placement, and the difficulty of the correspondence problem limits reliability.

This project will investigate a monocular method for inferring three-dimensional context for video surveillance. The method will make use of the fact that most urban scenes obey the so-called .Manhattan-world. assumption, viz., a large proportion of the major surfaces in the scene are rectangles aligned with a three-dimensional Cartesian grid (Coughlan & Yuille, 2003). This regularity provides strong linear perspective cues that can potentially be used to automatically infer three-dimensional models of the major surfaces in the scene (up to a scale factor). These models can then be used to construct a virtual environment in which to render models of human activities in the scene.

Although the Manhattan world assumption provides powerful constraints, there are many technical challenges that must be overcome before a working prototype can be demonstrated. The prototype requires six stages of processing: 1) The major lines in each video frame are detected. 2) These lines are grouped into quadrilaterals projecting from the major surface rectangles of the scene. 3) The geometry of linear perspective and the Manhattan world constraint are exploited to estimate the three-dimensional attitude of the rectangles from which these quadrilaterals project. 4) Trihedral junctions are used to infer three-dimensional surface contact and ordinal depth relationships between these surfaces. 5) The estimated surfaces are rendered in three-dimensions. 6) Human activities are tracked and rendered within this virtual three-dimensional world.

The student will work closely with graduate students and postdoctoral fellows at York University, as well as researchers at other institutions involved in the project. The student will develop skills in using MATLAB, a very useful mathematical programming environment, and develop an understanding of basic topics in image processing and vision.

For more information on the laboratory: www.elderlab.yorku.ca

Requirement: Good facility with applied mathematics.

Highly detailed, real-world building modelling for Steersuite and Unity3D

Faloutsos, Petros

Graphics

Crowd simulation for urban simulation and architectural design applications is increasingly important. For example, optimizing floor plans or exit size and placement to maximize crowd flow during emergency evacuations is crucial.

This project involves taking high fidelity descriptions of certain York buildings in Revvit format and importing them into our own research software, Steersuite, and the commercial game engine Unity3D in a way that is suitable for running architectural optimizations. The import process will have to support the creating of navigation meshes using an existing or a student developed approach.

The successful applicant will work with M.Sc. and Ph.D. candidates and our collaborators. He or she will gain experience with large scale crowd simulation and visualization research software, and with large scale mixed integer optimization.

Required prerequisite background:
1. Good programming skills (C, C++)
2. Ability to work with large research software
3. Ability to work as part of a team.

Peer-to-Peer agent based applications in smart power grids

Farag, Hany

Electrical Engineering

Multi-agent systems have been mentioned recently as a potential technology for several operational control objectives in smart power grids. The multi-agents technology allows the rapid and detailed creation of a system model and creates a robust framework for distributed control. The distributed control structure consists of components called control agents. These control agents try, through communication and negotiation with other control agents, to: 1) determine the current state of the system and/or subsystems and 2) make decisions (set their local actuators or communicate with other agents) in such a way that their own objectives are met as closely as possible and any constraints are satisfied. <\p>

This project aims to implement formulated distributed constraint optimization (DCOP) in a multi-agent platform for two objectives in smart grids: 1) voltage regulation and 2) electricity market,. There are several Java-based open source platforms for peer-to-peer agent based applications e.g. (JADE, Jadex, Jason, etc). With the help of the supervisor, the student will choose the platform that suits the required applications. Also, the student will implement the formulated DCOP in the suitable multi-agent platform to test its effectiveness and robustness. Toward that end, an interface between the multi-agent platform in Java environment and the power grid simulator in MATLAB environment is required to transfer the measurements from MATLAB to the multi-agent platform and then transfer the actions from the multi-agent platform to MATLAB in real-time.

Required prerequisite background: The student should be a strong Java and MATLAB programmer. Should have prior knowledge about multi-agent platforms such as JADE. The work involves reading and understanding the formulated DCOP in smart grids and working with the supervisor and master/PhD student(s) to implement the developed algorithms and to measure the performance of the developed algorithm(s) in the multi-agent platform.

For more information, please send email to hefarag@cse.yorku.ca.

A framework for smart meter privacy

Farag, Hany

Electrical Engineering

One of the most recognized components of smart grid is smart meters. A smart meter is usually an electronic device that records the consumption of electric energy in intervals. It also communicates that information to the utility for both monitoring and billing. Unlike conventional electricity meters, smart meters provide two-ways communication between the consumer and the supplier. The information that is collected to create a more efficient power grid may be used for other purposes. Hence the issue of privacy might be raised, especially of the residential consumers whose smart meter data is being collected.<\p>

This project aims to develop a new framework for smart meters privacy. The framework will provide a means for measuring the tradeoff between sharing specific information with the utility and hiding other information to protect the consumer privacy. The student(s) will evaluate the advantages and disadvantages of the available privacy techniques and he/she will implement the proposed framework in MATLAB environment to validate its effectiveness and robustness compared with the available privacy techniques.

Required prerequisite background: Good programming skills, MATLAB, strong at math, preferred to be specialized in communication networks

Toward the development of Big Data for Early Disease Detection

Ghafar-Zadeh, Ebrahim

Medical Devices

In this project, the students will be trained to design and implement various wearable sensors for medical recording, and to perform the related signal processing for Big Data applications. The main role of students will be to perform the following tasks.

(1) Biological signal recording and signal processing using the standard measurement platform and MATLAB.

(2) Design and implementation of wearable sensors (Temperature, Heart Beat Rate).

Required prerequisite background: No specific course; Good analytical and communication skills.

Impedance spectroscopy technique for cellular studies

Ghafar-Zadeh, Ebrahim

Medical Devices

Label-free impedance spectroscopy incorporated with plannar electrodes has greatly attracted the attentions for biological studies including cell surface interactions. In this summer project, the student will be involved in developing a highly sensitive system to detect the minute impedance changes for cellular analysis using micro fabricated electrodes. The main role of student can be one or a number of following tasks.

(1) Micro-fabrication of electrodes with well-defined dimensions.

(2) Design and Implementation of embedded systems for impedance measurement.

(3) Biological cell culture and analysis.

Required prerequisite background: EECS3215 4.00 (task (2) above); Good analytical and communication skills.

Miniaturised spirometer for lung diagnostics

Ghafar-Zadeh, Ebrahim

Medical Devices

A micro-fabricated sensor is used to measure the velocity of breathing air-flow. This sensor is connected to a computer through an embedded system. The main role of student will be one or a number of following tasks.

(1) Microelectronic design and implementation: Design and implementation of embedded system for recording from sensor and transferring into computer. Microelectronic design and implementation: Design and implementation of embedded system for recording from sensor and transferring into computer.

(2) Programing: Writing the program of micro-controller and user interface program to control the device and manage the data in order to recode the breathing signals from a number of people.

(3) Modelling: Calculation of the lung capacity using MATLAB (or other software). Micro-fabrication: Design and implementation of microfluidic devices used as an air-waveguide.

Required prerequisite background: EECS3215 4.00 (tasks (1, 2) above); Good analytical and communication skills.

Headmounted AMD diagnostics system

Ghafar-Zadeh, Ebrahim

Medical Devices

The goal of this project is to develop a novel head-mounted point-of-care diagnostic system for detection and continuous monitoring of Age-related Macular Degeneration (AMD). This wearable embedded system enables accurate monitoring of AMD by taking advantage of multiple standard graphical interface techniques. The main role of the student can be one or a number of the following tasks.

(1) Embedded System: Design and implementation of microcontroller or FPGA based system to control a near field display (like Oculus).

(2) Programming: Writing the required program for controlling the microcontroller, AMD algorithms, and user-friendly interfaces.

(3) Packaging: ACAD design and Implementation of package including PCB, lenses and assembled embedded system.

Required prerequisite background: EECS3215 4.00 (task (1) above); Good analytical and communication skills.

Deep Learning to extract information from Web data

Jiang, Hui

Machine Learning

In today’s big-data era, it is very useful to process plenty of unstructured text data available in the Internet to automatically extract information to build structured knowledge base. A complete system requires many interesting techniques: A) Entity Discovery: identify named entities and their mentions in plain text; B) Slot Filling: recognize relation between different detected entities; C) Entity Linking: link a detected entity to a correct entry in an existing knowledge base; D) New Entity Creation: create a proper entry for those entities not found in the existing knowledge base. In the past, traditional natural language processing methods (included many rule-based components) are used for these tasks. These methods normally achieve about 50% of human level. In this project, we explore various deep leaning methods, including various neural network structure, to tackle these problems.

Required prerequisite background: Strong math background; Good programming skills (in C and Python).

Neural models for natural language processing

Jiang, Hui

Speech and language processing

Deep neural networks (DNNs) have achieved huge successes in many pattern classification tasks, including speech recognition and computer vision. In this project, the student will study DNN-based models for an interesting natural language processing (NLP) task, selecting from word embedding, language modelling, paraphrase or others. More specifically, the student will implement text pre-processing, neural model training and performance evaluation for the selected NLP task based on some standard corpora.

Required prerequisite background: strong at math; matlab programming.

Leveraging binary instrumentation to support monitoring and debugging of large scale software system in the field

Jiang, Jack ZhenMing

Software engineering

Many large scale software systems ranging from e-commerce websites (e.g., eBay) to telecommunication infrastructures (e.g., AT&T) are required to be available and ready to service by millions of users all the time. It is essential to monitor the behavior of these systems in the field and troubleshoot problems whenever they arise.

Binary instrumentation is a program analysis technique, which can add additional monitoring points without modifying or restarting the system. This project aims to explore the feasibility of leveraging binary instrumentation to automatically monitor and debug the behavior of these field systems. The student(s) will first evaluate the pros and cons on various binary instrumentation libraries. Then he/she will implement a monitoring/debugging framework using the selected instrumentation library.

Required prerequisite background: Good programming skills (especially in Java);
Good analytical and communication skills.

A Robust and Fast Maximum Power Extraction Technique for Hybrid Renewable Energy Systems

Lam, John

Electrical Engineering

The global greenhouse gas emissions from Information Technology (IT) data centres is projected to be more than double from 2007 levels by 2020. In order to reduce global warming, hybrid renewable energy systems—such as wind and solar power—can be an attractive alternative energy sources to supply clean and sustainable energy for powering the IT data centers. Due to the unpredictable nature of solar radiation and wind energy, power electronic converters and advanced logic controllers are essential in extracting the maximal amount of energy from these renewable resources. The power converter and controller allow the system to extract maximum power from its volatile energy resource and to convert the captured energy into usable electric power.

This project is to investigate and design a fast and robust maximum power extraction (MPE) technique for the power electronic converter that will be used for interfacing with hybrid renewable energy systems. The student will use Powersim (PSIM), an advanced power electronic simulation software, to design the MPE technique and test it with several power electronic converters. The student will then combine the developed MPE technique and power converter with the solar panel and wind turbine mathematical models available in PSIM, and verify the overall system performance.

Required prerequisite background: Circuit theory, electric machines, control logic.

Gaming Interactions for Mobile Devices

MacKenzie, Scott

Human computer interaction

Conduct experimental research on an Android device to test various input modalities for gaming on a mobile device. An example would be using the tilt of the device to control movements within a game.

Required prerequisite background: CSE4441, CSE4443, or equivalent

Eyes-free mobile text input with auto-correction

MacKenzie, Scott

Human computer interaction

Conduct experimental research on an Android device to test a gesture-based text input method. The method supports eyes-free input by auto-correcting the gestures using a simple language model.

Required prerequisite background: CSE4441, CSE4443, or equivalent

Tracing Bugs in Java Code

van Breugel, Franck

Software Engineering

Java PathFinder (JPF for short) is a tool to find bugs in Java code. It is particularly useful to detect defects in concurrent code. Given that we are in the middle of a "concurrency revolution," tools such as JPF are invaluable for the programmers of tomorrow.

JPF is able to find notorious concurrency bugs such as deadlocks. Although finding bugs is one of the major strengths of JPF, providing feedback to the programmer is one of its main weaknesses. For example, for a deadlock JPF provides the programmer at which line each thread is stuck. Although this is of some use, what is much more valuable is to report how each thread got to that point.

A few extensions to JPF have recently been developed to provide some functionality to trace the executions of the threads. In this project, we will study these extensions in detail, and develop our own extension.

Background. Students who are comfortable coding in Java, familiar with concurrency (as covered, for example, in EECS 3221) and interested in this project are encouraged to contact Franck (franck@cse.yorku.ca).