Vous êtes sur la page 1sur 15





c    p p 
1.p Can prox cards be scanned from a distance? What are the implications?
2.p Trojan horses in cryptographic protocols.
3.p Automated theorem proving.
4.p Computer game-playing programs.
5.p Implement one of recently discovered algorithms for "recycling" random
bits, and study how well it does in practice.
6.p Show that finding approximate solutions to NP-complete problems is
also NP-complete (i.e., come up with NP-completeness reductions a la
COS 487).
7.p Experimental Algorithms: Implementing and Evaluating Algorithms
using existing software packages.
8.p Design and implementation of graph partitioning algorithms (possibly
leading to a publication).
9.p Modeling the human brain using random graphs.

c    Cryptography, Complexity Theory, Randomness and


1.p -uild a tool to partially automate proving security of cryptographic
2.p Write a clean exposition of the proof that pseudorandom generators can be
constructed from any one way function.
3.p Write a clean exposition of the parallel repetition lemma.
4.p Any other interesting project, especially one involving cryptography or

O   c

c    machine learning, graphical models, computational

statistics, information retrieval, natural language processing.

1.p Explore the potential of using machine learning techniques
with the Wikipedia corpus (http://www.wikipedia.com/).
Develop algorithms that use both the content of and
connections between articles.
2.p Develop algorithms which use both linguistic information (like
part of speech tags) and statistical information (like word
counts) to determine document similarity.
3.p -uild a browser for large and unstructured collections of
multimedia documents. Develop machine learning tools for
automatically organizing and interfacing with such collections.
4.p Any interesting machine learning or computational statistics
project. Example research areas are spectral clustering,
approximate posterior inference, social network analysis, or
time series analysis.

O  c

c    Design and analysis of algorithms, particularly

approximation algorithms, on-line algorithms and efficient
algorithms for dealing with large volumes of data.

1.p Reconstructing evolutionary trees from biological data.
2.p Algorithms for clustering data - theory as well as
3.p Investigating the gap of mathematical programming
relaxations for optimization problems. (This requires a strong
math background).
4.p Any other topic in advanced algorithms or discrete


c    Computational Geometry, Sublinear Algorithms,

Clustering, Discrepancy Theory, Lower -ounds.

1.p Experimentation with self-improving algorithms.
2.p Sublinear algorithms.
3.p Personalized web searching.
4.p Clustering algorithms.
5.p Experiment with stunningly fast approximate heaps.

O !"c#

c    - Computer architecture and organization;

architecturally-focused performance analysis.

1.p Diagnose, repair, and possibly redesign the user interface of
my father's 30-year-old Turing Machine. Requires digital logic
design skills, plus some mechanical engineering, or perhaps a
2.p Cycles Per Instruction (CPI) is a great performance measure
but is hard to estimate without a highly detailed simulation of
the hardware. Simple analytic models of CPI can be very
wrong for certain programs and certain processors. Using good
simulators and/or a real machine, show how bad such models
can be.
3.p Other topics, depending on student interest.

O O $c%

c    Computer Music; Simulation of Musical Acoustics

and Voice; Real-Time Expressive Computer Control, Human-
Computer Interfacing.

1.p Expressive Human Voice Synthesis. Look into famous
historical (going back very far) voice synthesis projects and
techniques. Program up simulations of a couple of them for a
web page I'm building. Pick a modern system, and look into
new techniques, such as transplanted prosody, to make it sound
more "human."
2.p Physically Oriented Library of Interactive Sound Effects.
Work on aspects of parametric synthesis of sound effects, like
walking, clapping, breaking and bouncing, rubbing, crunching,
etc. We're branching out into background sound textures this
year, so there's lots of new work to be done.
3.p Work on parts of a new language for real-time audio and
media, called ChucK. Add new graphical and controller
components to the system.
4.p Machine learning on raw audio/music. Work to develop new
techniques and applications for machine "understanding" of

O  &


c    Visualization, pervasive computing, software


1.p -uilding applications using Wireless and Handheld devices.
2.p -uilding tools for managing online photo albums.
3.p Face recognition.
4.p Other Interesting topics.

O ( ) * 


c    Computer security; network software; technology

law and policy.

1.p Computer security and privacy.
2.p Digital media distribution.
3.p Copy protection and peer to peer technologies.
4.p Technology and public policy.
5.p Any other interesting or offbeat topic.

O  *


c    computer graphics, animation.

1.p Computer-generated drawings from 3D models.
2.p Tools for making visual art using computer graphics.
3.p New methods for computer animation.
4.p Techniques for medical visualization.
5.p Any interesting project in computer graphics.

+(+*! $

c    operating systems, distributed systems, computer

networks, programming languages, computer architecture.

1.p -etter compiler tools for system software evolution
(see c4.cs.princeton.edu).
2.p Operating systems and cluster management projects related to
3.p Oh... just come see me and we can figure something out that
should be fun.

O  * 


c    Distributed systems, security, networking, applied


1.p Design/build a performance- and fault-monitoring tool or
architecture for distributed systems such as CoralCDN,
including distributed logging built around streaming databases,
algorithms for the approximation of network-wide properties,
distributed real-time transaction tracing, etc.
2.p Help build a new system for currency-based management of
peer-to-peer resources, including either client-side software or
back-end scalable tuple stores.
3.p Realize cryptographic private information retrieval from
databases, especially via useable web services.
4.p Any interesting topic related to distributed or peer-to-peer
systems, security, or networking.

O *!
! c

c    Structural bioinformatics and computer graphics.

1.p Investigate methods for predicting the function of a protein
from its 3D structure.
2.p Develop algorithms for aligning and matching 3D shapes.
3.p -uild components of a shape-based search engine for 3D
4.p Any other projects related to structural bioinformatics or
computer graphics.

+, -

c    Networked Systems, Operating Systems,

Hardware/Software Interfaces

1.p Hardware/Software gadgets for home automation. For
example, media servers or convergence devices that combine
Internet, TV, phone, security, and automation.
2.p Programming language support/extension for device driver
programmers. For example, most device drivers are written in
C; explore/implement ways the language be augmented to
support multiple aliases (physical address, kernel virtual
address, user virtual address, bus address) for the same
memory cell.
3.p Design and implement analysis tools for maintaining large-
scale distributed systems such as PlanetLab.


c    application-specific languages, document

preparation, user interfaces, software tools, programming

1.p Application-oriented languages, scripting languages.
2.p Tools; user interfaces; web services.
3.p AMPL and optimization.
4.p Joint work with other departments.
5.p For a list of less than half-baked ideas, see this page.


c    Search and retrieval of information; data mining,

particularly clustering; combinatorial algorithms

1.p Study the current use of graph structure in the exploration of
the Web or other social networks, and investigate the potential
for new techniques.
2.p Experimentally evaluate the use of preprocessing with spectral
clustering algorithms.
3.p Experimentally evaluate how well metrics used to compare
two clusterings of a data set actually capture intuitive notions
of similarity between clusterings.
4.p Other topics with an information discovery or management
aspect, including novel applications using databases or
information retrieval.

O * / .c''

c    Computer vision, human vision, machine learning.

Prof. Li is particularly interested in recognition topics related to the
semantic understanding of the visual world, such as object
categorization, human action understanding, event recognition, etc.

1.p Computer vision project emphasizing on an interesting

application in visual recognition.
2.p Computer vision project emphasizing on an interesting
machine learning problem, such as inference techniques or
efficient algorithms.
3.p Human psychophysics project that utilizes smart algorithms or
ideas from computer vision or machine learning;
4.p Can you think of a particularly interesting application in
computer vision? I'd love to hear your ideas!

O -.01, . ,   

c    Parallel architectures and systems; distributed

systems; operating systems.

1.p Design, implement and evaluate practical methods for image
and audio similarity searches.
2.p Seamless shared visualization on large-scale displays.
3.p Simulation studies of asymmetric heterogeneous chip
multiprocessor architecture.

O 2 O01, .'/'' 3 

c    Network/Web servers, operating systems, high-

performance applications.

1.p Improve some aspect of CoDeeN, such as implementing ad
filtering, analyzing and improving page download times, or
develop a distributed log querying system.
2.p Distributed DNS resolution: we have a rough resolver that runs
on many nodes, but is not intelligent. Fix it so that it can
achieve the same (or better) performance while consuming
fewer resources.
3.p Improve our system call performance visualization tool
running on De-ox. It works, but is not particularly fast. We'd
like to perform on-line performance monitoring and
visualization while slowing down applications by only a few
percent at most.

O .$O 


c    Networked systems, communication protocols,

operating systems.

1.p Topics related to planetary-scale network services, overlay
networks, and the system infrastucture needed to support them.

O 4

 c 5 c6

c    Data networks, network measurement, network

management, routing protocols, network troubleshooting.

1.p Peer-to-peer system for troubleshooting the Princeton campus
2.p Fundamental limits on how well we can measure the Internet
topology, or identify the root cause of network problems.
3.p Extensions to today's protocols to make network
troubleshooting and engineering easier.
4.p Policy language for operators to configure their networks.
5.p Applying data-mining techniques to network measurement
data to detect anomalies.
6.p Analyzing the interaction between overlays and the underlying
network routing.
7.p Techniques for scalable Internet routing, including
relationships to theoretical work on compact routing.
8.p Secure routing protocols, and verification that packets go the
way the routing protocol says they will.

O , $

 ) c'

c    computer graphics; acquisition of 3D shape,

reflectance, and appearance of real-world objects.

1.p Work on computer vision systems for an autonomous vehicle
to be entered in the DARPA Urban Challenge.
2.p Implement a system for generating high-quality panoramic
images from low-resolution, low-quality sources (e.g., cell-
phone cameras).
3.p Develop enhanced visualization techniques for collections of
images of an object or scene under varying lighting.
4.p Implement an efficient ray tracer for huge meshes (hundreds of
millions of polygons) based on a compressed hierarchical data
5.p Other projects in computer graphics and vision.

O c&  ,  c7

c    Machine learning

1.p Implement and run experiments on assorted machine learning
2.p Apply machine learning algorithms to specific tasks.
3.p Any other interesting project related to machine learning.

O c&  , " )c'#

c    Finding efficient algorithms for fundamental

practical problems by studying algorithms at all levels through the
design-analysis-implementation cycle; dynamic graphical simulations
of algorithms in operation.

1.p Professor Sedgewick is willing to advise students who come
up with their own ideas for independent work in his current
areas of active research.

O 4)

c    Parallel computing systems and applications:

parallel applications and their implications for software and
architectural design; system software and programming environments
for multiprocessors. Special interest in applications of computing in
computational biology, especially protein structure determination and
simulating the immune system.

1.p Work with a team to build new types of "persistent search" or
alerting/notifcation services that can be exposed to and used by
real users. Could involve indexing and matching methods, end-
user interfaces, data sourcing and interpretation, or building
new information services.
2.p Implement and study novel methods for topic-specific or
vertical information discovery and search, as well as for high-
quality persistent search.
3.p Study and develop methods to infer insights from data in
different application areas.
4.p Design and implement a parallel application. Possible areas
include graphics, compression, biology, among many others.
Analyze performance bottlenecks using existing tools, and
compare programming models/languages.
5.p Develop and implement algorithms for selected problems in
computational biology, especially simulating the immune
system or analyzing immunological data.


c    computational molecular biology, as well as its

interface with machine learning and algorithms.

1.p Whole and cross-genome methods for predicting protein
function and protein-protein interactions.
2.p Analysis and prediction of biological networks.
3.p Computational methods for inferring specific aspects of
protein structure from protein sequence data.
4.p Any other interesting project in computational molecular

O -

, " c'

c    auctions, agent-based simulation, soliton

computing. Some relevant abstracts and papers can be found at
the research link on my home page.

1.p Model systems in which agents model the beliefs of other
2.p Study auctions with mixed-equilibrium bidding strategies.
3.p Can solitons be used for quantum information processing?

O c&  8


c    Data structures; graph algorithms; combinatorial