Computational Issues in Markets, Elections, and Game Theory
Advisor: Vincent Conitzer, Assistant Professor, Department of Computer Science (660-6503) conitzer at cs.duke.edu
Description: Research focuses on creating computational tools to increase the efficiency of markets and elections. The goal is to reach (compute) good outcomes using only limited communication about participants' preferences. A related topic is to create software that can behave strategically (for example, getting computers to play games such as poker).
Skills/Experience: This project requires knowledge of algorithms and probability. Background in economics, especially in game theory or microeconomics, would be very helpful.
Machine Learning and Computational Systems Biology
Advisor: Alexander Hartemink, Associate Professor, Department of Computer Science (660-6514) amink at cs.duke.edu
Description: Research focuses on the development of new techniques in—and application of existing techniques from—machine learning for solving problems in complex systems biology, including how genes regulate their expression, how cells control their replication cycle, and how brains process information during learning tasks.
Skills/Experience: The ideal student applicant would have a strong background in mathematics, algorithms, programming, and/or creative problem solving, along with an interest in answering important scientific questions.
Mining Performance Data from Large Systems
Advisor: Shivnath Babu, Assistant Professor, Department of Computer Science (660-6579) shivnath at cs.duke.edu
Description: Google uses around 500,000 computers to serve search requests, advertisements, images, videos, and emails. Managing such a large-scale system is a challenging problem. This project will consider how large systems can be managed by collecting performance data periodically from the system, and applying data-mining techniques to this data. The mining techniques will help understand how the large system is performing at any point in time, how the system behavior changes over time, what went wrong when a performance drop is seen, how the system will perform in future, and so on.
Skills/Experience: Programming is a must. CompSci 116 or 216 is recommended. Any of CompSci 110 or 196 is a plus.
Visualization of Multi-scale Network Graphs
Advisor: Rachael Brady, Research Scientist, Department of Computer Science (660-0185) rbrady at duke.edu
Description: This research focuses on the design and implementation of a tool to interact with multi-scale network graphs. Many important information sets can be viewed as large, often dynamic networks – from social relationships to protein-gene interactions to internet traffic. We are working on mathematical techniques to build novel multi-scale representations of these networks which can help immensely in exploring the data to reveal relationships and generate new ideas. The goal of this project is to create a tool which allows human interaction with the network at multiple levels of resolution in an intuitive fashion.
Skills/Experience: The student applicant would need to know Java and/or Python or C/C++, have a good sense of graphical design and have a strong interest in visualization techniques.
Designing a Virtual Information Telescope Using Mobile Phones and Social Networking
Advisor: Romit Roy Choudhury, Assistant Professor, Departments of Electrical and Computer Engineering, Computer Science (660-5252) romit at ee.duke.edu
Description: The new generation of mobile phones are being equipped with numerous sensors, including cameras, microphones, accelerometers, health-monitors, etc. We envision each mobile phone as a virtual lens that can export a small view of the physical world to the Internet. With 2.5 billion active phones in the world today, it might be feasible to zoom into any part of the planet, and perceive events of interest through the “eyes and ears” of the phone. Imagine zooming into Eiffel Tower through the phone-cameras of people located at that place. Imagine estimating the traffic in Manhattan by combining the accelerometer readings from a multitude of mobile phones commuting through that region. Imagine the ability to query tourists in a specific spot, and receive real-time multimedia blogs about their ongoing experiences. Put differently, imagine a SOFTWARE INFORMATION TELESCOPE built on top of billions of mobile phones scattered spatially across the entire planet.
Designing a mobile phone telescope entails a variety of challenges in wireless networking, operating systems, economics, algorithms, and web development. For example, (1) spatially nearby phones will need to be carefully networked so that the micro-views from each phone can be stitched into a bigger picture. (2) The software will need to optimize energy consumption in view of limited battery power in smart mobile phones. (3) While GPS location is the key for many applications, exposing it is a major threat for privacy purposes. Location privacy needs to be addressed to make users comfortable with the telescope. These and many other questions related to security, incentives, data-mining, etc. need to be resolved for a fully functional, Internet-deployable, system. We have started our expedition to build such a system, as reported in the following webpage: http://synrg.ee.duke.edu/microblog.html. However, we need more researchers in view of the many emerging challenges. If you are excited, come and talk to me to learn more about it.
Skills/Experience: Not required to have everything: (i) Sound programming skills in C++ or Java - exposure to J2EE/J2ME, Bluetooth, SQL is a plus. (ii) Exposure to networking (CS 114, ECE 156) and/or operating systems (CS 110) will be beneficial. (iii) Most importantly, an inclination to tinker with devices, and build new systems.
Using Mobile Phones to Write and Draw on Air
Advisor: Romit Roy Choudhury, Assistant Professor, Departments of Electrical and Computer Engineering, Computer Science (660-5252) romit at ee.duke.edu
Description: Imagine this. You park your car in the airport, glance at the parking lot number, say C3, and with your phone write that in the air. Your phone’s accelerometer signals are captured, and using computer algorithms, the readings are translated into an image and SMS/emailed to you. When you get back to the parking lot, you don’t worry about forgetting where you parked ... you just check your email/SMS, and you have it.
Millions of people will benefit from an easy way to note down information while on the move. These information are often very small in character length, and yet extremely valuable. Typing it out on a to do list is too much of a hassel, penning them on the palm is embarrassing, and post-it notes are not something that one always carries. This project plans to utilize mobile phones as a smart pen that uses air as a replacement for paper. With WiFi and GPRS enabled phones, communicating this information to Internet sites/servers is not a problem. Many applications can evolve on top of such an input technology, resulting in a world where everyone ends up ”scribbling in the air”.
If this interests you, and would like to learn more of what we have in mind, drop by my office. We can chat about the emerging face of next generation mobile computing, especially with mobile phones surpassing the sales of laptop computers, by the end of 2008.
Skills/Experience: Not required to have everything. (i)Sound programming skills in C++ or Java - exposure to Python, J2EE/J2ME, Bluetooth, SQL is a plus. (ii) Exposure to networking (CS 114, ECE 156) and/or operating systems (CS 110) will be beneficial. (iii) Most importantly, an inclination to tinker with devices, and build new systems.