projects
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
projects [2013/09/03 15:11] – pd | projects [2015/08/26 21:57] – jarek | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Proposed Projects | + | ====== Proposed Projects |
+ | \\ | ||
+ | ======Clustering High-Dimensional Data Sets====== | ||
+ | |||
+ | **Supervisor: | ||
+ | |||
+ | Clustering is a basic technique for analyzing data sets. Clustering is the process of grouping data points in a way that points within a group are | ||
+ | more similar to each other than points in other clusters. Many clustering algorithms have been developed over the years. However no single algorithm works well for all data sets. Further, most clustering algorithms have running times of the order of n^2 or n^3, so that they are not feasible for data sets with hundreds of thousands of points. In this project we will design good clustering algorithms for large real data sets. In particular we are interested in | ||
+ | Biological data sets. | ||
+ | |||
+ | Our data sets will include those obtained from Flow Cytometry data. Flow Cytometry is a common technique in many areas of Biology, particularly Immunology. Typical usage involves testing a blood sample for 25 attributes on a per-cell basis, and thus typical data sets are arrays of 500,000 points in a 25 dimensional space. The aim is to identify clusters that correspond to a biologist' | ||
+ | |||
+ | No Biology knowledge is required. The student should be a strong programmer. Knowledge of C/C++ is desirable but not essential. The work involves reading and understanding existing algorithms and working with the supervisor to design and implement improved algorithms and to measure the performance of the proposed algorithm(s). | ||
+ | |||
+ | For more information, | ||
+ | |||
+ | Required Background: General CSE408x prerequisites | ||
- | Current proposed Projects, Fall 2013 | ||
\\ | \\ | ||
+ | |||
+ | |||
+ | =====Metaheuristic-based Optimization techniques===== | ||
+ | |||
+ | **Supervisor: | ||
+ | |||
+ | Optimization is a crucial step in many computational problems. For computational problems that seem (or are known to be) intractable, | ||
+ | |||
+ | The student should be a strong programmer. A good grasp of algorithms and knowledge of C/C++ are desirable but not essential. The work involves reading and understanding existing algorithms and working with the supervisor to design and implement improved algorithms and to measure the performance of the proposed algorithm(s). | ||
+ | |||
+ | For more information, | ||
+ | |||
+ | Required Background: General CSE408x prerequisites | ||
+ | |||
+ | \\ | ||
+ | |||
+ | =====Data visualization in Skydive===== | ||
+ | |||
+ | **Supervisor: | ||
+ | |||
+ | Skydive is a prototype system designed for database visualization using a concept of the so called | ||
+ | data pyramid. The system is composed of three modules (DB - Database Module, D2I - | ||
+ | Data-to-Image module, and VC - Visualizaton Client). Each is designed to use a different type | ||
+ | of computer memory. The DB module uses disk to store and manage the raw data, and materialized | ||
+ | data pyramids. The D2I module works with a small subset of the aggregated dataset, | ||
+ | and stores data in main memory (RAM). The VC module uses the graphic card’s capabilities to | ||
+ | perform more advanced operations – such as zooming, scaling, panning, and rotation – over the | ||
+ | graphical representation of the data. | ||
+ | Currently the system support three presentation models implemented within the Visualization | ||
+ | Component, namely: | ||
+ | |||
+ | • a 2D heat-map; | ||
+ | |||
+ | • a 2.5 D heat-map by 3D barchart; and | ||
+ | |||
+ | • a 2.5 D terrain (by mesh and UV-mapping). | ||
+ | |||
+ | The goal of the project is to implement two additional ways of data visualization as well as | ||
+ | extend some of existing ones, that is: | ||
+ | |||
+ | 1. Implement and test functions for data pyramid-based visualization of time series. | ||
+ | |||
+ | 2. Implement functions for visualization based on cross-product of data pyramids. | ||
+ | |||
+ | 3. Add support for specular and normal maps for 2.5 D terrain presentation model. | ||
+ | |||
+ | Required Background: CSE 3421, Java programming course, (C programming course a plus) | ||
+ | |||
+ | |||
+ | \\ | ||
+ | =====Genome-wide identification of plant micro RNAs===== | ||
+ | |||
+ | |||
+ | **Supervisor: | ||
+ | |||
+ | |||
+ | The Hudak Lab in the Biology Department has an opening for a fourth-year Honours student to assist with a bioinformatics project. We study the pokeweed plant, Phytolacca americana, which displays broad-spectrum virus resistance. To evaluate pokeweed gene expression, we recently sequenced the plant’s mRNA and small RNA transcriptomes under jasmonic acid (JA) treatment. JA is a plant hormone that mediates defence against pathogens and insect herbivores. We are interested in learning how pokeweed gene expression is regulated by miRNAs during biotic stress. | ||
+ | |||
+ | Working with the support of a PhD student, your project will involve: | ||
+ | |||
+ | 1) Prediction of micro RNA (miRNA) targets on the basis of complementary sequence matches | ||
+ | |||
+ | 2) Correlation of miRNA and mRNA expression changes to identify genes that are regulated by miRNAs | ||
+ | |||
+ | 3) Conducting pathway analysis to determine which biological processes are controlled by miRNAs | ||
+ | |||
+ | 4) Construction of a miRNA/ | ||
+ | This work will contribute to a scientific manuscript on miRNA-mediated gene regulation in pokeweed during response to JA. | ||
+ | |||
+ | Requirements: | ||
+ | |||
+ | 1) Pre-requisites as per EECS Calendar | ||
+ | |||
+ | 2) Facility with script-writing/ | ||
+ | |||
+ | 3) Preference for students with knowledge of statistics and familiarity with R programming | ||
+ | |||
+ | 4) Able to begin in September 2015 | ||
+ | |||
+ | Learning outcomes: | ||
+ | |||
+ | 1) Manipulate and analyze quantitative biological data | ||
+ | |||
+ | 2) Develop and test hypotheses by modifying existing software and writing new script | ||
+ | |||
+ | 3) Manage a CentOS computer server to store and facilitate ongoing research | ||
+ | |||
+ | No knowledge of biology is required. | ||
+ | |||
+ | For more information, | ||
+ | Hudak Lab website- http:// | ||
+ | |||
+ | RNA sequencing- http:// | ||
+ | |||
+ | miRNAs- http:// | ||
+ | |||
+ | \\ | ||
+ | =====Dynamic Interface Detection and Control Project===== | ||
+ | |||
+ | **Supervisor: | ||
+ | |||
+ | |||
+ | Contrary to most industries, fine chemical manufacturing is dominated by batch production methods. Increasing economic, environmental and safety pressures are motivating a turn towards continuous synthesis. Rather than making products in one big flask, continuous synthesis involves performing chemical reactions by flowing reagents through a tube. Working in this way provides more control over the reaction parameters leading to increases in product quality, and process efficiency and safety. The flow chemistry industry for fine chemical production is a relatively new but burgeoning field with a projected market capacity of billions of dollars by 2018. | ||
+ | |||
+ | Extraction of the reaction mixture for purification and/or further processing is an important step in chemical manufacturing. This is a relatively straightforward operation in batch production, but offers several challenges for flowing processes. In order to facilitate continuous liquid extraction we require a sophisticated control system. This project involves designing, constructing and evaluating a pertinent practical problem in the field. | ||
+ | |||
+ | A key step in the process takes place in a clear tube that is mounted vertically. The tube contains two fluids with a boundary between them. During the process material flows into and out of the tube from the top and the bottom. Chemical reactions take place within this tube and It is essential that the position of the boundary be monitored as its position in the tube is used to control the flow of materials into the tube. | ||
+ | |||
+ | One way of solving this problem is to float a marker at the boundary between the two liquids and to monitor this boundary using a video camera. Although this approach solves the problem, it requires the introduction of a specific float within the tube. Can we build a system that monitors the boundary without resorting to the use of an artificial float? | ||
+ | |||
+ | Specific goals of the project include: | ||
+ | |||
+ | - Develop a computer vision system that can detect and monitor the interface between two miscible fluids of different density. | ||
+ | |||
+ | - Evaluate the performance of the system over a range of different (and typical) fluids | ||
+ | |||
+ | - Explore the use of different illuminant/ | ||
+ | |||
+ | The successful candidate(s) will have the experience of working with a diverse group of scientists and engineers toward the design and implementation of an automated liquid extraction device with applications across many industries. Upon successful prototyping, | ||
+ | |||
+ | For further information please contact, | ||
+ | |||
+ | Michael Jenkin (jenkin@cse.yorku.ca) or Michal Organ (organ@yorku.ca) | ||
+ | |||
+ | \\ | ||
+ | ===== DDoS Attack using Google-bots ===== | ||
+ | |||
+ | **Supervisor: | ||
+ | |||
+ | **Recommended Background**: | ||
+ | |||
+ | Not long ago, botnets - networks of compromised computers - were seen as | ||
+ | the most effective (if not the only) means of conducting Distributed Denial | ||
+ | of Service (DDoS) attacks. However, with the growing popularity and prevalence | ||
+ | of application-layer over other types of DDoS attacks, the DDoS execution | ||
+ | landscape is becoming increasingly more diverse. An especially interesting | ||
+ | new trend is the execution of application-layer DDoS attacks by means of | ||
+ | skillfully manipulated Web-crawlers, | ||
+ | The goal of this project is to design, implement and test a real-world | ||
+ | framework consisting of the following: a) the attacker' | ||
+ | domain specially designed to attract Google-bots and then manipulate them | ||
+ | into generating attack traffic towards the target/ | ||
+ | victim' | ||
+ | component, the project will also look into the statistical/ | ||
+ | estimation of the framework' | ||
+ | to an actual (real-world) target/ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | \\ | ||
+ | |||
====== Attentive Sensing for Better Two-Way Communication in Remote Learning Environments ====== | ====== Attentive Sensing for Better Two-Way Communication in Remote Learning Environments ====== | ||
Line 41: | Line 209: | ||
- | =====Hunting for Bugs in Logging: applying | + | \\ |
+ | ====== JPF in a Jar ====== | ||
**Supervisor: | **Supervisor: | ||
Description: | Description: | ||
- | Java PathFinder | + | JPF, which is short for Java PathFinder, is an open source |
- | The Java library Apache log4j allows developers | + | tool that has been developed at NASA's Ames Research Center. |
- | statements are output. | + | The aim of JPF is to find bugs in Java code. |
- | to detect bugs in log4j by means of JPF with very limited succes. | + | using testing |
+ | The facts that JPF is downloaded hundreds of times per month | ||
+ | and that some of the key papers on JPF have been cited more | ||
+ | than a thousand times reflect the popularity | ||
+ | fact it is the most popular model checker for Java. | ||
- | Recently, | + | A study done by Cambridge University |
- | an extension | + | global cost of debugging code has risen to $312 billion annually. |
- | is to apply this extension to log4j. | + | Furthermore, |
+ | programming time with finding and fixing bugs. As a consequence, | ||
+ | advocating the use tools, such as JPF, may have significant impact. | ||
- | [1] David A. Dickey, B. Sinem Dorter, J. Michael German, | + | Installing JPF is far from trivial. The tool itself has been |
- | Benjamin D. Madore, Mark W. Piper, Gabriel L. Zenarosa. | + | implemented in Java. |
- | Evaluating | + | feasible to encapsulate JPF in a Java archive (jar) file. |
+ | This would make it significantly simplifying the installation | ||
+ | process of JPF and, therefore, make the tool more easily | ||
+ | accessible to its potential users. | ||
+ | |||
+ | The aim of this project is to attempt to put JPF in a jar. | ||
+ | Since JPF relies on a number of configuration files, so-called | ||
+ | Java properties files, incorporating these properly into the | ||
+ | jar is one of the challenges. | ||
+ | another challenge. | ||
+ | our modifications to JPF should ideally be limited to only a | ||
+ | few classes, yet another challenge. | ||
+ | |||
+ | In this project you may collaborate with graduate students | ||
+ | of the DisCoVeri group (discoveri.eecs.yorku.ca) and | ||
+ | computer scientists of NASA. | ||
+ | free to send email to franck@cse.yorku.ca. | ||
**Required Background: | **Required Background: | ||
\\ | \\ | ||
- | \\ | + | ------------ |
- | ------------------ | + | |
- | \\ | + | |
- | Additional current possible | + | |
- | \\ | + | |
- | ------------------ | + | |
- | \\ | + | |
\\ | \\ | ||
- | =====Previous Projects from Summer 2013===== | ||
- | ======Tracking and Activity Recognition Through Consensus in Distributed Camera Networks====== | ||
- | **Supervisor**: | ||
- | **Required Background: ** Computer Vision or Signal and Systems Course preferred; Matlab; Interest in Signal/ | ||
- | **Short Description: | ||
+ | ====== Mining Software Repositories Data====== | ||
+ | **Supervisor: | ||
- | [1] A. Mohammadi and A. Asif, Distributed Particle Filter Implementation with Intermittent/ | + | **Required Background:** Good programming skills in Java; Good analytical and communication skills; Knowledge in AI and statistics; Interested in large scale software analysis |
- | [2] A. Mohammadi and A. Asif, Decentralized Sensor Selection based on the Distributed Posterior Cramer-Rao Lower Bound, in proceedings of IEEE International Conference on Information Fusion, Singapore, 2012. pp. 1668-1675. | + | **Short Description: |
- | ====== 3D Drawing System with Leap Motion finger tracker ====== | + | \\ |
+ | ------------------ | ||
+ | \\ | ||
- | **Supervisor**: | ||
- | **Required Background**: | ||
- | The Leap Motion, leapmotion.com, | + | ======Model-based Design and Development of Embedded Systems |
- | ====== 3D Drawing System with 3Gear gesture tracker ====== | + | **Supervisor: |
- | **Supervisor**: Wolfgang Stuerzlinger | + | **Required Background:** At least a B+ in Embedded Systems (CSE3215), MATLAB, C programming skills, solid experience in using a microcontroller |
+ | such as Arduino. | ||
- | **Required Background**: 3D computer graphics, C/C++ coding | + | **Project Description: |
- | The 3Gear system, threegear.com, lets users control a computer with their hands and fingers. This project | + | Model-based design with code generation tools can be used for simulation, rapid prototyping, and hardware-in-the-loop testing of embedded systems. This project |
+ | \\ | ||
+ | ------------------ | ||
+ | \\ | ||
+ | ======C2000 Concerto Microcontrollers====== | ||
- | ====== Tilt Target Selection on Touchscreen Phones ====== | + | **Supervisor: |
- | **Supervisor**: Scott MacKenzie | + | **Required Background:** At least a B+ in Embedded Systems (CSE3215), |
+ | strong C programming skills, solid knowledge of microcontrollers | ||
- | **Required Background**: General 4080 prerequisites, | + | **Description: |
+ | two cores on a single-chip with on-chip low latency interprocessor communication between the two cores: a C28x 32-bit control core for | ||
+ | real-time control with faster/more loops and small sampling window; | ||
+ | and an ARM 32-bit Cortex-M3 host core for communications and general purpose. The selected student will evaluate | ||
+ | C2000 Concerto family of microcontrollers through testing and investigating open source software for real-time control applications | ||
+ | that runs on C2000 Concerto Microcontrollers. | ||
- | Touchscreen mobile devices commonly use a built-in accelerometer to sense movement or tilting actions of the device. | + | \\ |
+ | ------------------ | ||
+ | \\ | ||
- | **Readings**: | + | ======Real-Time Bidding Platform====== |
+ | **Supervisor: | ||
- | ====== Continuation of a Path Diagram to Syntax Application ====== | + | **Required Background: |
+ | (CSE3221), strong Ubuntu/ | ||
- | **Supervisor**: Jeff Edmonds | + | **Description: |
- | **Required Background**: | + | \\ |
- | + | ------------------ | |
- | **Recommended Background**: | + | \\ |
- | + | ||
- | Structural equation modeling (SEM) is a statistical technique that is becoming increasingly popular in the educational and behavioral sciences. SEM allows researchers to test the validity of hypothesized models involving complex relationships among multiple variables. Collected data is used to estimate the parameters of the equations and assessing the fit of the model. | + | |
- | + | ||
- | The software required is an application that allows researchers to define their hypothesized models visually and will output the correct syntax for the analytical software of their choosing. | + | |
- | + | ||
- | To date a promising functional application has been developed in JAVA by a Computer Science student as a 4080 project. The existing software allows the user to draw a path diagram and outputs code for the R package sem. There are a number of improvements to be made (refinements and additions to graphical user interface) and then the application needs to be extended to output syntax appropriate for additional software applications (openMX, MPlus and EQS). Though this project may not begin at “the first stages” of the software lifecycle, this scenario is likely common in the software development market. In addition, the student will be working with a primary “client” who is far less technically advanced, which is also reflective of real-world situations. | + | |
- | + | ||
- | More details {{: | + | |
- | + | ||
- | + | ||
- | + | ||
- | ====== Enabling SaaS access to an experimental AI planner ====== | + | |
- | + | ||
- | **Supervisor**: | + | |
- | **Required Background**: | + | ======Circuit |
- | 3402 -- Functional & Logic Programming, | + | |
- | 3101 -- Design | + | |
- | 4302 -- Compilers and Interpreters. | + | |
- | **Description**: This project involves enriching and integrating a set of fairly complex scripts, which are components of an Artificial Intelligence (AI) planner, and exporting them to the public in a Software-as-a-Service (SaaS) fashion. | + | **Supervisor:**Sebastian Magierowski |
- | The components | + | **Description: |
- | Learning objectives: | + | **Required Background** A background |
- | | + | |
- | * Study a state-of-the-art AI planner and understand its workings. | + | |
- | * Exercise scripting skills. | + | |
- | + | \\ | |
- | ====== Predicting Angular Error in Rigid Registration ====== | + | ------------------ |
- | + | \\ | |
- | **Supervisor**: | + | More project |
- | + | \\ | |
- | **Description**: | + | ------------------ |
- | navigation. Several (seemingly) different approaches for predicting | + | \\ |
- | distance errors in registration are known, but for some surgical | + | \\ |
- | procedures, the angular error in registration is more important. | + | |
- | This project | + | |
- | error in registration; | + | |
- | simulated and actual registration data for testing purposes. | + | |
- | + | ||
- | ====== Calibration of a Tracked Pointer ====== | + | |
- | + | ||
- | **Supervisor**: | + | |
- | + | ||
- | **Description**: | + | |
- | navigation systems. A typical pointer has a tracked target on one | + | |
- | end and a sharp or ball tip on the other end. Finding the location | + | |
- | of the tip relative to the target is a calibration problem. One | + | |
- | solution to the calibration problem involves pivoting the pointer | + | |
- | about the tip while tracking the target; if the tip is kept | + | |
- | stationary, then the target moves on the surface of a sphere. | + | |
- | Fitting the tracking data to the surface of a sphere yields the | + | |
- | location of the tip as the sphere center. Unfortunately, | + | |
- | calibrated tip position obtained using such a spherical calibration | + | |
- | has high variance. This project will investigate how much variance | + | |
- | there is in the calibrated tip position, and methods for reducing | + | |
- | the variance of the calibrated tip position. | + | |
- | + | ||
- | + | ||
- | ====== A privacy safeguard framework for sharing photos on Facebook ====== | + | |
- | + | ||
- | **Supervisor**: | + | |
- | + | ||
- | + | ||
- | **Description**: | + | |
- | One of the major privacy concerns in Online Social Networks is photo sharing. | + | |
- | + | ||
- | **Required prerequisite background**: | + | |
- | + | ||
- | **Desired prerequisite**: | + |
projects.txt · Last modified: 2016/01/13 20:05 by stevenc