""
""
""
""
    Home | Projects | Software | Research |
""

Fall 2007 Projects

RFID and BlueTooth Speaker Announcer
At scientific and technical conferences, it is often difficult to hear who is asking a question or making a comment at the microphone. Using BlueTooth and RFID, build a system that uses a badge embedded in the attendee's name tag to look up a name and send it to an IM system for possible display. Requires some willingness to work with USB hardware, but no electronics skills.
Using RFID to track equipment
Using our Axcess active RFID equipment, build a system that allows to track tagged equipment in a building. Equipment is fitted with RFID tags, similar to EZPass tokens but smaller, and readers are distributed throughout the building.
Camera control
Using our high-resolution UWB positioning system that can track people within a room to within 6 inches, move a remotely-steerable video camera to track a speaker.
SRTP
SRTP is a secure version of RTP, the protocol used for VoIP and audio/video streaming. Extend the open-source RTP toolset to debug and generate SRTP. Language: C
Social Networks for Email and Phone Calls
Investigate the characteristics of email messages and phone calls, based on server and email logs. In particular, determine the fraction of non-spam messages from 'strangers' and determine their characteristics, such as whether they are from a mailing list or well-known company.
Matching Papers and Reviewers
In conferences, members of the technical program committee indicate which papers they might want to review. Some papers are more popular than others. The project attempts to find heuristics that minimize the number of orphan papers, equalize the review load and maximize the match between reviewers and papers. We have real conference data to test the algorithm. Platform: PHP or Java
Watcher filtering
The subscriber specifies filtering rules while subscribing to a resource in the SUBSCRIBE message. The notifier (presence server) processes these filters for generating notifications. The rules contain information about what to be included in NOTIFY and when should the NOTIFY be generated. Platform: Linux, C/C++, XML/XPATH. The protocol is described in two Internet drafts, one on event filter functionality, the other on their format.
MSRP (Message Sessions Relay Protocol)
MSRP is a protocol developed by the SIMPLE working group in the IETF for instant messaging (chat). It works by transmitting related instant messages in the context of a session. Message sessions are treated like any other media session. There are two separate models for conveying instant messages: Pager-mode and Session-mode. The protocol allows near-real-time, peer-to-peer exchange of binary content and can be signaled using a separate rendezvous protocol such as SIP. Platform: Linux, C/C++/Java.
Reputation system
For spam prevention in email and VoIP, reputation of the sender is an important means of distinguishing likely desirable communications from messages that need more scrutiny. The project investigates the use of trust paths, i.e., chains of trust from the sender to the receiver, to establish the credentials of the sender. Language: C, C++ or Java.
Spam analysis
Analyze the network characteristics of email spam, such as its country of origin, whether it is generated by spam bots, and whether the trace of the message route can provide hints to differentiate spam from non-spam messages.
Automated busy discovery
Build and design applications that detect if a user is likely to be receptive to receiving phone calls or otherwise being disturbed and whether the user is physically present. Use acoustic sensors and image analysis to detect speech and multiple persons (e.g., for meetings), generating presence data and influence call behavior, so that incoming calls are automatically redirected to another party or voicemail.
Acoustic user location
Using a stereo microphone and a mobile device with a speaker or a surround-sound speaker system and a single microphone, prototype an in-room location system that is based on triangulation and (possibly) tightly synchronized clocks. The mobile device sends out periodic high-pitched tone pulse, which are captured by the microphones located at different points in the room or the speakers send out sounds picked up by the mobile device.
Performance of dynamic web pages
Using a benchmark script that renders a table from an SQL database, compare the performance of several different implementation methods, such as cgi-bin using Perl, Python and Tcl, Java servlets, ASP, and PHP. Metrics include the user-visible delay and scaling.
Virtual Worlds
Building on an earlier project, design and implement a virtual reality conversation space in ActiveWorlds, where approaching a bot starts a voice or video conversation. Model the Columbia campus, so that you can represent students and staff moving through this simulated space, based on location feedback provided by GPS and other location sensors.
Presence composition
Presence information is collected from a variety of sources, ranging from user calendars, PCs and mobile devices to user input. Such input may present contradictory information and needs to be combined into a coherent user model.
Echo detection for VoIP
Design an echo detection module that measures the volume and delay of echo in a voice-over-IP system. Requires background in signal processing.
Audio and video codec measurement
For audio and/or video, measure how users react to codec changes. With the help of your mentor, you will recruit students as experimental subject. The test subjects will evaluate whether they prefer constant quality or varying quality, for different bit rates and codecs.
TFRC measurement
TFRC is a new, TCP-like congestion control mechanism that controls the rate of a source. Using the INTEREST lab testbed and real Internet paths, measure the rate variability for a constant bit-rate source.
Passive Infrared Sensors (PIR)
Using an X10 passive infrared (PIR) sensor, build a device that reports to our presence and geolocation system whether there is somebody in the room. Uses SIP for publication of events.
Calendar as presence information
Design and build a gateway that translates iCal calendar information into rich presence format, so that calendar notices can be delivered to 'buddies' on a presence agent or can be used to alert users of their own appointments. The Mozilla calendar, for example, supports iCal.
Automatic gain control
Implement an automatic gain control function for our SIP conference server that balances the audio volume (amplitude) level from various participants using digital amplification of audio samples before and after mixing. Also allow manual control from the participants phone using DTMF or from web interface. Language: C
Audio library for Linux
Using our Windows audio library as a model, write an audio library for Linux. The library needs to minimize delay and should be integrated with the RTP library. Language: C.
Evaluating parser performance
Construct an optimal HTTP and SIP parser with both eager and lazy evcaluation. Eager evaluation evaluates all header components and splits the body into parts, where needed. Lazy evaluation only parses headers required for initial processing and defers parsing other request parts until needed. compare fixed and variable header format. In a fixed format, all header and parameter names use standard capitalization, no spaces after the header field or parameter name and the equal sign, no spaces after the parameter-introducing semicolon,single line without continuation lines and a fixed order of header fields. Encode the same header information in XML, as is done in BEEP and XMPP (Jabber). Compare the text parsers to a TLV (type-length-value) binary encoding of the same information.
Laserpointer as mouse
Based on the idea by R. Eckert, write an application that controls a mouse using a red laserpointer. (The implementation at Binghamton only works with very specific hardware, unfortunately.)
""
""