Difference between revisions of "UgradResearchTopics"

From CSWiki
Jump to: navigation, search
(Prof. [http://www.cs.princeton.edu/~ken/ Kenneth Steiglitz], Room 421)
Line 97: Line 97:
*Independent Research Topics:
*Independent Research Topics:
*# Develop and/or evaluate tools that predict software bugs.  In particular, can mining of source code databases predict bugs?
*# Develop and/or evaluate tools that predict software bugs.  In particular, can mining of source code databases predict bugs?
*# Develop and/or evaluate tools to facilitate student learning in undergraduate computer science courses at Princeton, and beyond.  In particular, can code critiquing tools help students learn about software quality?
*# Develop and/or evaluate tools to facilitate student learning in undergraduate computer science courses at Princeton, and beyond.  In particular, can code critiquing tools help  
students learn about software quality?
===Dr. [http://www.cs.princeton.edu/~fellbaum/ Christiane Fellbaum], Room 412 ===
* Research Areas: theoretical and computational linguistics, word sense
disambiguation, lexical resource construction, English and multilingual
WordNet(s), ontology
* Independent Research Topics:
*# Anything having to do with natural language. Come and see me with/for
ideas suitable to your background and interests.
=== Prof. [http://www.cs.princeton.edu/~felten/ Edward Felten], 302 ORFE/CITP Building===
=== Prof. [http://www.cs.princeton.edu/~felten/ Edward Felten], 302 ORFE/CITP Building===

Revision as of 09:51, 26 August 2009


Suggested Undergraduate Research Topics

Links to many research areas in the department may be found here while links to projects may be found here.

The Independent Work Webpage located here contains much more information on how to sign up to do IW or to write a thesis, to find an advisor and to get started on a project.

Prof. Andrew Appel, Room 219

  • Research Areas: Programming languages, compilers, computer security.
  • Independent Research Topics:
    1. Can prox cards be scanned from a distance? What are the implications?
    2. Trojan horses in cryptographic protocols.
    3. Automated theorem proving.
    4. Computer game-playing programs.

Prof. Sanjeev Arora, Room 307

  • 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.
  • Independent Research Topics:
    1. Implement one of recently discovered algorithms for "recycling" random bits, and study how well it does in practice.
    2. 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).
    3. Experimental Algorithms: Implementing and Evaluating Algorithms using existing software packages.
    4. Design and implementation of graph partitioning algorithms (possibly leading to a publication).
    5. Modeling the human brain using random graphs.

Prof. David August, Room 209

  • Research Areas: Computer Architecture and Compilers.
  • Independent Research Topics:
    1. New parallel programming models: language and architectural support.
    2. Novel architectural techniques enabled by compiler support (joint compiler-time/run-time optimization, reconfigurable computing, etc.).
    3. Compiler optimization at the data-structure and algorithm level.
    4. Exploit vulnerabilities in subscription digital satellite receivers (TV or Radio), Princeton's digital parking meters (we have one in our possession, already disassembled - it is best not to ask how), and other devices.
    5. Any interesting topic in computer architecture or compiler theory.

Prof. Boaz Barak, Room 405, ON SABBATICAL FALL 2009

  • Research Areas: Cryptography, Complexity Theory, Randomness and Computation.
  • Independent Research Topics:
    1. Build a tool to partially automate proving security of cryptographic protocols.
    2. Write a clean exposition of the proof that pseudorandom generators can be constructed from any one way function.
    3. Write a clean exposition of the parallel repetition lemma.
    4. Any other interesting project, especially one involving cryptography or theory.

Prof. David Blei, Room 419

  • Research Areas: machine learning, graphical models, computational statistics, information retrieval, natural language processing.
  • Independent Research Topics:
    1. Exploring held out likelihood for model selection in high dimensional probability models. When does it succeed? When does it fail?
    2. Any interesting machine learning or computational statistics project. Example research areas are spectral clustering, approximate posterior inference, social network analysis, or time series analysis.

Prof. Moses Charikar, Room 305

  • Research Areas: Design and analysis of algorithms, particularly approximation algorithms, on-line algorithms and efficient algorithms for dealing with large volumes of data.
  • Independent Research Topics:
    1. Reconstructing evolutionary trees from biological data.
    2. Algorithms for clustering data - theory as well as impementation.
    3. Investigating the gap of mathematical programming relaxations for optimization problems. (This requires a strong math background).
    4. Any other topic in advanced algorithms or discrete mathematics.

Prof. Bernard Chazelle, Room 404

  • Research Areas: Computational Geometry, Sublinear Algorithms, Clustering, Discrepancy Theory, Lower Bounds.
  • Independent Research Topics
    1. Natural algorithms (flocking, swarming, social networks, etc).
    2. Sublinear algorithms
    3. Self-improving algorithms
    4. Markov data structures

Prof. Douglas Clark, Room 309

  • Research Areas: Computer architecture and organization; architecturally-focused performance analysis.
  • Independent Research Topics:
    1. 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.
    2. Cycles Per Instruction (CPI) is a great performance measure but is hard to estimate without a highly detailed simulation of the hardware. Simple analytic models of CPI can be very wrong for certain programs and certain processors. Using good simulators and/or a real machine, show how bad such models can be.
    3. Other topics, depending on student interest.

Prof. Perry Cook, Room 408 ON SABBATICAL 2009-2010 ACADEMIC YEAR

For Aphasia-related projects, talk to Christiane Fellbaum in CS

For Music/PLOrk-related projects, talk to Prof. Dan Trueman in Music

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

Prof. David Dobkin,

  • Research Areas: Visualization, pervasive computing, software engineering.
  • Independent Research Topics:
    1. Building applications using Wireless and Handheld devices.
    2. Building tools for managing online photo albums.
    3. Face recognition.
    4. Other Interesting topics.

Dr. Robert Dondero, Room 206

  • Research Areas: Software engineering; software engineering education.
  • Independent Research Topics:
    1. Develop and/or evaluate tools that predict software bugs. In particular, can mining of source code databases predict bugs?
    2. Develop and/or evaluate tools to facilitate student learning in undergraduate computer science courses at Princeton, and beyond. In particular, can code critiquing tools help

students learn about software quality?

Dr. Christiane Fellbaum, Room 412

  • Research Areas: theoretical and computational linguistics, word sense

disambiguation, lexical resource construction, English and multilingual WordNet(s), ontology

  • Independent Research Topics:
    1. Anything having to do with natural language. Come and see me with/for

ideas suitable to your background and interests.

Prof. Edward Felten, 302 ORFE/CITP Building

  • Research Areas: Computer security; network software; technology law and policy.
  • Independent Research Topics:
    1. Computer security and privacy.
    2. Digital media distribution.
    3. Copy protection and peer to peer technologies.
    4. Electronic voting.
    5. Technology and public policy.
    6. Any other interesting or offbeat topic.

Prof. Adam Finkelstein, Room 424

  • Research Areas: computer graphics, animation.
  • Ideas for independent Research Topics:
    1. Computer-generated drawings from 3D models.
    2. Tools for making visual art using computer graphics.
    3. New methods for computer animation.
    4. Techniques for medical visualization.
    5. Experiments where the data is collected via the internet.
    6. Any interesting project in computer graphics.

Dr. Marc E. Fiuczynski, Room 314

  • Research Areas: operating systems, distributed systems, computer networks, programming languages, computer architecture.
  • Independent Research Topics:
    1. Better compiler tools for system software evolution (see c4.cs.princeton.edu).
    2. Operating systems and cluster management projects related to PlanetLab.
    3. Oh... just come see me and we can figure something out that should be fun.

Prof. Michael Freedman, Room 308

  • Research Areas: Distributed systems, security, networking, applied cryptography
  • Independent Research Topics:
    1. Help design, build, and deploy a browser-based peer-to-peer file sharing / content distribution network.
    2. Analyze system dynamics and peer behavior in BitTorrent networks, and design more incentive-compatible protocols.
    3. Design and build systems- and network-support for distributed virtual worlds, such as new Second Life alternatives.
    4. Design and build a performance- and fault-monitoring tool / architecture for distributed systems such as CoralCDN.
    5. Improve web security by revisiting web security policies or designing new browser/server security mechanisms
    6. Analyze power consumption in servers and data centers; design distributed applications and architectures to minimize usage.
    7. Realize cryptographically-private data sharing between distributed systems.
    8. Any interesting topic related to distributed or peer-to-peer systems, security, or networking.

Prof. Thomas Funkhouser, Room 422

  • Research Areas: Structural bioinformatics and computer graphics.
  • Independent Research Topics:
    1. Investigate methods for predicting the function of a protein from its 3D structure.
    2. Develop algorithms for aligning and matching 3D shapes.
    3. Build components of a shape-based search engine for 3D models.
    4. Any other projects related to structural bioinformatics or computer graphics.

Dr. Scott Karlin, Room 101A

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

Prof. Brian Kernighan, Room 311

  • Research Areas: application-specific languages, document preparation, user interfaces, software tools, programming methodology
  • Independent Research Topics:
    1. Application-oriented languages, scripting languages.
    2. Tools; user interfaces; web services.
    3. AMPL and optimization.
    4. Joint work with other departments.
    5. For a list of less than half-baked ideas Look Here

Prof. Andrea LaPaugh, Room 304, ON SABBATICAL FALL 2009

  • Research Areas: Search and retrieval of information; data mining, particularly clustering; combinatorial algorithms
  • Independent Research Topics:
    1. NEW! Develop visualization tools for social network algorithms such as PageRank.
    2. Study the current use of graph structure in the exploration of the Web or other social networks, and investigate the potential for new techniques.
    3. Experimentally evaluate the use of preprocessing with spectral clustering algorithms.
    4. Experimentally evaluate how well metrics used to compare two clusterings of a data set actually capture intuitive notions of similarity between clusterings.
    5. Other topics with an information discovery or management aspect, including novel applications using databases or information retrieval.

Prof. Kai Li, Room 321

  • Research Areas: Parallel architectures and systems; distributed systems; operating systems.
  • Independent Research Topics:
    1. Design, implement and evaluate practical methods for image and audio similarity searches.
    2. Seamless shared visualization on large-scale displays.
    3. Simulation studies of asymmetric heterogeneous chip multiprocessor architecture.

Prof. Vivek Pai, Room 322

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

Prof. Larry Peterson, Room 208

  • Research Areas: Networked systems, communication protocols, operating systems.
  • Independent Research Topics:
    1. Topics related to planetary-scale network services, overlay networks, and the system infrastucture needed to support them.

Prof. Jennifer Rexford, Room 306

  • Research areas: networking, network virtualization, Internet measurement, network management, network troubleshooting
  • Independent Research Topics:
    1. Design, prototyping, and evaluation of new routing protocols on VINI (www.vini-veritas.net)
    2. Design, prototyping, and evaluation of new packet-handling logic in Click (http://www.read.cs.ucla.edu/click/) or NetFPGA (http://netfpga.org/)
    3. Design, analysis, and simulation of traffic-management protocols and network virtualization techniques based on optimization theory or game theory
    4. Design and measurement-based evaluation of techniques to improve routing-protocol scalability
    5. Any interesting project in data networking

Prof. Szymon Rusinkiewicz, Room 412

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

Prof. Robert Schapire, Room 407, ON SABBATICAL 2009-2010 ACADEMIC YEAR

  • Research Areas: Machine learning
  • Independent Research Topics:
    1. Implement and run experiments on assorted machine learning algorithms.
    2. Apply machine learning algorithms to specific tasks.
    3. Any other interesting project related to machine learning.

Prof. Robert Sedgewick, Room 319

  • Research Areas: Scientific analysis of algorithms, Analytic combinatorics
  • Independent Research Topics:

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.

Prof. Jaswinder Pal Singh, Room 423

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

Prof. Mona Singh, Room 420

  • Research Areas: computational molecular biology, as well as its interface with machine learning and algorithms.
  • Independent Research Topics:
    1. Whole and cross-genome methods for predicting protein function and protein-protein interactions.
    2. Analysis and prediction of biological networks.
    3. Computational methods for inferring specific aspects of protein structure from protein sequence data.
    4. Any other interesting project in computational molecular biology.

Prof. Kenneth Steiglitz, Room 421

  • Research Areas: Computational economics, soliton-guided quantum computation, auctions
  • EOS: Economics via Object-oriented Simulation

This is an ongoing project devoted to the development of open-source software for the highly structured simulation of complete economies, making strong use of inheritance, and a very few high-level primitives. Projects include design of a banking system, options, and distributed implementations. For details, see http://eos.cs.princeton.edu/.

  • Computing with Solitons:

Solitons are remarkably robust nonlinear waves. They can travel through optical fibers over distances on the order of the earth's circumference. Their ability to process information has preoccupied me more than ten years, and I'm working on several ways in which they might be used for computation of a more or less general nature, classical or quantum. This sort of work uses both computer science and physics, and it helps a lot if you're familiar with things like wave equations as well as Turing machines. It can involve either theory or applied computation. Some of the work sprouted from solitons in cellular automata, so there may also be projects interesting to fans of what physicists sometimes call "ultra-discrete" systems (binary cellular automata).

  • Auctions:

There are a number of questions about auctions that intrigue me. For example, there are many examples of auctions that do not have Nash equilibria. Are there any such auctions that might be useful in practice, and how should we expect agents to behave in such auctions? I'm also interested in practical numerical algorithms for finding equilibria in auctions. Beyond this there are always behavioral questions that might be studied with field experiments in eBay (these are also typical term paper projects in COS 444).

  • Barter mechanisms:

I'm interested in mechanisms that involve the exchange of goods without the use of money; in other words: barter. What kinds of barter sites are out there? How do they work? Is there an appropriate economic theory? How can barter among more than two traders be arranged? Can an effective site be put up that mediates barter as a third party?


For papers relevant to some of the topics mentioned, see my research page. If you're interested in discussing any of these ideas, or have some of your own, please send email. --Ken Wed Aug 26 03:04:46 EDT 2009

Prof. Robert Tarjan, Room 324

  • Research Areas: Data structures; graph algorithms; combinatorial optimization; computational complexity; computational geometry; parallel algorithms.
  • Independent Research Topics:
    1. Implement one or more data structures or combinatorial algorithms to provide insight into their empirical behavior.
    2. Design and/or analyze various data structures and combinatorial algorithms.

Prof. Olga Troyanskaya, Room 320, ON SABBATICAL 2009-2010 ACADEMIC YEAR

  • 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.
  • Independent Research Topics:
    1. Implement and evaluate one or more gene expression analysis algorithm.
    2. Develop algorithms for assessment of performance of genomic analysis methods.
    3. Develop, implement, and evaluate visualization tools for heterogeneous biological data.

Prof. David Walker, Room 211, ON SABBATICAL 2009-2010 ACADEMIC YEAR

  • Research Areas: Programming languages, type systems, compilers, data processing and security.
  • Independent Research Topics:
    1. 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):
      1. How can we improve the PADS toolkit?
      2. Can we automatically generate specialized compression, obfuscation, or encryption tools?
      3. Can we generate tools specialized for particular domains such as computational biologiy? Financial analysis? Physicis? Computer networking?
      4. PADS is currently implemented on top of C and O'Caml. Can we provide PADS for other languages such as Python or Haskell?
      5. Given example data (like the output of "ls -l"), can we automatically learn the format of the data using clever algorithms or machine learning?
      6. Can we design hardware and/or software mechanisms that will tolerate bit flips and other faults caused by cosmic rays?
      7. Can we develop a type system or other software analysis that can determine whether software is fault tolerant?
    2. 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.

Dr. Kevin Wayne, Room 207

  • Research Areas: design, analysis, and implementation of algorithms; data structures; combinatorial optimization; graphs and networks.
  • Independent Research Topics:
    1. Implement and investigate the empirical behavior of a recent graph algorithm or data structure.
    2. Design and implement computer visualizations of graph algorithms or data structures.
    3. Develop pedagogical tools for the computer science curriculum at Princeton and beyond.
    4. Any interesting ideas involving games of skill and chance.

Opportunities outside the department

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.

Here is a list of professors outside the computer science department who are eager to work with computer science undergraduates.

Prof. Hillary Coller, Room 140 Lewis Thomas Lab

  • Research Areas: computational approaches to analysis of large-scale genomics data sets
  • Independent Research Topics:
    1. Data integration projects with large scale data sets: gene expression and microRNA expression.
    2. Clustering algorithms and data visualization algorithms to represent patterns of genetic change.
    3. Pattern matching algorithms to define genetic regions that are overrepresented compared with chance.
    4. Pattern matching and data integration algorithms to integrate data generated by the laboratory with publicly available data sets from tumors or microbial species.
    5. Other topics of mutual interest.

Prof. Sharad Malik, Engineering Quad, Room B224

  • Research Areas: Design automation for digital systems: design methodology, synthesis and verification of digital systems

Prof. Margaret Martonosi, Engineering Quad, Room B216

  • Research Areas: Computer architectures and the hardware/software interface, particularly power-efficient systems, hardware-software interface issues, and most recently, power-efficient wireless networks.

Possible research topics include:

  • Green Data Centers
  • Mobile Computing
  • Cell phone applications and programming models
  • Energy-efficient computer architecture

Or email (mrm@princeton.edu) and pitch an idea roughly in this space!

Prof. Ken Norman, Room 3-N-18 Green Hall

Potential research topics

  • Methods for decoding cognitive state information from neuroimaging data (fMRI and EEG)
  • Neural network simulations of learning and memory

Prof. Matthew Salganik, Room 145 Wallace Hall

  • Research areas: Internet-based social research, social networks, quantitative methods
  • Independent Research Topics:
    1. Web-based multiplayer video game to study social aspects of environment problems such as deforestation and overfishing.
    2. Facebook apps to study the structure and dynamics of online social networks.
    3. iPhone apps using GPS to study social segregation.
    4. Social network sampling methods for hidden populations such as injection drug users and sex workers.
    5. Any interesting way to use new technology to better study human behavior.

porno izle online müzik dinle