Class project

Pick a project from the ones suggested below (individually, or as a team).

Research project submission requirements:


Project assignments

Assigned person(s): Project type, topic:
Syed Shah
P01: Help! Help!

Develop an application which forms a social network of users, tracks the user's relationships (friendship, mutual help, abilities). It also tracks the dynamic status of the users: are they nearby, are they awake, are they in the middle of a task?

Then, the application presents a simple interface for requesting help:

  • Help! I am bored!
  • Help! I am stuck with the homework!
  • Help! I need help moving the furniture!
  • Help! I am having a nose bleed!

By pushing the button, the application should automatically connect you to the person most likely to be of help.

Cindy Atherton and Deepa Shinde
P02: Noise map of the UCF

For the EEL 6788 project, we will create a Noise Map application. In this application we will use the Android Emulator running on a computer to record sound files at specific locations on the UCF campus (e.g., Student Union, library, Harris Engineering Center). The application will calculate the noise level in decibels. After getting the computed values, the application will forward the values and the time of the recording to a server running on the local computer. The server will accept this data from all contributing Emulators and create a temporal noise map of the UCF campus. From the Emulator, the user will be able to view the temporal noise map.

From a GUI perspective, the user will be presented two buttons when running the application. The two buttons will be titled "Take a reading" and "View the map." The first button allows the user to contribute data to the map by recording the sound levels where the user is currently located. For now, we will not worry about privacy as the application will currently only run on the Emulator. The second button will allow the user to download the current temporal map from the server.

For the purposes of this class, any sound will be recorded using the Android Emulator and stored on the virtual SD card in the Android AVD. The application will check the virtual SD card for input. The input files are processed by the application to determine the decibel levels. Only one sound file should be found on a virtual SD card in order to simulate the input by a user with an Android phone. We will need to run several emulators and provide several sources of input. The time of recording and a user ID must be stored with the file as well.

The server will generate the map based on the data contributed by all registered users. The map should be regenerated at regular intervals in order to provide the user with current readings. For now, the map should be set up to regenerate a map every hour. The application will use a maps API (i.e., Google Maps or Wikimapia) to generate the map data.

Example Scenario

Suppose it is noon on Monday at the UCF main campus in Orlando. Bob is a student at UCF and he has a test today at 2:30. He's currently eating lunch in the Student Union, but he would like to find a quiet place to study until the time of his exam. As a user of the Noise Map application, he clicks the "Take a reading" button to record the current sound levels of the Student Union and transmit those readings to the server to help update the campus noise map. Next, he clicks the "View the map" button to get the latest map, which was likely just updated. From the map that displays, he learns that the Harris Engineering Center is currently the quietest place to study.

Features

  • Client-server communication in Android Emulator will illustrate network communications
  • Clients will have the ability to capture sound files and process intensity levels (in decibels) showing how Android handles file and sound processing and how the Emulator simulates sound sensors
  • Clients can view temporal maps of noise
  • Server compiles and stores data as well as produces temporal maps from the client data
  • Maps display noise levels as temporal distribution by displaying the areas on the map based on color-coded sound level intensity scale
Andy Pipa
P03: Distributed journalism

Develop an application for distributed journalism. Let us assume that you are covering an event - eg. the UCF yearly reflecting pond dip, events going on at a parade etc. People at the location capture pictures, video and sound bytes. Assemble this into a real time reporting flow. People outside the location are watching and possibly voting on the different reports. Their votes dynamically affect the current flow - e.g. you identify better reporters, more interesting locations, and so on.

Variations: you might be interested in real time flow, but possibly also in several time-delayed reports - eg. the votes are used to replace one reporting sequence with another etc. One interesting goal would be that from the reports of the participants to assemble a 3 minute report for the evening news.

James Doty
P04: Pulse of the UCF

I hope to use GPS data to map where people congregate and store it to a server. I want to also allow the user to cross reference that with microphone noise levels to find the most energetic place on campus (most noise and people), popular places to study (most people, low noise), and the loneliest places on campus (few people). If I can, I plan on making this an iPhone application with a web-based back end. If I have problems getting the development environment set up or have problems getting an actual development license, I may use the android emulator on a laptop instead.

Josh Cox
P05: Best place for distributing flyers

I will create an Android application that helps users determine the best location for distributing flyers on the UCF campus. The application will have two modes: data collection and distribution location search. In data collection mode, the application will log GPS location information and periodically upload it to a central server through HTTP. In search mode, the application will present the user with search parameters, such as time of day and window length. The search request will be submitted to the central server, and the response shown on the phone in the form of a map location.

The central server will run in a LAMP environment. It will be responsible for collecting data from users and determining the best location to distribute flyers based search parameters and the data it has collected. It should also give the user alternatives to the best location. The algorithm to determine the best location should weight recent data more heavily than older data, and should account for users that pass the same location multiple times (they don't need two flyers). There will also be a simple web interface that can perform a search from any computer.

Tristan Gibeau
P06: UCF Parking Heat & Route Maps

I plan on either developing an iPhone & Android web app. I am currently developing a web app that is able to access the GPS information off of the iPhone, and is able to detect where the user is. I currently have working code that is successfully grabbing the GPS information from the iPhone. I am then going to take the GPS data from the phone to calculate which garage/lot they are located in. I have mapped each row for the major lots used on our campus and they are being properly detected. I use the information from the GPS to detect which row the user is in and start a counter. This way I can track for how long they are in each row, when they leave the counter stops. This will be used to generate a heat map type setup where users can then see what rows are utilized more by UCF students, staff, and faculty. This is factor in with ratios depending on usage of the overall rows. Rows are also additive in the since if a vehicle re-enters are row or garage the timer is then incremented for the additional time. This way those types of rows can be shown as not a likely candidates for parking spots. I have done the same idea on the parker garages, but since GPS information becomes very inaccurate, I have utilize basic timers for each garage. I plan on generating this data as an overlay on Google Maps using colors green, yellow and red, where green is the least busiest and red is the busiest. I will then take the information from each day and hour to generate the maps to see where UCF visitors park at different times of the day. For example, I will display data for Monday from time 9:00 - 11:00 AM. This data then will be displayed in an easy to understand map where UCF visitors can quickly see where the best location is to park that day at that specific time. I will have all this information pushed up to an SQL database where I will then be able to keep track of the data. I have many friends that have iPhones, and I have asked if they will use my web app to collect data. Depending on how successful I am, I may incorporate UCF parking services to aid them in data collection.

If I begin to have issues with the implantation of a web app, I am going to focus on an iPhone app.

Michael Glus
P07: Survey: Privacy issues in urban sensing

In this paper I will research privacy issues that apply to wireless urban sensing. First I will examine the privacy concerns that arise most often, followed by how these issues impact network design. Some potential solutions and models will be presented. Also, ideas to implement certain solutions will be outlined. Finally, an evaluation of how the industry ranks the preceding privacy issues and also some potential future privacy problems will be discussed.

Preliminary list of papers that will be surveyed (in no particular order, more may be added)

  1. Shaikh, R.A., Jameel, H., d'Auriol, B.J., Sungyoung Lee, Young-Jae Song, Heejo Lee. Network level privacy for wireless sensor networks. ISIAS '08. Fourth International Conference on Information Assurance and Security, page(s):261 - 266, 8-10 Sept. 2008.
  2. Qijun Gu, Xiao Chen. Privacy preserving mobility control products in wireless sensor networks. International Symposium on Parallel Architectures, Algorithms, and Networks, 2008. I-SPAN 2008, page(s):159 - 164, 7-9 May 2008.
  3. Jianbo Yao, Guangjun Wen. Protecting classification privacy data aggregation in wireless sensor networks. WiCOM '08. 4th International Conference on Wireless Communications, Networking and Mobile Computing, 2008, page(s):1 - 5, 12-14 Oct. 2008.
  4. Carbunar, B., Yang Yu, Shi, L., Pearce, M., Vasudevan, V. Query privacy in wireless sensor networks. SECON '07 4th Annual IEEE Communications Society Conference on Sensor, Mesh and Ad Hoc Communications and Networks, 2007, page(s):203 - 212, 18-21 June 2007.
  5. Jian Ren, Yun Li, Tongtong Li. Routing-based source-location privacy in wireless sensor networks. ICC '09. IEEE International Conference on Communications, 2009, page(s):1 - 5, 14-18 June 2009.
  6. Ying Jian, Shigang Chen, Zhan Zhang, Liang Zhang. A novel scheme for protecting receiver's location privacy in wireless sensor networks. IEEE Transactions on Wireless Communications, Volume 7, Issue 10, page(s):3769 - 3779, October 2008.
  7. Wenjing Lou, Kui Ren. Security, privacy, and accountability in wireless access networks. IEEE Wireless Communications, Volume 16, Issue 4, page(s):80 - 87, Aug. 2009.
  8. Kamat, P., Wenyuan Xu, Trappe, W., Yanyong Zhang. Temporal privacy in wireless sensor networks. ICDCS '07. 27th International Conference on Distributed Computing Systems, 2007, page 23, 25-27 June 2007.
  9. Debbah, M., Di Renzo, M. Wireless physical-layer security: the challenges ahead. ATC '09. International Conference on Advanced Technologies for Communications, 2009, page(s): 313-316, 12-14 Oct. 2009.
  10. Jianbo Yao, Guangjun Wen. Preserving source-location privacy in energy-constrained wireless sensor networks. ICDCS '08. 28th International Conference on Distributed Computing Systems Workshops, 2008, page(s):412 - 416, 17-20 June 2008.
Mark Mucha and Juan Carcheri
P08: Mobile Date: An ad-hoc dating application for mobile phones

This tool would allow users to meet up based on their distance to go on specific dates, i.e. meet up for dinner at a restuarant that is close or movie theater. I'd probably code this for the Android, unless I can get my approval for iPhone development soon.

Mike Zielinski and Linda Mohaisen
P09: Tree census

This project is a tree census. We will use GPS to position a tree and store the type of the tree. We will also take a picture of the tree and store that along with its type and position. We will be using an Android phone and MySQL. We will have a website that the Android phone will connect to. The data and picture will be stored on the website. The location of the trees will be placed on a map on the web site and then when you click on the location of a tree it will show the picture and the description. Also you will be able to select what type of tree you want to see and only that type will show up on the map.

We will be using Google maps, JavaScript and ASP.Net for the Website. MySQL for the database and Java on the phone. We will use a real Android phone that has GPS and a camera. We will limit ourselves to three types of trees. We will use deciduous, palm and evergreen trees as the descriptions and they will have a choice of types from a list box.

Shaun Thompson and Matt Catron
P10: @UCF

Our project would produce a program like Yelp, however centered on the college. Allowing students to store new places by adding a location w/GPS and picture information, rate the location and even get directions to a previously entered location given their current location. The collaboration component of the project would allow the school to input information about labs and facilities. For example, under a category labeled "Computer Labs" a student could enter Lab 251, subsequent users would rate and/or comment on the lab updating with experience information. Another component would include a basic news/alert server for "free food" or "free shirts" etc.

To summarize:

  • 1. Storing a location and picture on the webserver
  • 2. Rating the location
  • 3. Directions to a location (if available)
  • 4. Common alerts (food, etc)
  • 5. Comment system (expansion of ratings idea)
Jon Howard and Peter Clements
P11: Magnetic map of UCF

An application for Android which captures and reports the magnetic field level at various points at UCF. Measuring the intensity of the magnetic field from the built in sensor and report it, augmented with time and GPS location to a central server. The central server stores and accumulates all reports and builds a temporal map of the magnetic intensities. This gradient map will be formatted and viewable as an Google map overlay.

High Level Tasks

  1. Android application interface (compatible with Android OS version 1.6)
    • capture magnetic field data
    • report magnetic field data, GPS location, time of day, and date
    • Written in Java
  2. Data Capture Web Service
    • Server application allows posting of client data
    • APACHE web server
    • Written in PHP
    • mySQL database back end
  3. Viewable gradient Google Map based on location
Leith Tussing and Andrius Andrijauskas
P12: Wi-Fi Map of UCF - "Outdoor Wi-Fi Map Initiative (OWMI)"

Description

The goal of this initiative is to actively capture and represent the availability, reach, and access of Wi-Fi spots around the exterior of public buildings. This is meant to be useful to both the ‘users' and ‘owners' of an establishment. Users being any person attempting to utilize a Wi-Fi system and owners being a person or entity operating said Wi-Fi system. By having a living & growing map of outdoor Wi-Fi spots users can actively search for locations they know they will be visiting so they can plan accordingly for their data needs. This also gives the owners the ability to both maximize their offering by seeing real input showing the reach of their Wi-Fi access points, and the ability to secure access points they did not realize were leaking into public places. Data gathering while be done by mobile devices and laptops that have built in GPS & Wi-Fi devices. Users will have to decide to opt-in to the data gathering process by actively running the application as they travel about their day. As they do so the application will gather active Wi-Fi access point information along with their current GPS information and then feed it to a centralized location. Users and owners can then visual view this data through a map based web interface.

Components

  • Phone
    • GPS - The user's phone must have GPS either built in or added on. Frequency is not critical, but accuracy should be at least moderately precise of the GPS module to prevent improper placement of data.
    • o Wi-Fi - The user's phone must have Wi-Fi either built in or added on. A minimum of 802.11b is required since all access points support this protocol. Additional modes, 802.11 a/g/n will function with the added benefit of their modes, but is not required.
    • o Data Plan - The user will need to have a data plan for their phone that allows for the upload of data. An unlimited data plan is recommended at this time since data usage has not been sufficiently evaluated to determine average usage. When applicable we will attempt to minimize data transfers size either through batched transmissions or data compression.
  • Phone Application
    • Phone OS - The current iteration of OWMI will support Windows Mobile 6.0, 6.1, and 6.5.
    • o Phone Space - The current application requires less than 1mb of space either on the phone or a memory card. Space requirements for operation will depend on the length of use, rate of data acquisition, and the number of access points a user comes across. At least another 1mb of space should be reserved for growth.
    • o Additional Requirements - Depending on phone OS the Microsoft .NET 3.5 Compact Framework will need to be installed (WM 6.0 & 6.1) along with the SQL Server Compact Server runtime files. The user should have approximately 10mb of free space on the phone itself for these items.
  • Web Service & Data Storage
    • Microsoft MapPoint - Currently we are focusing on using Microsoft's MapPoint 2010 hosted services online for storing and displaying our data. This requires the usage of the phones data plan to transmit data to the server.
  • Mapping Service
    • Microsoft MapPoint - Currently we are focusing on using Microsoft's MapPoint 2010 hosted services online for displaying our data in a visual manor. We are still analyzing their features and offerings to see if they will be able to provide the needed abilities.
        Data Flow
        1.       When active the OWMI application at user defined intervals 
		        (10 seconds minimum) will pull GPS for the current location
				 and then query all the Wi-Fi access points in the area.
        2.       OWMI will then store this information to the local SQL Compact database;
        a.       Time stamp
        b.      Latitude
        c.       Longitude
        d.      Wi-Fi SSID
        e.      Wi-Fi Signal Strength
        f.        Wi-Fi Authentication Method
        g.       Wi-Fi Encryption Method
        h.      Wi-Fi Supported Rates
        3.       When active the OWMI application at user define intervals 
		        (minimum 60 seconds) will push the collected data entries to the 
				MapPoint Web Service.  No personal user data will be transmitted or 
				recorded in this process.
        4.       MapPoint will collect multiple streams of data from multiple phones
		         aggregating them into one central storage area.
        5.       MapPoint will display the collected data over maps of the locations of
		         where data is collected.
		
Chris Giles
P13: Tracking Gasoline

Description: This project will result in an application for cell phones where the current real world price of gasoline at various gas stations can be captured and queried from a central server. The price of the gasoline, the location of the gas station, and the time of the remote capture will be sent wirelessly to and be stored at the server. The server will be able to respond to a query and indicate where the cheapest gas station is in a given region. The server will also be able to build a temporal heat map of the remotely collected data for the region.

User Interface Example:

A user is in need of gasoline; A user will use an Android based device to search for the cheapest type of gasoline needed within a selectable radius from his or her location. The server will report the position of the available gas stations within the user's chosen radius and the price for gasoline based on previously captured mass observation data. The user will then travel to the gas station of his or her choosing and then purchase the gasoline.

A user has purchased gasoline; A user will use an Android based device to capture the current price of gasoline at a gas station. The current price of gasoline will be uploaded remotely and stored on the server. Data stored on the server is in the form of a mass observation, i.e. it is envisioned that there are many data points for the entire region because many people are using and uploading data to the server as they purchase gasoline.

An administrator uses the captured data; An administrator of the platform, over time, will gain valuable insight into the fluctuation of the price and demand for gasoline in a region. The administrator can produce a report based on user mass observation of the fluctuation of the price and demand via a temporal heat map.

Key Features:

In class delivered software is based on the Android emulator.

Fully distributed implementation.

Processing at the server.

Users capture current price of gasoline.

Users query price of gasoline.

Includes type of gasoline, i.e. 87,89, and 92 octane.

Data set is based on user driven "mass observation".

Server tracks the fluctuation of the price and demand of gasoline over time.

Server will produce time dependent temporal heat map of the data.

Reg Arvindson
P14: WiFi Usability Mapper

For my project, I would like to use a combination of factors to provide interesting information about WiFi hot-spots. First off, I want to capture SSID information along with more unique identifiers (such as AP MAC to identify unique APs where they overlap) along with signal strength and SNR values. The speed of the hot-spot and method of encryption can also be included as additional information. What I would like to do to make this interesting is track SNR changes over time and create a temporal database that should demonstrate how heavily used a particular network/AP is. If tracking the SNR proves to be a poor method of demonstrating network burden then I'll periodically test data rates instead.

Secondly, I would also like to try to integrate GPS into the system to effectively create a temporal map from the database. It would be intriguing to, for example, see the availability of the UCF network across campus as well as usage characteristic throughout a standard school day or the availability of "attwifi" networks (provided by AT&T at such locations as Starbucks) across Orlando and their varying usability. This could give realistic expectations of performance for a network throughout the day which would prove useful for both a user desiring maximize their enjoyability of a WiFi hot-spot and a provider looking to provide a pleasurable experience. Besides expectations of performance the database should easily be able to provide a mapping of signal strength of networks/APs too.

I would like to develop this project on a Windows machine in C++ and utilize a server for maintaining the database. The server can then provide access to this information in the form of a map.

Cindy Nguyen
P15: Survey: The Urban Security Challenges

Project Description

In this paper I will research the security and privacy that applies in wireless urban sensing. Exploring the challenges for security in sensor networks Identifying some key solution concepts Introduce the case study of the emerging system designs that are oriented around remote and continuous medical monitoring which utilize wireless sensor networks Lastly, I will evaluate is there any use to research the application in applying this type of security and privacy to medical healthcare needs?

The following papers will be research reading material for this project (add more survey paper if need)

     A. Perrig, J. Stankovic, and D. Wagner, invited paper,  Security in Wireless Sensor Networks, 
	 Communications of the ACM, Volume 47, Number 6, pages 53-57, June 2004
 
     G. Virone, A. Wood, L. Selavo, Q. Cao, L. Fang, T. Doan, Z. He, R. Stoleru, 
	 S. Lin, and J.A. Stankovic, An Advanced Wireless Sensor Network for Health
	  Monitoring, Department of Computer Science, University of Virginia, 2005
 
     Katie Shilton, Jeff Burke, Deborah Estrin, Mark Hansen, Mani B. Srivastava, 
	 Achieving Participatory Privacy Regulation: Guidelines for CENS Urban Sensing, 
	 Center for Embedded Networked Sensing, University of California 
	 Los Angeles. June 25, 2008
 
	 Mani Srivastava, Mark Hansen, Jeff Burke, Andrew Parker, Sasank Reddy, 
	 Ganeriwal Saurabh, Mark Allman, Vern Paxson, Deborah Estrin, 
	 Wireless Urban Sensing Systems, Center for Embedded Networked Sensing Systems, 
	 UCLA, April 2006
 
     By Deepa Kundur, Senior Member IEEE, William Luh, Student Member IEEE,- 
	 Unoma Ndili Okorafor, Student Member IEEE, and Takis Zourntos, Member IEEE, 
	 Security and Privacy for Distributed Multimedia Sensor Networks - 
	 Vol. 96, No. 1, January 2008
 
	 Laurent Eschenauer, Virgil D. Gligor: A key-management scheme for 
	 distributed sensor networks. ACM Conference on Computer and 
	 Communications Security, pages 41-47, November 18-22, 2002
 
     Shilton Katie, Burke Jeffrey A, Estrin D, Hansen Mark, & Srivastava Mani. 
	 Participatory Privacy in Urban Sensing. UC Los Angeles: Center for Embedded 
	 Network Sensing. 04-21-2008
 
     An Liu, Peng Ning, "TinyECC: A Configurable Library for Elliptic Curve Cryptography 
	 in Wireless Sensor Networks," in Proceedings of the 7th International 
	 Conference on Information Processing in Sensor Networks (IPSN 2008), 
	 SPOTS Track, pages 245-256, April 2008
 
     Apu Kapadia and Nikos Triandopoulos and Cory Cornelius and Dan Peebles and
	 David Kotz. AnonySense: Opportunistic and Privacy-Preserving Context Collection. 
	 In Proceedings of the Sixth International Conference on Pervasive Computing (Pervasive), 
	 pages 280-297, May 2008
 
     Baik Hoh, Marco Gruteser, Ryan Herring, Jeff Ban, Dan Work, Juan-Carlos Herrera, 
	 Alexandre Bayen, Murali Annavaram, Quinn Jacobson. 
	 Virtual Trip Lines for Distributed Privacy-Preserving Traffic Monitoring. ACM Mobisys, 2008
	
Hector Lugo and Saad Khan P16: Negotiating the value of gas price knowledge
Victor Velez P17: Survey on energy related technologies
Richard Lin Zhou P18: Survey on privacy
A. Kapadia, N. Triandopoulos, C. Cornelius, D. Peebles, D. Kotz, 
AnonySense: opportunistic and privacy-preserving context collection, 
in: Proceedings of Sixth International Conference on Pervasive
 Computing (Pervasive), pp. 162–179, May 2007. 
 
J. Domingo-Ferrer and V. Torra, Ordinal, continuous and heterogeneous 
k-anonymity through microaggregation, Data Mining and Knowledge Discovery 11 
(2005), pp. 195–212.
 
Jan Camenisch , Els Van Herreweghen, Design and implementation of the
idemix  anonymous credential system, Proceedings of the 9th ACM conference
on Computer and communications security, November 18-22, 2002, Washington, DC, USA
 
G. Calandriello, P. Papadimitratos, J.-P. Hubaux, A. Lioy, 
Efficient and robust pseudonymous authentication in VANET, in: 
VANET 07: Proceedings of the Fourth ACM International Workshop 
on Vehicular Ad Hoc Networks, ACM Press, New York, pp. 1928, 2007.
 
L. Sweeney, K-anonymity: a model for protecting privacy, 
International Journal of Uncertainty Fuzziness and 
Knowledge-basrd Systems
 
K.P. Tang, J. Fogarty, P. Keyani, J.I. Hong, 
Putting people in their place: an anonymous and privacy-sensitive approach to
collecting sensed data in location-based applications, in: Proceedings of 
the SIGCHI Conference on Human Factors in Computing Systems (CHI), pp. 93102, 2006.
 
Kuan L. Huang, Salil S. Kanhere, and Wen Hu. Preserving privacy in participatory sensing systems. Computer Communications, September 2009
 
J. Domingo-Ferrer and J.M. Mateo-Sanz, Practical data-oriented 
microaggregation for statistical disclosure control, IEEE Transactions on 
Knowledge and Data Engineering 14 (1) (2002), pp. 189–201