http://wiki.cs.princeton.edu/api.php?action=feedcontributions&user=Arvindn&feedformat=atomCSWiki - User contributions [en]2020-10-28T21:01:50ZUser contributionsMediaWiki 1.27.0http://wiki.cs.princeton.edu/index.php?title=UgradResearchTopics&diff=11828UgradResearchTopics2015-04-14T18:29:01Z<p>Arvindn: /* Dr. Arvind Narayanan 308 Sherrerd Hall */</p>
<hr />
<div>=Suggested Undergraduate Research Topics=<br />
<br />
Links to many research areas in the department may be found <br />
[http://www.cs.princeton.edu/research/areas/ here] while links<br />
to projects may be found<br />
[http://www.cs.princeton.edu/research/projects/ here].<br />
<br />
===Prof. [http://www.cs.princeton.edu/~appel/ Andrew Appel], Room 222 ===<br />
* Research Areas: Formal methods, programming languages, compilers, computer security.<br />
* Independent Research Topics:<br />
*# Automated theorem proving (suggestion: take COS 441 first).<br />
*# Trustworthiness of voting machines and/or internet voting.<br />
*# Computer game-playing programs.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~arora/ Sanjeev Arora], Room 307=== <br />
* Computational complexity; Probabilistically Checkable Proofs (PCPs); Efficient algorithms for finding approximate solutions to NP-hard problems (or proving that they don't exist); provable bounds for machine learning.<br />
* Independent Research Topics: <br />
*# 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). <br />
*# Experimental Algorithms: Implementing and Evaluating Algorithms using existing software packages. <br />
*# Studying/designing provable algorithms for machine learning and implementions using packages like scipy and MATLAB. <br />
*# Any topic in theoretical computer science.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~august/ David August], Room 221 --- ''On Leave Fall 2014''===<br />
* Research Areas: Computer Architecture and Compilers.<br />
* Independent Research Topics:<br />
*# Any interesting topic in computer architecture or compilers.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~mbraverm/ Mark Braverman], Room 411 ---''On Leave Spring 2015''===<br />
* Research Areas: computational complexity, algorithms, applied probability, computability over the real numbers, game theory and mechanism design, information theory, applications of machine learning in healthcare and medicine. <br />
* Independent Research Topics: <br />
*# Topics in computational and communication complexity.<br />
*# Applications of information theory in complexity theory.<br />
*# Algorithms for problems under real-life assumptions.<br />
*# Game theory, network effects, and mechanism design.<br />
*# Computation involving dynamical systems, fractals, and cellular automata. <br />
*# Game theory applied to problems in healthcare.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~moses/ Moses Charikar], Room 305 ---- ''On Leave Fall 2014 and Spring 2015'' ===<br />
*Research Areas: Design and analysis of algorithms, particularly approximation algorithms, on-line algorithms and efficient algorithms for dealing with large volumes of data.<br />
*Independent Research Topics:<br />
*# Reconstructing evolutionary trees from biological data.<br />
*# Algorithms for clustering data - theory as well as impementation.<br />
*# Investigating the gap of mathematical programming relaxations for optimization problems. (This requires a strong math background).<br />
*# Any other topic in advanced algorithms or discrete mathematics.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~chazelle/ Bernard Chazelle], Room 404 ---- ''On Leave Fall 2014 and Spring 2015'' ===<br />
*Research Areas: Natural Algorithms, Computational Geometry, Sublinear Algorithms. <br />
*Independent Research Topics<br />
*# Natural algorithms (flocking, swarming, social networks, etc).<br />
*# Sublinear algorithms<br />
*# Self-improving algorithms<br />
*# Markov data structures<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~doug/ Douglas Clark], Room 309 ===<br />
*Research Areas: Computer architecture and organization; architecturally-focused performance analysis.<br />
*Independent Research Topics:<br />
*# 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 partner.<br />
*# 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.<br />
*# Other topics, depending on student interest.<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~rdondero/ Robert Dondero], Room 206 ===<br />
*Research Areas: Software engineering; software engineering education.<br />
*Independent Research Topics:<br />
*#Develop or evaluate tools to facilitate student learning in undergraduate computer science courses at Princeton, and beyond.<br />
*#In particular, can code critiquing tools help students learn about software quality?<br />
<br />
=== Prof. Zeev Dvir, Room 405 ===<br />
*Research Areas: Research Areas: computational complexity, pseudo-randomness, coding theory and discrete mathematics.<br />
*Independent Research: I have various research problems related to Pseudorandomness, Coding theory, Complexity and Discrete mathematics - all of which require strong mathematical background<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~feamster/ Nick Feamster], 310 Sherrerd Hall ===<br />
* Research Areas: Networking, Security, Anti-Censorship<br />
<br />
*Independent Research Topics:<br />
**Performance measurement of broadband and mobile access networks (and relations to policy)<br />
***Pinpointing locations of congestion (e.g., Comcast/Netflix)<br />
***Designing strategies for settlement strategies<br />
***Pricing strategies for mobile broadband<br />
***Home network performance troubleshooting<br />
**Censorship measurement and circumvention<br />
**Software-defined networking (SDN)<br />
*** Wide-area denial of Service attack prevention with SDN<br />
**Internet of Things (IoT) security<br />
***Anomaly detection<br />
***Device fingerprinting<br />
***Home network intrusion detection and firewalls<br />
<br />
===Dr. [http://www.cs.princeton.edu/~fellbaum/ Christiane Fellbaum], Room 412 ===<br />
* Research Areas: theoretical and computational linguistics, word sense disambiguation, lexical resource construction, English and multilingual WordNet(s), ontology<br />
<br />
* Independent Research Topics:<br />
*# Anything having to do with natural language--come and see me with/for ideas suitable to your background and interests.<br />
*# In the past, students have worked on extensions and interfaces for WordNet (English and WN in other languages),<br />
*# applications of WordNet(s), including:<br />
*## Foreign language tutoring systems,<br />
*## Spelling correction software,<br />
*## Word-finding/suggestion software for ordinary users and people with memory problems,<br />
*# Machine Translation (on the word level)<br />
*# Sentiment and Opinion detection<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~felten/ Edward Felten], 302 Sherrerd Hall ===<br />
*Research Areas: Computer security and privacy; Internet software; technology law and policy.<br />
*Independent Research Topics:<br />
*# Technology for open government.<br />
*# Computer security and privacy.<br />
*# Digital media distribution.<br />
*# Copy protection and peer to peer technologies.<br />
*# Electronic voting.<br />
*# Technology, society and public policy.<br />
*# Any other interesting or offbeat topic.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~af/ Adam Finkelstein], Room 424 ===<br />
*Research Areas: computer graphics, animation.<br />
*Ideas for independent Research Topics:<br />
*# Computer-generated drawings from 3D models.<br />
*# Tools for making visual art using computer graphics.<br />
*# New methods for computer animation.<br />
*# Techniques for medical visualization.<br />
*# Experiments where the data is collected via the internet.<br />
*# Any interesting project in computer graphics.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~mfreed/ Michael Freedman], Room 308 ---- ''On Leave Fall 2014 and Spring 2015'' ===<br />
*Research Areas: Distributed systems, security, networking<br />
*Independent Research Topics:<br />
Projects related to streaming data analysis, datacenter systems and networks, untrusted cloud storage <br />
and applications. Please see my group website at http://sns.cs.princeton.edu/ for current research projects.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~funk/ Thomas Funkhouser], Room 422 ===<br />
* Research Areas: Computer Graphics, Computer Vision.<br />
* Independent Research Topics:<br />
*# Develop methods for 3D scanning of interior environments. <br />
*# Investigate methods for recognizing objects in 3D scans.<br />
*# Develop components of a system to reconstruct 3D models of cities from scannned data.<br />
*# Help build systems for creating new 3D models using a large repository of existing models.<br />
*# Any other projects related to computer graphics or shape analysis.<br />
<br />
<br />
=== Dr. Ananda Gunawardena ("Guna"), 221 Nassau Street - Room 103===<br />
* Research Areas: Educational Technology, Pen-based computing<br />
* Independent Research Topics:<br />
*# Research and develop analytics and pedagogical models for classroom salon (http://classroomsalon.org), a social annotation platform used for collaborative learning.<br />
*# Research and develop usable and scalable pen-based applications with particular emphasis on sketch recognition with domain specific information.<br />
<br />
<br />
<br />
=== Dr. Alan Kaplan, 221 Nassau Street - Room 105===<br />
"Civic Computing" Seminar, Spring 2015 <br />
*Overview: The Independent Work (IW) projects in this seminar will center on the theme of “Civic Computing,” where projects should have an impact by helping some community of interest. <br />
<br />
This IW seminar is not about hacking. Nor is it limited to civic-focused problems per se. In general, the goal of this seminar is to develop IW projects that can have an impact - locally, nationally or even globally. Projects may involve and/or extend existing (open-source) projects, or they can be entirely new ventures. Projects can involve mobile devices, web platforms, cloud-based backends, open APIs/data, hardware sensors, etc. But the end result should, quite simply, help people and communities in some way.<br />
<br />
Here are a few examples to give a sense of the types of projects that can be developed under this seminar:<br />
*# Create a mobile geo-based framework that integrates commercial-off-the-shelf sensors (e.g., biometric, microscopes, radiological) with mobile devices (smartphones and tablets). Such a framework would enable collection and analysis of samples (such as medical or environmental) in the field.<br />
*# Working with a local elementary school, develop a novel approach to teaching programming using the Raspberry Pi platform. The final result should be generic is the sense that it can be re-used by any elementary educator, either in the US or internationally.<br />
*# Based on the MicroMappers framework (http://micromappers.org), develop an automated/semi-automated approach to improve the analysis of UAV imagery for disaster response.<br />
*# Develop a mobile food donation platform using Internet of Things technologies so that citizens can easily purchase food products for donations at local soup kitchens and food banks.<br />
<br />
Please contact Dr. Kaplan (ak18@cs.princeton.edu) or Colleen Kenny-McGinley for additional details.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~bwk/ Brian Kernighan], Room 311 ===<br />
* Research Areas: application-specific languages, document preparation, user interfaces, software tools, programming methodology<br />
*Independent Research Topics:<br />
*# Application-oriented languages, scripting languages.<br />
*# Tools; user interfaces; web services.<br />
*# AMPL and optimization.<br />
*# Joint work with other departments.<br />
*# For a list of less than half-baked ideas [http://www.cs.princeton.edu/~bwk/iw.ideas Look Here]<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~kintali/ Shiva Kintali], Room 206 ===<br />
* Research Areas: Computational Complexity, Graph Theory and Combinatorial Optimization.<br />
* Prerequisites: Reasonable mathematical maturity, knowledge of algorithm design and analysis.<br />
*Independent Research Topics:<br />
*# Topics related to [http://kintali.wordpress.com/2009/06/23/graceful-tree-conjecture/ Graceful Tree Conjecture], graph reconstruction conjecture, graph coloring and Pfaffians.<br />
*# Topics related to [http://kintali.wordpress.com/2010/09/02/hardness-of-graph-isomorphism/ Graph Isomorphism], [http://kintali.wordpress.com/2011/03/05/graph-isomorphism-and-bounded-tree-width/ Isomorphism of bounded treewidth graphs], [http://kintali.wordpress.com/2010/01/28/approximating-treewidth/ approximating treewidth] of special classes of graphs.<br />
*# Topics related to expander graphs, space-efficient computation and the L vs NL problem.<br />
*# Topics related to directed versions of treewidth (Eg: directed treewidth, D-width, DAG-width, Kelly-Width).<br />
*# Topics related to metric embedding and flow-cut gaps.<br />
*# Topics related to Speech synthesis, Semi-supervised learning, Collaborative filtering and Recommendation algorithms.<br />
<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~aslp/ Andrea LaPaugh], Room 304 ===<br />
*Research Areas: Search and retrieval of information; data mining, particularly clustering; combinatorial algorithms<br />
*Independent Research Topics:<br />
*# Investigating new characterizations of the graph structure of the Web or other social networks.<br />
*# Experimental evaluations of clustering algorithms.<br />
*# Data analysis within social networks.<br />
*# Other topics with an information discovery or management aspect, including novel applications using databases or information retrieval.<br />
<br />
=== Dr. [http://www.danleyzberg.com Dan Leyzberg], Room 208 ===<br />
*Research Areas: human-robot interaction, human-computer interaction, online tools for computer science education.<br />
*Independent Research Topics:<br />
*# How do people actually interact with technology? Investigate human-computer or human-robot interaction with experimental methodologies from the social sciences, including psychology and cognitive science. First step: identify the technology and usage/engagement metrics you might be interested in studying. You will write code that collects and analyzes this data.<br />
*# Help me build tools for computer science education at Princeton and beyond. I taught high school computer science for many years and if you took any computer science at the high school level, you know that the tools available to teachers are relatively primitive. Princeton has a few internal tools developed for COS 126 that would be great to make available to high school students or to other colleges students such as the [http://www.cs.princeton.edu/~cos126/java_visualize/ Java Visualizer] and [http://www.cs.princeton.edu/~cos126/websheets/index.php?group=Distinct+Reverse+NOrdered+NSwap+Commonest#Reverse Websheets]. You are not limited to these existing tools; propose a tool that might be useful to students and we'll try to make it work!<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~li/ Kai Li], Room 321 ===<br />
*Research Areas: Distributed systems; storage systems; content-based search and data analysis of large datasets.<br />
*Independent Research Topics:<br />
*# Fast communication mechanisms for heterogeneous clusters.<br />
*# Approximate nearest-neighbor search for high dimensional data.<br />
*# Data analysis and prediction of in-patient medical data.<br />
*#Optimized implementation of classification algorithms on manycore processors.<br />
<br />
=== Dr. Xiaoyan Li, 221 Nassau Street - Room 104 ===<br />
*Research areas: Information retrieval, novelty detection, question answering and text mining<br />
*Independent Research Topics:<br />
*# Explore new statistical retrieval models.<br />
*# Passage retrieval models and relevance feedback models.<br />
*# Evaluating existing document clustering techniques.<br />
*# Explore fast and efficient document clustering approach.<br />
*# Any interesting project related to information retrieval and text mining.<br />
<br />
=== Prof. [http://www.princeton.edu/~mrm/ Margaret Martonosi], Room 410 ===<br />
*Research Areas: Computer architectures and the hardware/software interface, mobile networks, and technology for developing regions.<br />
<br />
Possible research topics include:<br />
<br />
* Green Data Centers<br />
* Mobile Computing<br />
* Cell phone applications and programming models<br />
* Energy-efficient computer architecture<br />
* Experiment with software development and research on the OpenXC platform (http://openxcplatform.com/). This platform provides an API to an automobile's data and can be used by Android apps to access vehicle data. Emulators are available so you don't need Open XC hardware (or a car!) to get started, but some cool research and software seems possible through this. <br />
Or email (mrm@princeton.edu) and pitch an idea roughly in this space!<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~cmoretti/ Christopher Moretti], Room 208 ===<br />
*Research areas: Distributed systems, high-throughput computing, computer science/engineering education<br />
*Independent Research Topics:<br />
*# Expansion, improvement, and evaluation of open-source distributed computing software.<br />
*# Applications of distributed computing for "big science" (e.g. biometrics, data mining, bioinformatics)<br />
*# Software and best practices for computer science education and study, especially Princeton's 126/217/226 sequence or MOOCs development<br />
*# Sports analytics and/or crowd-sourced computing<br />
<br />
=== Dr. [http://randomwalker.info/ Arvind Narayanan] 308 Sherrerd Hall ===<br />
<br />
Research areas: broadly, privacy and security. Especially online tracking and Bitcoin.<br />
<br />
Some topics and questions I'm interested in:<br />
<br />
'''1. What can be inferred about people based on publicly available online data?'''<br />
<br />
If someone ''really'' wanted to find out personal things about you online, how far could they get? Let's investigate this by writing a bot which, given an identity (say, an email address), collects and aggregates information from various sites about that person. Ideally, it should be able to automatically figure out which information is current and which is out of date, reconcile conflicts, make new inferences based on multiple pieces of data, and hook into the "deep web" — pages that are not directly visible on web searches.<br />
<br />
'''2. Reverse engineering the Web to expose poor security and privacy'''<br />
<br />
Web companies track us online and compile extensive databases of our personal information. The personal behavioral profiles created through tracking are used for targeted advertising, price discrimination, targeted political emails, and various other practices that make people uncomfortable. I have an ongoing long-term project to automatically reverse engineer web trackers to determine what information companies have collected about you and what they are using it for. There are many interesting sub-projects to work on.<br />
<br />
'''3. Various Bitcoin-related projects'''<br />
<br />
Can we make a more secure Bitcoin wallet? Just how anonymous are Bitcoin users? Can we create an "early-warning system" that connects to a large number of P2P Bitcoin nodes and looks for signs of possible attacks on the security or stability of the system? What applications can we build on top of block chain technology?<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~vivek/ Vivek Pai], Room 322 ---- ''On Leave Fall 2014 and Spring 2015'' ===<br />
*Research Areas: Network/Web servers, operating systems, high-performance applications.<br />
*Independent Research Topics:<br />
*# Tiny devices, such as the Raspberry Pi, are getting more capable and rivaling servers of yesteryear. Can they be used to build low-cost infrastructure?<br />
*# Content Distribution Networks (CDNs) are commonly used to deliver Web content, but no standard monitoring system exists to easily gauge their relative performance. Can you build one that reasonably compares different CDNs?<br />
*# What kind of memory patterns do scientific applications exhibit? Are they a good match for systems like SSDAlloc?<br />
<br />
=== '''Dr. Iasonas Petras, Room 209''' ===<br />
*Research Areas: Information Based Complexity, Numerical Analysis, Quantum Computation.<br />
*Prerequisites: Reasonable mathematical maturity. In case of a project related to Quantum Computation a certain familiarity with quantum mechanics is required (related courses: ELE 396/PHY 208).<br />
*Possible research topics include:<br />
'''1. Quantum algorithms and circuits:'''<br />
* i. Design or simulation quantum circuits implementing quantum algorithms.<br />
* ii. Design of quantum algorithms solving continuous problems (such as Eigenvalue problems for Partial Differential Equations).<br />
'''2. Information Based Complexity:'''<br />
* i. Necessary and sufficient conditions for tractability of Linear and Linear Tensor Product Problems in various settings (for example worst case or average case). <br />
* ii. Necessary and sufficient conditions for tractability of Linear and Linear Tensor Product Problems under new tractability and error criteria.<br />
'''3. Topics in Scientific Computation<br />
* i. Randomness, Pseudorandomness, MC and QMC methods and their applications (Finance, etc)<br />
<br />
=== '''Prof. [http://www.cs.princeton.edu/~jrex/ Jennifer Rexford],''' Room 306 ---- ''On Leave Spring 2015''=== <br />
*Research areas: networking, software-defined networks, network management<br />
*Independent Research Topics:<br />
*# Enterprise and data-center networking solutions built on Software Defined Networking (SDN). For example, middleboxes like firewalls, NATs, intrusion detection systems, and load balancers, routing techniques that equalize latency between gaming or financial-services clients, adaptive measurement of network traffic, networking in challenged environments (e.g., developing regions, emergency situations, etc.).<br />
*# Research on better programming abstractions for SDN, including using or improving our Python-based Pyretic (http://www.frenetic-lang.org/pyretic/) platform. Projects could combine computer networking with other areas like programming languages, network optimization, algorithms, and distributed systems.<br />
*# Any interesting project in computer networking.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~smr/ Szymon Rusinkiewicz], Room 406 ---- ''On Leave Fall 2014 and Spring 2015''===<br />
*Research Areas: computer graphics; acquisition of 3D shape, reflectance, and appearance of real-world objects; novel methods for physical fabrication of objects with particular shape/appearance.<br />
*Independent Research Topics (updated fall, 2011):<br />
*# Construct an efficient and easy-to-use 3-D scanning system for large collections of fragments of archaeological artifacts.<br />
*# Investigate algorithms for computing and visualizing differences between ancient coins struck from similar, but slightly different, dies.<br />
*# Develop a system combining body-mounted cameras and/or Kinect with tactile or auditory feedback to help blind people avoid obstacles.<br />
*# Use computer-controlled milling machines to fabricate bas-reliefs, using substrates of heterogeneous materials.<br />
*# Adapt a MakerBot or other hobbyist-grade manufacturing device to use multiple materials.<br />
*# Implement (and perform the appropriate theoretical sampling/aliasing analysis for) a rendering system that explicitly accounts for the red/green/blue sub-pixels of LCD displays.<br />
*# Other projects in computer graphics and vision, or technologies for documenting and studying cultural heritage objects.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~schapire/ Robert Schapire], Room 407 - On Leave Fall 2014 - Spring 2015 === <br />
*Research Areas: Machine learning<br />
*Independent Research Topics:<br />
*# Implement and run experiments on assorted machine learning algorithms.<br />
*# Apply machine learning algorithms to specific tasks.<br />
*# Any other interesting project related to machine learning.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~rs/ Robert Sedgewick], Room 319 - On Leave Spring 2014===<br />
* Research Areas: Scientific analysis of algorithms, Analytic combinatorics<br />
* Independent Research Topics:<br />
Professor Sedgewick is willing to advise any student who comes up with an idea for independent work from his books, papers, courses, or in his current areas of active research. Send mail or stop by to discuss possible topics if you are interested.<br />
<br />
<br />
===Prof. Sebastian Seung, Room 408 and PNI 153 ===<br />
*Research Areas: computational neuroscience, connectomics, "deep learning" neural networks, social computing, crowdsourcing, citizen science<br />
*Independent Research Topics:<br />
#Gamification of neuroscience, e.g. EyeWire <br />
#Hierarchical segmentation and object detection in biological images <br />
#Crowdsourcing of computer science problems<br />
#Neural network theories of visual computation in the retina<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~jps/ Jaswinder Pal Singh], Room 423 ===<br />
*Research Areas: Boundary of technology and business/applications; building and scaling technology companies with special focus at that boundary; parallel computing systems and applications: parallel and distributed applications and their implications for software and architectural design; system software and programming environments for multiprocessors.<br />
*Independent Research Topics:<br />
*# Develop a startup company idea, and build a plan/prototype for it.<br />
*# Explore tradeoffs at the boundary of technology/product and business/applications in a chosen area.<br />
*# Study and develop methods to infer insights from data in different application areas, from science to search to finance to others. <br />
*# 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.<br />
*#Design and implement a scalable distributed algorithm.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~mona/ Mona Singh], Room 420 - On Leave Spring 2014===<br />
*Research Areas: computational molecular biology, as well as its interface with machine learning and algorithms.<br />
*Independent Research Topics:<br />
*# Whole and cross-genome methods for predicting protein function and protein-protein interactions.<br />
*# Analysis and prediction of biological networks.<br />
*# Computational methods for inferring specific aspects of protein structure from protein sequence data.<br />
*# Any other interesting project in computational molecular biology.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~ret/ Robert Tarjan], Room 324 ===<br />
*Research Areas: Data structures; graph algorithms; combinatorial optimization; computational complexity; computational geometry; parallel algorithms.<br />
*Independent Research Topics:<br />
*# Implement one or more data structures or combinatorial algorithms to provide insight into their empirical behavior.<br />
*# Design and/or analyze various data structures and combinatorial algorithms.<br />
<br />
=== Prof. [http://function.princeton.edu/ogt.html/ Olga Troyanskaya], Room 320 ===<br />
*Research Areas: Bioinformatics; analysis of large-scale biological data sets (genomics, gene expression, proteomics, biological networks); algorithms for integration of data from multiple data sources; visualization of biological data; machine learning methods in bioinformatics.<br />
*Independent Research Topics:<br />
*# Implement and evaluate one or more gene expression analysis algorithm.<br />
*# Develop algorithms for assessment of performance of genomic analysis methods.<br />
*# Develop, implement, and evaluate visualization tools for heterogeneous biological data.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~dpw/ David Walker], Room 211=== <br />
*Research Areas: Programming languages, type systems, compilers, domain-specific languages, software-defined networking and security.<br />
Independent Research Topics: Any other interesting project that involves humanitarian hacking, functional programming, domain-specific programming languages, type systems, compilers, software-defined networking, fault tolerance, language-based security, theorem proving, logic or logical frameworks.<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~wayne/contact/ Kevin Wayne], Room 207 ===<br />
*Research Areas: design, analysis, and implementation of algorithms; data structures; combinatorial optimization; graphs and networks.<br />
*Independent Research Topics:<br />
*# Design and implement computer visualizations of algorithms or data structures.<br />
*# Develop pedagogical tools or programming assignments for the computer science curriculum at Princeton and beyond.<br />
*# Develop assessment infrastructure and assessments for MOOCs.<br />
<br />
= ''Opportunities outside the department'' =<br />
<br />
We encourage students to look in to doing interdisciplinary computer science research and to work with professors in departments other than computer science. However, every CS independent work project must have a strong computer science element (even if it has other scientific or artistic elements as well.) To do a project with an advisor outside of computer science you must have permission of the department. This can be accomplished by having a second co-advisor within the computer science department or by contacting the independent work supervisor about the project and having he or she sign the independent work proposal form.<br />
<br />
Here is a list of professors outside the computer science department who are eager to work with computer science undergraduates.<br />
<br />
===Prof. Mung Chiang, B238, E Quad. chiangm@princeton.edu===<br />
*Professor of Electrical Engineering, Associate Faculty of Computer Science <br />
Director of the EDGE Lab<br />
*Research Interests:<br />
*# Fog Networking: The cloud descending to be among the phones, watches, and set-top boxes. What is an architecture for the Internet of Things? <br />
*# Smart Data Pricing: Shared mobile data plan, sponsored content, application-based pricing: How does economics and networking work together for consumers, operators, and content providers? <br />
*# Social Learning Networks: MOOC and flipped classroom: how can we use big data and social networks to enhance learning efficacy?<br />
<br />
=== Prof. [http://www.princeton.edu/~sharad/ Sharad Malik], Engineering Quad, Room B224 ===<br />
*Research Areas: <br />
*#Design of reliable hardware systems<br />
*#Verifying complex software and hardware systems<br />
<br />
<br />
<br />
=== Prof. Prateek Mittal, Engineering Quadrangle, pmittal@princeton.edu ===<br />
<br />
*Research Areas: <br />
*# Internet security and privacy <br />
*# Social Networks<br />
*# Privacy technologies, anonymous communication<br />
*# Network Science<br />
<br />
*Ideas for Independent Research Topics:<br />
*#Internet security and privacy: The insecurity of Internet protocols and services threatens the safety of our critical network infrastructure and billions of end users. How can we defend end users as well as our critical network infrastructure from attacks?<br />
*#Trustworthy social systems: Online social networks (OSNs) such as Facebook, Google+, and Twitter have revolutionized the way our society communicates. How can we leverage social connections between users to design the next generation of communication systems?<br />
*#Privacy Technologies: Privacy on the Internet is eroding rapidly, with businesses and governments mining sensitive user information. How can we protect the privacy of our online communications? The Tor project (https://www.torproject.org/) is a potential application of interest.<br />
<br />
=== Prof. [http://weblamp.princeton.edu/~psych/psychology/research/norman/index.php Ken Norman], Room 3-N-18 Green Hall===<br />
* Research Areas: Memory, the brain and computation <br />
* Lab: [http://compmem.princeton.edu/ Princeton Computational Memory Lab]<br />
<br />
Potential research topics<br />
<br />
* Methods for decoding cognitive state information from neuroimaging data (fMRI and EEG) <br />
* Neural network simulations of learning and memory<br />
<br />
=== [http://www.janet.vertesi.com/~jv/ Janet Vertesi], Sociology Dept, Wallace Hall 122===<br />
<br />
*Research areas: Sociology of Technology; Human-Computer Interaction (qualitative); Informatics and Information Science; Computer-Supported Cooperative Work; Ubiquitous and Urban Computing.<br />
<br />
*About this research: Human-Computer Interaction is an exciting and expanding community of computer scientists, anthropologists, sociologists, and critical theorists who examine computing "in the wild" and are dramatically changing our sense of the possibilities of human technological experience. My research takes place at the intersection of sociology and computer science, and uses qualitative methods to build new software and hardware tools supporting a wider range of technological experiences. To learn more, visit my website: http://janet.vertesi.com<br />
<br />
*Independent Research topics:<br />
<br />
*1. Seeking a student to help build an Evernote plug-in to support group qualitative research. Must be ready to engage with not only technical specifications but also to think about critical theory, feminist theory, and ethnographic sensibilities.<br />
<br />
*2. Got an idea for a project on computing in the developing world? or urban infrastructures? Or mixed-reality gaming? Let me know. I'm always looking out for interesting way to use qualitative research methods to better understand how users "in the wild" appropriate technologies into their daily lives, and using those insights to inform the design of new technological systems and possibilities.<br />
<br />
===Prof. David Wentzlaff, Engineering Quadrangle, Room 228===<br />
*Research Areas: Computer Architecture, Parallel Computing, Cloud <br />
Computing, Operating Systems, Sustainable Computing.<br />
*Independent Research Topics:<br />
*# Instrument Princeton's Green (HPCRC) data center<br />
*# Investigate power utilization on an processor core implemented in an FPGA<br />
*# Dismantle and document all of the components in modern electronics. Invent new ways to build computers that can be recycled easier.<br />
*# Other topics in parallel computer architecture or operating systems</div>Arvindnhttp://wiki.cs.princeton.edu/index.php?title=UgradResearchTopics&diff=11827UgradResearchTopics2015-04-14T18:28:36Z<p>Arvindn: /* Dr. Arvind Narayanan 308 Sherrerd Hall */</p>
<hr />
<div>=Suggested Undergraduate Research Topics=<br />
<br />
Links to many research areas in the department may be found <br />
[http://www.cs.princeton.edu/research/areas/ here] while links<br />
to projects may be found<br />
[http://www.cs.princeton.edu/research/projects/ here].<br />
<br />
===Prof. [http://www.cs.princeton.edu/~appel/ Andrew Appel], Room 222 ===<br />
* Research Areas: Formal methods, programming languages, compilers, computer security.<br />
* Independent Research Topics:<br />
*# Automated theorem proving (suggestion: take COS 441 first).<br />
*# Trustworthiness of voting machines and/or internet voting.<br />
*# Computer game-playing programs.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~arora/ Sanjeev Arora], Room 307=== <br />
* Computational complexity; Probabilistically Checkable Proofs (PCPs); Efficient algorithms for finding approximate solutions to NP-hard problems (or proving that they don't exist); provable bounds for machine learning.<br />
* Independent Research Topics: <br />
*# 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). <br />
*# Experimental Algorithms: Implementing and Evaluating Algorithms using existing software packages. <br />
*# Studying/designing provable algorithms for machine learning and implementions using packages like scipy and MATLAB. <br />
*# Any topic in theoretical computer science.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~august/ David August], Room 221 --- ''On Leave Fall 2014''===<br />
* Research Areas: Computer Architecture and Compilers.<br />
* Independent Research Topics:<br />
*# Any interesting topic in computer architecture or compilers.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~mbraverm/ Mark Braverman], Room 411 ---''On Leave Spring 2015''===<br />
* Research Areas: computational complexity, algorithms, applied probability, computability over the real numbers, game theory and mechanism design, information theory, applications of machine learning in healthcare and medicine. <br />
* Independent Research Topics: <br />
*# Topics in computational and communication complexity.<br />
*# Applications of information theory in complexity theory.<br />
*# Algorithms for problems under real-life assumptions.<br />
*# Game theory, network effects, and mechanism design.<br />
*# Computation involving dynamical systems, fractals, and cellular automata. <br />
*# Game theory applied to problems in healthcare.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~moses/ Moses Charikar], Room 305 ---- ''On Leave Fall 2014 and Spring 2015'' ===<br />
*Research Areas: Design and analysis of algorithms, particularly approximation algorithms, on-line algorithms and efficient algorithms for dealing with large volumes of data.<br />
*Independent Research Topics:<br />
*# Reconstructing evolutionary trees from biological data.<br />
*# Algorithms for clustering data - theory as well as impementation.<br />
*# Investigating the gap of mathematical programming relaxations for optimization problems. (This requires a strong math background).<br />
*# Any other topic in advanced algorithms or discrete mathematics.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~chazelle/ Bernard Chazelle], Room 404 ---- ''On Leave Fall 2014 and Spring 2015'' ===<br />
*Research Areas: Natural Algorithms, Computational Geometry, Sublinear Algorithms. <br />
*Independent Research Topics<br />
*# Natural algorithms (flocking, swarming, social networks, etc).<br />
*# Sublinear algorithms<br />
*# Self-improving algorithms<br />
*# Markov data structures<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~doug/ Douglas Clark], Room 309 ===<br />
*Research Areas: Computer architecture and organization; architecturally-focused performance analysis.<br />
*Independent Research Topics:<br />
*# 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 partner.<br />
*# 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.<br />
*# Other topics, depending on student interest.<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~rdondero/ Robert Dondero], Room 206 ===<br />
*Research Areas: Software engineering; software engineering education.<br />
*Independent Research Topics:<br />
*#Develop or evaluate tools to facilitate student learning in undergraduate computer science courses at Princeton, and beyond.<br />
*#In particular, can code critiquing tools help students learn about software quality?<br />
<br />
=== Prof. Zeev Dvir, Room 405 ===<br />
*Research Areas: Research Areas: computational complexity, pseudo-randomness, coding theory and discrete mathematics.<br />
*Independent Research: I have various research problems related to Pseudorandomness, Coding theory, Complexity and Discrete mathematics - all of which require strong mathematical background<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~feamster/ Nick Feamster], 310 Sherrerd Hall ===<br />
* Research Areas: Networking, Security, Anti-Censorship<br />
<br />
*Independent Research Topics:<br />
**Performance measurement of broadband and mobile access networks (and relations to policy)<br />
***Pinpointing locations of congestion (e.g., Comcast/Netflix)<br />
***Designing strategies for settlement strategies<br />
***Pricing strategies for mobile broadband<br />
***Home network performance troubleshooting<br />
**Censorship measurement and circumvention<br />
**Software-defined networking (SDN)<br />
*** Wide-area denial of Service attack prevention with SDN<br />
**Internet of Things (IoT) security<br />
***Anomaly detection<br />
***Device fingerprinting<br />
***Home network intrusion detection and firewalls<br />
<br />
===Dr. [http://www.cs.princeton.edu/~fellbaum/ Christiane Fellbaum], Room 412 ===<br />
* Research Areas: theoretical and computational linguistics, word sense disambiguation, lexical resource construction, English and multilingual WordNet(s), ontology<br />
<br />
* Independent Research Topics:<br />
*# Anything having to do with natural language--come and see me with/for ideas suitable to your background and interests.<br />
*# In the past, students have worked on extensions and interfaces for WordNet (English and WN in other languages),<br />
*# applications of WordNet(s), including:<br />
*## Foreign language tutoring systems,<br />
*## Spelling correction software,<br />
*## Word-finding/suggestion software for ordinary users and people with memory problems,<br />
*# Machine Translation (on the word level)<br />
*# Sentiment and Opinion detection<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~felten/ Edward Felten], 302 Sherrerd Hall ===<br />
*Research Areas: Computer security and privacy; Internet software; technology law and policy.<br />
*Independent Research Topics:<br />
*# Technology for open government.<br />
*# Computer security and privacy.<br />
*# Digital media distribution.<br />
*# Copy protection and peer to peer technologies.<br />
*# Electronic voting.<br />
*# Technology, society and public policy.<br />
*# Any other interesting or offbeat topic.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~af/ Adam Finkelstein], Room 424 ===<br />
*Research Areas: computer graphics, animation.<br />
*Ideas for independent Research Topics:<br />
*# Computer-generated drawings from 3D models.<br />
*# Tools for making visual art using computer graphics.<br />
*# New methods for computer animation.<br />
*# Techniques for medical visualization.<br />
*# Experiments where the data is collected via the internet.<br />
*# Any interesting project in computer graphics.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~mfreed/ Michael Freedman], Room 308 ---- ''On Leave Fall 2014 and Spring 2015'' ===<br />
*Research Areas: Distributed systems, security, networking<br />
*Independent Research Topics:<br />
Projects related to streaming data analysis, datacenter systems and networks, untrusted cloud storage <br />
and applications. Please see my group website at http://sns.cs.princeton.edu/ for current research projects.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~funk/ Thomas Funkhouser], Room 422 ===<br />
* Research Areas: Computer Graphics, Computer Vision.<br />
* Independent Research Topics:<br />
*# Develop methods for 3D scanning of interior environments. <br />
*# Investigate methods for recognizing objects in 3D scans.<br />
*# Develop components of a system to reconstruct 3D models of cities from scannned data.<br />
*# Help build systems for creating new 3D models using a large repository of existing models.<br />
*# Any other projects related to computer graphics or shape analysis.<br />
<br />
<br />
=== Dr. Ananda Gunawardena ("Guna"), 221 Nassau Street - Room 103===<br />
* Research Areas: Educational Technology, Pen-based computing<br />
* Independent Research Topics:<br />
*# Research and develop analytics and pedagogical models for classroom salon (http://classroomsalon.org), a social annotation platform used for collaborative learning.<br />
*# Research and develop usable and scalable pen-based applications with particular emphasis on sketch recognition with domain specific information.<br />
<br />
<br />
<br />
=== Dr. Alan Kaplan, 221 Nassau Street - Room 105===<br />
"Civic Computing" Seminar, Spring 2015 <br />
*Overview: The Independent Work (IW) projects in this seminar will center on the theme of “Civic Computing,” where projects should have an impact by helping some community of interest. <br />
<br />
This IW seminar is not about hacking. Nor is it limited to civic-focused problems per se. In general, the goal of this seminar is to develop IW projects that can have an impact - locally, nationally or even globally. Projects may involve and/or extend existing (open-source) projects, or they can be entirely new ventures. Projects can involve mobile devices, web platforms, cloud-based backends, open APIs/data, hardware sensors, etc. But the end result should, quite simply, help people and communities in some way.<br />
<br />
Here are a few examples to give a sense of the types of projects that can be developed under this seminar:<br />
*# Create a mobile geo-based framework that integrates commercial-off-the-shelf sensors (e.g., biometric, microscopes, radiological) with mobile devices (smartphones and tablets). Such a framework would enable collection and analysis of samples (such as medical or environmental) in the field.<br />
*# Working with a local elementary school, develop a novel approach to teaching programming using the Raspberry Pi platform. The final result should be generic is the sense that it can be re-used by any elementary educator, either in the US or internationally.<br />
*# Based on the MicroMappers framework (http://micromappers.org), develop an automated/semi-automated approach to improve the analysis of UAV imagery for disaster response.<br />
*# Develop a mobile food donation platform using Internet of Things technologies so that citizens can easily purchase food products for donations at local soup kitchens and food banks.<br />
<br />
Please contact Dr. Kaplan (ak18@cs.princeton.edu) or Colleen Kenny-McGinley for additional details.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~bwk/ Brian Kernighan], Room 311 ===<br />
* Research Areas: application-specific languages, document preparation, user interfaces, software tools, programming methodology<br />
*Independent Research Topics:<br />
*# Application-oriented languages, scripting languages.<br />
*# Tools; user interfaces; web services.<br />
*# AMPL and optimization.<br />
*# Joint work with other departments.<br />
*# For a list of less than half-baked ideas [http://www.cs.princeton.edu/~bwk/iw.ideas Look Here]<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~kintali/ Shiva Kintali], Room 206 ===<br />
* Research Areas: Computational Complexity, Graph Theory and Combinatorial Optimization.<br />
* Prerequisites: Reasonable mathematical maturity, knowledge of algorithm design and analysis.<br />
*Independent Research Topics:<br />
*# Topics related to [http://kintali.wordpress.com/2009/06/23/graceful-tree-conjecture/ Graceful Tree Conjecture], graph reconstruction conjecture, graph coloring and Pfaffians.<br />
*# Topics related to [http://kintali.wordpress.com/2010/09/02/hardness-of-graph-isomorphism/ Graph Isomorphism], [http://kintali.wordpress.com/2011/03/05/graph-isomorphism-and-bounded-tree-width/ Isomorphism of bounded treewidth graphs], [http://kintali.wordpress.com/2010/01/28/approximating-treewidth/ approximating treewidth] of special classes of graphs.<br />
*# Topics related to expander graphs, space-efficient computation and the L vs NL problem.<br />
*# Topics related to directed versions of treewidth (Eg: directed treewidth, D-width, DAG-width, Kelly-Width).<br />
*# Topics related to metric embedding and flow-cut gaps.<br />
*# Topics related to Speech synthesis, Semi-supervised learning, Collaborative filtering and Recommendation algorithms.<br />
<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~aslp/ Andrea LaPaugh], Room 304 ===<br />
*Research Areas: Search and retrieval of information; data mining, particularly clustering; combinatorial algorithms<br />
*Independent Research Topics:<br />
*# Investigating new characterizations of the graph structure of the Web or other social networks.<br />
*# Experimental evaluations of clustering algorithms.<br />
*# Data analysis within social networks.<br />
*# Other topics with an information discovery or management aspect, including novel applications using databases or information retrieval.<br />
<br />
=== Dr. [http://www.danleyzberg.com Dan Leyzberg], Room 208 ===<br />
*Research Areas: human-robot interaction, human-computer interaction, online tools for computer science education.<br />
*Independent Research Topics:<br />
*# How do people actually interact with technology? Investigate human-computer or human-robot interaction with experimental methodologies from the social sciences, including psychology and cognitive science. First step: identify the technology and usage/engagement metrics you might be interested in studying. You will write code that collects and analyzes this data.<br />
*# Help me build tools for computer science education at Princeton and beyond. I taught high school computer science for many years and if you took any computer science at the high school level, you know that the tools available to teachers are relatively primitive. Princeton has a few internal tools developed for COS 126 that would be great to make available to high school students or to other colleges students such as the [http://www.cs.princeton.edu/~cos126/java_visualize/ Java Visualizer] and [http://www.cs.princeton.edu/~cos126/websheets/index.php?group=Distinct+Reverse+NOrdered+NSwap+Commonest#Reverse Websheets]. You are not limited to these existing tools; propose a tool that might be useful to students and we'll try to make it work!<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~li/ Kai Li], Room 321 ===<br />
*Research Areas: Distributed systems; storage systems; content-based search and data analysis of large datasets.<br />
*Independent Research Topics:<br />
*# Fast communication mechanisms for heterogeneous clusters.<br />
*# Approximate nearest-neighbor search for high dimensional data.<br />
*# Data analysis and prediction of in-patient medical data.<br />
*#Optimized implementation of classification algorithms on manycore processors.<br />
<br />
=== Dr. Xiaoyan Li, 221 Nassau Street - Room 104 ===<br />
*Research areas: Information retrieval, novelty detection, question answering and text mining<br />
*Independent Research Topics:<br />
*# Explore new statistical retrieval models.<br />
*# Passage retrieval models and relevance feedback models.<br />
*# Evaluating existing document clustering techniques.<br />
*# Explore fast and efficient document clustering approach.<br />
*# Any interesting project related to information retrieval and text mining.<br />
<br />
=== Prof. [http://www.princeton.edu/~mrm/ Margaret Martonosi], Room 410 ===<br />
*Research Areas: Computer architectures and the hardware/software interface, mobile networks, and technology for developing regions.<br />
<br />
Possible research topics include:<br />
<br />
* Green Data Centers<br />
* Mobile Computing<br />
* Cell phone applications and programming models<br />
* Energy-efficient computer architecture<br />
* Experiment with software development and research on the OpenXC platform (http://openxcplatform.com/). This platform provides an API to an automobile's data and can be used by Android apps to access vehicle data. Emulators are available so you don't need Open XC hardware (or a car!) to get started, but some cool research and software seems possible through this. <br />
Or email (mrm@princeton.edu) and pitch an idea roughly in this space!<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~cmoretti/ Christopher Moretti], Room 208 ===<br />
*Research areas: Distributed systems, high-throughput computing, computer science/engineering education<br />
*Independent Research Topics:<br />
*# Expansion, improvement, and evaluation of open-source distributed computing software.<br />
*# Applications of distributed computing for "big science" (e.g. biometrics, data mining, bioinformatics)<br />
*# Software and best practices for computer science education and study, especially Princeton's 126/217/226 sequence or MOOCs development<br />
*# Sports analytics and/or crowd-sourced computing<br />
<br />
=== Dr. [http://randomwalker.info/ Arvind Narayanan] 308 Sherrerd Hall ===<br />
<br />
Research areas: broadly, privacy and security. Especially online tracking and Bitcoin.<br />
<br />
Some topics and questions I'm interested in:<br />
<br />
'''1. What can be inferred about people based on publicly available online data?'''<br />
<br />
If someone ''really'' wanted to find out personal things about you online, how far could they get? Let's investigate this by writing a bot which, given an identity (say, an email address), collects and aggregates information from various sites about that person. Ideally, it should be able to automatically figure out which information is current and which is out of date, reconcile conflicts, make new inferences based on multiple pieces of data, and hook into the "deep web" — pages that are not directly visible on web searches.<br />
<br />
'''2. Reverse engineering the Web to expose poor security and privacy'''<br />
<br />
Web companies track us online and compile extensive databases of our personal information. The personal behavioral profiles created through tracking are used for targeted advertising, price discrimination, targeted political emails, and various other practices that make people uncomfortable. I have an ongoing long-term project to automatically reverse engineer web trackers to determine what information companies have collected about you and what they are using it for. There are many interesting sub-projects to work on.<br />
<br />
'''3. Various Bitcoin-related projects'''<br />
<br />
Can we make a more secure Bitcoin wallet? Just how anonymous are Bitcoin users? Can we create an "early-warning system" that connects to a large number of P2P Bitcoin nodes and looks for signs of possible attacks on the security or stability of the system?<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~vivek/ Vivek Pai], Room 322 ---- ''On Leave Fall 2014 and Spring 2015'' ===<br />
*Research Areas: Network/Web servers, operating systems, high-performance applications.<br />
*Independent Research Topics:<br />
*# Tiny devices, such as the Raspberry Pi, are getting more capable and rivaling servers of yesteryear. Can they be used to build low-cost infrastructure?<br />
*# Content Distribution Networks (CDNs) are commonly used to deliver Web content, but no standard monitoring system exists to easily gauge their relative performance. Can you build one that reasonably compares different CDNs?<br />
*# What kind of memory patterns do scientific applications exhibit? Are they a good match for systems like SSDAlloc?<br />
<br />
=== '''Dr. Iasonas Petras, Room 209''' ===<br />
*Research Areas: Information Based Complexity, Numerical Analysis, Quantum Computation.<br />
*Prerequisites: Reasonable mathematical maturity. In case of a project related to Quantum Computation a certain familiarity with quantum mechanics is required (related courses: ELE 396/PHY 208).<br />
*Possible research topics include:<br />
'''1. Quantum algorithms and circuits:'''<br />
* i. Design or simulation quantum circuits implementing quantum algorithms.<br />
* ii. Design of quantum algorithms solving continuous problems (such as Eigenvalue problems for Partial Differential Equations).<br />
'''2. Information Based Complexity:'''<br />
* i. Necessary and sufficient conditions for tractability of Linear and Linear Tensor Product Problems in various settings (for example worst case or average case). <br />
* ii. Necessary and sufficient conditions for tractability of Linear and Linear Tensor Product Problems under new tractability and error criteria.<br />
'''3. Topics in Scientific Computation<br />
* i. Randomness, Pseudorandomness, MC and QMC methods and their applications (Finance, etc)<br />
<br />
=== '''Prof. [http://www.cs.princeton.edu/~jrex/ Jennifer Rexford],''' Room 306 ---- ''On Leave Spring 2015''=== <br />
*Research areas: networking, software-defined networks, network management<br />
*Independent Research Topics:<br />
*# Enterprise and data-center networking solutions built on Software Defined Networking (SDN). For example, middleboxes like firewalls, NATs, intrusion detection systems, and load balancers, routing techniques that equalize latency between gaming or financial-services clients, adaptive measurement of network traffic, networking in challenged environments (e.g., developing regions, emergency situations, etc.).<br />
*# Research on better programming abstractions for SDN, including using or improving our Python-based Pyretic (http://www.frenetic-lang.org/pyretic/) platform. Projects could combine computer networking with other areas like programming languages, network optimization, algorithms, and distributed systems.<br />
*# Any interesting project in computer networking.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~smr/ Szymon Rusinkiewicz], Room 406 ---- ''On Leave Fall 2014 and Spring 2015''===<br />
*Research Areas: computer graphics; acquisition of 3D shape, reflectance, and appearance of real-world objects; novel methods for physical fabrication of objects with particular shape/appearance.<br />
*Independent Research Topics (updated fall, 2011):<br />
*# Construct an efficient and easy-to-use 3-D scanning system for large collections of fragments of archaeological artifacts.<br />
*# Investigate algorithms for computing and visualizing differences between ancient coins struck from similar, but slightly different, dies.<br />
*# Develop a system combining body-mounted cameras and/or Kinect with tactile or auditory feedback to help blind people avoid obstacles.<br />
*# Use computer-controlled milling machines to fabricate bas-reliefs, using substrates of heterogeneous materials.<br />
*# Adapt a MakerBot or other hobbyist-grade manufacturing device to use multiple materials.<br />
*# Implement (and perform the appropriate theoretical sampling/aliasing analysis for) a rendering system that explicitly accounts for the red/green/blue sub-pixels of LCD displays.<br />
*# Other projects in computer graphics and vision, or technologies for documenting and studying cultural heritage objects.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~schapire/ Robert Schapire], Room 407 - On Leave Fall 2014 - Spring 2015 === <br />
*Research Areas: Machine learning<br />
*Independent Research Topics:<br />
*# Implement and run experiments on assorted machine learning algorithms.<br />
*# Apply machine learning algorithms to specific tasks.<br />
*# Any other interesting project related to machine learning.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~rs/ Robert Sedgewick], Room 319 - On Leave Spring 2014===<br />
* Research Areas: Scientific analysis of algorithms, Analytic combinatorics<br />
* Independent Research Topics:<br />
Professor Sedgewick is willing to advise any student who comes up with an idea for independent work from his books, papers, courses, or in his current areas of active research. Send mail or stop by to discuss possible topics if you are interested.<br />
<br />
<br />
===Prof. Sebastian Seung, Room 408 and PNI 153 ===<br />
*Research Areas: computational neuroscience, connectomics, "deep learning" neural networks, social computing, crowdsourcing, citizen science<br />
*Independent Research Topics:<br />
#Gamification of neuroscience, e.g. EyeWire <br />
#Hierarchical segmentation and object detection in biological images <br />
#Crowdsourcing of computer science problems<br />
#Neural network theories of visual computation in the retina<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~jps/ Jaswinder Pal Singh], Room 423 ===<br />
*Research Areas: Boundary of technology and business/applications; building and scaling technology companies with special focus at that boundary; parallel computing systems and applications: parallel and distributed applications and their implications for software and architectural design; system software and programming environments for multiprocessors.<br />
*Independent Research Topics:<br />
*# Develop a startup company idea, and build a plan/prototype for it.<br />
*# Explore tradeoffs at the boundary of technology/product and business/applications in a chosen area.<br />
*# Study and develop methods to infer insights from data in different application areas, from science to search to finance to others. <br />
*# 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.<br />
*#Design and implement a scalable distributed algorithm.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~mona/ Mona Singh], Room 420 - On Leave Spring 2014===<br />
*Research Areas: computational molecular biology, as well as its interface with machine learning and algorithms.<br />
*Independent Research Topics:<br />
*# Whole and cross-genome methods for predicting protein function and protein-protein interactions.<br />
*# Analysis and prediction of biological networks.<br />
*# Computational methods for inferring specific aspects of protein structure from protein sequence data.<br />
*# Any other interesting project in computational molecular biology.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~ret/ Robert Tarjan], Room 324 ===<br />
*Research Areas: Data structures; graph algorithms; combinatorial optimization; computational complexity; computational geometry; parallel algorithms.<br />
*Independent Research Topics:<br />
*# Implement one or more data structures or combinatorial algorithms to provide insight into their empirical behavior.<br />
*# Design and/or analyze various data structures and combinatorial algorithms.<br />
<br />
=== Prof. [http://function.princeton.edu/ogt.html/ Olga Troyanskaya], Room 320 ===<br />
*Research Areas: Bioinformatics; analysis of large-scale biological data sets (genomics, gene expression, proteomics, biological networks); algorithms for integration of data from multiple data sources; visualization of biological data; machine learning methods in bioinformatics.<br />
*Independent Research Topics:<br />
*# Implement and evaluate one or more gene expression analysis algorithm.<br />
*# Develop algorithms for assessment of performance of genomic analysis methods.<br />
*# Develop, implement, and evaluate visualization tools for heterogeneous biological data.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~dpw/ David Walker], Room 211=== <br />
*Research Areas: Programming languages, type systems, compilers, domain-specific languages, software-defined networking and security.<br />
Independent Research Topics: Any other interesting project that involves humanitarian hacking, functional programming, domain-specific programming languages, type systems, compilers, software-defined networking, fault tolerance, language-based security, theorem proving, logic or logical frameworks.<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~wayne/contact/ Kevin Wayne], Room 207 ===<br />
*Research Areas: design, analysis, and implementation of algorithms; data structures; combinatorial optimization; graphs and networks.<br />
*Independent Research Topics:<br />
*# Design and implement computer visualizations of algorithms or data structures.<br />
*# Develop pedagogical tools or programming assignments for the computer science curriculum at Princeton and beyond.<br />
*# Develop assessment infrastructure and assessments for MOOCs.<br />
<br />
= ''Opportunities outside the department'' =<br />
<br />
We encourage students to look in to doing interdisciplinary computer science research and to work with professors in departments other than computer science. However, every CS independent work project must have a strong computer science element (even if it has other scientific or artistic elements as well.) To do a project with an advisor outside of computer science you must have permission of the department. This can be accomplished by having a second co-advisor within the computer science department or by contacting the independent work supervisor about the project and having he or she sign the independent work proposal form.<br />
<br />
Here is a list of professors outside the computer science department who are eager to work with computer science undergraduates.<br />
<br />
===Prof. Mung Chiang, B238, E Quad. chiangm@princeton.edu===<br />
*Professor of Electrical Engineering, Associate Faculty of Computer Science <br />
Director of the EDGE Lab<br />
*Research Interests:<br />
*# Fog Networking: The cloud descending to be among the phones, watches, and set-top boxes. What is an architecture for the Internet of Things? <br />
*# Smart Data Pricing: Shared mobile data plan, sponsored content, application-based pricing: How does economics and networking work together for consumers, operators, and content providers? <br />
*# Social Learning Networks: MOOC and flipped classroom: how can we use big data and social networks to enhance learning efficacy?<br />
<br />
=== Prof. [http://www.princeton.edu/~sharad/ Sharad Malik], Engineering Quad, Room B224 ===<br />
*Research Areas: <br />
*#Design of reliable hardware systems<br />
*#Verifying complex software and hardware systems<br />
<br />
<br />
<br />
=== Prof. Prateek Mittal, Engineering Quadrangle, pmittal@princeton.edu ===<br />
<br />
*Research Areas: <br />
*# Internet security and privacy <br />
*# Social Networks<br />
*# Privacy technologies, anonymous communication<br />
*# Network Science<br />
<br />
*Ideas for Independent Research Topics:<br />
*#Internet security and privacy: The insecurity of Internet protocols and services threatens the safety of our critical network infrastructure and billions of end users. How can we defend end users as well as our critical network infrastructure from attacks?<br />
*#Trustworthy social systems: Online social networks (OSNs) such as Facebook, Google+, and Twitter have revolutionized the way our society communicates. How can we leverage social connections between users to design the next generation of communication systems?<br />
*#Privacy Technologies: Privacy on the Internet is eroding rapidly, with businesses and governments mining sensitive user information. How can we protect the privacy of our online communications? The Tor project (https://www.torproject.org/) is a potential application of interest.<br />
<br />
=== Prof. [http://weblamp.princeton.edu/~psych/psychology/research/norman/index.php Ken Norman], Room 3-N-18 Green Hall===<br />
* Research Areas: Memory, the brain and computation <br />
* Lab: [http://compmem.princeton.edu/ Princeton Computational Memory Lab]<br />
<br />
Potential research topics<br />
<br />
* Methods for decoding cognitive state information from neuroimaging data (fMRI and EEG) <br />
* Neural network simulations of learning and memory<br />
<br />
=== [http://www.janet.vertesi.com/~jv/ Janet Vertesi], Sociology Dept, Wallace Hall 122===<br />
<br />
*Research areas: Sociology of Technology; Human-Computer Interaction (qualitative); Informatics and Information Science; Computer-Supported Cooperative Work; Ubiquitous and Urban Computing.<br />
<br />
*About this research: Human-Computer Interaction is an exciting and expanding community of computer scientists, anthropologists, sociologists, and critical theorists who examine computing "in the wild" and are dramatically changing our sense of the possibilities of human technological experience. My research takes place at the intersection of sociology and computer science, and uses qualitative methods to build new software and hardware tools supporting a wider range of technological experiences. To learn more, visit my website: http://janet.vertesi.com<br />
<br />
*Independent Research topics:<br />
<br />
*1. Seeking a student to help build an Evernote plug-in to support group qualitative research. Must be ready to engage with not only technical specifications but also to think about critical theory, feminist theory, and ethnographic sensibilities.<br />
<br />
*2. Got an idea for a project on computing in the developing world? or urban infrastructures? Or mixed-reality gaming? Let me know. I'm always looking out for interesting way to use qualitative research methods to better understand how users "in the wild" appropriate technologies into their daily lives, and using those insights to inform the design of new technological systems and possibilities.<br />
<br />
===Prof. David Wentzlaff, Engineering Quadrangle, Room 228===<br />
*Research Areas: Computer Architecture, Parallel Computing, Cloud <br />
Computing, Operating Systems, Sustainable Computing.<br />
*Independent Research Topics:<br />
*# Instrument Princeton's Green (HPCRC) data center<br />
*# Investigate power utilization on an processor core implemented in an FPGA<br />
*# Dismantle and document all of the components in modern electronics. Invent new ways to build computers that can be recycled easier.<br />
*# Other topics in parallel computer architecture or operating systems</div>Arvindnhttp://wiki.cs.princeton.edu/index.php?title=UgradResearchTopics&diff=11778UgradResearchTopics2014-04-25T01:54:33Z<p>Arvindn: /* Dr. Arvind Narayanan 308 Sherrerd Hall */</p>
<hr />
<div>=Suggested Undergraduate Research Topics=<br />
<br />
Links to many research areas in the department may be found <br />
[http://www.cs.princeton.edu/research/areas/ here] while links<br />
to projects may be found<br />
[http://www.cs.princeton.edu/research/projects/ here].<br />
<br />
===Prof. [http://www.cs.princeton.edu/~appel/ Andrew Appel], Room 219 ===<br />
* Research Areas: Formal methods, programming languages, compilers, computer security.<br />
* Independent Research Topics:<br />
*# Automated theorem proving (suggestion: take COS 441 first).<br />
*# Trustworthiness of voting machines and/or internet voting.<br />
*# Computer game-playing programs.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~arora/ Sanjeev Arora], Room 307=== <br />
* Computational complexity; Probabilistically Checkable Proofs (PCPs); Efficient algorithms for finding approximate solutions to NP-hard problems (or proving that they don't exist); provable bounds for machine learning.<br />
* Independent Research Topics: <br />
*# 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). <br />
*# Experimental Algorithms: Implementing and Evaluating Algorithms using existing software packages. <br />
*# Studying/designing provable algorithms for machine learning and implementions using packages like scipy and MATLAB. <br />
*# Any topic in theoretical computer science.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~august/ David August], Room 209 ---On Leave Fall 2013 & Spring 2014===<br />
* Research Areas: Computer Architecture and Compilers.<br />
* Independent Research Topics:<br />
*# Any interesting topic in computer architecture or compilers.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~mbraverm/ Mark Braverman], Room 411 === <br />
* Research Areas: computational complexity, algorithms, applied probability, computability over the real numbers, game theory and mechanism design, information theory, applications of machine learning in healthcare and medicine. <br />
* Independent Research Topics: <br />
*# Topics in computational and communication complexity.<br />
*# Applications of information theory in complexity theory.<br />
*# Algorithms for problems under real-life assumptions.<br />
*# Game theory, network effects, and mechanism design.<br />
*# Computation involving dynamical systems, fractals, and cellular automata. <br />
*# Game theory applied to problems in healthcare.<br />
<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~moses/ Moses Charikar], Room 305 ---- ''On Leave Fall 2014 and Spring 2015'' ===<br />
*Research Areas: Design and analysis of algorithms, particularly approximation algorithms, on-line algorithms and efficient algorithms for dealing with large volumes of data.<br />
*Independent Research Topics:<br />
*# Reconstructing evolutionary trees from biological data.<br />
*# Algorithms for clustering data - theory as well as impementation.<br />
*# Investigating the gap of mathematical programming relaxations for optimization problems. (This requires a strong math background).<br />
*# Any other topic in advanced algorithms or discrete mathematics.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~chazelle/ Bernard Chazelle], Room 404 ---- ''On Leave Fall 2014 and Spring 2015'' ===<br />
*Research Areas: Natural Algorithms, Computational Geometry, Sublinear Algorithms. <br />
*Independent Research Topics<br />
*# Natural algorithms (flocking, swarming, social networks, etc).<br />
*# Sublinear algorithms<br />
*# Self-improving algorithms<br />
*# Markov data structures<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~doug/ Douglas Clark], Room 309 ===<br />
*Research Areas: Computer architecture and organization; architecturally-focused performance analysis.<br />
*Independent Research Topics:<br />
*# 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 partner.<br />
*# 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.<br />
*# Other topics, depending on student interest.<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~rdondero/ Robert Dondero], Room 206 ===<br />
*Research Areas: Software engineering; software engineering education.<br />
*Independent Research Topics:<br />
*#Develop or evaluate tools to facilitate student learning in undergraduate computer science courses at Princeton, and beyond.<br />
*#In particular, can code critiquing tools help students learn about software quality?<br />
<br />
=== Prof. Zeev Dvir, Room 405 ===<br />
*Research Areas: Research Areas: computational complexity, pseudo-randomness, coding theory and discrete mathematics.<br />
*Independent Research: I have various research problems related to Pseudorandomness, Coding theory, Complexity and Discrete mathematics - all of which require strong mathematical background<br />
<br />
===Dr. [http://www.cs.princeton.edu/~fellbaum/ Christiane Fellbaum], Room 412 ===<br />
* Research Areas: theoretical and computational linguistics, word sense disambiguation, lexical resource construction, English and multilingual WordNet(s), ontology<br />
<br />
* Independent Research Topics:<br />
*# Anything having to do with natural language--come and see me with/for ideas suitable to your background and interests.<br />
*# In the past, students have worked on extensions and interfaces for WordNet (English and WN in other languages),<br />
*# applications of WordNet(s), including:<br />
*## Foreign language tutoring systems,<br />
*## Spelling correction software,<br />
*## Word-finding/suggestion software for ordinary users and people with memory problems,<br />
*# Machine Translation (on the word level)<br />
*# Sentiment and Opinion detection<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~felten/ Edward Felten], 302 Sherrerd Hall ===<br />
*Research Areas: Computer security and privacy; Internet software; technology law and policy.<br />
*Independent Research Topics:<br />
*# Technology for open government.<br />
*# Computer security and privacy.<br />
*# Digital media distribution.<br />
*# Copy protection and peer to peer technologies.<br />
*# Electronic voting.<br />
*# Technology, society and public policy.<br />
*# Any other interesting or offbeat topic.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~af/ Adam Finkelstein], Room 424 ===<br />
*Research Areas: computer graphics, animation.<br />
*Ideas for independent Research Topics:<br />
*# Computer-generated drawings from 3D models.<br />
*# Tools for making visual art using computer graphics.<br />
*# New methods for computer animation.<br />
*# Techniques for medical visualization.<br />
*# Experiments where the data is collected via the internet.<br />
*# Any interesting project in computer graphics.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~mfreed/ Michael Freedman], Room 308 ---- ''On Leave Fall 2014 and Spring 2015'' ===<br />
*Research Areas: Distributed systems, security, networking<br />
*Independent Research Topics:<br />
Projects related to streaming data analysis, datacenter systems and networks, untrusted cloud storage <br />
and applications. Please see my group website at http://sns.cs.princeton.edu/ for current research projects.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~funk/ Thomas Funkhouser], Room 422 ===<br />
* Research Areas: Computer Graphics, Computer Vision.<br />
* Independent Research Topics:<br />
*# Develop methods for 3D scanning of interior environments. <br />
*# Investigate methods for recognizing objects in 3D scans.<br />
*# Develop components of a system to reconstruct 3D models of cities from scannned data.<br />
*# Help build systems for creating new 3D models using a large repository of existing models.<br />
*# Any other projects related to computer graphics or shape analysis.<br />
<br />
<br />
=== Dr. Ananda Gunawardena ("Guna"), Room 208 ===<br />
* Research Areas: Educational Technology, Pen-based computing<br />
* Independent Research Topics:<br />
*# Research and develop analytics and pedagogical models for classroom salon (http://classroomsalon.org), a social annotation platform used for collaborative learning.<br />
*# Research and develop usable and scalable pen-based applications with particular emphasis on sketch recognition with domain specific information.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~bwk/ Brian Kernighan], Room 311 ===<br />
* Research Areas: application-specific languages, document preparation, user interfaces, software tools, programming methodology<br />
*Independent Research Topics:<br />
*# Application-oriented languages, scripting languages.<br />
*# Tools; user interfaces; web services.<br />
*# AMPL and optimization.<br />
*# Joint work with other departments.<br />
*# For a list of less than half-baked ideas [http://www.cs.princeton.edu/~bwk/iw.ideas Look Here]<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~kintali/ Shiva Kintali], Room 312 ===<br />
* Research Areas: Computational Complexity, Graph Theory and Combinatorial Optimization.<br />
* Prerequisites: Reasonable mathematical maturity, knowledge of algorithm design and analysis.<br />
*Independent Research Topics:<br />
*# Topics related to [http://kintali.wordpress.com/2009/06/23/graceful-tree-conjecture/ Graceful Tree Conjecture], graph reconstruction conjecture, graph coloring and Pfaffians.<br />
*# Topics related to [http://kintali.wordpress.com/2010/09/02/hardness-of-graph-isomorphism/ Graph Isomorphism], [http://kintali.wordpress.com/2011/03/05/graph-isomorphism-and-bounded-tree-width/ Isomorphism of bounded treewidth graphs], [http://kintali.wordpress.com/2010/01/28/approximating-treewidth/ approximating treewidth] of special classes of graphs.<br />
*# Topics related to expander graphs, space-efficient computation and the L vs NL problem.<br />
*# Topics related to directed versions of treewidth (Eg: directed treewidth, D-width, DAG-width, Kelly-Width).<br />
*# Topics related to metric embedding and flow-cut gaps.<br />
*# Topics related to Speech synthesis, Semi-supervised learning, Collaborative filtering and Recommendation algorithms.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~aslp/ Andrea LaPaugh], Room 304 ===<br />
*Research Areas: Search and retrieval of information; data mining, particularly clustering; combinatorial algorithms<br />
*Independent Research Topics:<br />
*# Investigating new characterizations of the graph structure of the Web or other social networks.<br />
*# Experimental evaluations of clustering algorithms.<br />
*# Data analysis within social networks.<br />
*# Other topics with an information discovery or management aspect, including novel applications using databases or information retrieval.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~li/ Kai Li], Room 321 ===<br />
*Research Areas: Parallel architectures and systems; distributed systems; operating systems.<br />
*Independent Research Topics:<br />
*# Design, implement and evaluate practical methods for image and audio similarity searches.<br />
*# Seamless shared visualization on large-scale displays.<br />
*# Simulation studies of asymmetric heterogeneous chip multiprocessor architecture.<br />
<br />
<br />
<br />
=== Dr. Xiaoyan Li, Room 410 ===<br />
*Research areas: Information retrieval, novelty detection, question answering and text mining<br />
*Independent Research Topics:<br />
*# Explore new statistical retrieval models.<br />
*# Passage retrieval models and relevance feedback models.<br />
*# Evaluating existing document clustering techniques.<br />
*# Explore fast and efficient document clustering approach.<br />
*# Any interesting project related to information retrieval and text mining.<br />
<br />
=== Prof. [http://www.princeton.edu/~mrm/ Margaret Martonosi], Room 204 ===<br />
*Research Areas: Computer architectures and the hardware/software interface, mobile networks, and technology for developing regions.<br />
<br />
Possible research topics include:<br />
<br />
* Green Data Centers<br />
* Mobile Computing<br />
* Cell phone applications and programming models<br />
* Energy-efficient computer architecture<br />
* Experiment with software development and research on the OpenXC platform (http://openxcplatform.com/). This platform provides an API to an automobile's data and can be used by Android apps to access vehicle data. Emulators are available so you don't need Open XC hardware (or a car!) to get started, but some cool research and software seems possible through this. <br />
Or email (mrm@princeton.edu) and pitch an idea roughly in this space!<br />
<br />
<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~cmoretti/ Christopher Moretti], Room 206 ===<br />
*Research areas: Distributed systems, high-throughput computing, computer science/engineering education<br />
*Independent Research Topics:<br />
*# Expansion, improvement, and evaluation of open-source distributed computing software.<br />
*# Applications of distributed computing for "big science" (e.g. biometrics, data mining, bioinformatics)<br />
*# Software and best practices for computer science education and study, especially Princeton's 126/217/226 sequence or MOOCs development<br />
*# Sports analytics and/or crowd-sourced computing<br />
<br />
=== Dr. [http://randomwalker.info/ Arvind Narayanan] 308 Sherrerd Hall ===<br />
<br />
Research areas: broadly, privacy and security. Especially online tracking and Bitcoin.<br />
<br />
Some topics and questions I'm interested in:<br />
<br />
'''1. What can be inferred about people based on publicly available online data?'''<br />
<br />
If someone ''really'' wanted to find out personal things about you online, how far could they get? Let's investigate this by writing a bot which, given an identity (say, an email address), collects and aggregates information from various sites about that person. Ideally, it should be able to automatically figure out which information is current and which is out of date, reconcile conflicts, make new inferences based on multiple pieces of data, and hook into the "deep web" — pages that are not directly visible on web searches.<br />
<br />
'''2. Reverse engineering the Web to expose poor security and privacy'''<br />
<br />
Web companies track us online and compile extensive databases of our personal information. The personal behavioral profiles created through tracking are used for targeted advertising, price discrimination, targeted political emails, and various other practices that make people uncomfortable. I have an ongoing long-term project to automatically reverse engineer web trackers to determine what information companies have collected about you and what they are using it for. There are many interesting sub-projects to work on.<br />
<br />
'''3. Various Bitcoin-related projects'''<br />
<br />
Can we make a more secure Bitcoin wallet? Just how anonymous are Bitcoin users? Can we create an "early-warning system" that connects to a large number of P2P Bitcoin nodes and looks for signs of possible attacks on the security or stability of the system?<br />
<br />
'''4. A streamlined privacy-alert system'''<br />
<br />
Dozens of articles come out every month informing privacy-conscious users that they need to change some setting, install a tool, or otherwise take some action to protect their privacy. In particular, companies often release new features with permissive defaults and an opt-out setting. It seems that online privacy requires eternal vigilance.<br />
<br />
Can we build a [https://freedom-to-tinker.com/blog/randomwalker/eternal-vigilance-is-a-solvable-technology-problem-a-proposal-for-streamlined-privacy-alerts/ streamlined privacy-alert system] that largely automates online privacy vigilance? <br />
<br />
'''5. Classify and rank research blogs, set up aggregators'''<br />
<br />
I run the [http://feedworld.net/toc/ Theory of Computing blog aggregator] which is read by a significant fraction of the theory research community. It's a very efficient way to stay on top of the research conversation. I'd like to set one up on every research subtopic (and there are hundreds), but it is time-consuming.<br />
<br />
But this can be automated! Here's how: 1. collect URLs of research blogs by programmatically exploring the web 2. use machine learning to group them into topics, and rank them by authority within topics 3. set up aggregators on each topic. This is a challenging project involving machine learning, large datasets and web programming, but potentially highly impactful.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~vivek/ Vivek Pai], Room 322 ---- ''On Leave Fall 2014 and Spring 2015'' ===<br />
*Research Areas: Network/Web servers, operating systems, high-performance applications.<br />
*Independent Research Topics:<br />
*# Tiny devices, such as the Raspberry Pi, are getting more capable and rivaling servers of yesteryear. Can they be used to build low-cost infrastructure?<br />
*# Content Distribution Networks (CDNs) are commonly used to deliver Web content, but no standard monitoring system exists to easily gauge their relative performance. Can you build one that reasonably compares different CDNs?<br />
*# What kind of memory patterns do scientific applications exhibit? Are they a good match for systems like SSDAlloc?<br />
<br />
=== '''Dr. Iasonas Petras, Room 215''' ===<br />
*Research Areas: Information Based Complexity, Numerical Analysis, Quantum Computation.<br />
*Prerequisites: Reasonable mathematical maturity. In case of a project related to Quantum Computation a certain familiarity with quantum mechanics is required (related courses: ELE 396/PHY 208).<br />
*Possible research topics include:<br />
'''1. Quantum algorithms and circuits:'''<br />
* i. Design or simulation quantum circuits implementing quantum algorithms.<br />
* ii. Design of quantum algorithms solving continuous problems (such as Eigenvalue problems for Partial Differential Equations).<br />
'''2. Information Based Complexity:'''<br />
* i. Necessary and sufficient conditions for tractability of Linear and Linear Tensor Product Problems in various settings (for example worst case or average case). <br />
* ii. Necessary and sufficient conditions for tractability of Linear and Linear Tensor Product Problems under new tractability and error criteria.<br />
<br />
=== Dr. David Pritchard, Room 410 ===<br />
*Research Areas: Education, user interfaces, combinatorics and algorithms<br />
*Independent Research Topics:<br />
*# Visualization of Java programs, extensions to data structures: http://www.cs.princeton.edu/~cos126/java_visualize/<br />
*# Online coding exercises, extensions to graphics: http://www.cs.princeton.edu/~cos126/websheets/ws.php<br />
*# Open course platforms, using user data to improve them: http://cscircles.cemc.uwaterloo.ca/<br />
*# Online pedagogy (e.g., does the order of exercises and lesson text affect learning?)<br />
*# Theory/complexity of online voting systems (prereq: mathematical maturity required)<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~jrex/ Jennifer Rexford], Room 306===<br />
*Research areas: networking, software-defined networks, network management<br />
*Independent Research Topics:<br />
*# Enterprise and data-center networking solutions built on Software Defined Networking (SDN). For example, middleboxes like firewalls, NATs, intrusion detection systems, and load balancers, routing techniques that equalize latency between gaming or financial-services clients, adaptive measurement of network traffic, networking in challenged environments (e.g., developing regions, emergency situations, etc.).<br />
*# Research on better programming abstractions for SDN, including using or improving our Python-based Pyretic (http://www.frenetic-lang.org/pyretic/) platform. Projects could combine computer networking with other areas like programming languages, network optimization, algorithms, and distributed systems.<br />
*# Any interesting project in computer networking.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~smr/ Szymon Rusinkiewicz], Room 406 ---- ''On Leave Fall 2014 and Spring 2015''===<br />
*Research Areas: computer graphics; acquisition of 3D shape, reflectance, and appearance of real-world objects; novel methods for physical fabrication of objects with particular shape/appearance.<br />
*Independent Research Topics (updated fall, 2011):<br />
*# Construct an efficient and easy-to-use 3-D scanning system for large collections of fragments of archaeological artifacts.<br />
*# Investigate algorithms for computing and visualizing differences between ancient coins struck from similar, but slightly different, dies.<br />
*# Develop a system combining body-mounted cameras and/or Kinect with tactile or auditory feedback to help blind people avoid obstacles.<br />
*# Use computer-controlled milling machines to fabricate bas-reliefs, using substrates of heterogeneous materials.<br />
*# Adapt a MakerBot or other hobbyist-grade manufacturing device to use multiple materials.<br />
*# Implement (and perform the appropriate theoretical sampling/aliasing analysis for) a rendering system that explicitly accounts for the red/green/blue sub-pixels of LCD displays.<br />
*# Other projects in computer graphics and vision, or technologies for documenting and studying cultural heritage objects.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~schapire/ Robert Schapire], Room 407 ===<br />
*Research Areas: Machine learning<br />
*Independent Research Topics:<br />
*# Implement and run experiments on assorted machine learning algorithms.<br />
*# Apply machine learning algorithms to specific tasks.<br />
*# Any other interesting project related to machine learning.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~rs/ Robert Sedgewick], Room 319 - On Leave Spring 2014===<br />
* Research Areas: Scientific analysis of algorithms, Analytic combinatorics<br />
* Independent Research Topics:<br />
Professor Sedgewick is willing to advise any student who comes up with an idea for independent work from his books, papers, courses, or in his current areas of active research. Send mail or stop by to discuss possible topics if you are interested.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~jps/ Jaswinder Pal Singh], Room 423 ===<br />
*Research Areas: 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.<br />
*Independent Research Topics:<br />
*# 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.<br />
*# Implement and study novel methods for topic-specific or vertical information discovery and search, as well as for high-quality persistent search.<br />
*# Study and develop methods to infer insights from data in different application areas.<br />
*# 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.<br />
*# Develop and implement algorithms for selected problems in computational biology, especially simulating the immune system or analyzing immunological data.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~mona/ Mona Singh], Room 420 - On Leave Spring 2014===<br />
*Research Areas: computational molecular biology, as well as its interface with machine learning and algorithms.<br />
*Independent Research Topics:<br />
*# Whole and cross-genome methods for predicting protein function and protein-protein interactions.<br />
*# Analysis and prediction of biological networks.<br />
*# Computational methods for inferring specific aspects of protein structure from protein sequence data.<br />
*# Any other interesting project in computational molecular biology.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~ret/ Robert Tarjan], Room 324 ===<br />
*Research Areas: Data structures; graph algorithms; combinatorial optimization; computational complexity; computational geometry; parallel algorithms.<br />
*Independent Research Topics:<br />
*# Implement one or more data structures or combinatorial algorithms to provide insight into their empirical behavior.<br />
*# Design and/or analyze various data structures and combinatorial algorithms.<br />
<br />
=== Prof. [http://function.princeton.edu/ogt.html/ Olga Troyanskaya], Room 320 ===<br />
*Research Areas: Bioinformatics; analysis of large-scale biological data sets (genomics, gene expression, proteomics, biological networks); algorithms for integration of data from multiple data sources; visualization of biological data; machine learning methods in bioinformatics.<br />
*Independent Research Topics:<br />
*# Implement and evaluate one or more gene expression analysis algorithm.<br />
*# Develop algorithms for assessment of performance of genomic analysis methods.<br />
*# Develop, implement, and evaluate visualization tools for heterogeneous biological data.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~dpw/ David Walker], Room 211=== <br />
*Research Areas: Programming languages, type systems, compilers, domain-specific languages, software-defined networking and security.<br />
Independent Research Topics: Any other interesting project that involves humanitarian hacking, functional programming, domain-specific programming languages, type systems, compilers, software-defined networking, fault tolerance, language-based security, theorem proving, logic or logical frameworks.<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~wayne/contact/ Kevin Wayne], Room 207 ===<br />
*Research Areas: design, analysis, and implementation of algorithms; data structures; combinatorial optimization; graphs and networks.<br />
*Independent Research Topics:<br />
*# Design and implement computer visualizations of algorithms or data structures.<br />
*# Develop pedagogical tools or programming assignments for the computer science curriculum at Princeton and beyond.<br />
*# Develop assessment infrastructure and assessments for MOOCs.<br />
<br />
= ''Opportunities outside the department'' =<br />
<br />
We encourage students to look in to doing interdisciplinary computer science research and to work with professors in departments other than computer science. However, every CS independent work project must have a strong computer science element (even if it has other scientific or artistic elements as well.) To do a project with an advisor outside of computer science you must have permission of the department. This can be accomplished by having a second co-advisor within the computer science department or by contacting the independent work supervisor about the project and having he or she sign the independent work proposal form.<br />
<br />
Here is a list of professors outside the computer science department who are eager to work with computer science undergraduates.<br />
<br />
===Prof. Mung Chiang, B238, E Quad. chiangm@princeton.edu===<br />
*Professor of Electrical Engineering, Associate Faculty of Computer Science <br />
Director of the EDGE Lab<br />
*Research Interests:<br />
*# Networking<br />
*# Wireless<br />
*# Network Economics<br />
*# Social Networks<br />
*Check out the new Princeton [http://scenic.princeton.edu/ EDGE Lab],:<br />
[http://www.princeton.edu/main/news/archive/S30/91/87E56/index.xmlsection=featured<br />
*Undergrad Research Topics:<br />
*We have a few openings for undergrad researchers in the Princeton EDGE Lab in 2011-2012<br />
*# [http://scenic.princeton.edu/tube/ TUBE],: Time dependent pricing for wireless data plans (with user trials in US and international operators).<br />
*# QAVA: Quota aware video adaptation (with a user trial in Princeton).<br />
*# Online social network influence maximization <br />
*# Intelligent processing of product ratings on Amazon <br />
*# Location based match making<br />
*# Energy efficient cloud computing (joint work with Google)<br />
*# Traffic management in cloud computing (joint work with HP)<br />
*# Satellite capacity overlay network on LTE 4G (joint work with SES)<br />
*# Cellular/Femto/WiFi network interaction (joint work with Intel, AT&T, and Verizon)<br />
*# Fairness evaluation tool (joint work with Telcordia)<br />
<br />
=== Prof. [http://www.princeton.edu/~sharad/ Sharad Malik], Engineering Quad, Room B224 ===<br />
*Research Areas: <br />
*#Design of reliable hardware systems<br />
*#Verifying complex software and hardware systems<br />
<br />
<br />
<br />
=== Prof. Prateek Mittal, Engineering Quadrangle, pmittal@princeton.edu ===<br />
<br />
*Research Areas: <br />
*# Internet security and privacy <br />
*# Social Networks<br />
*# Privacy technologies, anonymous communication<br />
*# Network Science<br />
<br />
*Ideas for Independent Research Topics:<br />
*#Internet security and privacy: The insecurity of Internet protocols and services threatens the safety of our critical network infrastructure and billions of end users. How can we defend end users as well as our critical network infrastructure from attacks?<br />
*#Trustworthy social systems: Online social networks (OSNs) such as Facebook, Google+, and Twitter have revolutionized the way our society communicates. How can we leverage social connections between users to design the next generation of communication systems?<br />
*#Privacy Technologies: Privacy on the Internet is eroding rapidly, with businesses and governments mining sensitive user information. How can we protect the privacy of our online communications? The Tor project (https://www.torproject.org/) is a potential application of interest.<br />
<br />
=== Prof. [http://weblamp.princeton.edu/~psych/psychology/research/norman/index.php Ken Norman], Room 3-N-18 Green Hall===<br />
* Research Areas: Memory, the brain and computation <br />
* Lab: [http://compmem.princeton.edu/ Princeton Computational Memory Lab]<br />
<br />
Potential research topics<br />
<br />
* Methods for decoding cognitive state information from neuroimaging data (fMRI and EEG) <br />
* Neural network simulations of learning and memory<br />
<br />
=== [http://www.janet.vertesi.com/~jv/ Janet Vertesi], Sociology Dept, Wallace Hall 122===<br />
<br />
*Research areas: Sociology of Technology; Human-Computer Interaction (qualitative); Informatics and Information Science; Computer-Supported Cooperative Work; Ubiquitous and Urban Computing.<br />
<br />
*About this research: Human-Computer Interaction is an exciting and expanding community of computer scientists, anthropologists, sociologists, and critical theorists who examine computing "in the wild" and are dramatically changing our sense of the possibilities of human technological experience. My research takes place at the intersection of sociology and computer science, and uses qualitative methods to build new software and hardware tools supporting a wider range of technological experiences. To learn more, visit my website: http://janet.vertesi.com<br />
<br />
*Independent Research topics:<br />
<br />
*1. Seeking a student to help build an Evernote plug-in to support group qualitative research. Must be ready to engage with not only technical specifications but also to think about critical theory, feminist theory, and ethnographic sensibilities.<br />
<br />
*2. Got an idea for a project on computing in the developing world? or urban infrastructures? Or mixed-reality gaming? Let me know. I'm always looking out for interesting way to use qualitative research methods to better understand how users "in the wild" appropriate technologies into their daily lives, and using those insights to inform the design of new technological systems and possibilities.<br />
<br />
===Prof. David Wentzlaff, Engineering Quadrangle, Room 228===<br />
*Research Areas: Computer Architecture, Parallel Computing, Cloud <br />
Computing, Operating Systems, Sustainable Computing.<br />
*Independent Research Topics:<br />
*# Instrument Princeton's Green (HPCRC) data center<br />
*# Investigate power utilization on an processor core implemented in an FPGA<br />
*# Dismantle and document all of the components in modern electronics. Invent new ways to build computers that can be recycled easier.<br />
*# Other topics in parallel computer architecture or operating systems</div>Arvindnhttp://wiki.cs.princeton.edu/index.php?title=UgradResearchTopics&diff=11639UgradResearchTopics2013-05-01T20:24:03Z<p>Arvindn: /* Dr. Arvind Narayanan 308 Sherrerd Hall */</p>
<hr />
<div>=Suggested Undergraduate Research Topics=<br />
<br />
Links to many research areas in the department may be found <br />
[http://www.cs.princeton.edu/research/areas/ here] while links<br />
to projects may be found<br />
[http://www.cs.princeton.edu/research/projects/ here].<br />
<br />
===Prof. [http://www.cs.princeton.edu/~appel/ Andrew Appel], Room 219- On Leave Fall 2013 ===<br />
* Research Areas: Formal methods, programming languages, compilers, computer security.<br />
* Independent Research Topics:<br />
*# Automated theorem proving (suggestion: take COS 441 first).<br />
*# Trustworthiness of voting machines and/or internet voting.<br />
*# Computer game-playing programs.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~arora/ Sanjeev Arora], Room 307 - On Leave Spring 2013=== <br />
* Research Areas: Uses of randomness in complexity theory and algorithms; Efficient algorithms for finding approximate solutions to NP-hard problems (or proving that they don't exist); Cryptography. <br />
* Independent Research Topics: <br />
*# Implement one of recently discovered algorithms for "recycling" random bits, and study how well it does in practice. <br />
*# 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). <br />
*# Experimental Algorithms: Implementing and Evaluating Algorithms using existing software packages. <br />
*# Design and implementation of graph partitioning algorithms (possibly leading to a publication). <br />
*# Modeling the human brain using random graphs.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~august/ David August], Room 209 ---On Leave Fall 2013 & Spring 2014===<br />
* Research Areas: Computer Architecture and Compilers, and Green Energy.<br />
* Independent Research Topics:<br />
*# Any interesting topic in computer architecture or compilers.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~blei/ David Blei], Room 419 - On Leave Fall 2012 & Spring 2013 ===<br />
*Research Areas: machine learning, graphical models, computational statistics and text analysis. <br />
<br />
* Prof. Blei advises interesting machine learning or computational statistics projects. Example research areas are spectral clustering, approximate posterior inference, social network analysis, or time series analysis. <br />
<br />
* Before contacting Prof. Blei, please read http://www.cs.princeton.edu/~blei/ugrad-work.html<br />
<br />
===Prof. [http://www.cs.princeton.edu/~mbraverm/ Mark Braverman], Room 411 === <br />
* Research Areas: computational complexity, algorithms, applied probability, computability over the real numbers, game theory and mechanism design, information theory, applications of machine learning in healthcare and medicine. <br />
* Independent Research Topics: <br />
*# Topics in computational and communication complexity.<br />
*# Applications of information theory in complexity theory.<br />
*# Algorithms for problems under real-life assumptions.<br />
*# Game theory, network effects, and mechanism design.<br />
*# Computation involving dynamical systems, fractals, and cellular automata. <br />
*# Game theory and machine learning applied to problems motivated by applications in healthcare.<br />
<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~moses/ Moses Charikar], Room 305 ===<br />
*Research Areas: Design and analysis of algorithms, particularly approximation algorithms, on-line algorithms and efficient algorithms for dealing with large volumes of data.<br />
*Independent Research Topics:<br />
*# Reconstructing evolutionary trees from biological data.<br />
*# Algorithms for clustering data - theory as well as impementation.<br />
*# Investigating the gap of mathematical programming relaxations for optimization problems. (This requires a strong math background).<br />
*# Any other topic in advanced algorithms or discrete mathematics.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~chazelle/ Bernard Chazelle], Room 404 - On Leave Fall 2012 & Spring 2013 ===<br />
*Research Areas: Natural Algorithms, Computational Geometry, Sublinear Algorithms. <br />
*Independent Research Topics<br />
*# Natural algorithms (flocking, swarming, social networks, etc).<br />
*# Sublinear algorithms<br />
*# Self-improving algorithms<br />
*# Markov data structures<br />
<br />
<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~doug/ Douglas Clark], Room 309 ===<br />
*Research Areas: Computer architecture and organization; architecturally-focused performance analysis.<br />
*Independent Research Topics:<br />
*# 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 partner.<br />
*# 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.<br />
*# Other topics, depending on student interest.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~dpd/ David Dobkin],===<br />
*Research Areas: Visualization, computational geometry, pervasive computing, software engineering.<br />
*Independent Research Topics:<br />
*# Building applications using Wireless and Handheld devices.<br />
*# Reconstructing jigsaw puzzles.<br />
*# Face recognition.<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~rdondero/ Robert Dondero], Room 206 ===<br />
*Research Areas: Software engineering; software engineering education.<br />
*Independent Research Topics:<br />
*#Develop or evaluate tools to facilitate student learning in undergraduate computer science courses at Princeton, and beyond.<br />
*#In particular, can code critiquing tools help students learn about software quality?<br />
<br />
=== Prof. Zeev Dvir, Room 405 ===<br />
*Research Areas: Research Areas: computational complexity, pseudo-randomness, coding theory and discrete mathematics.<br />
*Independent Research: I have various research problems related to Pseudorandomness, Coding theory, Complexity and Discrete mathematics - all of which require strong mathematical background<br />
<br />
===Dr. [http://www.cs.princeton.edu/~fellbaum/ Christiane Fellbaum], Room 412 ===<br />
* Research Areas: theoretical and computational linguistics, word sense disambiguation, lexical resource construction, English and multilingual WordNet(s), ontology<br />
<br />
* Independent Research Topics:<br />
*# Anything having to do with natural language--come and see me with/for ideas suitable to your background and interests.<br />
*# In the past, students have worked on extensions and interfaces for WordNet (English and WN in other languages),<br />
*# applications of WordNet(s), including:<br />
*## Foreign language tutoring systems,<br />
*## Spelling correction software,<br />
*## Word-finding/suggestion software for ordinary users and people with memory problems,<br />
*# Machine Translation (on the word level)<br />
*# Sentiment and Opinion detection<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~felten/ Edward Felten], 302 Sherrerd Hall ===<br />
*Research Areas: Computer security and privacy; Internet software; technology law and policy.<br />
*Independent Research Topics:<br />
*# Technology for open government.<br />
*# Computer security and privacy.<br />
*# Digital media distribution.<br />
*# Copy protection and peer to peer technologies.<br />
*# Electronic voting.<br />
*# Technology, society and public policy.<br />
*# Any other interesting or offbeat topic.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~fiebrink/ Rebecca Fiebrink], Room 408 ===<br />
*Research Areas: Computer music, human-computer interaction<br />
*Independent Research Topics:<br />
** Making machine learning tools more usable by people without machine learning expertise (especially in real-time scenarios); appropriate for students who have taken at least 1 machine learning / AI course<br />
** Applying deep learning methods for modeling human gesture, for use in building gesture-driven instruments or gesture-driven speech synthesis. (again, requires some machine learning knowledge)<br />
** Tools for music synthesis and analysis (appropriate for students with some signal processing coursework, including COS 314, or machine learning experience)<br />
** Computing systems for digital humanities (I am willing to co-advise these projects with humanities faculty)<br />
If you have a strong interest in a topic other than those listed above, but which is still related to some combination of music, applied machine learning, and HCI, please send an email describing your ideas. (But please send it early, as my IW advising slots tend to fill up fast!) <b>Note</b>: Many students come to me with an interest in [http://cnl.salk.edu/~tewon/Blind/blind_audio.html audio source separation] or [http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.11.9745 automatic music transcription]. Unless you have a very strong background in signal processing and have read enough academic papers in these areas to understand why these problems are hard, I strongly advise you against attempting to tackle these projects for independent work. Likewise, many students are interested algorithmic/automated music composition; unless you have a very unique and compelling take on this well-studied problem, I am unlikely to want to advise you on a project related to that topic.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~af/ Adam Finkelstein], Room 424 ===<br />
*Research Areas: computer graphics, animation.<br />
*Ideas for independent Research Topics:<br />
*# Computer-generated drawings from 3D models.<br />
*# Tools for making visual art using computer graphics.<br />
*# New methods for computer animation.<br />
*# Techniques for medical visualization.<br />
*# Experiments where the data is collected via the internet.<br />
*# Any interesting project in computer graphics.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~mfreed/ Michael Freedman], Room 308 ===<br />
*Research Areas: Distributed systems, security, networking<br />
*Independent Research Topics:<br />
Projects related to virtual worlds, datacenter systems and networks, new<br />
Internet architectures, untrusted cloud storage and applications, and<br />
peer-to-peer systems. Please see our group website at<br />
http://sns.cs.princeton.edu/ for an example of research areas.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~funk/ Thomas Funkhouser], Room 422 ===<br />
* Research Areas: Computer Graphics, Computer Vision.<br />
* Independent Research Topics:<br />
*# Develop methods for 3D scanning of interior environments. <br />
*# Investigate methods for recognizing objects in 3D scans.<br />
*# Develop components of a system to reconstruct 3D models of cities from scannned data.<br />
*# Help build systems for creating new 3D models using a large repository of existing models.<br />
*# Any other projects related to computer graphics or shape analysis.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~bwk/ Brian Kernighan], Room 311 ===<br />
* Research Areas: application-specific languages, document preparation, user interfaces, software tools, programming methodology<br />
*Independent Research Topics:<br />
*# Application-oriented languages, scripting languages.<br />
*# Tools; user interfaces; web services.<br />
*# AMPL and optimization.<br />
*# Joint work with other departments.<br />
*# For a list of less than half-baked ideas [http://www.cs.princeton.edu/~bwk/iw.ideas Look Here]<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~kintali/ Shiva Kintali], Room 312 ===<br />
* Research Areas: Computational Complexity, Graph Theory and Combinatorial Optimization.<br />
* Prerequisites: Reasonable mathematical maturity, knowledge of algorithm design and analysis.<br />
*Independent Research Topics:<br />
*# Topics related to [http://kintali.wordpress.com/2009/06/23/graceful-tree-conjecture/ Graceful Tree Conjecture], graph reconstruction conjecture, graph coloring and Pfaffians.<br />
*# Topics related to [http://kintali.wordpress.com/2010/09/02/hardness-of-graph-isomorphism/ Graph Isomorphism], [http://kintali.wordpress.com/2011/03/05/graph-isomorphism-and-bounded-tree-width/ Isomorphism of bounded treewidth graphs], [http://kintali.wordpress.com/2010/01/28/approximating-treewidth/ approximating treewidth] of special classes of graphs.<br />
*# Topics related to expander graphs, space-efficient computation and the L vs NL problem.<br />
*# Topics related to directed versions of treewidth (Eg: directed treewidth, D-width, DAG-width, Kelly-Width).<br />
*# Topics related to metric embedding and flow-cut gaps.<br />
*# Topics related to Speech synthesis, Semi-supervised learning, Collaborative filtering and Recommendation algorithms.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~aslp/ Andrea LaPaugh], Room 304 ===<br />
*Research Areas: Search and retrieval of information; data mining, particularly clustering; combinatorial algorithms<br />
*Independent Research Topics:<br />
*# Investigating new characterizations of the graph structure of the Web or other social networks.<br />
*# Experimental evaluations of clustering algorithms.<br />
*# Data analysis within social networks.<br />
*# Other topics with an information discovery or management aspect, including novel applications using databases or information retrieval.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~li/ Kai Li], Room 321 ===<br />
*Research Areas: Parallel architectures and systems; distributed systems; operating systems.<br />
*Independent Research Topics:<br />
*# Design, implement and evaluate practical methods for image and audio similarity searches.<br />
*# Seamless shared visualization on large-scale displays.<br />
*# Simulation studies of asymmetric heterogeneous chip multiprocessor architecture.<br />
<br />
<br />
<br />
=== Dr. Xiaoyan Li, Room 422 ===<br />
*Research areas: Information retrieval, novelty detection, question answering and text mining<br />
*Independent Research Topics:<br />
*# Explore new statistical retrieval models.<br />
*# Passage retrieval models and relevance feedback models.<br />
*# Evaluating existing document clustering techniques.<br />
*# Explore fast and efficient document clustering approach.<br />
*# Any interesting project related to information retrieval and text mining.<br />
<br />
=== Prof. [http://www.princeton.edu/~mrm/ Margaret Martonosi], Room 204 ===<br />
*Research Areas: Computer architectures and the hardware/software interface, mobile networks, and technology for developing regions.<br />
<br />
Possible research topics include:<br />
<br />
* Green Data Centers<br />
* Mobile Computing<br />
* Cell phone applications and programming models<br />
* Energy-efficient computer architecture<br />
<br />
Or email (mrm@princeton.edu) and pitch an idea roughly in this space!<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~cmoretti/ Christopher Moretti], Room 206 ===<br />
*Research areas: Distributed systems, high-throughput computing, computer science/engineering education<br />
*Independent Research Topics:<br />
*# Expansion, improvement, and evaluation of open-source distributed computing software.<br />
*# Applications of distributed computing for "big science" (e.g. biometrics, data mining, bioinformatics)<br />
*# Software and best practices for computer science education and study, especially Princeton's 126/217/226 sequence or MOOCs development<br />
*# Sports analytics and/or crowd-sourced computing<br />
<br />
=== Dr. [http://randomwalker.info/ Arvind Narayanan] 308 Sherrerd Hall ===<br />
<br />
Research areas: privacy, security, tech policy, cryptography, social networks.<br />
<br />
Independent research topics. Here's a sampling. Feel free to propose your own.<br />
<br />
'''1. Figuring out what the "bad guys" are doing with your data'''<br />
<br />
If someone ''really'' wanted to find out personal things about you online, how far could they get? Let's investigate this by writing a bot which, given an identity (say, an email address), collects and aggregates information from various sites about that person. Ideally, it should be able to automatically figure out which information is current and which is out of date, reconcile conflicts, make new inferences based on multiple pieces of data, and hook into the "deep web" — pages that are not directly visible on web searches.<br />
<br />
'''2. Reverse engineering the Web to expose poor security and privacy'''<br />
<br />
Web companies track us online and compile extensive databases of our personal information. The personal behavioral profiles created through tracking are used for targeted advertising, price discrimination, targeted political emails, and various other practices that make people uncomfortable. I have an ongoing project to automatically reverse engineer cookies stored in browsers (which may be encoded or encrypted) to figure out what information companies have collected about you and what they are using it for. We are just getting started, and there are many interesting sub-projects to work on.<br />
<br />
'''3. Use machine learning to ''improve'' privacy'''<br />
<br />
"Google Now" serendipitously shows you information you might find useful, such as driving time to your home when you're away. Can we serendipitously show people information to improve privacy? For example, when you're out on Halloween night with your friends, your phone could automatically figure out that one of them has a habit of always posting pictures publicly on Facebook, and notify you of this, so that you could request that they not take pictures of you.<br />
<br />
'''4. Classify and rank research blogs, set up aggregators'''<br />
<br />
I run the [http://feedworld.net/toc/ Theory of Computing blog aggregator] which is read by a significant fraction of the theory research community. It's a very efficient way to stay on top of the research conversation. I'd like to set one up on every research subtopic (and there are hundreds), but it is time-consuming.<br />
<br />
But this can be automated! Here's how: 1. collect URLs of research blogs by programmatically exploring the web 2. use machine learning to group them into topics, and rank them by authority within topics 3. set up aggregators on each topic. This is a challenging project involving machine learning, large datasets and web programming, but potentially highly impactful.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~vivek/ Vivek Pai], Room 322 ===<br />
*Research Areas: Network/Web servers, operating systems, high-performance applications.<br />
*Independent Research Topics:<br />
*# Use data from [http://comon.cs.princeton.edu CoMon] to analyze workload behavior on [http://www.planet-lab.org PlanetLab]. For example, can you automatically detect things about people's programs, can you cluster usage patterns, etc., etc.<br />
*# Content Distribution Networks (CDNs) are commonly used to deliver Web content, but no standard monitoring system exists to easily gauge their relative performance. Can you build one that reasonably compares different CDNs?<br />
*# Tools like [http://codeen.cs.princeton.edu/covisualize/ CoVisualize] are useful for periodically-updating data. Can you take this concept and apply it to data that changes much more rapidly, such as every second<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~llp/ Larry Peterson], Room 208 - On Leave Fall 2013 ===<br />
*Research Areas: Networked systems, communication protocols, operating systems.<br />
*Independent Research Topics:<br />
*# Topics related to planetary-scale network services, overlay networks, and the system infrastucture needed to support them.<br />
<br />
=== Dr. David Pritchard, Room 410 ===<br />
*Research Areas: Algorithms, graphs, optimization, combinatorics, education, implementation<br />
*Independent Research Topics:<br />
*# Open tools for interative programming lessons/manuals (e.g. http://cscircles.ca with user-made content)<br />
*# Voting and election systems in theory and practice<br />
*# Commonest Subsequence: http://cstheory.stackexchange.com/questions/12307/<br />
*# Approximation algorithms and hardness<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~jrex/ Jennifer Rexford], Room 306 - On Leave Fall 2012 & Spring 2013 ===<br />
*Research areas: networking, programmable networks, network management, network virtualization<br />
*Independent Research Topics:<br />
*# Enterprise and data-center networking solutions built on [http://www.openflowswitch.org/ OpenFlow] and [http://noxrepo.org/ NOX]. For example, middleboxes like firewalls, NATs, intrusion detection systems, and load balancers, routing techniques that equalize latency between gaming or financial-services clients, adaptive measurement of network traffic, etc.<br />
*# Techniques for boot-strapping communication in regions without conventional Internet and cellular network connectivity (e.g., developing regions, disaster areas, countries censoring communication), using commodity equipment like phones and access points.<br />
*# Any interesting project in data networking.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~smr/ Szymon Rusinkiewicz], Room 406===<br />
*Research Areas: computer graphics; acquisition of 3D shape, reflectance, and appearance of real-world objects; novel methods for physical fabrication of objects with particular shape/appearance.<br />
*Independent Research Topics (updated fall, 2011):<br />
*# Construct an efficient and easy-to-use 3-D scanning system for large collections of fragments of archaeological artifacts.<br />
*# Investigate algorithms for computing and visualizing differences between ancient coins struck from similar, but slightly different, dies.<br />
*# Develop a system combining body-mounted cameras and/or Kinect with tactile or auditory feedback to help blind people avoid obstacles.<br />
*# Use computer-controlled milling machines to fabricate bas-reliefs, using substrates of heterogeneous materials.<br />
*# Adapt a MakerBot or other hobbyist-grade manufacturing device to use multiple materials.<br />
*# Implement (and perform the appropriate theoretical sampling/aliasing analysis for) a rendering system that explicitly accounts for the red/green/blue sub-pixels of LCD displays.<br />
*# Other projects in computer graphics and vision, or technologies for documenting and studying cultural heritage objects.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~schapire/ Robert Schapire], Room 407===<br />
*Research Areas: Machine learning<br />
*Independent Research Topics:<br />
*# Implement and run experiments on assorted machine learning algorithms.<br />
*# Apply machine learning algorithms to specific tasks.<br />
*# Any other interesting project related to machine learning.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~rs/ Robert Sedgewick], Room 319 - On Leave Spring 2014===<br />
* Research Areas: Scientific analysis of algorithms, Analytic combinatorics<br />
* Independent Research Topics:<br />
Professor Sedgewick is willing to advise any student who comes up with an idea for independent work from his books, papers, courses, or in his current areas of active research. Send mail or stop by to discuss possible topics if you are interested.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~jps/ Jaswinder Pal Singh], Room 423 ===<br />
*Research Areas: 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.<br />
*Independent Research Topics:<br />
*# 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.<br />
*# Implement and study novel methods for topic-specific or vertical information discovery and search, as well as for high-quality persistent search.<br />
*# Study and develop methods to infer insights from data in different application areas.<br />
*# 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.<br />
*# Develop and implement algorithms for selected problems in computational biology, especially simulating the immune system or analyzing immunological data.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~mona/ Mona Singh], Room 420 - On Leave Spring 2014===<br />
*Research Areas: computational molecular biology, as well as its interface with machine learning and algorithms.<br />
*Independent Research Topics:<br />
*# Whole and cross-genome methods for predicting protein function and protein-protein interactions.<br />
*# Analysis and prediction of biological networks.<br />
*# Computational methods for inferring specific aspects of protein structure from protein sequence data.<br />
*# Any other interesting project in computational molecular biology.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~ret/ Robert Tarjan], Room 324 ===<br />
*Research Areas: Data structures; graph algorithms; combinatorial optimization; computational complexity; computational geometry; parallel algorithms.<br />
*Independent Research Topics:<br />
*# Implement one or more data structures or combinatorial algorithms to provide insight into their empirical behavior.<br />
*# Design and/or analyze various data structures and combinatorial algorithms.<br />
<br />
=== Prof. [http://function.princeton.edu/ogt.html/ Olga Troyanskaya], Room 320 ===<br />
*Research Areas: Bioinformatics; analysis of large-scale biological data sets (genomics, gene expression, proteomics, biological networks); algorithms for integration of data from multiple data sources; visualization of biological data; machine learning methods in bioinformatics.<br />
*Independent Research Topics:<br />
*# Implement and evaluate one or more gene expression analysis algorithm.<br />
*# Develop algorithms for assessment of performance of genomic analysis methods.<br />
*# Develop, implement, and evaluate visualization tools for heterogeneous biological data.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~dpw/ David Walker], Room 211=== <br />
*Research Areas: Programming languages, type systems, compilers, data processing and security.<br />
*Independent Research Topics:<br />
*# PADS: a domain-specific research language for specifying data formats and automatically generating tools that and do cool things with the specified format (See here for more info):<br />
*## How can we improve the PADS toolkit?<br />
*## Can we automatically generate specialized compression, obfuscation, or encryption tools?<br />
*## Can we generate tools specialized for particular domains such as computational biologiy? Financial analysis? Physicis? Computer networking?<br />
*## PADS is currently implemented on top of C and O'Caml. Can we provide PADS for other languages such as Python or Haskell?<br />
*## Given example data (like the output of "ls -l"), can we automatically learn the format of the data using clever algorithms or machine learning?<br />
*## Can we design hardware and/or software mechanisms that will tolerate bit flips and other faults caused by cosmic rays?<br />
*## Can we develop a type system or other software analysis that can determine whether software is fault tolerant? <br />
*# Any other interesting project that involves type systems, compilers, data processing, fault tolerance, language-based security, aspect-oriented programming, theorem proving, logic or logical frameworks.<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~wayne/contact/ Kevin Wayne], Room 207 - On Leave Fall 2013===<br />
*Research Areas: design, analysis, and implementation of algorithms; data structures; combinatorial optimization; graphs and networks.<br />
*Independent Research Topics:<br />
*# Design and implement computer visualizations of algorithms or data structures.<br />
*# Develop pedagogical tools or programming assignments for the computer science curriculum at Princeton and beyond.<br />
*# Develop assessment infrastructure and assessments for MOOCs.<br />
<br />
= ''Opportunities outside the department'' =<br />
<br />
We encourage students to look in to doing interdisciplinary computer science research and to work with professors in departments other than computer science. However, every CS independent work project must have a strong computer science element (even if it has other scientific or artistic elements as well.) To do a project with an advisor outside of computer science you must have permission of the department. This can be accomplished by having a second co-advisor within the computer science department or by contacting the independent work supervisor about the project and having he or she sign the independent work proposal form.<br />
<br />
Here is a list of professors outside the computer science department who are eager to work with computer science undergraduates.<br />
<br />
===Prof. Mung Chiang, B238, E Quad. chiangm@princeton.edu===<br />
*Professor of Electrical Engineering, Associate Faculty of Computer Science <br />
Director of the EDGE Lab<br />
*Research Interests:<br />
*# Networking<br />
*# Wireless<br />
*# Network Economics<br />
*# Social Networks<br />
*Check out the new Princeton [http://scenic.princeton.edu/ EDGE Lab],:<br />
[http://www.princeton.edu/main/news/archive/S30/91/87E56/index.xmlsection=featured<br />
*Undergrad Research Topics:<br />
*We have a few openings for undergrad researchers in the Princeton EDGE Lab in 2011-2012<br />
*# [http://scenic.princeton.edu/tube/ TUBE],: Time dependent pricing for wireless data plans (with user trials in US and international operators).<br />
*# QAVA: Quota aware video adaptation (with a user trial in Princeton).<br />
*# Online social network influence maximization <br />
*# Intelligent processing of product ratings on Amazon <br />
*# Location based match making<br />
*# Energy efficient cloud computing (joint work with Google)<br />
*# Traffic management in cloud computing (joint work with HP)<br />
*# Satellite capacity overlay network on LTE 4G (joint work with SES)<br />
*# Cellular/Femto/WiFi network interaction (joint work with Intel, AT&T, and Verizon)<br />
*# Fairness evaluation tool (joint work with Telcordia)<br />
<br />
=== Prof. [http://www.molbio.princeton.edu/labs/coller/personnel.htm/ Hilary Coller], Room 140 Lewis Thomas Lab ===<br />
*Research Areas: computational approaches to analysis of large-scale genomics data sets<br />
*Independent Research Topics:<br />
*# Data integration projects with large scale data sets: gene expression and microRNA expression.<br />
*# Clustering algorithms and data visualization algorithms to represent patterns of genetic change.<br />
*# Pattern matching algorithms to define genetic regions that are overrepresented compared with chance.<br />
*# Pattern matching and data integration algorithms to integrate data generated by the laboratory with publicly available data sets from tumors or microbial species.<br />
*# Other topics of mutual interest.<br />
<br />
=== Prof. [http://www.princeton.edu/~sharad/ Sharad Malik], Engineering Quad, Room B224 ===<br />
*Research Areas: <br />
*#Design of reliable hardware systems<br />
*#Verifying complex software and hardware systems<br />
<br />
<br />
<br />
=== Prof. [http://weblamp.princeton.edu/~psych/psychology/research/norman/index.php Ken Norman], Room 3-N-18 Green Hall===<br />
* Research Areas: Memory, the brain and computation <br />
* Lab: [http://compmem.princeton.edu/ Princeton Computational Memory Lab]<br />
<br />
Potential research topics<br />
<br />
* Methods for decoding cognitive state information from neuroimaging data (fMRI and EEG) <br />
* Neural network simulations of learning and memory<br />
<br />
=== Dr. [http://www.janet.vertesi.com/~jv/ Janet Vertesi], Society of Fellows and Sociology Dept, Room 104A, Scheide Caldwell House===<br />
<br />
*Research areas: Human-Computer Interaction (qualitative); Informatics and Information Science; Socio-Computational Systems; Sociology of Technology; Virtual Organizations as Sociotechnical Systems; Computer-Supported Cooperative Work; Ubiquitous Computing; User-Centered Computing; Technology and Transnationalism (including ICT4D); New media art and critical technical practice; Sustainable design.<br />
<br />
*About this research: Have you ever stopped to think what will happen to your new chip, software, or iPhone app once it encounters the Real World? Human-Computer Interaction is an exciting and expanding community of computer scientists, anthropologists, sociologists, and critical theorists who examine computing "in the wild" and are dramatically changing our sense of the possibilities of human technological experience. My research takes place at the intersection of these dynamic disciplines and uses qualitative methods to build new software and hardware tools that support a wider range of technological experiences. To learn more, visit my website: http://janet.vertesi.com<br />
<br />
*Independent Research topics:<br />
<br />
*1. NASA's Cassini Mission to Saturn is a large-scale, international, planetary exploration venture that involves hundreds of scientists and engineers across NASA and ESA. How do members of the Cassini team work together to conduct science with a robot in orbit around another planet? How do they use technologies to do their work at a distance from each other and from their spacecraft? Based on these understandings, how can we better design software environments and tools to support their work, and the work of other distributed teams? This project is based on an NSF Computer Science grant and there are lots of opportunities to get involved with a NASA mission, looking at one piece of the puzzle.<br />
<br />
*2. Culturally Embedded Computing. No one ever uses technologies in a vacuum. Whether playing World of Warcraft or making a call on your iPhone, software and technological practices are embedded in cultural systems, appropriated differently in new cultural contexts, and suffused with local values. Through qualitative user studies of these different cultural contexts, can we use our understanding of these varied settings to better design technologies that "fit"?<br />
<br />
*3. Critical Technical Practice. From "Moore's Law" to "friending" on Facebook, certain cultural assumptions and values are built into our computational systems that we take for granted. If we invert, challenge or change those assumptions, what new systems and possible ways of interacting might result?<br />
<br />
*4. Any interesting way to use qualitative research methods to better understand how users "in the wild" appropriate technologies into their daily lives, to inform the design of new technological systems and possibilities.<br />
<br />
<br />
=== Assistant Professor Stefan van Zwam, Dept. of Mathematics, 1010 Fine Hall ===<br />
<br />
*My research area is matroid theory, and within that field I am interested in computational aspects. To that end, I am co-developing a library of functions to be included in the Sage open-source mathematics software.<br />
<br />
*There are many small sub-projects, which ask for the implementation of algorithms from the combinatorial optimization literature. Examples are matroid intersection, matroid union, matroid matching, testing connectivity, decomposing graphs or matroids into 3-connected "blocks", … For projects such as these, students must master the theoretical concepts, understand the mathematically described algorithm, and fill in the gaps to arrive at an implementation -- and hopefully an efficient one.<br />
<br />
===Prof. David Wentzlaff, Engineering Quadrangle, Room 228===<br />
*Research Areas: Computer Architecture, Parallel Computing, Cloud <br />
Computing, Operating Systems, Sustainable Computing.<br />
*Independent Research Topics:<br />
*# Instrument Princeton's Green (HPCRC) data center<br />
*# Investigate power utilization on an processor core implemented in an FPGA<br />
*# Dismantle and document all of the components in modern electronics. Invent new ways to build computers that can be recycled easier.<br />
*# Other topics in parallel computer architecture or operating systems</div>Arvindnhttp://wiki.cs.princeton.edu/index.php?title=UgradResearchTopics&diff=11619UgradResearchTopics2013-03-27T16:15:07Z<p>Arvindn: /* Dr. Arvind Narayanan 308 Sherrerd Hall */</p>
<hr />
<div>=Suggested Undergraduate Research Topics=<br />
<br />
Links to many research areas in the department may be found <br />
[http://www.cs.princeton.edu/research/areas/ here] while links<br />
to projects may be found<br />
[http://www.cs.princeton.edu/research/projects/ here].<br />
<br />
===Prof. [http://www.cs.princeton.edu/~appel/ Andrew Appel], Room 219===<br />
* Research Areas: Formal methods, programming languages, compilers, computer security.<br />
* Independent Research Topics:<br />
*# Automated theorem proving (suggestion: take COS 441 first).<br />
*# Trustworthiness of voting machines and/or internet voting.<br />
*# Computer game-playing programs.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~arora/ Sanjeev Arora], Room 307 - On Leave Spring 2013=== <br />
* Research Areas: Uses of randomness in complexity theory and algorithms; Efficient algorithms for finding approximate solutions to NP-hard problems (or proving that they don't exist); Cryptography. <br />
* Independent Research Topics: <br />
*# Implement one of recently discovered algorithms for "recycling" random bits, and study how well it does in practice. <br />
*# 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). <br />
*# Experimental Algorithms: Implementing and Evaluating Algorithms using existing software packages. <br />
*# Design and implementation of graph partitioning algorithms (possibly leading to a publication). <br />
*# Modeling the human brain using random graphs.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~august/ David August], Room 209 ===<br />
* Research Areas: Computer Architecture and Compilers, and Green Energy.<br />
* Independent Research Topics:<br />
*# Any interesting topic in computer architecture or compilers.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~blei/ David Blei], Room 419 - On Leave Fall 2012 & Spring 2013 ===<br />
*Research Areas: machine learning, graphical models, computational statistics and text analysis. <br />
<br />
* Prof. Blei advises interesting machine learning or computational statistics projects. Example research areas are spectral clustering, approximate posterior inference, social network analysis, or time series analysis. <br />
<br />
* Before contacting Prof. Blei, please read http://www.cs.princeton.edu/~blei/ugrad-work.html<br />
<br />
===Prof. [http://www.cs.princeton.edu/~mbraverm/ Mark Braverman], Room 411 === <br />
* Research Areas: computational complexity, algorithms, applied probability, computability over the real numbers, game theory and mechanism design, information theory, applications of machine learning in healthcare and medicine. <br />
* Independent Research Topics: <br />
*# Topics in computational and communication complexity.<br />
*# Applications of information theory in complexity theory.<br />
*# Algorithms for problems under real-life assumptions.<br />
*# Game theory, network effects, and mechanism design.<br />
*# Computation involving dynamical systems, fractals, and cellular automata. <br />
*# Game theory and machine learning applied to problems motivated by applications in healthcare.<br />
<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~moses/ Moses Charikar], Room 305 ===<br />
*Research Areas: Design and analysis of algorithms, particularly approximation algorithms, on-line algorithms and efficient algorithms for dealing with large volumes of data.<br />
*Independent Research Topics:<br />
*# Reconstructing evolutionary trees from biological data.<br />
*# Algorithms for clustering data - theory as well as impementation.<br />
*# Investigating the gap of mathematical programming relaxations for optimization problems. (This requires a strong math background).<br />
*# Any other topic in advanced algorithms or discrete mathematics.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~chazelle/ Bernard Chazelle], Room 404 - On Leave Fall 2012 & Spring 2013 ===<br />
*Research Areas: Natural Algorithms, Computational Geometry, Sublinear Algorithms. <br />
*Independent Research Topics<br />
*# Natural algorithms (flocking, swarming, social networks, etc).<br />
*# Sublinear algorithms<br />
*# Self-improving algorithms<br />
*# Markov data structures<br />
<br />
<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~doug/ Douglas Clark], Room 309 ===<br />
*Research Areas: Computer architecture and organization; architecturally-focused performance analysis.<br />
*Independent Research Topics:<br />
*# 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 partner.<br />
*# 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.<br />
*# Other topics, depending on student interest.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~dpd/ David Dobkin],===<br />
*Research Areas: Visualization, computational geometry, pervasive computing, software engineering.<br />
*Independent Research Topics:<br />
*# Building applications using Wireless and Handheld devices.<br />
*# Reconstructing jigsaw puzzles.<br />
*# Face recognition.<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~rdondero/ Robert Dondero], Room 206 ===<br />
*Research Areas: Software engineering; software engineering education.<br />
*Independent Research Topics:<br />
*#Develop or evaluate tools to facilitate student learning in undergraduate computer science courses at Princeton, and beyond.<br />
*#In particular, can code critiquing tools help students learn about software quality?<br />
<br />
=== Prof. Zeev Dvir, Room 405 ===<br />
*Research Areas: Research Areas: computational complexity, pseudo-randomness, coding theory and discrete mathematics.<br />
*Independent Research: I have various research problems related to Pseudorandomness, Coding theory, Complexity and Discrete mathematics - all of which require strong mathematical background<br />
<br />
===Dr. [http://www.cs.princeton.edu/~fellbaum/ Christiane Fellbaum], Room 412 ===<br />
* Research Areas: theoretical and computational linguistics, word sense disambiguation, lexical resource construction, English and multilingual WordNet(s), ontology<br />
<br />
* Independent Research Topics:<br />
*# Anything having to do with natural language--come and see me with/for ideas suitable to your background and interests.<br />
*# In the past, students have worked on extensions and interfaces for WordNet (English and WN in other languages),<br />
*# applications of WordNet(s), including:<br />
*## Foreign language tutoring systems,<br />
*## Spelling correction software,<br />
*## Word-finding/suggestion software for ordinary users and people with memory problems,<br />
*# Machine Translation (on the word level)<br />
*# Sentiment and Opinion detection<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~felten/ Edward Felten], 302 Sherrerd Hall ===<br />
*Research Areas: Computer security and privacy; Internet software; technology law and policy.<br />
*Independent Research Topics:<br />
*# Technology for open government.<br />
*# Computer security and privacy.<br />
*# Digital media distribution.<br />
*# Copy protection and peer to peer technologies.<br />
*# Electronic voting.<br />
*# Technology, society and public policy.<br />
*# Any other interesting or offbeat topic.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~fiebrink/ Rebecca Fiebrink], Room 408 ===<br />
*Research Areas: Computer music, human-computer interaction<br />
*Independent Research Topics:<br />
*<b> My lab has a few existing projects underway for which I'd love some undergraduate involvement. </b><br />
** One relates to a major new project I'm beginning (in collaboration with a Princeton musicologist): the creation of a giant digital, interactive version of the Roman de Fauvel, a 14th century multimedia manuscript. The vision for this research is to use 21st century technology to enable more efficient, productive, and creative ways of interacting with medieval artifacts--including text (possibly in other languages), and music (in medieval notation), images (containing iconography unfamiliar to 21st century viewers). Most digital humanities technologies simply do a high-resolution scan of a manuscript and slap it on a web page, but making something more richly interactive (with interactive translations of text and music notation, the ability to perform the music live, the ability for scholars to add annotations and links to other media, etc.) would benefit students, scholars, and the general public. I'm purchasing a Samsung SUR40 multitouch tabletop (think a table-sized iPad) and I'd like to work with undergrads to build interactive technologies on top of it, for use by students, in museum exhibits at the Bibliotheque Nationale in Paris and in Princeton, or possibly by scholars in musicology, medieval studies, etc. There are a few good semester-sized projects in here for students who like programming. There's room to incorporate signal processing, machine learning, UI development, user studies, and other topics into the project if those are areas you'd like to learn more about. There's also the possibility of continuing this work in the summer.<br />
** Second, for people who aren't interested in music so much as broader HCI/implementation projects, I have another idea that could work well for a single student. Here's the idea: People in the pscyh department at Princeton (and elsewhere) often need to design simple computer experiments (on the Web or as desktop apps), but they often don't have any programming experience. Why not create a toolkit that psychology researchers can use to design and deploy experiments, and collect data? Existing tools such as SurveyMonkey do this really well for simple text-only questions, but a researcher might have additional (but pretty simple) requirements. For example, they may need to randomly change the content or ordering of questions across subjects, and log this information as well. I think that making this kind of tool would be doable in 1 semester for someone with good programming skills, and there is an opportunity to work with at least one research group in the psych department to actually deploy this tool with them (and to get their involvement in the design and evaluation process).<br />
** Third, for people who have taken COS 323: I am collaborating with some people in Music and Physics on a project using chimeric states of coupled oscillator systems as a basis for sound synthesis. If you've taken 323 and want to do something music/sound-related that can take advantage of your Matlab numerical methods hacking skills, let me know. (No music background needed, though.)<br />
** Fourth, for students who have taken 424 and/or 511, a project involving deep learning methods for modeling human gesture, for use in building gesture-driven instruments or gesture-driven speech synthesis.<br />
If you have a strong interest in a topic other than those listed above, but which is still related to some combination of music, applied machine learning, and HCI, please send an email describing your ideas. (But please send it early, as my IW advising slots tend to fill up fast!)<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~af/ Adam Finkelstein], Room 424 ===<br />
*Research Areas: computer graphics, animation.<br />
*Ideas for independent Research Topics:<br />
*# Computer-generated drawings from 3D models.<br />
*# Tools for making visual art using computer graphics.<br />
*# New methods for computer animation.<br />
*# Techniques for medical visualization.<br />
*# Experiments where the data is collected via the internet.<br />
*# Any interesting project in computer graphics.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~mfreed/ Michael Freedman], Room 308 ===<br />
*Research Areas: Distributed systems, security, networking<br />
*Independent Research Topics:<br />
Projects related to virtual worlds, datacenter systems and networks, new<br />
Internet architectures, untrusted cloud storage and applications, and<br />
peer-to-peer systems. Please see our group website at<br />
http://sns.cs.princeton.edu/ for an example of research areas.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~funk/ Thomas Funkhouser], Room 422 ===<br />
* Research Areas: Computer Graphics, Computer Vision.<br />
* Independent Research Topics:<br />
*# Develop methods for 3D scanning of interior environments. <br />
*# Investigate methods for recognizing objects in 3D scans.<br />
*# Develop components of a system to reconstruct 3D models of cities from scannned data.<br />
*# Help build systems for creating new 3D models using a large repository of existing models.<br />
*# Any other projects related to computer graphics or shape analysis.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~bwk/ Brian Kernighan], Room 311 ===<br />
* Research Areas: application-specific languages, document preparation, user interfaces, software tools, programming methodology<br />
*Independent Research Topics:<br />
*# Application-oriented languages, scripting languages.<br />
*# Tools; user interfaces; web services.<br />
*# AMPL and optimization.<br />
*# Joint work with other departments.<br />
*# For a list of less than half-baked ideas [http://www.cs.princeton.edu/~bwk/iw.ideas Look Here]<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~kintali/ Shiva Kintali], Room 312 ===<br />
* Research Areas: Computational Complexity, Graph Theory and Combinatorial Optimization.<br />
* Prerequisites: Reasonable mathematical maturity, knowledge of algorithm design and analysis.<br />
*Independent Research Topics:<br />
*# Topics related to [http://kintali.wordpress.com/2009/06/23/graceful-tree-conjecture/ Graceful Tree Conjecture], graph reconstruction conjecture, graph coloring and Pfaffians.<br />
*# Topics related to [http://kintali.wordpress.com/2010/09/02/hardness-of-graph-isomorphism/ Graph Isomorphism], [http://kintali.wordpress.com/2011/03/05/graph-isomorphism-and-bounded-tree-width/ Isomorphism of bounded treewidth graphs], [http://kintali.wordpress.com/2010/01/28/approximating-treewidth/ approximating treewidth] of special classes of graphs.<br />
*# Topics related to expander graphs, space-efficient computation and the L vs NL problem.<br />
*# Topics related to directed versions of treewidth (Eg: directed treewidth, D-width, DAG-width, Kelly-Width).<br />
*# Topics related to metric embedding and flow-cut gaps.<br />
*# Topics related to Speech synthesis, Semi-supervised learning, Collaborative filtering and Recommendation algorithms.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~aslp/ Andrea LaPaugh], Room 304 ===<br />
*Research Areas: Search and retrieval of information; data mining, particularly clustering; combinatorial algorithms<br />
*Independent Research Topics:<br />
*# Investigating new characterizations of the graph structure of the Web or other social networks.<br />
*# Experimental evaluations of clustering algorithms.<br />
*# Data analysis within social networks.<br />
*# Other topics with an information discovery or management aspect, including novel applications using databases or information retrieval.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~li/ Kai Li], Room 321 ===<br />
*Research Areas: Parallel architectures and systems; distributed systems; operating systems.<br />
*Independent Research Topics:<br />
*# Design, implement and evaluate practical methods for image and audio similarity searches.<br />
*# Seamless shared visualization on large-scale displays.<br />
*# Simulation studies of asymmetric heterogeneous chip multiprocessor architecture.<br />
<br />
<br />
<br />
=== Dr. Xiaoyan Li, Room 422 ===<br />
*Research areas: Information retrieval, novelty detection, question answering and text mining<br />
*Independent Research Topics:<br />
*# Explore new statistical retrieval models.<br />
*# Passage retrieval models and relevance feedback models.<br />
*# Evaluating existing document clustering techniques.<br />
*# Explore fast and efficient document clustering approach.<br />
*# Any interesting project related to information retrieval and text mining.<br />
<br />
=== Prof. [http://www.princeton.edu/~mrm/ Margaret Martonosi], Room 204 ===<br />
*Research Areas: Computer architectures and the hardware/software interface, mobile networks, and technology for developing regions.<br />
<br />
Possible research topics include:<br />
<br />
* Green Data Centers<br />
* Mobile Computing<br />
* Cell phone applications and programming models<br />
* Energy-efficient computer architecture<br />
<br />
Or email (mrm@princeton.edu) and pitch an idea roughly in this space!<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~cmoretti/ Christopher Moretti], Room 206 ===<br />
*Research areas: Distributed systems, high-throughput computing, computer science/engineering education<br />
*Independent Research Topics:<br />
*# Expansion, improvement, and evaluation of open-source distributed computing software.<br />
*# Applications of distributed computing for "big science" (e.g. biometrics, data mining, bioinformatics)<br />
*# Software and best practices for computer science education and study<br />
*# Sports analytics and crowd-sourced computing<br />
<br />
=== Dr. [http://randomwalker.info/ Arvind Narayanan] 308 Sherrerd Hall ===<br />
<br />
Research areas: privacy, security, tech policy, cryptography, social networks.<br />
<br />
Independent research topics<br />
<br />
'''1. Figuring out what the "bad guys" are doing with your data'''<br />
<br />
If someone ''really'' wanted to find out personal things about you online, how far could they get? Let's investigate this by writing a bot which, given an identity (say, an email address), collects and aggregates information from various sites about that person. Ideally, it should be able to automatically figure out which information is current and which is out of date, reconcile conflicts, make new inferences based on multiple pieces of data, and hook into the "deep web" — pages that are not directly visible on web searches.<br />
<br />
'''2. Reverse engineering to expose poor security and privacy'''<br />
<br />
'''2a. Snapchat'''<br />
<br />
Snapchat, as you may know, is an app that lets you send photos with an expiry timer of up to 10 seconds. The photo will be deleted by the app on the receiver’s side once the timer runs out. This kind of security model is silly from a technical point of view — as long as the photo reaches the other user’s device, they can ensure that it doesn’t get deleted. The project is to reverse-engineer Snapchat (and the recently released Facebook poke which is very similar) and to create as many hacks as possible to prevent the deletion of received photos, to demonstrate the app’s insecurity.<br />
<br />
'''2b. Web cookies'''<br />
<br />
Web companies track us online and compile extensive databases of our personal information. The personal behavioral profiles created through tracking are used for targeted advertising, price discrimination, targeted political emails, and various other practices that make people uncomfortable. I have an ongoing project to automatically reverse engineer cookies stored in browsers (which may be encoded or encrypted) to figure out what information companies have collected about you and what they are using it for. We are just getting started, and there are many interesting sub-projects to work on.<br />
<br />
'''3. Use machine learning to ''improve'' privacy'''<br />
<br />
"Google Now" serendipitously shows you information you might find useful, such as driving time to your home when you're away. Can we serendipitously show people information to improve privacy? For example, when you're out on Halloween night with your friends, your phone could automatically figure out that one of them has a habit of always posting pictures publicly on Facebook, and notify you of this, so that you could request that they not take pictures of you.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~vivek/ Vivek Pai], Room 322 ===<br />
*Research Areas: Network/Web servers, operating systems, high-performance applications.<br />
*Independent Research Topics:<br />
*# Use data from [http://comon.cs.princeton.edu CoMon] to analyze workload behavior on [http://www.planet-lab.org PlanetLab]. For example, can you automatically detect things about people's programs, can you cluster usage patterns, etc., etc.<br />
*# Content Distribution Networks (CDNs) are commonly used to deliver Web content, but no standard monitoring system exists to easily gauge their relative performance. Can you build one that reasonably compares different CDNs?<br />
*# Tools like [http://codeen.cs.princeton.edu/covisualize/ CoVisualize] are useful for periodically-updating data. Can you take this concept and apply it to data that changes much more rapidly, such as every second<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~llp/ Larry Peterson], Room 208 - On Leave Fall 2012 ===<br />
*Research Areas: Networked systems, communication protocols, operating systems.<br />
*Independent Research Topics:<br />
*# Topics related to planetary-scale network services, overlay networks, and the system infrastucture needed to support them.<br />
<br />
<br />
=== Dr. David Pritchard, Room 410 ===<br />
*Research Areas: Algorithms, graphs, optimization, combinatorics, education, implementation<br />
*Independent Research Topics:<br />
*# Open tools for interative programming lessons/manuals (e.g. http://cscircles.ca with user-made content)<br />
*# Voting and election systems in theory and practice<br />
*# Commonest Subsequence: http://cstheory.stackexchange.com/questions/12307/<br />
*# Approximation algorithms and hardness<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~jrex/ Jennifer Rexford], Room 306 - On Leave Fall 2012 & Spring 2013 ===<br />
*Research areas: networking, programmable networks, network management, network virtualization<br />
*Independent Research Topics:<br />
*# Enterprise and data-center networking solutions built on [http://www.openflowswitch.org/ OpenFlow] and [http://noxrepo.org/ NOX]. For example, middleboxes like firewalls, NATs, intrusion detection systems, and load balancers, routing techniques that equalize latency between gaming or financial-services clients, adaptive measurement of network traffic, etc.<br />
*# Techniques for boot-strapping communication in regions without conventional Internet and cellular network connectivity (e.g., developing regions, disaster areas, countries censoring communication), using commodity equipment like phones and access points.<br />
*# Any interesting project in data networking.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~smr/ Szymon Rusinkiewicz], Room 406===<br />
*Research Areas: computer graphics; acquisition of 3D shape, reflectance, and appearance of real-world objects; novel methods for physical fabrication of objects with particular shape/appearance.<br />
*Independent Research Topics (updated fall, 2011):<br />
*# Construct an efficient and easy-to-use 3-D scanning system for large collections of fragments of archaeological artifacts.<br />
*# Investigate algorithms for computing and visualizing differences between ancient coins struck from similar, but slightly different, dies.<br />
*# Develop a system combining body-mounted cameras and/or Kinect with tactile or auditory feedback to help blind people avoid obstacles.<br />
*# Use computer-controlled milling machines to fabricate bas-reliefs, using substrates of heterogeneous materials.<br />
*# Adapt a MakerBot or other hobbyist-grade manufacturing device to use multiple materials.<br />
*# Implement (and perform the appropriate theoretical sampling/aliasing analysis for) a rendering system that explicitly accounts for the red/green/blue sub-pixels of LCD displays.<br />
*# Other projects in computer graphics and vision, or technologies for documenting and studying cultural heritage objects.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~schapire/ Robert Schapire], Room 407===<br />
*Research Areas: Machine learning<br />
*Independent Research Topics:<br />
*# Implement and run experiments on assorted machine learning algorithms.<br />
*# Apply machine learning algorithms to specific tasks.<br />
*# Any other interesting project related to machine learning.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~rs/ Robert Sedgewick], Room 319 ===<br />
* Research Areas: Scientific analysis of algorithms, Analytic combinatorics<br />
* Independent Research Topics:<br />
Professor Sedgewick is willing to advise any student who comes up with an idea for independent work from his books, papers, courses, or in his current areas of active research. Send mail or stop by to discuss possible topics if you are interested.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~jps/ Jaswinder Pal Singh], Room 423 - On Leave Spring 2013 ===<br />
*Research Areas: 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.<br />
*Independent Research Topics:<br />
*# 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.<br />
*# Implement and study novel methods for topic-specific or vertical information discovery and search, as well as for high-quality persistent search.<br />
*# Study and develop methods to infer insights from data in different application areas.<br />
*# 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.<br />
*# Develop and implement algorithms for selected problems in computational biology, especially simulating the immune system or analyzing immunological data.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~mona/ Mona Singh], Room 420 ===<br />
*Research Areas: computational molecular biology, as well as its interface with machine learning and algorithms.<br />
*Independent Research Topics:<br />
*# Whole and cross-genome methods for predicting protein function and protein-protein interactions.<br />
*# Analysis and prediction of biological networks.<br />
*# Computational methods for inferring specific aspects of protein structure from protein sequence data.<br />
*# Any other interesting project in computational molecular biology.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~ret/ Robert Tarjan], Room 324 ===<br />
*Research Areas: Data structures; graph algorithms; combinatorial optimization; computational complexity; computational geometry; parallel algorithms.<br />
*Independent Research Topics:<br />
*# Implement one or more data structures or combinatorial algorithms to provide insight into their empirical behavior.<br />
*# Design and/or analyze various data structures and combinatorial algorithms.<br />
<br />
=== Prof. [http://function.princeton.edu/ogt.html/ Olga Troyanskaya], Room 320 ===<br />
*Research Areas: Bioinformatics; analysis of large-scale biological data sets (genomics, gene expression, proteomics, biological networks); algorithms for integration of data from multiple data sources; visualization of biological data; machine learning methods in bioinformatics.<br />
*Independent Research Topics:<br />
*# Implement and evaluate one or more gene expression analysis algorithm.<br />
*# Develop algorithms for assessment of performance of genomic analysis methods.<br />
*# Develop, implement, and evaluate visualization tools for heterogeneous biological data.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~dpw/ David Walker], Room 211=== <br />
*Research Areas: Programming languages, type systems, compilers, data processing and security.<br />
*Independent Research Topics:<br />
*# PADS: a domain-specific research language for specifying data formats and automatically generating tools that and do cool things with the specified format (See here for more info):<br />
*## How can we improve the PADS toolkit?<br />
*## Can we automatically generate specialized compression, obfuscation, or encryption tools?<br />
*## Can we generate tools specialized for particular domains such as computational biologiy? Financial analysis? Physicis? Computer networking?<br />
*## PADS is currently implemented on top of C and O'Caml. Can we provide PADS for other languages such as Python or Haskell?<br />
*## Given example data (like the output of "ls -l"), can we automatically learn the format of the data using clever algorithms or machine learning?<br />
*## Can we design hardware and/or software mechanisms that will tolerate bit flips and other faults caused by cosmic rays?<br />
*## Can we develop a type system or other software analysis that can determine whether software is fault tolerant? <br />
*# Any other interesting project that involves type systems, compilers, data processing, fault tolerance, language-based security, aspect-oriented programming, theorem proving, logic or logical frameworks.<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~wayne/contact/ Kevin Wayne], Room 207 ===<br />
*Research Areas: design, analysis, and implementation of algorithms; data structures; combinatorial optimization; graphs and networks.<br />
*Independent Research Topics:<br />
*# Design and implement computer visualizations of algorithms or data structures.<br />
*# Develop pedagogical tools or programming assignments for the computer science curriculum at Princeton and beyond.<br />
*# Develop assessment infrastructure and assessments for MOOCs.<br />
<br />
= ''Opportunities outside the department'' =<br />
<br />
We encourage students to look in to doing interdisciplinary computer science research and to work with professors in departments other than computer science. However, every CS independent work project must have a strong computer science element (even if it has other scientific or artistic elements as well.) To do a project with an advisor outside of computer science you must have permission of the department. This can be accomplished by having a second co-advisor within the computer science department or by contacting the independent work supervisor about the project and having he or she sign the independent work proposal form.<br />
<br />
Here is a list of professors outside the computer science department who are eager to work with computer science undergraduates.<br />
<br />
===Prof. Mung Chiang, B238, E Quad. chiangm@princeton.edu===<br />
*Professor of Electrical Engineering, Associate Faculty of Computer Science <br />
Director of the EDGE Lab<br />
*Research Interests:<br />
*# Networking<br />
*# Wireless<br />
*# Network Economics<br />
*# Social Networks<br />
*Check out the new Princeton [http://scenic.princeton.edu/ EDGE Lab],:<br />
[http://www.princeton.edu/main/news/archive/S30/91/87E56/index.xmlsection=featured<br />
*Undergrad Research Topics:<br />
*We have a few openings for undergrad researchers in the Princeton EDGE Lab in 2011-2012<br />
*# [http://scenic.princeton.edu/tube/ TUBE],: Time dependent pricing for wireless data plans (with user trials in US and international operators).<br />
*# QAVA: Quota aware video adaptation (with a user trial in Princeton).<br />
*# Online social network influence maximization <br />
*# Intelligent processing of product ratings on Amazon <br />
*# Location based match making<br />
*# Energy efficient cloud computing (joint work with Google)<br />
*# Traffic management in cloud computing (joint work with HP)<br />
*# Satellite capacity overlay network on LTE 4G (joint work with SES)<br />
*# Cellular/Femto/WiFi network interaction (joint work with Intel, AT&T, and Verizon)<br />
*# Fairness evaluation tool (joint work with Telcordia)<br />
<br />
=== Prof. [http://www.molbio.princeton.edu/labs/coller/personnel.htm/ Hilary Coller], Room 140 Lewis Thomas Lab ===<br />
*Research Areas: computational approaches to analysis of large-scale genomics data sets<br />
*Independent Research Topics:<br />
*# Data integration projects with large scale data sets: gene expression and microRNA expression.<br />
*# Clustering algorithms and data visualization algorithms to represent patterns of genetic change.<br />
*# Pattern matching algorithms to define genetic regions that are overrepresented compared with chance.<br />
*# Pattern matching and data integration algorithms to integrate data generated by the laboratory with publicly available data sets from tumors or microbial species.<br />
*# Other topics of mutual interest.<br />
<br />
=== Prof. [http://www.princeton.edu/~sharad/ Sharad Malik], Engineering Quad, Room B224 ===<br />
*Research Areas: <br />
*#Design of reliable hardware systems<br />
*#Verifying complex software and hardware systems<br />
<br />
<br />
<br />
=== Prof. [http://weblamp.princeton.edu/~psych/psychology/research/norman/index.php Ken Norman], Room 3-N-18 Green Hall===<br />
* Research Areas: Memory, the brain and computation <br />
* Lab: [http://compmem.princeton.edu/ Princeton Computational Memory Lab]<br />
<br />
Potential research topics<br />
<br />
* Methods for decoding cognitive state information from neuroimaging data (fMRI and EEG) <br />
* Neural network simulations of learning and memory<br />
<br />
=== Dr. [http://www.janet.vertesi.com/~jv/ Janet Vertesi], Society of Fellows and Sociology Dept, Room 104A, Scheide Caldwell House===<br />
<br />
*Research areas: Human-Computer Interaction (qualitative); Informatics and Information Science; Socio-Computational Systems; Sociology of Technology; Virtual Organizations as Sociotechnical Systems; Computer-Supported Cooperative Work; Ubiquitous Computing; User-Centered Computing; Technology and Transnationalism (including ICT4D); New media art and critical technical practice; Sustainable design.<br />
<br />
*About this research: Have you ever stopped to think what will happen to your new chip, software, or iPhone app once it encounters the Real World? Human-Computer Interaction is an exciting and expanding community of computer scientists, anthropologists, sociologists, and critical theorists who examine computing "in the wild" and are dramatically changing our sense of the possibilities of human technological experience. My research takes place at the intersection of these dynamic disciplines and uses qualitative methods to build new software and hardware tools that support a wider range of technological experiences. To learn more, visit my website: http://janet.vertesi.com<br />
<br />
*Independent Research topics:<br />
<br />
*1. NASA's Cassini Mission to Saturn is a large-scale, international, planetary exploration venture that involves hundreds of scientists and engineers across NASA and ESA. How do members of the Cassini team work together to conduct science with a robot in orbit around another planet? How do they use technologies to do their work at a distance from each other and from their spacecraft? Based on these understandings, how can we better design software environments and tools to support their work, and the work of other distributed teams? This project is based on an NSF Computer Science grant and there are lots of opportunities to get involved with a NASA mission, looking at one piece of the puzzle.<br />
<br />
*2. Culturally Embedded Computing. No one ever uses technologies in a vacuum. Whether playing World of Warcraft or making a call on your iPhone, software and technological practices are embedded in cultural systems, appropriated differently in new cultural contexts, and suffused with local values. Through qualitative user studies of these different cultural contexts, can we use our understanding of these varied settings to better design technologies that "fit"?<br />
<br />
*3. Critical Technical Practice. From "Moore's Law" to "friending" on Facebook, certain cultural assumptions and values are built into our computational systems that we take for granted. If we invert, challenge or change those assumptions, what new systems and possible ways of interacting might result?<br />
<br />
*4. Any interesting way to use qualitative research methods to better understand how users "in the wild" appropriate technologies into their daily lives, to inform the design of new technological systems and possibilities.<br />
<br />
<br />
===Prof. David Wentzlaff, Engineering Quadrangle, Room 228===<br />
*Research Areas: Computer Architecture, Parallel Computing, Cloud <br />
Computing, Operating Systems, Sustainable Computing.<br />
*Independent Research Topics:<br />
*# Instrument Princeton's Green (HPCRC) data center<br />
*# Investigate power utilization on an processor core implemented in an FPGA<br />
*# Dismantle and document all of the components in modern electronics. Invent new ways to build computers that can be recycled easier.<br />
*# Other topics in parallel computer architecture or operating systems</div>Arvindnhttp://wiki.cs.princeton.edu/index.php?title=UgradResearchTopics&diff=11618UgradResearchTopics2013-03-27T16:13:45Z<p>Arvindn: /* Dr. Arvind Narayanan 308 Sherrerd Hall */</p>
<hr />
<div>=Suggested Undergraduate Research Topics=<br />
<br />
Links to many research areas in the department may be found <br />
[http://www.cs.princeton.edu/research/areas/ here] while links<br />
to projects may be found<br />
[http://www.cs.princeton.edu/research/projects/ here].<br />
<br />
===Prof. [http://www.cs.princeton.edu/~appel/ Andrew Appel], Room 219===<br />
* Research Areas: Formal methods, programming languages, compilers, computer security.<br />
* Independent Research Topics:<br />
*# Automated theorem proving (suggestion: take COS 441 first).<br />
*# Trustworthiness of voting machines and/or internet voting.<br />
*# Computer game-playing programs.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~arora/ Sanjeev Arora], Room 307 - On Leave Spring 2013=== <br />
* Research Areas: Uses of randomness in complexity theory and algorithms; Efficient algorithms for finding approximate solutions to NP-hard problems (or proving that they don't exist); Cryptography. <br />
* Independent Research Topics: <br />
*# Implement one of recently discovered algorithms for "recycling" random bits, and study how well it does in practice. <br />
*# 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). <br />
*# Experimental Algorithms: Implementing and Evaluating Algorithms using existing software packages. <br />
*# Design and implementation of graph partitioning algorithms (possibly leading to a publication). <br />
*# Modeling the human brain using random graphs.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~august/ David August], Room 209 ===<br />
* Research Areas: Computer Architecture and Compilers, and Green Energy.<br />
* Independent Research Topics:<br />
*# Any interesting topic in computer architecture or compilers.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~blei/ David Blei], Room 419 - On Leave Fall 2012 & Spring 2013 ===<br />
*Research Areas: machine learning, graphical models, computational statistics and text analysis. <br />
<br />
* Prof. Blei advises interesting machine learning or computational statistics projects. Example research areas are spectral clustering, approximate posterior inference, social network analysis, or time series analysis. <br />
<br />
* Before contacting Prof. Blei, please read http://www.cs.princeton.edu/~blei/ugrad-work.html<br />
<br />
===Prof. [http://www.cs.princeton.edu/~mbraverm/ Mark Braverman], Room 411 === <br />
* Research Areas: computational complexity, algorithms, applied probability, computability over the real numbers, game theory and mechanism design, information theory, applications of machine learning in healthcare and medicine. <br />
* Independent Research Topics: <br />
*# Topics in computational and communication complexity.<br />
*# Applications of information theory in complexity theory.<br />
*# Algorithms for problems under real-life assumptions.<br />
*# Game theory, network effects, and mechanism design.<br />
*# Computation involving dynamical systems, fractals, and cellular automata. <br />
*# Game theory and machine learning applied to problems motivated by applications in healthcare.<br />
<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~moses/ Moses Charikar], Room 305 ===<br />
*Research Areas: Design and analysis of algorithms, particularly approximation algorithms, on-line algorithms and efficient algorithms for dealing with large volumes of data.<br />
*Independent Research Topics:<br />
*# Reconstructing evolutionary trees from biological data.<br />
*# Algorithms for clustering data - theory as well as impementation.<br />
*# Investigating the gap of mathematical programming relaxations for optimization problems. (This requires a strong math background).<br />
*# Any other topic in advanced algorithms or discrete mathematics.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~chazelle/ Bernard Chazelle], Room 404 - On Leave Fall 2012 & Spring 2013 ===<br />
*Research Areas: Natural Algorithms, Computational Geometry, Sublinear Algorithms. <br />
*Independent Research Topics<br />
*# Natural algorithms (flocking, swarming, social networks, etc).<br />
*# Sublinear algorithms<br />
*# Self-improving algorithms<br />
*# Markov data structures<br />
<br />
<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~doug/ Douglas Clark], Room 309 ===<br />
*Research Areas: Computer architecture and organization; architecturally-focused performance analysis.<br />
*Independent Research Topics:<br />
*# 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 partner.<br />
*# 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.<br />
*# Other topics, depending on student interest.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~dpd/ David Dobkin],===<br />
*Research Areas: Visualization, computational geometry, pervasive computing, software engineering.<br />
*Independent Research Topics:<br />
*# Building applications using Wireless and Handheld devices.<br />
*# Reconstructing jigsaw puzzles.<br />
*# Face recognition.<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~rdondero/ Robert Dondero], Room 206 ===<br />
*Research Areas: Software engineering; software engineering education.<br />
*Independent Research Topics:<br />
*#Develop or evaluate tools to facilitate student learning in undergraduate computer science courses at Princeton, and beyond.<br />
*#In particular, can code critiquing tools help students learn about software quality?<br />
<br />
=== Prof. Zeev Dvir, Room 405 ===<br />
*Research Areas: Research Areas: computational complexity, pseudo-randomness, coding theory and discrete mathematics.<br />
*Independent Research: I have various research problems related to Pseudorandomness, Coding theory, Complexity and Discrete mathematics - all of which require strong mathematical background<br />
<br />
===Dr. [http://www.cs.princeton.edu/~fellbaum/ Christiane Fellbaum], Room 412 ===<br />
* Research Areas: theoretical and computational linguistics, word sense disambiguation, lexical resource construction, English and multilingual WordNet(s), ontology<br />
<br />
* Independent Research Topics:<br />
*# Anything having to do with natural language--come and see me with/for ideas suitable to your background and interests.<br />
*# In the past, students have worked on extensions and interfaces for WordNet (English and WN in other languages),<br />
*# applications of WordNet(s), including:<br />
*## Foreign language tutoring systems,<br />
*## Spelling correction software,<br />
*## Word-finding/suggestion software for ordinary users and people with memory problems,<br />
*# Machine Translation (on the word level)<br />
*# Sentiment and Opinion detection<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~felten/ Edward Felten], 302 Sherrerd Hall ===<br />
*Research Areas: Computer security and privacy; Internet software; technology law and policy.<br />
*Independent Research Topics:<br />
*# Technology for open government.<br />
*# Computer security and privacy.<br />
*# Digital media distribution.<br />
*# Copy protection and peer to peer technologies.<br />
*# Electronic voting.<br />
*# Technology, society and public policy.<br />
*# Any other interesting or offbeat topic.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~fiebrink/ Rebecca Fiebrink], Room 408 ===<br />
*Research Areas: Computer music, human-computer interaction<br />
*Independent Research Topics:<br />
*<b> My lab has a few existing projects underway for which I'd love some undergraduate involvement. </b><br />
** One relates to a major new project I'm beginning (in collaboration with a Princeton musicologist): the creation of a giant digital, interactive version of the Roman de Fauvel, a 14th century multimedia manuscript. The vision for this research is to use 21st century technology to enable more efficient, productive, and creative ways of interacting with medieval artifacts--including text (possibly in other languages), and music (in medieval notation), images (containing iconography unfamiliar to 21st century viewers). Most digital humanities technologies simply do a high-resolution scan of a manuscript and slap it on a web page, but making something more richly interactive (with interactive translations of text and music notation, the ability to perform the music live, the ability for scholars to add annotations and links to other media, etc.) would benefit students, scholars, and the general public. I'm purchasing a Samsung SUR40 multitouch tabletop (think a table-sized iPad) and I'd like to work with undergrads to build interactive technologies on top of it, for use by students, in museum exhibits at the Bibliotheque Nationale in Paris and in Princeton, or possibly by scholars in musicology, medieval studies, etc. There are a few good semester-sized projects in here for students who like programming. There's room to incorporate signal processing, machine learning, UI development, user studies, and other topics into the project if those are areas you'd like to learn more about. There's also the possibility of continuing this work in the summer.<br />
** Second, for people who aren't interested in music so much as broader HCI/implementation projects, I have another idea that could work well for a single student. Here's the idea: People in the pscyh department at Princeton (and elsewhere) often need to design simple computer experiments (on the Web or as desktop apps), but they often don't have any programming experience. Why not create a toolkit that psychology researchers can use to design and deploy experiments, and collect data? Existing tools such as SurveyMonkey do this really well for simple text-only questions, but a researcher might have additional (but pretty simple) requirements. For example, they may need to randomly change the content or ordering of questions across subjects, and log this information as well. I think that making this kind of tool would be doable in 1 semester for someone with good programming skills, and there is an opportunity to work with at least one research group in the psych department to actually deploy this tool with them (and to get their involvement in the design and evaluation process).<br />
** Third, for people who have taken COS 323: I am collaborating with some people in Music and Physics on a project using chimeric states of coupled oscillator systems as a basis for sound synthesis. If you've taken 323 and want to do something music/sound-related that can take advantage of your Matlab numerical methods hacking skills, let me know. (No music background needed, though.)<br />
** Fourth, for students who have taken 424 and/or 511, a project involving deep learning methods for modeling human gesture, for use in building gesture-driven instruments or gesture-driven speech synthesis.<br />
If you have a strong interest in a topic other than those listed above, but which is still related to some combination of music, applied machine learning, and HCI, please send an email describing your ideas. (But please send it early, as my IW advising slots tend to fill up fast!)<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~af/ Adam Finkelstein], Room 424 ===<br />
*Research Areas: computer graphics, animation.<br />
*Ideas for independent Research Topics:<br />
*# Computer-generated drawings from 3D models.<br />
*# Tools for making visual art using computer graphics.<br />
*# New methods for computer animation.<br />
*# Techniques for medical visualization.<br />
*# Experiments where the data is collected via the internet.<br />
*# Any interesting project in computer graphics.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~mfreed/ Michael Freedman], Room 308 ===<br />
*Research Areas: Distributed systems, security, networking<br />
*Independent Research Topics:<br />
Projects related to virtual worlds, datacenter systems and networks, new<br />
Internet architectures, untrusted cloud storage and applications, and<br />
peer-to-peer systems. Please see our group website at<br />
http://sns.cs.princeton.edu/ for an example of research areas.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~funk/ Thomas Funkhouser], Room 422 ===<br />
* Research Areas: Computer Graphics, Computer Vision.<br />
* Independent Research Topics:<br />
*# Develop methods for 3D scanning of interior environments. <br />
*# Investigate methods for recognizing objects in 3D scans.<br />
*# Develop components of a system to reconstruct 3D models of cities from scannned data.<br />
*# Help build systems for creating new 3D models using a large repository of existing models.<br />
*# Any other projects related to computer graphics or shape analysis.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~bwk/ Brian Kernighan], Room 311 ===<br />
* Research Areas: application-specific languages, document preparation, user interfaces, software tools, programming methodology<br />
*Independent Research Topics:<br />
*# Application-oriented languages, scripting languages.<br />
*# Tools; user interfaces; web services.<br />
*# AMPL and optimization.<br />
*# Joint work with other departments.<br />
*# For a list of less than half-baked ideas [http://www.cs.princeton.edu/~bwk/iw.ideas Look Here]<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~kintali/ Shiva Kintali], Room 312 ===<br />
* Research Areas: Computational Complexity, Graph Theory and Combinatorial Optimization.<br />
* Prerequisites: Reasonable mathematical maturity, knowledge of algorithm design and analysis.<br />
*Independent Research Topics:<br />
*# Topics related to [http://kintali.wordpress.com/2009/06/23/graceful-tree-conjecture/ Graceful Tree Conjecture], graph reconstruction conjecture, graph coloring and Pfaffians.<br />
*# Topics related to [http://kintali.wordpress.com/2010/09/02/hardness-of-graph-isomorphism/ Graph Isomorphism], [http://kintali.wordpress.com/2011/03/05/graph-isomorphism-and-bounded-tree-width/ Isomorphism of bounded treewidth graphs], [http://kintali.wordpress.com/2010/01/28/approximating-treewidth/ approximating treewidth] of special classes of graphs.<br />
*# Topics related to expander graphs, space-efficient computation and the L vs NL problem.<br />
*# Topics related to directed versions of treewidth (Eg: directed treewidth, D-width, DAG-width, Kelly-Width).<br />
*# Topics related to metric embedding and flow-cut gaps.<br />
*# Topics related to Speech synthesis, Semi-supervised learning, Collaborative filtering and Recommendation algorithms.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~aslp/ Andrea LaPaugh], Room 304 ===<br />
*Research Areas: Search and retrieval of information; data mining, particularly clustering; combinatorial algorithms<br />
*Independent Research Topics:<br />
*# Investigating new characterizations of the graph structure of the Web or other social networks.<br />
*# Experimental evaluations of clustering algorithms.<br />
*# Data analysis within social networks.<br />
*# Other topics with an information discovery or management aspect, including novel applications using databases or information retrieval.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~li/ Kai Li], Room 321 ===<br />
*Research Areas: Parallel architectures and systems; distributed systems; operating systems.<br />
*Independent Research Topics:<br />
*# Design, implement and evaluate practical methods for image and audio similarity searches.<br />
*# Seamless shared visualization on large-scale displays.<br />
*# Simulation studies of asymmetric heterogeneous chip multiprocessor architecture.<br />
<br />
<br />
<br />
=== Dr. Xiaoyan Li, Room 422 ===<br />
*Research areas: Information retrieval, novelty detection, question answering and text mining<br />
*Independent Research Topics:<br />
*# Explore new statistical retrieval models.<br />
*# Passage retrieval models and relevance feedback models.<br />
*# Evaluating existing document clustering techniques.<br />
*# Explore fast and efficient document clustering approach.<br />
*# Any interesting project related to information retrieval and text mining.<br />
<br />
=== Prof. [http://www.princeton.edu/~mrm/ Margaret Martonosi], Room 204 ===<br />
*Research Areas: Computer architectures and the hardware/software interface, mobile networks, and technology for developing regions.<br />
<br />
Possible research topics include:<br />
<br />
* Green Data Centers<br />
* Mobile Computing<br />
* Cell phone applications and programming models<br />
* Energy-efficient computer architecture<br />
<br />
Or email (mrm@princeton.edu) and pitch an idea roughly in this space!<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~cmoretti/ Christopher Moretti], Room 206 ===<br />
*Research areas: Distributed systems, high-throughput computing, computer science/engineering education<br />
*Independent Research Topics:<br />
*# Expansion, improvement, and evaluation of open-source distributed computing software.<br />
*# Applications of distributed computing for "big science" (e.g. biometrics, data mining, bioinformatics)<br />
*# Software and best practices for computer science education and study<br />
*# Sports analytics and crowd-sourced computing<br />
<br />
=== Dr. [http://randomwalker.info/ Arvind Narayanan] 308 Sherrerd Hall ===<br />
<br />
Research areas: privacy, security, tech policy, cryptography, social networks.<br />
<br />
Independent research topics<br />
<br />
1. Figuring out what the "bad guys" are doing with your data<br />
<br />
If someone ''really'' wanted to find out personal things about you online, how far could they get? Let's investigate this by writing a bot which, given an identity (say, an email address), collects and aggregates information from various sites about that person. Ideally, it should be able to automatically figure out which information is current and which is out of date, reconcile conflicts, make new inferences based on multiple pieces of data, and hook into the "deep web" — pages that are not directly visible on web searches.<br />
<br />
2. Reverse engineering to expose poor security and privacy<br />
<br />
2a. Snapchat<br />
<br />
Snapchat, as you may know, is an app that lets you send photos with an expiry timer of up to 10 seconds. The photo will be deleted by the app on the receiver’s side once the timer runs out. This kind of security model is silly from a technical point of view — as long as the photo reaches the other user’s device, they can ensure that it doesn’t get deleted. The project is to reverse-engineer Snapchat (and the recently released Facebook poke which is very similar) and to create as many hacks as possible to prevent the deletion of received photos, to demonstrate the app’s insecurity.<br />
<br />
2b. Web cookies<br />
<br />
Web companies track us online and compile extensive databases of our personal information. The personal behavioral profiles created through tracking are used for targeted advertising, price discrimination, targeted political emails, and various other practices that make people uncomfortable. I have an ongoing project to automatically reverse engineer cookies stored in browsers (which may be encoded or encrypted) to figure out what information companies have collected about you and what they are using it for. We are just getting started, and there are many interesting sub-projects to work on.<br />
<br />
3. Use machine learning to ''improve'' privacy<br />
<br />
"Google Now" serendipitously shows you information you might find useful, such as driving time to your home when you're away. Can we serendipitously show people information to improve privacy? For example, when you're out on Halloween night with your friends, your phone could automatically figure out that one of them has a habit of always posting pictures publicly on Facebook, and notify you of this, so that you could request that they not take pictures of you.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~vivek/ Vivek Pai], Room 322 ===<br />
*Research Areas: Network/Web servers, operating systems, high-performance applications.<br />
*Independent Research Topics:<br />
*# Use data from [http://comon.cs.princeton.edu CoMon] to analyze workload behavior on [http://www.planet-lab.org PlanetLab]. For example, can you automatically detect things about people's programs, can you cluster usage patterns, etc., etc.<br />
*# Content Distribution Networks (CDNs) are commonly used to deliver Web content, but no standard monitoring system exists to easily gauge their relative performance. Can you build one that reasonably compares different CDNs?<br />
*# Tools like [http://codeen.cs.princeton.edu/covisualize/ CoVisualize] are useful for periodically-updating data. Can you take this concept and apply it to data that changes much more rapidly, such as every second<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~llp/ Larry Peterson], Room 208 - On Leave Fall 2012 ===<br />
*Research Areas: Networked systems, communication protocols, operating systems.<br />
*Independent Research Topics:<br />
*# Topics related to planetary-scale network services, overlay networks, and the system infrastucture needed to support them.<br />
<br />
<br />
=== Dr. David Pritchard, Room 410 ===<br />
*Research Areas: Algorithms, graphs, optimization, combinatorics, education, implementation<br />
*Independent Research Topics:<br />
*# Open tools for interative programming lessons/manuals (e.g. http://cscircles.ca with user-made content)<br />
*# Voting and election systems in theory and practice<br />
*# Commonest Subsequence: http://cstheory.stackexchange.com/questions/12307/<br />
*# Approximation algorithms and hardness<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~jrex/ Jennifer Rexford], Room 306 - On Leave Fall 2012 & Spring 2013 ===<br />
*Research areas: networking, programmable networks, network management, network virtualization<br />
*Independent Research Topics:<br />
*# Enterprise and data-center networking solutions built on [http://www.openflowswitch.org/ OpenFlow] and [http://noxrepo.org/ NOX]. For example, middleboxes like firewalls, NATs, intrusion detection systems, and load balancers, routing techniques that equalize latency between gaming or financial-services clients, adaptive measurement of network traffic, etc.<br />
*# Techniques for boot-strapping communication in regions without conventional Internet and cellular network connectivity (e.g., developing regions, disaster areas, countries censoring communication), using commodity equipment like phones and access points.<br />
*# Any interesting project in data networking.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~smr/ Szymon Rusinkiewicz], Room 406===<br />
*Research Areas: computer graphics; acquisition of 3D shape, reflectance, and appearance of real-world objects; novel methods for physical fabrication of objects with particular shape/appearance.<br />
*Independent Research Topics (updated fall, 2011):<br />
*# Construct an efficient and easy-to-use 3-D scanning system for large collections of fragments of archaeological artifacts.<br />
*# Investigate algorithms for computing and visualizing differences between ancient coins struck from similar, but slightly different, dies.<br />
*# Develop a system combining body-mounted cameras and/or Kinect with tactile or auditory feedback to help blind people avoid obstacles.<br />
*# Use computer-controlled milling machines to fabricate bas-reliefs, using substrates of heterogeneous materials.<br />
*# Adapt a MakerBot or other hobbyist-grade manufacturing device to use multiple materials.<br />
*# Implement (and perform the appropriate theoretical sampling/aliasing analysis for) a rendering system that explicitly accounts for the red/green/blue sub-pixels of LCD displays.<br />
*# Other projects in computer graphics and vision, or technologies for documenting and studying cultural heritage objects.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~schapire/ Robert Schapire], Room 407===<br />
*Research Areas: Machine learning<br />
*Independent Research Topics:<br />
*# Implement and run experiments on assorted machine learning algorithms.<br />
*# Apply machine learning algorithms to specific tasks.<br />
*# Any other interesting project related to machine learning.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~rs/ Robert Sedgewick], Room 319 ===<br />
* Research Areas: Scientific analysis of algorithms, Analytic combinatorics<br />
* Independent Research Topics:<br />
Professor Sedgewick is willing to advise any student who comes up with an idea for independent work from his books, papers, courses, or in his current areas of active research. Send mail or stop by to discuss possible topics if you are interested.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~jps/ Jaswinder Pal Singh], Room 423 - On Leave Spring 2013 ===<br />
*Research Areas: 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.<br />
*Independent Research Topics:<br />
*# 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.<br />
*# Implement and study novel methods for topic-specific or vertical information discovery and search, as well as for high-quality persistent search.<br />
*# Study and develop methods to infer insights from data in different application areas.<br />
*# 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.<br />
*# Develop and implement algorithms for selected problems in computational biology, especially simulating the immune system or analyzing immunological data.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~mona/ Mona Singh], Room 420 ===<br />
*Research Areas: computational molecular biology, as well as its interface with machine learning and algorithms.<br />
*Independent Research Topics:<br />
*# Whole and cross-genome methods for predicting protein function and protein-protein interactions.<br />
*# Analysis and prediction of biological networks.<br />
*# Computational methods for inferring specific aspects of protein structure from protein sequence data.<br />
*# Any other interesting project in computational molecular biology.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~ret/ Robert Tarjan], Room 324 ===<br />
*Research Areas: Data structures; graph algorithms; combinatorial optimization; computational complexity; computational geometry; parallel algorithms.<br />
*Independent Research Topics:<br />
*# Implement one or more data structures or combinatorial algorithms to provide insight into their empirical behavior.<br />
*# Design and/or analyze various data structures and combinatorial algorithms.<br />
<br />
=== Prof. [http://function.princeton.edu/ogt.html/ Olga Troyanskaya], Room 320 ===<br />
*Research Areas: Bioinformatics; analysis of large-scale biological data sets (genomics, gene expression, proteomics, biological networks); algorithms for integration of data from multiple data sources; visualization of biological data; machine learning methods in bioinformatics.<br />
*Independent Research Topics:<br />
*# Implement and evaluate one or more gene expression analysis algorithm.<br />
*# Develop algorithms for assessment of performance of genomic analysis methods.<br />
*# Develop, implement, and evaluate visualization tools for heterogeneous biological data.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~dpw/ David Walker], Room 211=== <br />
*Research Areas: Programming languages, type systems, compilers, data processing and security.<br />
*Independent Research Topics:<br />
*# PADS: a domain-specific research language for specifying data formats and automatically generating tools that and do cool things with the specified format (See here for more info):<br />
*## How can we improve the PADS toolkit?<br />
*## Can we automatically generate specialized compression, obfuscation, or encryption tools?<br />
*## Can we generate tools specialized for particular domains such as computational biologiy? Financial analysis? Physicis? Computer networking?<br />
*## PADS is currently implemented on top of C and O'Caml. Can we provide PADS for other languages such as Python or Haskell?<br />
*## Given example data (like the output of "ls -l"), can we automatically learn the format of the data using clever algorithms or machine learning?<br />
*## Can we design hardware and/or software mechanisms that will tolerate bit flips and other faults caused by cosmic rays?<br />
*## Can we develop a type system or other software analysis that can determine whether software is fault tolerant? <br />
*# Any other interesting project that involves type systems, compilers, data processing, fault tolerance, language-based security, aspect-oriented programming, theorem proving, logic or logical frameworks.<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~wayne/contact/ Kevin Wayne], Room 207 ===<br />
*Research Areas: design, analysis, and implementation of algorithms; data structures; combinatorial optimization; graphs and networks.<br />
*Independent Research Topics:<br />
*# Design and implement computer visualizations of algorithms or data structures.<br />
*# Develop pedagogical tools or programming assignments for the computer science curriculum at Princeton and beyond.<br />
*# Develop assessment infrastructure and assessments for MOOCs.<br />
<br />
= ''Opportunities outside the department'' =<br />
<br />
We encourage students to look in to doing interdisciplinary computer science research and to work with professors in departments other than computer science. However, every CS independent work project must have a strong computer science element (even if it has other scientific or artistic elements as well.) To do a project with an advisor outside of computer science you must have permission of the department. This can be accomplished by having a second co-advisor within the computer science department or by contacting the independent work supervisor about the project and having he or she sign the independent work proposal form.<br />
<br />
Here is a list of professors outside the computer science department who are eager to work with computer science undergraduates.<br />
<br />
===Prof. Mung Chiang, B238, E Quad. chiangm@princeton.edu===<br />
*Professor of Electrical Engineering, Associate Faculty of Computer Science <br />
Director of the EDGE Lab<br />
*Research Interests:<br />
*# Networking<br />
*# Wireless<br />
*# Network Economics<br />
*# Social Networks<br />
*Check out the new Princeton [http://scenic.princeton.edu/ EDGE Lab],:<br />
[http://www.princeton.edu/main/news/archive/S30/91/87E56/index.xmlsection=featured<br />
*Undergrad Research Topics:<br />
*We have a few openings for undergrad researchers in the Princeton EDGE Lab in 2011-2012<br />
*# [http://scenic.princeton.edu/tube/ TUBE],: Time dependent pricing for wireless data plans (with user trials in US and international operators).<br />
*# QAVA: Quota aware video adaptation (with a user trial in Princeton).<br />
*# Online social network influence maximization <br />
*# Intelligent processing of product ratings on Amazon <br />
*# Location based match making<br />
*# Energy efficient cloud computing (joint work with Google)<br />
*# Traffic management in cloud computing (joint work with HP)<br />
*# Satellite capacity overlay network on LTE 4G (joint work with SES)<br />
*# Cellular/Femto/WiFi network interaction (joint work with Intel, AT&T, and Verizon)<br />
*# Fairness evaluation tool (joint work with Telcordia)<br />
<br />
=== Prof. [http://www.molbio.princeton.edu/labs/coller/personnel.htm/ Hilary Coller], Room 140 Lewis Thomas Lab ===<br />
*Research Areas: computational approaches to analysis of large-scale genomics data sets<br />
*Independent Research Topics:<br />
*# Data integration projects with large scale data sets: gene expression and microRNA expression.<br />
*# Clustering algorithms and data visualization algorithms to represent patterns of genetic change.<br />
*# Pattern matching algorithms to define genetic regions that are overrepresented compared with chance.<br />
*# Pattern matching and data integration algorithms to integrate data generated by the laboratory with publicly available data sets from tumors or microbial species.<br />
*# Other topics of mutual interest.<br />
<br />
=== Prof. [http://www.princeton.edu/~sharad/ Sharad Malik], Engineering Quad, Room B224 ===<br />
*Research Areas: <br />
*#Design of reliable hardware systems<br />
*#Verifying complex software and hardware systems<br />
<br />
<br />
<br />
=== Prof. [http://weblamp.princeton.edu/~psych/psychology/research/norman/index.php Ken Norman], Room 3-N-18 Green Hall===<br />
* Research Areas: Memory, the brain and computation <br />
* Lab: [http://compmem.princeton.edu/ Princeton Computational Memory Lab]<br />
<br />
Potential research topics<br />
<br />
* Methods for decoding cognitive state information from neuroimaging data (fMRI and EEG) <br />
* Neural network simulations of learning and memory<br />
<br />
=== Dr. [http://www.janet.vertesi.com/~jv/ Janet Vertesi], Society of Fellows and Sociology Dept, Room 104A, Scheide Caldwell House===<br />
<br />
*Research areas: Human-Computer Interaction (qualitative); Informatics and Information Science; Socio-Computational Systems; Sociology of Technology; Virtual Organizations as Sociotechnical Systems; Computer-Supported Cooperative Work; Ubiquitous Computing; User-Centered Computing; Technology and Transnationalism (including ICT4D); New media art and critical technical practice; Sustainable design.<br />
<br />
*About this research: Have you ever stopped to think what will happen to your new chip, software, or iPhone app once it encounters the Real World? Human-Computer Interaction is an exciting and expanding community of computer scientists, anthropologists, sociologists, and critical theorists who examine computing "in the wild" and are dramatically changing our sense of the possibilities of human technological experience. My research takes place at the intersection of these dynamic disciplines and uses qualitative methods to build new software and hardware tools that support a wider range of technological experiences. To learn more, visit my website: http://janet.vertesi.com<br />
<br />
*Independent Research topics:<br />
<br />
*1. NASA's Cassini Mission to Saturn is a large-scale, international, planetary exploration venture that involves hundreds of scientists and engineers across NASA and ESA. How do members of the Cassini team work together to conduct science with a robot in orbit around another planet? How do they use technologies to do their work at a distance from each other and from their spacecraft? Based on these understandings, how can we better design software environments and tools to support their work, and the work of other distributed teams? This project is based on an NSF Computer Science grant and there are lots of opportunities to get involved with a NASA mission, looking at one piece of the puzzle.<br />
<br />
*2. Culturally Embedded Computing. No one ever uses technologies in a vacuum. Whether playing World of Warcraft or making a call on your iPhone, software and technological practices are embedded in cultural systems, appropriated differently in new cultural contexts, and suffused with local values. Through qualitative user studies of these different cultural contexts, can we use our understanding of these varied settings to better design technologies that "fit"?<br />
<br />
*3. Critical Technical Practice. From "Moore's Law" to "friending" on Facebook, certain cultural assumptions and values are built into our computational systems that we take for granted. If we invert, challenge or change those assumptions, what new systems and possible ways of interacting might result?<br />
<br />
*4. Any interesting way to use qualitative research methods to better understand how users "in the wild" appropriate technologies into their daily lives, to inform the design of new technological systems and possibilities.<br />
<br />
<br />
===Prof. David Wentzlaff, Engineering Quadrangle, Room 228===<br />
*Research Areas: Computer Architecture, Parallel Computing, Cloud <br />
Computing, Operating Systems, Sustainable Computing.<br />
*Independent Research Topics:<br />
*# Instrument Princeton's Green (HPCRC) data center<br />
*# Investigate power utilization on an processor core implemented in an FPGA<br />
*# Dismantle and document all of the components in modern electronics. Invent new ways to build computers that can be recycled easier.<br />
*# Other topics in parallel computer architecture or operating systems</div>Arvindnhttp://wiki.cs.princeton.edu/index.php?title=UgradResearchTopics&diff=11354UgradResearchTopics2012-08-30T18:52:53Z<p>Arvindn: </p>
<hr />
<div>=Suggested Undergraduate Research Topics=<br />
<br />
Links to many research areas in the department may be found <br />
[http://www.cs.princeton.edu/research/areas/ here] while links<br />
to projects may be found<br />
[http://www.cs.princeton.edu/research/projects/ here].<br />
<br />
===Prof. [http://www.cs.princeton.edu/~appel/ Andrew Appel], Room 219===<br />
* Research Areas: Formal methods, programming languages, compilers, computer security.<br />
* Independent Research Topics:<br />
*# Automated theorem proving (suggestion: take COS 441 first).<br />
*# Trustworthiness of voting machines and/or internet voting.<br />
*# Computer game-playing programs.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~arora/ Sanjeev Arora], Room 307 - On Leave Spring 2013=== <br />
* Research Areas: Uses of randomness in complexity theory and algorithms; Efficient algorithms for finding approximate solutions to NP-hard problems (or proving that they don't exist); Cryptography. <br />
* Independent Research Topics: <br />
*# Implement one of recently discovered algorithms for "recycling" random bits, and study how well it does in practice. <br />
*# 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). <br />
*# Experimental Algorithms: Implementing and Evaluating Algorithms using existing software packages. <br />
*# Design and implementation of graph partitioning algorithms (possibly leading to a publication). <br />
*# Modeling the human brain using random graphs.<br />
<br />
===Prof. [http://www.cs.princeton.edu/~august/ David August], Room 209 ===<br />
* Research Areas: Computer Architecture and Compilers, and Green Energy.<br />
* Independent Research Topics:<br />
*# Any interesting topic in computer architecture or compilers.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~blei/ David Blei], Room 419 - On Leave Fall 2012 & Spring 2013 ===<br />
*Research Areas: machine learning, graphical models, computational statistics and text analysis. <br />
<br />
* Prof. Blei advises interesting machine learning or computational statistics projects. Example research areas are spectral clustering, approximate posterior inference, social network analysis, or time series analysis. <br />
<br />
* Before contacting Prof. Blei, please read http://www.cs.princeton.edu/~blei/ugrad-work.html<br />
<br />
===Prof. [http://www.cs.princeton.edu/~mbraverm/ Mark Braverman], Room 411 === <br />
* Research Areas: computational complexity, algorithms, applied probability, computability over the real numbers, game theory and mechanism design, information theory, applications of machine learning in healthcare and medicine. <br />
* Independent Research Topics: <br />
*# Topics in computational and communication complexity.<br />
*# Algorithms for problems under real-life assumptions.<br />
*# Game theory, network effects, and mechanism design.<br />
*# Computation involving dynamical systems, fractals, and cellular automata. <br />
*# Game theory and machine learning applied to problems motivated by applications in healthcare. <br />
<br />
=== Prof. [http://www.cs.princeton.edu/~moses/ Moses Charikar], Room 305 ===<br />
*Research Areas: Design and analysis of algorithms, particularly approximation algorithms, on-line algorithms and efficient algorithms for dealing with large volumes of data.<br />
*Independent Research Topics:<br />
*# Reconstructing evolutionary trees from biological data.<br />
*# Algorithms for clustering data - theory as well as impementation.<br />
*# Investigating the gap of mathematical programming relaxations for optimization problems. (This requires a strong math background).<br />
*# Any other topic in advanced algorithms or discrete mathematics.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~chazelle/ Bernard Chazelle], Room 404 - On Leave Fall 2012 & Spring 2013 ===<br />
*Research Areas: Natural Algorithms, Computational Geometry, Sublinear Algorithms. <br />
*Independent Research Topics<br />
*# Natural algorithms (flocking, swarming, social networks, etc).<br />
*# Sublinear algorithms<br />
*# Self-improving algorithms<br />
*# Markov data structures<br />
<br />
<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~doug/ Douglas Clark], Room 309 ===<br />
*Research Areas: Computer architecture and organization; architecturally-focused performance analysis.<br />
*Independent Research Topics:<br />
*# 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 partner.<br />
*# 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.<br />
*# Other topics, depending on student interest.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~dpd/ David Dobkin],===<br />
*Research Areas: Visualization, computational geometry, pervasive computing, software engineering.<br />
*Independent Research Topics:<br />
*# Building applications using Wireless and Handheld devices.<br />
*# Reconstructing jigsaw puzzles.<br />
*# Face recognition.<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~rdondero/ Robert Dondero], Room 206 ===<br />
*Research Areas: Software engineering; software engineering education.<br />
*Independent Research Topics:<br />
*#Develop or evaluate tools to facilitate student learning in undergraduate computer science courses at Princeton, and beyond.<br />
*#In particular, can code critiquing tools help students learn about software quality?<br />
<br />
=== Prof. Zeev Dvir, Room 405 ===<br />
*Research Areas: Research Areas: computational complexity, pseudo-randomness, coding theory and discrete mathematics.<br />
*Independent Research: I have various research problems related to Pseudorandomness, Coding theory, Complexity and Discrete mathematics - all of which require strong mathematical background<br />
<br />
===Dr. [http://www.cs.princeton.edu/~fellbaum/ Christiane Fellbaum], Room 412 ===<br />
* Research Areas: theoretical and computational linguistics, word sense disambiguation, lexical resource construction, English and multilingual WordNet(s), ontology<br />
<br />
* Independent Research Topics:<br />
*# Anything having to do with natural language--come and see me with/for ideas suitable to your background and interests.<br />
*# In the past, students have worked on extensions and interfaces for WordNet (English and WN in other languages),<br />
*# applications of WordNet(s), including:<br />
*## Foreign language tutoring systems,<br />
*## Spelling correction software,<br />
*## Word-finding/suggestion software for ordinary users and people with memory problems,<br />
*# Machine Translation (on the word level)<br />
*# Sentiment and Opinion detection<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~felten/ Edward Felten], 302 Sherrerd Hall ===<br />
*Research Areas: Computer security and privacy; Internet software; technology law and policy.<br />
*Independent Research Topics:<br />
*# Technology for open government.<br />
*# Computer security and privacy.<br />
*# Digital media distribution.<br />
*# Copy protection and peer to peer technologies.<br />
*# Electronic voting.<br />
*# Technology, society and public policy.<br />
*# Any other interesting or offbeat topic.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~fiebrink/ Rebecca Fiebrink], Room 408 ===<br />
*Research Areas: Computer music, human-computer interaction<br />
*Independent Research Topics:<br />
*# <b> I have two existing projects underway for which I'd love some undergraduate involvement. One relates to building software and hardware systems to assist with physiotherapy for children with cerebral palsy. Another relates to a system I've been building for real-time recognition and analysis of human beat-boxing. </b><br />
*# Applications of machine learning to music performance and analysis<br />
*# Computer music performance and composition<br />
*# Music information retrieval and musical audio analysis<br />
*# Music search and recommendation<br />
*# Interactive hardware/software systems for music, art, and dance<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~af/ Adam Finkelstein], Room 424 ===<br />
*Research Areas: computer graphics, animation.<br />
*Ideas for independent Research Topics:<br />
*# Computer-generated drawings from 3D models.<br />
*# Tools for making visual art using computer graphics.<br />
*# New methods for computer animation.<br />
*# Techniques for medical visualization.<br />
*# Experiments where the data is collected via the internet.<br />
*# Any interesting project in computer graphics.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~mfreed/ Michael Freedman], Room 308 ===<br />
*Research Areas: Distributed systems, security, networking<br />
*Independent Research Topics:<br />
Projects related to virtual worlds, datacenter systems and networks, new<br />
Internet architectures, untrusted cloud storage and applications, and<br />
peer-to-peer systems. Please see our group website at<br />
http://sns.cs.princeton.edu/ for an example of research areas.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~funk/ Thomas Funkhouser], Room 422 ===<br />
* Research Areas: Computer graphics.<br />
* Independent Research Topics:<br />
*# Investigate methods for recognizing objects in 3D scans.<br />
*# Develop algorithms for aligning and matching 3D shapes.<br />
*# Build components of a shape-based search engine for 3D models.<br />
*# Any other projects related to computer graphics or shape analysis.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~bwk/ Brian Kernighan], Room 311 ===<br />
* Research Areas: application-specific languages, document preparation, user interfaces, software tools, programming methodology<br />
*Independent Research Topics:<br />
*# Application-oriented languages, scripting languages.<br />
*# Tools; user interfaces; web services.<br />
*# AMPL and optimization.<br />
*# Joint work with other departments.<br />
*# For a list of less than half-baked ideas [http://www.cs.princeton.edu/~bwk/iw.ideas Look Here]<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~kintali/ Shiva Kintali], Room 312 ===<br />
* Research Areas: Computational Complexity, Graph Theory and Combinatorial Optimization.<br />
* Prerequisites: Reasonable mathematical maturity, knowledge of algorithm design and analysis.<br />
*Independent Research Topics:<br />
*# Topics related to [http://kintali.wordpress.com/2009/06/23/graceful-tree-conjecture/ Graceful Tree Conjecture], graph reconstruction conjecture, graph coloring and Pfaffians.<br />
*# Topics related to [http://kintali.wordpress.com/2010/09/02/hardness-of-graph-isomorphism/ Graph Isomorphism], [http://kintali.wordpress.com/2011/03/05/graph-isomorphism-and-bounded-tree-width/ Isomorphism of bounded treewidth graphs], [http://kintali.wordpress.com/2010/01/28/approximating-treewidth/ approximating treewidth] of special classes of graphs.<br />
*# Topics related to expander graphs, space-efficient computation and the L vs NL problem.<br />
*# Topics related to directed versions of treewidth (Eg: directed treewidth, D-width, DAG-width, Kelly-Width).<br />
*# Topics related to metric embedding and flow-cut gaps.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~aslp/ Andrea LaPaugh], Room 304 ===<br />
*Research Areas: Search and retrieval of information; data mining, particularly clustering; combinatorial algorithms<br />
*Independent Research Topics:<br />
*# Develop visualization tools for social network algorithms such as PageRank.<br />
*# Study the current use of graph structure in the exploration of the Web or other social networks, and investigate the potential for new techniques.<br />
*# Experimentally evaluate the use of preprocessing with spectral clustering algorithms.<br />
*# Experimentally evaluate how well metrics used to compare two clusterings of a data set actually capture intuitive notions of similarity between clusterings.<br />
*# Other topics with an information discovery or management aspect, including novel applications using databases or information retrieval.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~li/ Kai Li], Room 321 ===<br />
*Research Areas: Parallel architectures and systems; distributed systems; operating systems.<br />
*Independent Research Topics:<br />
*# Design, implement and evaluate practical methods for image and audio similarity searches.<br />
*# Seamless shared visualization on large-scale displays.<br />
*# Simulation studies of asymmetric heterogeneous chip multiprocessor architecture.<br />
<br />
<br />
<br />
=== Dr. Xiaoyan Li, Room 422 ===<br />
*Research areas: Information retrieval, novelty detection, question answering and text mining<br />
*Independent Research Topics:<br />
*# Explore new statistical retrieval models.<br />
*# Passage retrieval models and relevance feedback models.<br />
*# Evaluating existing document clustering techniques.<br />
*# Explore fast and efficient document clustering approach.<br />
*# Any interesting project related to information retrieval and text mining.<br />
<br />
=== Prof. [http://www.princeton.edu/~mrm/ Margaret Martonosi], Room 204 ===<br />
*Research Areas: Computer architectures and the hardware/software interface, mobile networks, and technology for developing regions.<br />
<br />
Possible research topics include:<br />
<br />
* Green Data Centers<br />
* Mobile Computing<br />
* Cell phone applications and programming models<br />
* Energy-efficient computer architecture<br />
<br />
Or email (mrm@princeton.edu) and pitch an idea roughly in this space!<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~cmoretti/ Christopher Moretti], Room 206 ===<br />
*Research areas: Distributed systems, high-throughput computing, computer science/engineering education<br />
*Independent Research Topics:<br />
*# Expansion, improvement, and evaluation of open-source distributed computing software.<br />
*# Applications of distributed computing for "big science" (e.g. biometrics, data mining, bioinformatics)<br />
*# Software and best practices for computer science education and study<br />
*# Sports analytics and crowd-sourced computing<br />
<br />
=== Dr. [http://randomwalker.info/ Arvind Narayanan] 308 Sherrerd Hall ===<br />
<br />
Research areas: privacy, security, tech policy, cryptography, social networks.<br />
<br />
Independent research topics<br />
<br />
1. Finding privacy and security vulnerabilities, and figuring out what the "bad guys" are doing with your data.<br />
<br />
Two example projects to whet your appetite. Feel free to propose your own!<br />
<br />
1a. If someone ''really'' wanted to find out personal things about you online, how far could they get? Let's investigate this by writing a bot which, given an identity (say, an email address), collects and aggregates information from various sites about that person. Ideally, it should be able to automatically figure out which information is current and which is out of date, reconcile conflicts, make new inferences based on multiple pieces of data, and hook into the "deep web" -- pages that are not directly visible on web searches.<br />
<br />
1b. Sniff out what's happening behind the scenes in mobile applications. When you're using apps on your smartphone in a coffee shop, how much can people nearby infer from the signals? And once you give app companies your data, what happens to it? One way to find this out might be to inject fake information into applications and see where it shows up (e.g., another company sends a marketing email to an email address they shouldn't know about in the first place).<br />
<br />
2. Use machine learning to ''improve'' privacy.<br />
<br />
Again, two examples. <br />
<br />
2a. "Google Now" serendipitously shows you information you might find useful, such as driving time to your home when you're away. Can we serendipitously show people information to improve privacy? For example, when you're out on Halloween night with your friends, your phone could automatically figure out that one of them has a habit of always posting pictures publicly on Facebook, and notify you of this, so that you could request that they not take pictures of you.<br />
<br />
2b. Companies have long privacy policies that no one reads. But these are still very useful and important because if they violate those policies, they can be held legally liable. What if we could automate the monitoring of privacy polices using natural language processing? There are two objectives: (1) find policies that are egregiously privacy-intrusive, and (2) notice when companies change policies to make them less privacy-friendly.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~vivek/ Vivek Pai], Room 322 ===<br />
*Research Areas: Network/Web servers, operating systems, high-performance applications.<br />
*Independent Research Topics:<br />
*# Use data from [http://comon.cs.princeton.edu CoMon] to analyze workload behavior on [http://www.planet-lab.org PlanetLab]. For example, can you automatically detect things about people's programs, can you cluster usage patterns, etc., etc.<br />
*# Content Distribution Networks (CDNs) are commonly used to deliver Web content, but no standard monitoring system exists to easily gauge their relative performance. Can you build one that reasonably compares different CDNs?<br />
*# Tools like [http://codeen.cs.princeton.edu/covisualize/ CoVisualize] are useful for periodically-updating data. Can you take this concept and apply it to data that changes much more rapidly, such as every second<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~llp/ Larry Peterson], Room 208 - On Leave Fall 2012 ===<br />
*Research Areas: Networked systems, communication protocols, operating systems.<br />
*Independent Research Topics:<br />
*# Topics related to planetary-scale network services, overlay networks, and the system infrastucture needed to support them.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~jrex/ Jennifer Rexford], Room 306 - On Leave Fall 2012 & Spring 2013 ===<br />
*Research areas: networking, programmable networks, network management, network virtualization<br />
*Independent Research Topics:<br />
*# Enterprise and data-center networking solutions built on [http://www.openflowswitch.org/ OpenFlow] and [http://noxrepo.org/ NOX]. For example, middleboxes like firewalls, NATs, intrusion detection systems, and load balancers, routing techniques that equalize latency between gaming or financial-services clients, adaptive measurement of network traffic, etc.<br />
*# Techniques for boot-strapping communication in regions without conventional Internet and cellular network connectivity (e.g., developing regions, disaster areas, countries censoring communication), using commodity equipment like phones and access points.<br />
*# Any interesting project in data networking.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~smr/ Szymon Rusinkiewicz], Room 406===<br />
*Research Areas: computer graphics; acquisition of 3D shape, reflectance, and appearance of real-world objects; novel methods for physical fabrication of objects with particular shape/appearance.<br />
*Independent Research Topics (updated fall, 2011):<br />
*# Construct an efficient and easy-to-use 3-D scanning system for large collections of fragments of archaeological artifacts.<br />
*# Investigate algorithms for computing and visualizing differences between ancient coins struck from similar, but slightly different, dies.<br />
*# Develop a system combining body-mounted cameras and/or Kinect with tactile or auditory feedback to help blind people avoid obstacles.<br />
*# Use computer-controlled milling machines to fabricate bas-reliefs, using substrates of heterogeneous materials.<br />
*# Adapt a MakerBot or other hobbyist-grade manufacturing device to use multiple materials.<br />
*# Implement (and perform the appropriate theoretical sampling/aliasing analysis for) a rendering system that explicitly accounts for the red/green/blue sub-pixels of LCD displays.<br />
*# Other projects in computer graphics and vision, or technologies for documenting and studying cultural heritage objects.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~schapire/ Robert Schapire], Room 407===<br />
*Research Areas: Machine learning<br />
*Independent Research Topics:<br />
*# Implement and run experiments on assorted machine learning algorithms.<br />
*# Apply machine learning algorithms to specific tasks.<br />
*# Any other interesting project related to machine learning.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~rs/ Robert Sedgewick], Room 319 ===<br />
* Research Areas: Scientific analysis of algorithms, Analytic combinatorics<br />
* Independent Research Topics:<br />
Professor Sedgewick is willing to advise any student who comes up with an idea for independent work from his books, papers, courses, or in his current areas of active research. Send mail or stop by to discuss possible topics if you are interested.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~jps/ Jaswinder Pal Singh], Room 423 - On Leave Spring 2013 ===<br />
*Research Areas: 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.<br />
*Independent Research Topics:<br />
*# 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.<br />
*# Implement and study novel methods for topic-specific or vertical information discovery and search, as well as for high-quality persistent search.<br />
*# Study and develop methods to infer insights from data in different application areas.<br />
*# 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.<br />
*# Develop and implement algorithms for selected problems in computational biology, especially simulating the immune system or analyzing immunological data.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~mona/ Mona Singh], Room 420 ===<br />
*Research Areas: computational molecular biology, as well as its interface with machine learning and algorithms.<br />
*Independent Research Topics:<br />
*# Whole and cross-genome methods for predicting protein function and protein-protein interactions.<br />
*# Analysis and prediction of biological networks.<br />
*# Computational methods for inferring specific aspects of protein structure from protein sequence data.<br />
*# Any other interesting project in computational molecular biology.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~ret/ Robert Tarjan], Room 324 ===<br />
*Research Areas: Data structures; graph algorithms; combinatorial optimization; computational complexity; computational geometry; parallel algorithms.<br />
*Independent Research Topics:<br />
*# Implement one or more data structures or combinatorial algorithms to provide insight into their empirical behavior.<br />
*# Design and/or analyze various data structures and combinatorial algorithms.<br />
<br />
=== Prof. [http://function.princeton.edu/ogt.html/ Olga Troyanskaya], Room 320 ===<br />
*Research Areas: Bioinformatics; analysis of large-scale biological data sets (genomics, gene expression, proteomics, biological networks); algorithms for integration of data from multiple data sources; visualization of biological data; machine learning methods in bioinformatics.<br />
*Independent Research Topics:<br />
*# Implement and evaluate one or more gene expression analysis algorithm.<br />
*# Develop algorithms for assessment of performance of genomic analysis methods.<br />
*# Develop, implement, and evaluate visualization tools for heterogeneous biological data.<br />
<br />
=== Prof. [http://www.cs.princeton.edu/~dpw/ David Walker], Room 211=== <br />
*Research Areas: Programming languages, type systems, compilers, data processing and security.<br />
*Independent Research Topics:<br />
*# PADS: a domain-specific research language for specifying data formats and automatically generating tools that and do cool things with the specified format (See here for more info):<br />
*## How can we improve the PADS toolkit?<br />
*## Can we automatically generate specialized compression, obfuscation, or encryption tools?<br />
*## Can we generate tools specialized for particular domains such as computational biologiy? Financial analysis? Physicis? Computer networking?<br />
*## PADS is currently implemented on top of C and O'Caml. Can we provide PADS for other languages such as Python or Haskell?<br />
*## Given example data (like the output of "ls -l"), can we automatically learn the format of the data using clever algorithms or machine learning?<br />
*## Can we design hardware and/or software mechanisms that will tolerate bit flips and other faults caused by cosmic rays?<br />
*## Can we develop a type system or other software analysis that can determine whether software is fault tolerant? <br />
*# Any other interesting project that involves type systems, compilers, data processing, fault tolerance, language-based security, aspect-oriented programming, theorem proving, logic or logical frameworks.<br />
<br />
=== Dr. [http://www.cs.princeton.edu/~wayne/contact/ Kevin Wayne], Room 207 ===<br />
*Research Areas: design, analysis, and implementation of algorithms; data structures; combinatorial optimization; graphs and networks.<br />
*Independent Research Topics:<br />
*# Design and implement computer visualizations of algorithms or data structures.<br />
*# Develop pedagogical tools or programming assignments for the computer science curriculum at Princeton and beyond.<br />
<br />
= ''Opportunities outside the department'' =<br />
<br />
We encourage students to look in to doing interdisciplinary computer science research and to work with professors in departments other than computer science. However, every CS independent work project must have a strong computer science element (even if it has other scientific or artistic elements as well.) To do a project with an advisor outside of computer science you must have permission of the department. This can be accomplished by having a second co-advisor within the computer science department or by contacting the independent work supervisor about the project and having he or she sign the independent work proposal form.<br />
<br />
Here is a list of professors outside the computer science department who are eager to work with computer science undergraduates.<br />
<br />
===Prof. Mung Chiang, B238, E Quad. chiangm@princeton.edu===<br />
*Professor of Electrical Engineering, Associate Faculty of Computer Science <br />
Director of the EDGE Lab<br />
*Research Interests:<br />
*# Networking<br />
*# Wireless<br />
*# Network Economics<br />
*# Social Networks<br />
*Check out the new Princeton [http://scenic.princeton.edu/ EDGE Lab],:<br />
[http://www.princeton.edu/main/news/archive/S30/91/87E56/index.xmlsection=featured<br />
*Undergrad Research Topics:<br />
*We have a few openings for undergrad researchers in the Princeton EDGE Lab in 2011-2012<br />
*# [http://scenic.princeton.edu/tube/ TUBE],: Time dependent pricing for wireless data plans (with user trials in US and international operators).<br />
*# QAVA: Quota aware video adaptation (with a user trial in Princeton).<br />
*# Online social network influence maximization <br />
*# Intelligent processing of product ratings on Amazon <br />
*# Location based match making<br />
*# Energy efficient cloud computing (joint work with Google)<br />
*# Traffic management in cloud computing (joint work with HP)<br />
*# Satellite capacity overlay network on LTE 4G (joint work with SES)<br />
*# Cellular/Femto/WiFi network interaction (joint work with Intel, AT&T, and Verizon)<br />
*# Fairness evaluation tool (joint work with Telcordia)<br />
<br />
=== Prof. [http://www.molbio.princeton.edu/labs/coller/personnel.htm/ Hilary Coller], Room 140 Lewis Thomas Lab ===<br />
*Research Areas: computational approaches to analysis of large-scale genomics data sets<br />
*Independent Research Topics:<br />
*# Data integration projects with large scale data sets: gene expression and microRNA expression.<br />
*# Clustering algorithms and data visualization algorithms to represent patterns of genetic change.<br />
*# Pattern matching algorithms to define genetic regions that are overrepresented compared with chance.<br />
*# Pattern matching and data integration algorithms to integrate data generated by the laboratory with publicly available data sets from tumors or microbial species.<br />
*# Other topics of mutual interest.<br />
<br />
=== Prof. [http://www.princeton.edu/~sharad/ Sharad Malik], Engineering Quad, Room B224 ===<br />
*Research Areas: <br />
*#Design of reliable hardware systems<br />
*#Verifying complex software and hardware systems<br />
<br />
<br />
<br />
=== Prof. [http://weblamp.princeton.edu/~psych/psychology/research/norman/index.php Ken Norman], Room 3-N-18 Green Hall===<br />
* Research Areas: Memory, the brain and computation <br />
* Lab: [http://compmem.princeton.edu/ Princeton Computational Memory Lab]<br />
<br />
Potential research topics<br />
<br />
* Methods for decoding cognitive state information from neuroimaging data (fMRI and EEG) <br />
* Neural network simulations of learning and memory<br />
<br />
=== Prof. [http://www.princeton.edu/~mjs3/ Matthew Salganik], Room 145 Wallace Hall ===<br />
*Research areas: Internet-based social research, social networks, quantitative methods<br />
*Independent Research Topics:<br />
*# Website to allow groups/organizations/governments to collect and prioritize ideas in a democratic, transparent, and bottom-up way (http://www.allourideas.org).<br />
*# Social network sampling methods for hidden populations such as injection drug users and sex workers.<br />
*# Any interesting way to use new technology to better study human behavior.<br />
<br />
=== Dr. [http://www.janet.vertesi.com/~jv/ Janet Vertesi], Society of Fellows and Sociology Dept, Room 104A, Scheide Caldwell House===<br />
<br />
*Research areas: Human-Computer Interaction (qualitative); Informatics and Information Science; Socio-Computational Systems; Sociology of Technology; Virtual Organizations as Sociotechnical Systems; Computer-Supported Cooperative Work; Ubiquitous Computing; User-Centered Computing; Technology and Transnationalism (including ICT4D); New media art and critical technical practice; Sustainable design.<br />
<br />
*About this research: Have you ever stopped to think what will happen to your new chip, software, or iPhone app once it encounters the Real World? Human-Computer Interaction is an exciting and expanding community of computer scientists, anthropologists, sociologists, and critical theorists who examine computing "in the wild" and are dramatically changing our sense of the possibilities of human technological experience. My research takes place at the intersection of these dynamic disciplines and uses qualitative methods to build new software and hardware tools that support a wider range of technological experiences. To learn more, visit my website: http://janet.vertesi.com<br />
<br />
*Independent Research topics:<br />
<br />
*1. NASA's Cassini Mission to Saturn is a large-scale, international, planetary exploration venture that involves hundreds of scientists and engineers across NASA and ESA. How do members of the Cassini team work together to conduct science with a robot in orbit around another planet? How do they use technologies to do their work at a distance from each other and from their spacecraft? Based on these understandings, how can we better design software environments and tools to support their work, and the work of other distributed teams? This project is based on an NSF Computer Science grant and there are lots of opportunities to get involved with a NASA mission, looking at one piece of the puzzle.<br />
<br />
*2. Culturally Embedded Computing. No one ever uses technologies in a vacuum. Whether playing World of Warcraft or making a call on your iPhone, software and technological practices are embedded in cultural systems, appropriated differently in new cultural contexts, and suffused with local values. Through qualitative user studies of these different cultural contexts, can we use our understanding of these varied settings to better design technologies that "fit"?<br />
<br />
*3. Critical Technical Practice. From "Moore's Law" to "friending" on Facebook, certain cultural assumptions and values are built into our computational systems that we take for granted. If we invert, challenge or change those assumptions, what new systems and possible ways of interacting might result?<br />
<br />
*4. Any interesting way to use qualitative research methods to better understand how users "in the wild" appropriate technologies into their daily lives, to inform the design of new technological systems and possibilities.<br />
<br />
<br />
===Prof. David Wentzlaff, Engineering Quadrangle, Room 228===<br />
*Research Areas: Computer Architecture, Parallel Computing, Cloud <br />
Computing, Operating Systems, Sustainable Computing.<br />
*Independent Research Topics:<br />
*# Instrument Princeton's Green (HPCRC) data center<br />
*# Investigate power utilization on an processor core implemented in an FPGA<br />
*# Dismantle and document all of the components in modern electronics. Invent new ways to build computers that can be recycled easier.<br />
*# Other topics in parallel computer architecture or operating systems</div>Arvindn