User Tools

Site Tools


projects

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
projects [2013/01/02 21:58] bilprojects [2013/09/08 19:14] pd
Line 1: Line 1:
-====== Currently offered ProjectsFall 2012 (updated September 5, 2012)  ====== +====== Proposed Projects for Fall 2013 ======
-(Listed in order received.)+
  
 +\\
 ====== Attentive Sensing for Better Two-Way Communication in Remote Learning Environments ====== ====== Attentive Sensing for Better Two-Way Communication in Remote Learning Environments ======
  
Line 18: Line 18:
   - Implement algorithms for detecting hand-raises based upon this investigation   - Implement algorithms for detecting hand-raises based upon this investigation
   - Evaluate these algorithms in a real-classroom setting, using proprietary attentive sensing technology   - Evaluate these algorithms in a real-classroom setting, using proprietary attentive sensing technology
-  
-====== Continuation of a Path Diagram to Syntax Application ====== 
  
-**Supervisor**: Jeff Edmonds 
  
-**Required Background**: General CSE408x prerequisites+====== Attentive Sensing for Sport Video Recording Markets ======
  
-**Recommended Background**: Java software development+**Supervisor**: James Elder
  
-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. +**Required Background**: Good programming skills; Good math skills; Knowledge of and MATLAB programming languages
  
-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.+  
 +The goal of this project is to modify York University’s patented attentive sensor technology to the sport video recording market.  Specific application domains under investigation include skiing, indoor BMX parks, and horse tracks. 
 +  
 +The general problem is to use attentive sensing technology (www.elderlab.yorku.ca) to visually detect and track multiple moving agents (e.g., skiers, riders, horses) and to select specific agents for active high-resolution smooth pursuit. 
 +  
 +The student will work with senior graduate students, postdoctoral fellows and research scientists to help modify the attentive sensing technology to operate in these domains  Specific tasks include: 
 +  
 +1.     Ground-truth available datasets 
 +2.     Evaluate current attentive algorithms on these datasets 
 +3.     Modify these algorithms to improve performance on these datasets 
 +  
 +------------ 
 + 
  
-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.+\\  
 +====== Hunting for Bugs in Logging: applying JPF to log4j ======
  
-More details {{:continuation_of_a_path_diagram_to_syntax_application.pdf|here}}.+**Supervisor:** Franck van Breugel
  
-====== YUsend Thermal Vacuum (TVACTest Manager ======+Description: 
 +Java PathFinder (JPFis a tool that can detect bugs in Java code. 
 +The Java library Apache log4j allows developers to control which log 
 +statements are output.  In the past, Dickey et al. [1] have attempted 
 +to detect bugs in log4j by means of JPF with very limited succes.
  
-**Supervisor**: Rob Allison (co-supervised with Hugh ChesserSpace Engineering)+Recentlyin collaboration with Shafiei (NASAwe have developed 
 +an extension of JPF called jpf-nhandler.  The aim of this project 
 +is to apply this extension to log4j.
  
-**Required Background**: General CSE408x prerequisitesfamiliarity with C++ and Windows software tools+[1] David A. DickeyB. Sinem Dorter, J. Michael German, Benjamin D. Madore, Mark W. Piper, Gabriel L. Zenarosa. "Evaluating Java PathFinder on Log4J."  2011.
  
-**Description** The YUsend (York University Space Engineering Nanosatellite Demonstration) Lab has procured a Windows XP-based industrial computer and temperature acquisition card (as well as other hardware) for performing TVAC testing of nanosatellites in the CSIL Lab (PSE 003). A “TVAC Test Manager” application written using LabView's G programming language will oversee the acquisition of temperatures (thermal test outputs) and control of IR lamps (thermal test inputs) during the rather long periods (4 or more days, 24 hours a day) of a TVAC test.+**Required Background:** General CSE408x prerequisites 
 +\\  
 +------------ 
 +\\  
 +======Hybrid 2D/3D User Interfaces for 3D Rotation ======
  
-Specific tasks include1. Writing temperature acquisition card (OMEGA Engineering CIO-DAS-Temp) drivers for LabView - should be written in Visual C++ or similar and compiled into SubVI format. 2. Write LabView VI's (“Virtual Instrument”) to perform (a) Test set-up activities - checkout of sensor and lamps, assigning neumonics to temperature sensors, setting of alarm conditions for sensors and lamps (b) Acquire and monitor temperature data and control lamp voltage during test, raise operator alarms for temperature or IR lamp anomalous conditions as required © Store temperature and control data for subsequent analysis and reporting. 3. (Optional) Interface the Test Manager with an orbital simulation tool which would be used to compute IR lamp inputs based on a simulation of the nanosatellite's orbital position and attitude (eg - in the sun, lamps on, in eclipse lamps off). The simulation tool is a package called Satellite Toolkit (STK) which has an TCP/IP-based API.+**Supervisor:** Wolfgang Stuerzlinger
  
 +**Required Background:** General 408X prerequisites, 3D Computer Graphics (3431) completed or equivalent, C/C++ coding experience or (if using Unity 4) Javascript C# coding experience
  
-====== Game Playing Framework in Eiffel ======+This project implements and evaluates a new method for 3D Rotation where the user uses both a 2D and 3D user interface to complete the task. The fundamental idea is to use the 3D interface for large-scale manipulation, but the 2D interface for precise adjustments. The project will use a Leap Motion or similar technology for 3D tracking. 
 +\\  
 +------------ 
 +\\  
 +====== Immersive Virtual Reality Kitchen Planner ======
  
-NO LONGER AVAILABLE+**Supervisor:** Wolfgang Stuerzlinger
  
-**Supervisor**: Jonathan Ostroff+**Required Background:** General 408X prerequisites, 3D Computer Graphics (3431) completed or equivalent, 4431 desired, Javascript or C# coding experience
  
-**Required Background**: Eiffel software development method+This project implements a kitchen planner application for an immersive virtual reality system. The implementation will be based on Unity 4. 
 +\\  
 +------------ 
 +\\  
 +======3D Interaction in Immersive Virtual Reality======
  
-**Description** Game playing frameworks in Eiffel such as Eiffelmedia usually wrap C frameworks in Eiffel. The goal of this project is to develop (initially, a simple) framework using pure Eiffel/EiffelVision so that the framework can be used on any platform (Windows, Linux, Mac) without external dependencies. Games provide a rich source for exploring object oriented software construction and design patterns, so that the framework would be useful in software design courses.+**Supervisor:** Wolfgang Stuerzlinger
  
-====== Numerical Methods ======+**Required Background:** General 408X prerequisites, 3D Computer Graphics (3431) completed or equivalent, 4431 desired, Javascript or C# coding experience
  
-**Supervisor**: Mike McNamee+This project implements and tests various 3D Navigation and 3D Interaction methods in an immersive virtual reality system. The target is to enable the user to roam freely in a large environment while still being able to interact with the environment. The implementation will be based on Unity 4. 
 +\\  
 +------------ 
 +\\ 
 +====== Leveraging binary instrumentation to support monitoring and debugging of large scale software system in the field====== 
 +**Supervisor:**Zhen Ming (Jack) Jiang (zmjiang at cse dot yorku dot ca)
  
-**Required Background**Good grade in a Numerical Methods course and good knowledge +**Required Background:** Good programming skills (especially in Java); Good analytical and communication skills; Interested in large complex software systems and automated software analysis 
-of Fortranor similar language+**Short Description:** 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. On one hand, many existing monitoring tools (e.g., PerfMon and pidstat) mainly focus on the high level resource usage data (e.g., CPU and memory). On other hand, although profilers (e.g., JProfiler and DTrace) can provide detailed information on the internal system behavior, it is not feasible to run them with the field systems due to their high overhead. Binary instrumentation is a program analysis techniquewhich can add additional monitoring points without modifying or restarting the systemThis 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 (e.g., ASM and PIN). Then he/she will implement a monitoring/debugging framework using the selected instrumentation library. 
 + \\  
 +------------ 
 +\\ 
  
-**Description**: Write, debug and run several Fortran programs related to solving +====== Mining Software Repositories Data======
-polynomial equations, with a view to comparing different known methods.+
  
-====== Enabling SaaS access to an experimental AI planner ======+**Supervisor:** Zhen Ming (Jack) Jiang (zmjiang at cse dot yorku dot ca)
  
-**Supervisor**: Sotirios Liaskos (liaskos at yorku dot ca) +**Required Background:** Good programming skills in Java; Good analytical and communication skills; Knowledge in AI and statisticsInterested in large scale software analysis
- +
-**Required Background**Good knowledge of Unix tools / Python, Perl or Awk. Comfort with algorithms and programming. Essential: 2031 -- Software Tools. Desired: +
-3402 -- Functional & Logic Programming, +
-3101 -- Design and Analysis of Algorithms, +
-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. +
- +
-The components are various Unix executables and LISP programs that need to interact in complex ways. The components may be residing in different servers in different universities. Currently integration is performed manually, at the expense of usability. Thus, we aim at constructing a module that: (a) integrates involved components to deliver output in one call, (b) exports a unique web interface (preferably following WSDL/SOAP) to be easily accessed by custom front-end tools by anyone, anywhere, (c ) offers a simple front-end for human users. +
- +
-Learning objectives: +
-  * Understand the technologies and process involved in turning native code into a web-service ("servicizing"). +
-  * Study a state-of-the-art AI planner and understand its workings. +
-  * Exercise scripting skills+
- +
- +
-====== Predicting Angular Error in Rigid Registration ====== +
- +
-**Supervisor**: Burton Ma +
- +
-**Description**: Registration is a fundamental step in image-based surgical +
-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 will validate an approach for predicting angular +
-error in registrationthe student will use a combination of +
-simulated and actual registration data for testing purposes. +
- +
-====== Calibration of a Tracked Pointer ====== +
- +
-**Supervisor**: Burton Ma +
- +
-**Description**: Tracked pointers are the most common tools used in surgical +
-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 targetif 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, the +
-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**: Uyen Trang Nguyen +
- +
  
-**Description**+**Short Description:** Software engineering data (e.g., source code repositories and bug databases) contains a wealth of information about a project's status and history. The research on Mining Software Repositories (MSR) aims to transform the data from static record-keeping repositories into knowledgewhich can guide the software development process. For example, one can derive correct API usage patterns and flag anomalous (and potentially buggy) API usages by mining the source code across many projects in GitHub and Google Code. In this project, the student(s) will research and develop an efficient infrastructure, where MSR researchers and practitioners can share and analyze such data.
-One of the major privacy concerns in Online Social Networks is photo sharing A user may post his/her friends’ photos without their consent The friends have no control over the user’s Facebook activitiesnamely photo sharing In this project, we design and implement a third-party Facebook application that allows people to protect their identities in photos uploaded by another user without their consent.+
  
-**Required prerequisite background**:  Proficiency in programming, especially in Java and Web application programming.+------------------ 
 +\\  
 +Additional current possible  projects will be listed here by start of fall term. 
 +\\  
 +------------------ 
 +\\  
 +\\ 
  
-**Desired prerequisite**: Knowledge of image processing, Facebook API, JavaScript Object Notation (JSON) 
projects.txt · Last modified: 2016/01/13 20:05 by stevenc