USF Department of Computer Science and Engineering College of Engineering

Home Page


Applications


Projects


Schedule


Personnel


Housing and facilities

 

Maps and directions


Other REU Sites and links


National Science Foundation


This project is supported by the National Science Foundation

the University of South Florida's College of Engineering

and

the Florida Georgia Louis Strokes Alliance for Minority Participation in Science, Engineering and Mathematics (FGLSAMP)

 


Research Experiences for Undergraduates (REU) Summer Program in Computer Science and Engineering

Research Projects



Description of Projects for Summer 2005

  • Developing Timing Verification Algorithms



  • Natural disaster/hurricane application



  • Traveling Assistant Device



  • Intrusion detection using wireless sensor networks



  • Parking lot occupancy using wireless sensor networks and cellular telephones



  • Packet loss distributions of TCP using Web100

  • Development of a Peer to Peer Proxy

  • Scalable Data Mining Algorithms

  • Design and Implementation of a large-scale compute cluster

  • Image Processing

  • An End-to-End Customizable Tool for Available Bandwidth Estimation

  • Bandwidth Estimation techniques in the optimization of BitTorrent average download time

  • ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    Developing Timing Verification Algorithms

    Project Supervisor - Dr. Hao Zheng, PI, Assistant Professor, Department of Computer Science and Engineering, USF.

    Real-time systems are used to control nuclear power plant, space shuttle and aircraft flight control, robots, etc. Correct real-time systems depend on correct logic behavior produced in time. Timing verification is critical for real-time systems because any failures may either degrade system performance or cause disasters. One approach, namely model checking, builds state transition graphs for systems where timing verification
    is applied. The advantages of model checking are that it is fully automated, and can generate invaluable debugging information when a bug is found. In addition, model checking can give assurance of system correctness in a much higher degree compared to simulation-based approaches

    There are three components needed for model checking: a design under verification (DUV), an environment defining how the inputs of DUV are driven, and a correctness specification defining the correct behavior of a system. Then, they are fed to a model checker that will generate an answer either Yes or No. If answer is No, then a sequence of states is generated to show why the specification has failed. The idea is illustrated in the following figure.

    In this project, a student will be involved in a verification system development. The student will study the fundamental concepts of verification and model checking, and will be implementing verification algorithms for some specification logic. The student will have the chance to conduct some research on new verification algorithms. The qualifications of the student include good C/C++ programming capability, knowledge of common data structures and algorithms, and logic design.

     

    Natural disaster/hurricane application

    Project Supervisor - Mr. Philip Winters, Center for Urban Transportation Research, USF and Dr. Rafael Perez and Dr. Miguel A. Labrador, Department of Computer Science and Engineering, USF.

    In collaboration with the College of Engineering’s Center for Urban Transportation and Research (CUTR), Dr. Perez is investigating ways to provide citizens with access to important information in the event of natural disasters. The project will utilize the existing architecture for supporting community-oriented applications already in place in CUTR. The project consists of three parts: 

    • Part A:  Design and implement cell phone software that would be used by emergency workers to report obstructions in roads, flooded areas, or other hazards.  Software would detect the user’s location and then send this data along with the reason why the area is dangerous or obstructed to a database where it could be distribute to others via an online map.
    •  Part B:  Create GoogleMaps API website that would show the locations of blocked roads or flooded areas in emergency situations.  Data would be pulled from a database that would be populated in real-time from emergency works in the field with cell phones loaded with custom application.
    •  Part C:  Design and Implement a GIS application that, given a user’s location from a cell phone, finds the nearest active emergency evacuation shelter from a database, calculates the best route to that shelter, and sends the information to the user via a MMS message.

     

    Traveling Assistant Device

    Project Supervisor - Mr. Philip Winters, Center for Urban Transportation Research, USF and Dr. Rafael Perez and Dr. Miguel A. Labrador, Department of Computer Science and Engineering, USF.

    This project is in collaboration with the College of Engineering’s Center for Urban Transportation and Research (CUTR) and will also utilize the existing architecture for supporting community-oriented applications already in place in CUTR.

    This proposed application, Travel Assistance Device (TAD), would use multimedia cell phones with built-in global positioning systems to help new transit riders, especially those who are cognitively disabled.  Informational prompts will be delivered to the rider in a “just-in-time” method such as triggering the phone to ring, vibrate or deliver an audio message when the rider should pull the stop cord. Automated alarms can be triggered and the travel trainer and/or parent/guardian remotely alerted in case a rider wanders off their pre-determined path.  Traditional phone communication is possible between the rider and the trainer which will allow them to guide the rider to the correct location if they are lost. This device could increase fixed route transit use among the cognitively disabled.

     

    Intrusion detection using wireless sensor networks

    Project Supervisor - Dr. Miguel A. Labrador, Assistant Professor, Dept. of Computer Science and Engineering, USF.

    Wireless Sensor Networks are self-configurable wireless networks made of small, cheap and resource constrained devices used to transmit information from places where human intervention is not possible, desired or very risky. WSNs can be utilized in a countless number of applications such as environmental monitoring, security, medicine, tracking of assets, intrusion detection, home automation, parking and transportation, etc.

    In this project, students will utilize the necessary software and hardware to design and implement a small-scale application for intrusion detection. A small scale, proof of concept WSN with wireless sensor devices with different sensing capabilities will be used to monitor a particular area for intrusion. One common example of a large scale intrusion detection application would be the monitoring of border lines between two countries. Wireless sensors devices will be placed at specific places in the area of coverage to detect violations to the covered space. Wireless sensor devices will transmit space violations detected by the sensors through the WSN to the management station (application), where this information will be visualized. We will use the wireless sensor hardware and software from Xbow, Inc.

    The students will investigate the detection algorithms, the coverage, detection success rate, etc. to make the application reliable.

     

    Parking lot occupancy application using wireless sensor networks and cellular telephones

    Project Supervisor - Dr. Miguel A. Labrador, Assistant Professor, Dept. of Computer Science and Engineering, USF.

    Using the same wireless sensor network technology explained in the project above, parking lot occupancy data will be sensed by the wireless sensor network and transmitted to a central database. These data will be at the same time incorporated into the the existing architecture for supporting community-oriented applications already in place in CUTR so that cellular users can either retrieve parking lot information in real-time or receive that information according to the position of the user.

    The students will investigate the detection algorithms, the coverage, detection success rate, etc. to make the application reliable.

     

    Packet loss distributions of TCP using WEB100

    Project Supervisor - Dr. Miguel A. Labrador, Assistant Professor, Dept. of Computer Science and Engineering, USF.

    The objective of this project is to find the distributions of timeouts and three duplicate acknowledgements in TCP connections. Using emulated link capacities and cross traffic on the Dummynet test bed shown in the figure below, students will actively analyze TCP traffic using the Web100 tool.

     A set of experiments will monitor packet loss events and measure the change in rates given by the TCP congestion control mechanism. These results will be used in the design of new bandwidth estimation techniques for transport layer protocols.

    Students in this project will learn about TCP flow and congestion control, packet monitoring, and Linux and freeBSD network configuration.

     Development of a Peer to Peer Proxy

    Peer to 2 Peer (P2P) requires a PC to be fully powered on at all time to respond to (and forward) query messages. This project proposes to build a P2P proxy that knows what files are shared. The proxy can reply to queries and will wake-up the actual host only when a download request occurs. Saving energy is the purpose here. Students will learn the protocol internals of the Gnutella P2P system and socket programming.

    Students working in this project need to know how to program using the C language. Socket programming is a plus but not required.

     

    Scalable Data Mining Algorithms

    The main thrust of work in the Intelligent Systems Laboratory is to develop scalable data mining algorithms. In this project REU students will be involved in graph data mining which involves learning to identify sub-graphs of importance. Many graph searched problems are not computable. So, our approach is to find graph Kernels that are capable of comparing graphs and to utilize multiple kernels to get a good picture of similarities. The problems being undertaken would have up to a terabyte of labeled or unlabeled data.


    Design and implementation of a large-scale compute cluster

    This project will involve REU students in the design and implementation of a large-scale (128 node) compute cluster. This system will be designed and built from component parts. There will be hands-on hardware configuration (installation of the CPU, power supply cooling fans, interconnection of processors, etc.) as well as operating system installation and the application and analysis of benchmark software programs to test the functionality of the computer.

     

    Image Processing

    There are several opportunities for REU students interested in this area. One project has to do with face recognition using dynamic strain patters from video. Strain patterns exhibited during facial expressions provide a unique fingerprint for recognitions. Another project implements algorithms to detect power lines in bad weather, cluttered scenes. This project is based on army reports saying that more helicopters have been lost because of power lines than against enemies in combat. The third project is meant to automate the analysis of brain MR images, segmenting and labeling the tissues of interest, such as cerebrospinal fluid, white matter and grey matter.

     

    An End-to-End Customizable Tool for Available Bandwidth Estimation

    The interest on the measurement of the end-to-end available bandwidth estimation (avail-bw) has generated a variety of software tools that have been developed, for the most part, during the last 5 years. These tools perform according with specified parameters (i.e. number and length of the probing packets) that in most of the cases are in-code specified.

    Different applications demand specific values of accuracy, speed and overhead in the avail-bw estimation. This project is to deploy a new customizable tool to perform end-to-end avail-bw measurements based on application/user specified parameters. The tool uses a train of packet pairs to do the estimation, based on a client/server socket architecture.

    Students in this project will mainly learn and apply C programming, sockets, linux and freeBSD network configuration. The tool will be tested in a existent WAN emulator

     

    Bandwidth Estimation techniques in the optimization of BitTorrent average download time

    Peer to peer distributed networks allow users across the Internet to share information of different type and in different ways. Collaborative file sharing protocols are limited by bandwidth constraints. We recently have explored this problem in the optimization of BitTorrent average download time using IGI to as an estimator of available bandwidth. This estimation is used by the protocol to select peers with similar bandwidth capabilities.

    The goal of this project is to include pathload in the BitTorrent protocol to estimate available bandwidth and to evaluate the performance improvements between the previous work (original protocol and the IGI modification) and the application of pathload.

    Students in this project will mainly learn and apply Python and C programming, sockets, modelnet, linux Debian and freeBSD network configuration. The tool will be tested in a existent modelnet emulator.