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
projects [2017/08/10 19:33] jenkinprojects [2017/09/01 21:02] (current) jenkin
Line 1: Line 1:
 ~~NOTOC~~ ~~NOTOC~~
 ====== Proposed Projects   ====== ====== Proposed Projects   ======
 +
 +====== Graphical User Interface for Power System Simulator ======
 +**Supervisor:** Afshin Rezaei
 +
 +The project is to develop a user-friendly Graphical User Interface (GUI) for a power system simulator program. Similar to all circuit simulation programs, the GUI should provide a library of the system components. These elements include not only the basic circuit elements such as resistor, capacitor, and inductor but also more complex equipment models such as transformers, generators, etc. The library elements can be dragged and dropped on the design page. The user would be also able to add new elements to the library. Each element has its own dialog box for entering the parameters which is displayed by double-clicking on that element. The elements will be connected by the user. The GUI should provide the common tasks for drawing, removing, grouping, and construction of a circuit. The GUI can write an output data file of the system element parameters and connections and call an available executable program to run. After, the GUI will display the simulation results.
 +
 +**Required background:** General CSE408x prerequisites, good programming skill, good knowledge of GUI design tools
 +
 +====== Development of a Standalone Power System Optimization Toolbox ======
 +**Supervisor:** Afshin Rezaei
 +
 +Finding the optimum system condition and maximum/minimum of analytical or numerical functions are of fundamental needs and widely used in various fields of Engineering. This project is to develop a standalone optimization toolbox based on Intel Visual FORTRAN for power system applications. FORTRAN language with its highly developed math library is a powerful tool to solve complicated mathematical problems. A group of such mathematical problems are those dealing with the optimization algorithms particularly the curve fitting and global optimization methods such as genetic algorithm. 
 +In this project, the developer is expected to explore Intel FORTRAN Math Kernel Library (MKL) and Intel Mathematics and Statistics Library (IMSL) and develop a program code in FORTRAN to call built-in functions and perform the requested optimizations specified by the user. Due to compatibility of the MS Visual Studio with both FORTRAN and C++, some parts of the code can also be developed in C++.  
 +
 +**Required background:** General CSE408x prerequisites, good programming skill, good math skill, good knowledge of Intel FORTRAN and C++
 +
 +
 +====== Palpation Task Trainer ======
 +
 +**Supervisors:** Petros Faloutsos (EECS) and Iris Epstein (School of Nursing)
 +
 +Palpation of head and neck region is an integral part of a complete physical health assessment performed by both physicians (e.g., physician assistant; family doctor; Ear Nose and throat specialist and surgeon) and Nurses (Nurse practitioners, registered nurses). During palpation practitioners use their sense of touch with knowledge of anatomy of the head and neck to feel, differentiate and characterize the masses within their anatomical landmark (e.g.,lymph nodes; fat; size; texture; movements). With increase prevalence of cancer in head and neck early detection and appropriate referral and treatments are paramount. In 2016, George Brown College Capstone Engineering program together with the help of the nursing lab simulation specialist constructed a head and neck normal task trainer (prototype 1) with 32 touch sensors (see image bellow). During a multidiscipline conference in May 2017 we tested the task trainer with over 47 experts’ practitioners (Doctors and Nurses). Two important themes emerged from the survey. First, the need to render the task trainer more realistic (e.g., the touch of the skin and bonny structure). The second, focus on making the task trainer more interactive. The purpose of this project is to create a second prototype with an interactive gaming capabilities during a head to neck palpation.  Perhaps creating an algorithm gaming from simple to complex palpation assessment skills (e.g., to create a game around not only palpating to locate the mass but also to characterizing it.). Possible directions:
 +1. Head to neck anatomical structure - Making the task trainer more "real" with anatomical / bone/ cartilage/ glands structures. 
 +2. Head and neck skin - Because we are focusing on palpation touching the skin and making the skin respond to touch is important. 
 +3. Head to neck engaging and interactive - Several health care providers perform palpation. In fact there is a hierarchy among them (nurse vs doctor; family doctor vs Ear Nose and throat). Creating some kind of interactive game to find and characterize the gland with multidiscipline.
 +
 +**Required Background:** Standard prerequisites,some knowledge of C++. 
 +
 +**Other experience:** Knowledge of computer graphics (e.g. EECS3431)  and  familiarity with programming computer games would be useful for the gaming aspect, while familiarity with making and 3D printing  might be useful for developing the prototype system.
 +
 +**Resources and readings:** Here are two links to articles we published. The reference list has more resources
 +http://www.ijocs.org/clinical-journal/head-to-neck-task-trainer-to-teach-palpation-skills-back-to-basic-12036.html
 +http://www.sciedu.ca/journal/index.php/jnep/article/view/11461
 +
 +
 +====== Custom Camera App using the Andriod Camera 2 API ======
 +
 +
 +**Supervisor:** Michael S. Brown
 +
 +Cameras have a number of processing steps that convert the incoming sensor image to the final sRGB-JPEG image.  These steps are collectively referred to as the "camera processing pipeline" The camera processing pipeline has traditionally been fixed in a camera's onboard hardware. This made changing it difficult to develop a custom camera application. The new Camera 2 API for Android, however, allows developers significant more control over the entire imaging pipeline.
 +
 +The primary goal of this project is to develop custom camera applications that manipulate individual components of the imaging pipeline (e.g., custom white-balance, custom colour mapping, custom tone-manipulation, etc.).   These applications will all be built on top of the Camera 2 API for Android phones.
 +
 +**Required Background:** General EECS 408x prerequisites, knowledgeable with photography, experience with Java programming for Android platforms.
 +
  
 ====== Ultrasound simulation/trainer ====== ====== Ultrasound simulation/trainer ======
Line 369: Line 415:
 This is a computer graphics project to present visual motion stimuli to an observer. The software will experimentally control scene content, collect user responses and control the camera trajectory to simulate the desired self-motion profile. This is a computer graphics project to present visual motion stimuli to an observer. The software will experimentally control scene content, collect user responses and control the camera trajectory to simulate the desired self-motion profile.
  
-**Required Background:** General CSE408x prerequisites+**Required Background:** General EECS408x prerequisites
  
-**Recommended Background:** CSE3431 or CSE4471 or equivalent+**Recommended Background:** EECS3431 or EECS4471 or equivalent
  
 ====== Stereoscopic cinema calculator ====== ====== Stereoscopic cinema calculator ======
  
-Supervisor: Rob Allison+**Supervisor:** Rob Allison
  
-Required Background: General CSE408x prerequisites+Directors of three-dimensional movies sometimes use 'stereo calculators' to compute the simulated depth of objects in the film show to the viewer in order to maximize the stereoscopic effects and maintain comfortable viewing. However current calculators have limited ability to visualize the results of the calculations. This project will combine stereo calculations with visualization software to assist the director in artistic and technical decisions.
  
-Recommended Background: CSE3431 or CSE4471 or equivalent+**Required Background:** General EECS408x prerequisites
  
-Description+**Recommended Background:** EECS3431 or EECS4471 or equivalent
  
-Directors of three-dimensional movies sometimes use 'stereo calculators' to compute the simulated depth of objects in the film show to the viewer in order to maximize the stereoscopic effects and maintain comfortable viewing. However current calculators have limited ability to visualize the results of the calculations. This project will combine stereo calculations with visualization software to assist the director in artistic and technical decisions.+====== Computer pointing devices and the speed-accuracy tradeoff ======
  
-Computer pointing devices and the speed-accuracy tradeoff+**Supervisor:** Scott MacKenzie
  
-SupervisorScott MacKenzie+**Required Background:** General 4080 prerequisites, EECS3461, and (preferably) EECS4441
  
-Required Background: General 4080 prerequisites, CSE3461, and (preferablyCSE4441+**Recommended Background:** Interest in user interfaces and human-computer interaction (HCI). Understanding of experiment design. Experience in doing user studies.
  
-Recommended Background: Interest in user interfaces and human-computer interaction (HCI). Understanding of experiment design. Experience in doing user studies.+====== One key text entry ======
  
-One key text entry 
  
-Supervisor: Scott MacKenzie+**Supervisor:** Scott MacKenzie
  
-Required Background: General 4080 prerequisites, CSE3461, and (preferably) CSE4441+**Required Background:** General 4080 prerequisites, EECS3461, and (preferably) EECS4441
  
 Recommended Background: Interest in user interfaces and human-computer interaction (HCI). Understanding of experiment design. Experience in doing user studies. Recommended Background: Interest in user interfaces and human-computer interaction (HCI). Understanding of experiment design. Experience in doing user studies.
  
-The Algorithmics Animation Workshop+====== The Algorithmics Animation Workshop ======
  
-Supervisor: Andy Mirzaian 
  
-Required backgroundGeneral prerequisites +**Supervisor:** Andy Mirzaian
- +
-Recommended background: CSE 3101 +
- +
-Description+
  
 The URL for Algorithmics Animation Workshop (AAW) is http://www.cs.yorku.ca/~aaw. The main purpose of AAW is to be a pedagogical tool by providing animation of important algorithms and data structures in computer science, especially those studied in courses CSE 3101, 4101, 5101, 6114, 6111. This is an open ended project in the sense that more animations can be added to this site over time. The URL for Algorithmics Animation Workshop (AAW) is http://www.cs.yorku.ca/~aaw. The main purpose of AAW is to be a pedagogical tool by providing animation of important algorithms and data structures in computer science, especially those studied in courses CSE 3101, 4101, 5101, 6114, 6111. This is an open ended project in the sense that more animations can be added to this site over time.
  
-Automated Reasoning System for Quantified Propositional Logic+**Required background:** General prerequisites
  
-SupervisorZbigniew Stachniak+**Recommended background:** EECS 3101
  
-Required background: General prerequisites 
  
-Recommended background: Passion for programming and experimentation; Some knowledge of propositional and predicate logic+====== Automated Reasoning System for Quantified Propositional Logic ======
  
-Description+ 
 +**Supervisor:** Zbigniew Stachniak
  
 Quantified Propositional Logics (QPL) plays an important role in a number of computer science disciplines from the theoretical computer science to knowledge representation and verification. There are also a number of open problems concerning this logic, and formulated more than 70 years ago, that can be finally solved (or at least approached) using automated reasoning techniques. The first step in such investigations has to be the design and implementation of a theorem prover, or automated reasoning system, for QPL. Such a system should, in principle, be able to determine whether or not a given formula of QPL is a theorem (or a tautology) in this logic. Quantified Propositional Logics (QPL) plays an important role in a number of computer science disciplines from the theoretical computer science to knowledge representation and verification. There are also a number of open problems concerning this logic, and formulated more than 70 years ago, that can be finally solved (or at least approached) using automated reasoning techniques. The first step in such investigations has to be the design and implementation of a theorem prover, or automated reasoning system, for QPL. Such a system should, in principle, be able to determine whether or not a given formula of QPL is a theorem (or a tautology) in this logic.
Line 429: Line 469:
 Background: Various variants of QPL have been formally formulated for the first time in the 1920s by a number of logicians and mathematicians. In modern computer science, QPL plays a significant role in theoretical computer science (proof complexity, satisfiability) as well as in verification and AI. Background: Various variants of QPL have been formally formulated for the first time in the 1920s by a number of logicians and mathematicians. In modern computer science, QPL plays a significant role in theoretical computer science (proof complexity, satisfiability) as well as in verification and AI.
  
-NABU Network Emulator+**Required background:** General prerequisites
  
-SupervisorZbigniew Stachniak+**Recommended background:** Passion for programming and experimentation; Some knowledge of propositional and predicate logic
  
-Required background: General prerequisites+====== NABU Network Emulator ======
  
-Recommended backgroundJava (including 2D graphics); Some knowledge of PC hardware architecture; Some knowledge of (any) assembler language is an asset. +**Supervisor:** Zbigniew Stachniak
- +
-Description+
  
 Have you ever considered writing your own emulator of an interesting system? There has been a substantial activity in building software emulators of historically significant computers, game consoles, and, recently, smart communication devices. As a result, there is at least one emulator of almost every significant system. This activity contributes, in the first place, to the preservation and dissemination of significant hardware and software technologies. It also allows for cost-effective development of contemporary software and hardware. The project's objective is to design and implement an emulator of the NABU Network – one of the earliest “proto-Internet” networks. The emulator is to be implemented in Java. Have you ever considered writing your own emulator of an interesting system? There has been a substantial activity in building software emulators of historically significant computers, game consoles, and, recently, smart communication devices. As a result, there is at least one emulator of almost every significant system. This activity contributes, in the first place, to the preservation and dissemination of significant hardware and software technologies. It also allows for cost-effective development of contemporary software and hardware. The project's objective is to design and implement an emulator of the NABU Network – one of the earliest “proto-Internet” networks. The emulator is to be implemented in Java.
  
 Background : The NABU Network was designed and implemented by a Canadian company NABU Manufacturing between 1981 and 1983. The underlying idea behind the network was to link home personal computers to cable television networks which would supply a continuous, high speed stream of computer programs and information (at the rate of 6.5 Mbits per second) to almost an unlimited number of users. Cable television was a uniquely ideal technology for NABU to deliver software and data to home computers because of its high bandwidth and networking capabilities. After the official launch on Ottawa Cablevision in October of 1983, the NABU Network was introduced by Ottawa's Skyline Cablevision in 1984 and a year later in Sowa, Japan, via a collaboration between NABU and ASCII Corp. NABU Network subscribers could rent or buy a NABU PC and dedicated network adaptor, and use an ordinary television set as a display monitor. Once connected to the network, a user could choose from various application programs and services in categories including entertainment, information and guides, education, and professional programs. Dedicated NABU magazines, newsletters, programming guides, and user groups provided subscribers with supplementary information and support. To learn more, visit here. Background : The NABU Network was designed and implemented by a Canadian company NABU Manufacturing between 1981 and 1983. The underlying idea behind the network was to link home personal computers to cable television networks which would supply a continuous, high speed stream of computer programs and information (at the rate of 6.5 Mbits per second) to almost an unlimited number of users. Cable television was a uniquely ideal technology for NABU to deliver software and data to home computers because of its high bandwidth and networking capabilities. After the official launch on Ottawa Cablevision in October of 1983, the NABU Network was introduced by Ottawa's Skyline Cablevision in 1984 and a year later in Sowa, Japan, via a collaboration between NABU and ASCII Corp. NABU Network subscribers could rent or buy a NABU PC and dedicated network adaptor, and use an ordinary television set as a display monitor. Once connected to the network, a user could choose from various application programs and services in categories including entertainment, information and guides, education, and professional programs. Dedicated NABU magazines, newsletters, programming guides, and user groups provided subscribers with supplementary information and support. To learn more, visit here.
 +
 +**Required background:** General prerequisites
 +
 +**Recommended background:** Java (including 2D graphics); Some knowledge of PC hardware architecture; Some knowledge of (any) assembler language is an asset.
projects.1502393587.txt.gz · Last modified: 2017/08/10 19:33 by jenkin