Princeton University

  • Advisers & Contacts
  • Bachelor of Arts & Bachelor of Science in Engineering
  • Prerequisites
  • Declaring Computer Science for AB Students
  • Declaring Computer Science for BSE Students
  • Class of '25, '26 & '27 - Departmental Requirements
  • Class of 2024 - Departmental Requirements
  • COS126 Information
  • Important Steps and Deadlines
  • Independent Work Seminars
  • Guidelines and Useful Information

Undergraduate Research Topics

  • AB Junior Research Workshops
  • Undergraduate Program FAQ
  • How to Enroll
  • Requirements
  • Certificate Program FAQ
  • Interdepartmental Committee
  • Minor Program
  • Funding for Student Group Activities
  • Mailing Lists and Policies
  • Study Abroad
  • Jobs & Careers
  • Admissions Requirements
  • Breadth Requirements
  • Pre-FPO Checklist
  • FPO Checklist
  • M.S.E. Track
  • M.Eng. Track
  • Departmental Internship Policy (for Master's students)
  • General Examination
  • Fellowship Opportunities
  • Travel Reimbursement Policy
  • Communication Skills
  • Course Schedule
  • Course Catalog
  • Research Areas
  • Interdisciplinary Programs
  • Technical Reports
  • Computing Facilities
  • Researchers
  • Technical Staff
  • Administrative Staff
  • Graduate Students
  • Undergraduate Students
  • Graduate Alumni
  • Climate and Inclusion Committee
  • Resources for Undergraduate & Graduate Students
  • Outreach Initiatives
  • Resources for Faculty & Staff
  • Spotlight Stories
  • Job Openings
  • Undergraduate Program
  • Independent Work & Theses

Suggested Undergraduate Research Topics

computer science undergraduate research topics

How to Contact Faculty for IW/Thesis Advising

Send the professor an e-mail. When you write a professor, be clear that you want a meeting regarding a senior thesis or one-on-one IW project, and briefly describe the topic or idea that you want to work on. Check the faculty listing for email addresses.

Parastoo Abtahi, Room 419

Available for single-semester IW and senior thesis advising, 2023-2024

  • Research Areas: Human-Computer Interaction (HCI), Augmented Reality (AR), and Spatial Computing
  • Input techniques for on-the-go interaction (e.g., eye-gaze, microgestures, voice) with a focus on uncertainty, disambiguation, and privacy.
  • Minimal and timely multisensory output (e.g., spatial audio, haptics) that enables users to attend to their physical environment and the people around them, instead of a 2D screen.
  • Interaction with intelligent systems (e.g., IoT, robots) situated in physical spaces with a focus on updating users’ mental model despite the complexity and dynamicity of these systems.

Ryan Adams, Room 411

Research areas:

  • Machine learning driven design
  • Generative models for structured discrete objects
  • Approximate inference in probabilistic models
  • Accelerating solutions to partial differential equations
  • Innovative uses of automatic differentiation
  • Modeling and optimizing 3d printing and CNC machining

Andrew Appel, Room 209

  • Research Areas: Formal methods, programming languages, compilers, computer security.
  • Software verification (for which taking COS 326 / COS 510 is helpful preparation)
  • Game theory of poker or other games (for which COS 217 / 226 are helpful)
  • Computer game-playing programs (for which COS 217 / 226)
  •  Risk-limiting audits of elections (for which ORF 245 or other knowledge of probability is useful)

Sanjeev Arora, Room 407

  • Theoretical machine learning, deep learning and its analysis, natural language processing. My advisees would typically have taken a course in algorithms (COS423 or COS 521 or equivalent) and a course in machine learning.
  • 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). 
  • Experimental Algorithms: Implementing and Evaluating Algorithms using existing software packages. 
  • Studying/designing provable algorithms for machine learning and implementions using packages like scipy and MATLAB, including applications in Natural language processing and deep learning.
  • Any topic in theoretical computer science.

David August, Room 221

  • Research Areas: Computer Architecture, Compilers, Parallelism
  • Containment-based approaches to security:  We have designed and tested a simple hardware+software containment mechanism that stops incorrect communication resulting from faults, bugs, or exploits from leaving the system.   Let's explore ways to use containment to solve real problems.  Expect to work with corporate security and technology decision-makers.
  • Parallelism: Studies show much more parallelism than is currently realized in compilers and architectures.  Let's find ways to realize this parallelism.
  • Any other interesting topic in computer architecture or compilers. 

Mark Braverman, 194 Nassau St., Room 231

Available for Spring 2024 single-semester IW, only

  • Research Areas: computational complexity, algorithms, applied probability, computability over the real numbers, game theory and mechanism design, information theory.
  • Topics in computational and communication complexity.
  • Applications of information theory in complexity theory.
  • Algorithms for problems under real-life assumptions.
  • Game theory, network effects
  • Mechanism design (could be on a problem proposed by the student)

Sebastian Caldas, 221 Nassau Street, Room 105

  • Research Areas: collaborative learning, machine learning for healthcare. Typically, I will work with students that have taken COS324.
  • Methods for collaborative and continual learning.
  • Machine learning for healthcare applications.

Bernard Chazelle, 194 Nassau St., Room 301

  • Research Areas: Natural Algorithms, Computational Geometry, Sublinear Algorithms. 
  • Natural algorithms (flocking, swarming, social networks, etc).
  • Sublinear algorithms
  • Self-improving algorithms
  • Markov data structures

Danqi Chen, Room 412

Not available for IW or thesis advising, 2023-2024

  • My advisees would be expected to have taken a course in machine learning and ideally have taken COS484 or an NLP graduate seminar.
  • Representation learning for text and knowledge bases
  • Pre-training and transfer learning
  • Question answering and reading comprehension
  • Information extraction
  • Text summarization
  • Any other interesting topics related to natural language understanding/generation

Marcel Dall'Agnol, Corwin 034

Available for single-semester and senior thesis advising, 2023-2024

  • Research Areas: Theoretical computer science. (Specifically, quantum computation, sublinear algorithms, complexity theory, interactive proofs and cryptography)

Jia Deng, Room 423

Available for Fall 2023 single-semester IW, only

  •  Research Areas: Computer Vision, Machine Learning.
  • Object recognition and action recognition
  • Deep Learning, autoML, meta-learning
  • Geometric reasoning, logical reasoning

Adji Bousso Dieng, Room 406

  • Research areas: Vertaix is a research lab at Princeton University led by Professor Adji Bousso Dieng. We work at the intersection of artificial intelligence (AI) and the natural sciences. The models and algorithms we develop are motivated by problems in those domains and contribute to advancing methodological research in AI. We leverage tools in statistical machine learning and deep learning in developing methods for learning with the data, of various modalities, arising from the natural sciences.

Robert Dondero, Corwin Hall, Room 038

  • Research Areas:  Software engineering; software engineering education.
  • Develop 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?

Zeev Dvir, 194 Nassau St., Room 250

Not available for IW or thesis advising, 2023-2024.

  • Research Areas: computational complexity, pseudo-randomness, coding theory and discrete mathematics.
  • Independent Research: I have various research problems related to Pseudorandomness, Coding theory, Complexity and Discrete mathematics - all of which require strong mathematical background. A project could also be based on writing a survey paper describing results from a few theory papers revolving around some particular subject.

Benjamin Eysenbach, Room 416

  • Research areas: reinforcement learning, machine learning. My advisees would typically have taken COS324.
  • Using RL algorithms to applications in science and engineering.
  • Emergent behavior of RL algorithms on high-fidelity robotic simulators.
  • Studying how architectures and representations can facilitate generalization.

Christiane Fellbaum, 1-S-14 Green

No longer available for single-term IW and senior thesis advising, 2023-2024

  • Research Areas: theoretical and computational linguistics, word sense disambiguation, lexical resource construction, English and multilingual WordNet(s), ontology
  • Anything having to do with natural language--come and see me with/for ideas suitable to your background and interests. Some topics students have worked on in the past:
  • Developing parsers, part-of-speech taggers, morphological analyzers for underrepresented languages (you don't have to know the language to develop such tools!)
  • Quantitative approaches to theoretical linguistics questions
  • Extensions and interfaces for WordNet (English and WN in other languages),
  • Applications of WordNet(s), including:
  • Foreign language tutoring systems,
  • Spelling correction software,
  • Word-finding/suggestion software for ordinary users and people with memory problems,
  • Machine Translation 
  • Sentiment and Opinion detection
  • Automatic reasoning and inferencing
  • Collaboration with professors in the social sciences and humanities ("Digital Humanities")

Adam Finkelstein, Room 424 

  • Research Areas: computer graphics, audio.

Robert S. Fish, Corwin Hall, Room 037

No longer available for single-semester IW and senior thesis advising, 2023-2024

  • Networking and telecommunications
  • Learning, perception, and intelligence, artificial and otherwise;
  • Human-computer interaction and computer-supported cooperative work
  • Online education, especially in Computer Science Education
  • Topics in research and development innovation methodologies including standards, open-source, and entrepreneurship
  • Distributed autonomous organizations and related blockchain technologies

Michael Freedman, Room 308 

  • Research Areas: Distributed systems, security, networking
  • Projects related to streaming data analysis, datacenter systems and networks, untrusted cloud storage and applications. Please see my group website at http://sns.cs.princeton.edu/ for current research projects.

Ruth Fong, Room 032

  • Research Areas: computer vision, machine learning, deep learning, interpretability, explainable AI, fairness and bias in AI
  • Develop a technique for understanding AI models
  • Design a AI model that is interpretable by design
  • Build a paradigm for detecting and/or correcting failure points in an AI model
  • Analyze an existing AI model and/or dataset to better understand its failure points
  • Build a computer vision system for another domain (e.g., medical imaging, satellite data, etc.)
  • Develop a software package for explainable AI
  • Adapt explainable AI research to a consumer-facing problem

Note: I am happy to advise any project if there's a sufficient overlap in interest and/or expertise; please reach out via email to chat about project ideas.

Tom Griffiths, Room 405

Research areas: computational cognitive science, computational social science, machine learning and artificial intelligence

Note: I am open to projects that apply ideas from computer science to understanding aspects of human cognition in a wide range of areas, from decision-making to cultural evolution and everything in between. For example, we have current projects analyzing chess game data and magic tricks, both of which give us clues about how human minds work. Students who have expertise or access to data related to games, magic, strategic sports like fencing, or other quantifiable domains of human behavior feel free to get in touch.

Aarti Gupta, Room 220

  • Research Areas: Formal methods, program analysis, logic decision procedures
  • Finding bugs in open source software using automatic verification tools
  • Software verification (program analysis, model checking, test generation)
  • Decision procedures for logical reasoning (SAT solvers, SMT solvers)

Elad Hazan, Room 409  

  • Research interests: machine learning methods and algorithms, efficient methods for mathematical optimization, regret minimization in games, reinforcement learning, control theory and practice
  • Machine learning, efficient methods for mathematical optimization, statistical and computational learning theory, regret minimization in games.
  • Implementation and algorithm engineering for control, reinforcement learning and robotics
  • Implementation and algorithm engineering for time series prediction

Felix Heide, Room 410

  • Research Areas: Computational Imaging, Computer Vision, Machine Learning (focus on Optimization and Approximate Inference).
  • Optical Neural Networks
  • Hardware-in-the-loop Holography
  • Zero-shot and Simulation-only Learning
  • Object recognition in extreme conditions
  • 3D Scene Representations for View Generation and Inverse Problems
  • Long-range Imaging in Scattering Media
  • Hardware-in-the-loop Illumination and Sensor Optimization
  • Inverse Lidar Design
  • Phase Retrieval Algorithms
  • Proximal Algorithms for Learning and Inference
  • Domain-Specific Language for Optics Design

Kyle Jamieson, Room 306

  • Research areas: Wireless and mobile networking; indoor radar and indoor localization; Internet of Things
  • See other topics on my independent work  ideas page  (campus IP and CS dept. login req'd)

Alan Kaplan, 221 Nassau Street, Room 105

Research Areas:

  • Random apps of kindness - mobile application/technology frameworks used to help individuals or communities; topic areas include, but are not limited to: first response, accessibility, environment, sustainability, social activism, civic computing, tele-health, remote learning, crowdsourcing, etc.
  • Tools automating programming language interoperability - Java/C++, React Native/Java, etc.
  • Software visualization tools for education
  • Connected consumer devices, applications and protocols

Brian Kernighan, Room 311

  • Research Areas: application-specific languages, document preparation, user interfaces, software tools, programming methodology
  • Application-oriented languages, scripting languages.
  • Tools; user interfaces
  • Digital humanities

Zachary Kincaid, Room 219

  • Research areas: programming languages, program analysis, program verification, automated reasoning
  • Independent Research Topics:
  • Develop a practical algorithm for an intractable problem (e.g., by developing practical search heuristics, or by reducing to, or by identifying a tractable sub-problem, ...).
  • Design a domain-specific programming language, or prototype a new feature for an existing language.
  • Any interesting project related to programming languages or logic.

Gillat Kol, Room 316

Aleksandra korolova, 309 sherrerd hall.

Available for single-term IW and senior thesis advising, 2023-2024

  • Research areas: Societal impacts of algorithms and AI; privacy; fair and privacy-preserving machine learning; algorithm auditing.

Advisees typically have taken one or more of COS 226, COS 324, COS 423, COS 424 or COS 445.

Amit Levy, Room 307

  • Research Areas: Operating Systems, Distributed Systems, Embedded Systems, Internet of Things
  • Distributed hardware testing infrastructure
  • Second factor security tokens
  • Low-power wireless network protocol implementation
  • USB device driver implementation

Kai Li, Room 321

  • Research Areas: Distributed systems; storage systems; content-based search and data analysis of large datasets.
  • Fast communication mechanisms for heterogeneous clusters.
  • Approximate nearest-neighbor search for high dimensional data.
  • Data analysis and prediction of in-patient medical data.
  • Optimized implementation of classification algorithms on manycore processors.

Xiaoyan Li, 221 Nassau Street, Room 104

  • Research areas: Information retrieval, novelty detection, question answering, AI, machine learning and data analysis.
  • Explore new statistical retrieval models for document retrieval and question answering.
  • Apply AI in various fields.
  • Apply supervised or unsupervised learning in health, education, finance, and social networks, etc.
  • Any interesting project related to AI, machine learning, and data analysis.

Wyatt Lloyd, Room 323

  • Research areas: Distributed Systems
  • Caching algorithms and implementations
  • Storage systems
  • Distributed transaction algorithms and implementations

Margaret Martonosi, Room 208

  • Quantum Computing research, particularly related to architecture and compiler issues for QC.
  • Computer architectures specialized for modern workloads (e.g., graph analytics, machine learning algorithms, mobile applications
  • Investigating security and privacy vulnerabilities in computer systems, particularly IoT devices.
  • Other topics in computer architecture or mobile / IoT systems also possible.

Jonathan Mayer, Sherrerd Hall, Room 307 

  • Research areas: Technology law and policy, with emphasis on national security, criminal procedure, consumer privacy, network management, and online speech.
  • Assessing the effects of government policies, both in the public and private sectors.
  • Collecting new data that relates to government decision making, including surveying current business practices and studying user behavior.
  • Developing new tools to improve government processes and offer policy alternatives.

Andrés Monroy-Hernández, Room 405

  • Research Areas: Human-Computer Interaction, Social Computing, Public-Interest Technology, Augmented Reality, Urban Computing
  • Research interests:developing public-interest socio-technical systems.  We are currently creating alternatives to gig work platforms that are more equitable for all stakeholders. For instance, we are investigating the socio-technical affordances necessary to support a co-op food delivery network owned and managed by workers and restaurants. We are exploring novel system designs that support self-governance, decentralized/federated models, community-centered data ownership, and portable reputation systems.  We have opportunities for students interested in human-centered computing, UI/UX design, full-stack software development, and qualitative/quantitative user research.
  • Beyond our core projects, we are open to working on research projects that explore the use of emerging technologies, such as AR, wearables, NFTs, and DAOs, for creative and out-of-the-box applications.

Christopher Moretti, Corwin Hall, Room 036

  • Research areas: Distributed systems, high-throughput computing, computer science/engineering education
  • Expansion, improvement, and evaluation of open-source distributed computing software.
  • Applications of distributed computing for "big science" (e.g. biometrics, data mining, bioinformatics)
  • Software and best practices for computer science education and study, especially Princeton's 126/217/226 sequence or MOOCs development
  • Sports analytics and/or crowd-sourced computing

Radhika Nagpal, F316 Engineering Quadrangle

  • Research areas: control, robotics and dynamical systems

Karthik Narasimhan, Room 422

  • Research areas: Natural Language Processing, Reinforcement Learning
  • Autonomous agents for text-based games ( https://www.microsoft.com/en-us/research/project/textworld/ )
  • Transfer learning/generalization in NLP
  • Techniques for generating natural language
  • Model-based reinforcement learning

Arvind Narayanan, 308 Sherrerd Hall 

Research Areas: fair machine learning (and AI ethics more broadly), the social impact of algorithmic systems, tech policy

Pedro Paredes, Corwin Hall, Room 041

My primary research work is in Theoretical Computer Science.

 * Research Interest: Spectral Graph theory, Pseudorandomness, Complexity theory, Coding Theory, Quantum Information Theory, Combinatorics.

The IW projects I am interested in advising can be divided into three categories:

 1. Theoretical research

I am open to advise work on research projects in any topic in one of my research areas of interest. A project could also be based on writing a survey given results from a few papers. Students should have a solid background in math (e.g., elementary combinatorics, graph theory, discrete probability, basic algebra/calculus) and theoretical computer science (226 and 240 material, like big-O/Omega/Theta, basic complexity theory, basic fundamental algorithms). Mathematical maturity is a must.

A (non exhaustive) list of topics of projects I'm interested in:   * Explicit constructions of better vertex expanders and/or unique neighbor expanders.   * Construction deterministic or random high dimensional expanders.   * Pseudorandom generators for different problems.   * Topics around the quantum PCP conjecture.   * Topics around quantum error correcting codes and locally testable codes, including constructions, encoding and decoding algorithms.

 2. Theory informed practical implementations of algorithms   Very often the great advances in theoretical research are either not tested in practice or not even feasible to be implemented in practice. Thus, I am interested in any project that consists in trying to make theoretical ideas applicable in practice. This includes coming up with new algorithms that trade some theoretical guarantees for feasible implementation yet trying to retain the soul of the original idea; implementing new algorithms in a suitable programming language; and empirically testing practical implementations and comparing them with benchmarks / theoretical expectations. A project in this area doesn't have to be in my main areas of research, any theoretical result could be suitable for such a project.

Some examples of areas of interest:   * Streaming algorithms.   * Numeric linear algebra.   * Property testing.   * Parallel / Distributed algorithms.   * Online algorithms.    3. Machine learning with a theoretical foundation

I am interested in projects in machine learning that have some mathematical/theoretical, even if most of the project is applied. This includes topics like mathematical optimization, statistical learning, fairness and privacy.

One particular area I have been recently interested in is in the area of rating systems (e.g., Chess elo) and applications of this to experts problems.

Final Note: I am also willing to advise any project with any mathematical/theoretical component, even if it's not the main one; please reach out via email to chat about project ideas.

Iasonas Petras, Corwin Hall, Room 033

  • Research Areas: Information Based Complexity, Numerical Analysis, Quantum Computation.
  • 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).
  • Possible research topics include:

1.   Quantum algorithms and circuits:

  • i. Design or simulation quantum circuits implementing quantum algorithms.
  • ii. Design of quantum algorithms solving/approximating continuous problems (such as Eigenvalue problems for Partial Differential Equations).

2.   Information Based Complexity:

  • i. Necessary and sufficient conditions for tractability of Linear and Linear Tensor Product Problems in various settings (for example worst case or average case). 
  • ii. Necessary and sufficient conditions for tractability of Linear and Linear Tensor Product Problems under new tractability and error criteria.
  • iii. Necessary and sufficient conditions for tractability of Weighted problems.
  • iv. Necessary and sufficient conditions for tractability of Weighted Problems under new tractability and error criteria.

3. Topics in Scientific Computation:

  • i. Randomness, Pseudorandomness, MC and QMC methods and their applications (Finance, etc)

Yuri Pritykin, 245 Carl Icahn Lab

  • Research interests: Computational biology; Cancer immunology; Regulation of gene expression; Functional genomics; Single-cell technologies.
  • Potential research projects: Development, implementation, assessment and/or application of algorithms for analysis, integration, interpretation and visualization of multi-dimensional data in molecular biology, particularly single-cell and spatial genomics data.

Benjamin Raphael, Room 309  

  • Research interests: Computational biology and bioinformatics; Cancer genomics; Algorithms and machine learning approaches for analysis of large-scale datasets
  • Implementation and application of algorithms to infer evolutionary processes in cancer
  • Identifying correlations between combinations of genomic mutations in human and cancer genomes
  • Design and implementation of algorithms for genome sequencing from new DNA sequencing technologies
  • Graph clustering and network anomaly detection, particularly using diffusion processes and methods from spectral graph theory

Vikram Ramaswamy, 035 Corwin Hall

  • Research areas: Interpretability of AI systems, Fairness in AI systems, Computer vision.
  • Constructing a new method to explain a model / create an interpretable by design model
  • Analyzing a current model / dataset to understand bias within the model/dataset
  • Proposing new fairness evaluations
  • Proposing new methods to train to improve fairness
  • Developing synthetic datasets for fairness / interpretability benchmarks
  • Understanding robustness of models

Ran Raz, Room 240

  • Research Area: Computational Complexity
  • Independent Research Topics: Computational Complexity, Information Theory, Quantum Computation, Theoretical Computer Science

Szymon Rusinkiewicz, Room 406

  • Research Areas: computer graphics; computer vision; 3D scanning; 3D printing; robotics; documentation and visualization of cultural heritage artifacts
  • Research ways of incorporating rotation invariance into computer visiontasks such as feature matching and classification
  • Investigate approaches to robust 3D scan matching
  • Model and compensate for imperfections in 3D printing
  • Given a collection of small mobile robots, apply control policies learned in simulation to the real robots.

Olga Russakovsky, Room 408

  • Research Areas: computer vision, machine learning, deep learning, crowdsourcing, fairness&bias in AI
  • Design a semantic segmentation deep learning model that can operate in a zero-shot setting (i.e., recognize and segment objects not seen during training)
  • Develop a deep learning classifier that is impervious to protected attributes (such as gender or race) that may be erroneously correlated with target classes
  • Build a computer vision system for the novel task of inferring what object (or part of an object) a human is referring to when pointing to a single pixel in the image. This includes both collecting an appropriate dataset using crowdsourcing on Amazon Mechanical Turk, creating a new deep learning formulation for this task, and running extensive analysis of both the data and the model

Sebastian Seung, Princeton Neuroscience Institute, Room 153

  • Research Areas: computational neuroscience, connectomics, "deep learning" neural networks, social computing, crowdsourcing, citizen science
  • Gamification of neuroscience (EyeWire  2.0)
  • Semantic segmentation and object detection in brain images from microscopy
  • Computational analysis of brain structure and function
  • Neural network theories of brain function

Jaswinder Pal Singh, Room 324

  • 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.
  • Develop a startup company idea, and build a plan/prototype for it.
  • Explore tradeoffs at the boundary of technology/product and business/applications in a chosen area.
  • Study and develop methods to infer insights from data in different application areas, from science to search to finance to others. 
  • 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.
  • Design and implement a scalable distributed algorithm.

Mona Singh, Room 420

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

Robert Tarjan, 194 Nassau St., Room 308

Available for single-semester IW and senior thesis advising, 2022-2023

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

Olga Troyanskaya, Room 320

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

David Walker, Room 211

  • Research Areas: Programming languages, type systems, compilers, domain-specific languages, software-defined networking and security
  • 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.

Shengyi Wang, Postdoctoral Research Associate, Room 216

  • Independent Research topics: Explore Escher-style tilings using (introductory) group theory and automata theory to produce beautiful pictures.

Kevin Wayne, Corwin Hall, Room 040

  • Research Areas: design, analysis, and implementation of algorithms; data structures; combinatorial optimization; graphs and networks.
  • Design and implement computer visualizations of algorithms or data structures.
  • Develop pedagogical tools or programming assignments for the computer science curriculum at Princeton and beyond.
  • Develop assessment infrastructure and assessments for MOOCs.

Matt Weinberg, 194 Nassau St., Room 222

  • Research Areas: algorithms, algorithmic game theory, mechanism design, game theoretical problems in {Bitcoin, networking, healthcare}.
  • Theoretical questions related to COS 445 topics such as matching theory, voting theory, auction design, etc. 
  • Theoretical questions related to incentives in applications like Bitcoin, the Internet, health care, etc. In a little bit more detail: protocols for these systems are often designed assuming that users will follow them. But often, users will actually be strictly happier to deviate from the intended protocol. How should we reason about user behavior in these protocols? How should we design protocols in these settings?

Huacheng Yu, Room 310

  • data structures
  • streaming algorithms
  • design and analyze data structures / streaming algorithms
  • prove impossibility results (lower bounds)
  • implement and evaluate data structures / streaming algorithms

Ellen Zhong, Room 314

No longer available for single-term IW  and senior thesis advising, 2023-2024

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 adviser outside of computer science you must have permission of the department.  This can be accomplished by having a second co-adviser 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.

Maria Apostolaki, Engineering Quadrangle, C330

  • Research areas: Computing & Networking, Data & Information Science, Security & Privacy

Branko Glisic, Engineering Quadrangle, Room E330

  • Documentation of historic structures
  • Cyber physical systems for structural health monitoring
  • Developing virtual and augmented reality applications for documenting structures
  • Applying machine learning techniques to generate 3D models from 2D plans of buildings
  •  Contact : Rebecca Napolitano, rkn2 (@princeton.edu)

Mihir Kshirsagar, Sherrerd Hall, Room 315

Center for Information Technology Policy.

  • Consumer protection
  • Content regulation
  • Competition law
  • Economic development
  • Surveillance and discrimination

Sharad Malik, Engineering Quadrangle, Room B224

Select a Senior Thesis Adviser for the 2020-21 Academic Year.

  • Design of reliable hardware systems
  • Verifying complex software and hardware systems

Prateek Mittal, Engineering Quadrangle, Room B236

  • Internet security and privacy 
  • Social Networks
  • Privacy technologies, anonymous communication
  • Network Science
  • 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?
  • 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?
  • 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.

Ken Norman,  Psychology Dept, PNI 137

  • Research Areas: Memory, the brain and computation 
  • Lab:  Princeton Computational Memory Lab

Potential research topics

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

Caroline Savage

Office of Sustainability, Phone:(609)258-7513, Email: cs35 (@princeton.edu)

The  Campus as Lab  program supports students using the Princeton campus as a living laboratory to solve sustainability challenges. The Office of Sustainability has created a list of campus as lab research questions, filterable by discipline and topic, on its  website .

An example from Computer Science could include using  TigerEnergy , a platform which provides real-time data on campus energy generation and consumption, to study one of the many energy systems or buildings on campus. Three CS students used TigerEnergy to create a  live energy heatmap of campus .

Other potential projects include:

  • Apply game theory to sustainability challenges
  • Develop a tool to help visualize interactions between complex campus systems, e.g. energy and water use, transportation and storm water runoff, purchasing and waste, etc.
  • How can we learn (in aggregate) about individuals’ waste, energy, transportation, and other behaviors without impinging on privacy?

Janet Vertesi, Sociology Dept, Wallace Hall, Room 122

  • Research areas: Sociology of technology; Human-computer interaction; Ubiquitous computing.
  • Possible projects: At the intersection of computer science and social science, my students have built mixed reality games, produced artistic and interactive installations, and studied mixed human-robot teams, among other projects.

David Wentzlaff, Engineering Quadrangle, Room 228

Computing, Operating Systems, Sustainable Computing.

  • Instrument Princeton's Green (HPCRC) data center
  • Investigate power utilization on an processor core implemented in an FPGA
  • Dismantle and document all of the components in modern electronics. Invent new ways to build computers that can be recycled easier.
  • Other topics in parallel computer architecture or operating systems

Facebook

  • Write my thesis
  • Thesis writers
  • Buy thesis papers
  • Bachelor thesis
  • Master's thesis
  • Thesis editing services
  • Thesis proofreading services
  • Buy a thesis online
  • Write my dissertation
  • Dissertation proposal help
  • Pay for dissertation
  • Custom dissertation
  • Dissertation help online
  • Buy dissertation online
  • Cheap dissertation
  • Dissertation editing services
  • Write my research paper
  • Buy research paper online
  • Pay for research paper
  • Research paper help
  • Order research paper
  • Custom research paper
  • Cheap research paper
  • Research papers for sale
  • Thesis subjects
  • How It Works

100 Great Computer Science Research Topics Ideas for 2023

Computer science research paper topics

Being a computer student in 2023 is not easy. Besides studying a constantly evolving subject, you have to come up with great computer science research topics at some point in your academic life. If you’re reading this article, you’re among many other students that have also come to this realization.

Interesting Computer Science Topics

Awesome research topics in computer science, hot topics in computer science, topics to publish a journal on computer science.

  • Controversial Topics in Computer Science

Fun AP Computer Science Topics

Exciting computer science ph.d. topics, remarkable computer science research topics for undergraduates, incredible final year computer science project topics, advanced computer science topics, unique seminars topics for computer science, exceptional computer science masters thesis topics, outstanding computer science presentation topics.

  • Key Computer Science Essay Topics

Main Project Topics for Computer Science

  • We Can Help You with Computer Science Topics

Whether you’re earnestly searching for a topic or stumbled onto this article by accident, there is no doubt that every student needs excellent computer science-related topics for their paper. A good topic will not only give your essay or research a good direction but will also make it easy to come up with supporting points. Your topic should show all your strengths as well.

Fortunately, this article is for every student that finds it hard to generate a suitable computer science topic. The following 100+ topics will help give you some inspiration when creating your topics. Let’s get into it.

One of the best ways of making your research paper interesting is by coming up with relevant topics in computer science . Here are some topics that will make your paper immersive:

  • Evolution of virtual reality
  • What is green cloud computing
  • Ways of creating a Hopefield neural network in C++
  • Developments in graphic systems in computers
  • The five principal fields in robotics
  • Developments and applications of nanotechnology
  • Differences between computer science and applied computing

Your next research topic in computer science shouldn’t be tough to find once you’ve read this section. If you’re looking for simple final year project topics in computer science, you can find some below.

  • Applications of the blockchain technology in the banking industry
  • Computational thinking and how it influences science
  • Ways of terminating phishing
  • Uses of artificial intelligence in cyber security
  • Define the concepts of a smart city
  • Applications of the Internet of Things
  • Discuss the applications of the face detection application

Whenever a topic is described as “hot,” it means that it is a trendy topic in computer science. If computer science project topics for your final years are what you’re looking for, have a look at some below:

  • Applications of the Metaverse in the world today
  • Discuss the challenges of machine learning
  • Advantages of artificial intelligence
  • Applications of nanotechnology in the paints industry
  • What is quantum computing?
  • Discuss the languages of parallel computing
  • What are the applications of computer-assisted studies?

Perhaps you’d like to write a paper that will get published in a journal. If you’re searching for the best project topics for computer science students that will stand out in a journal, check below:

  • Developments in human-computer interaction
  • Applications of computer science in medicine
  • Developments in artificial intelligence in image processing
  • Discuss cryptography and its applications
  • Discuss methods of ransomware prevention
  • Applications of Big Data in the banking industry
  • Challenges of cloud storage services in 2023

 Controversial Topics in Computer Science

Some of the best computer science final year project topics are those that elicit debates or require you to take a stand. You can find such topics listed below for your inspiration:

  • Can robots be too intelligent?
  • Should the dark web be shut down?
  • Should your data be sold to corporations?
  • Will robots completely replace the human workforce one day?
  • How safe is the Metaverse for children?
  • Will artificial intelligence replace actors in Hollywood?
  • Are social media platforms safe anymore?

Are you a computer science student looking for AP topics? You’re in luck because the following final year project topics for computer science are suitable for you.

  • Standard browser core with CSS support
  • Applications of the Gaussian method in C++ development in integrating functions
  • Vital conditions of reducing risk through the Newton method
  • How to reinforce machine learning algorithms.
  • How do artificial neural networks function?
  • Discuss the advancements in computer languages in machine learning
  • Use of artificial intelligence in automated cars

When studying to get your doctorate in computer science, you need clear and relevant topics that generate the reader’s interest. Here are some Ph.D. topics in computer science you might consider:

  • Developments in information technology
  • Is machine learning detrimental to the human workforce?
  • How to write an algorithm for deep learning
  • What is the future of 5G in wireless networks
  • Statistical data in Maths modules in Python
  • Data retention automation from a website using API
  • Application of modern programming languages

Looking for computer science topics for research is not easy for an undergraduate. Fortunately, these computer science project topics should make your research paper easy:

  • Ways of using artificial intelligence in real estate
  • Discuss reinforcement learning and its applications
  • Uses of Big Data in science and medicine
  • How to sort algorithms using Haskell
  • How to create 3D configurations for a website
  • Using inverse interpolation to solve non-linear equations
  • Explain the similarities between the Internet of Things and artificial intelligence

Your dissertation paper is one of the most crucial papers you’ll ever do in your final year. That’s why selecting the best ethics in computer science topics is a crucial part of your paper. Here are some project topics for the computer science final year.

  • How to incorporate numerical methods in programming
  • Applications of blockchain technology in cloud storage
  • How to come up with an automated attendance system
  • Using dynamic libraries for site development
  • How to create cubic splines
  • Applications of artificial intelligence in the stock market
  • Uses of quantum computing in financial modeling

Your instructor may want you to challenge yourself with an advanced science project. Thus, you may require computer science topics to learn and research. Here are some that may inspire you:

  • Discuss the best cryptographic protocols
  • Advancement of artificial intelligence used in smartphones
  • Briefly discuss the types of security software available
  • Application of liquid robots in 2023
  • How to use quantum computers to solve decoherence problem
  • macOS vs. Windows; discuss their similarities and differences
  • Explain the steps taken in a cyber security audit

When searching for computer science topics for a seminar, make sure they are based on current research or events. Below are some of the latest research topics in computer science:

  • How to reduce cyber-attacks in 2023
  • Steps followed in creating a network
  • Discuss the uses of data science
  • Discuss ways in which social robots improve human interactions
  • Differentiate between supervised and unsupervised machine learning
  • Applications of robotics in space exploration
  • The contrast between cyber-physical and sensor network systems

Are you looking for computer science thesis topics for your upcoming projects? The topics below are meant to help you write your best paper yet:

  • Applications of computer science in sports
  • Uses of computer technology in the electoral process
  • Using Fibonacci to solve the functions maximum and their implementations
  • Discuss the advantages of using open-source software
  • Expound on the advancement of computer graphics
  • Briefly discuss the uses of mesh generation in computational domains
  • How much data is generated from the internet of things?

A computer science presentation requires a topic relevant to current events. Whether your paper is an assignment or a dissertation, you can find your final year computer science project topics below:

  • Uses of adaptive learning in the financial industry
  • Applications of transitive closure on graph
  • Using RAD technology in developing software
  • Discuss how to create maximum flow in the network
  • How to design and implement functional mapping
  • Using artificial intelligence in courier tracking and deliveries
  • How to make an e-authentication system

 Key Computer Science Essay Topics

You may be pressed for time and require computer science master thesis topics that are easy. Below are some topics that fit this description:

  • What are the uses of cloud computing in 2023
  • Discuss the server-side web technologies
  • Compare and contrast android and iOS
  • How to come up with a face detection algorithm
  • What is the future of NFTs
  • How to create an artificial intelligence shopping system
  • How to make a software piracy prevention algorithm

One major mistake students make when writing their papers is selecting topics unrelated to the study at hand. This, however, will not be an issue if you get topics related to computer science, such as the ones below:

  • Using blockchain to create a supply chain management system
  • How to protect a web app from malicious attacks
  • Uses of distributed information processing systems
  • Advancement of crowd communication software since COVID-19
  • Uses of artificial intelligence in online casinos
  • Discuss the pillars of math computations
  • Discuss the ethical concerns arising from data mining

We Can Help You with Computer Science Topics, Essays, Thesis, and Research Papers

We hope that this list of computer science topics helps you out of your sticky situation. We do offer other topics in different subjects. Additionally, we also offer professional writing services tailor-made for you.

We understand what students go through when searching the internet for computer science research paper topics, and we know that many students don’t know how to write a research paper to perfection. However, you shouldn’t have to go through all this when we’re here to help.

Don’t waste any more time; get in touch with us today and get your paper done excellently.

Leave a Reply Cancel reply

Grad Coach

Research Topics & Ideas: CompSci & IT

50+ Computer Science Research Topic Ideas To Fast-Track Your Project

IT & Computer Science Research Topics

Finding and choosing a strong research topic is the critical first step when it comes to crafting a high-quality dissertation, thesis or research project. If you’ve landed on this post, chances are you’re looking for a computer science-related research topic , but aren’t sure where to start. Here, we’ll explore a variety of CompSci & IT-related research ideas and topic thought-starters, including algorithms, AI, networking, database systems, UX, information security and software engineering.

NB – This is just the start…

The topic ideation and evaluation process has multiple steps . In this post, we’ll kickstart the process by sharing some research topic ideas within the CompSci domain. This is the starting point, but to develop a well-defined research topic, you’ll need to identify a clear and convincing research gap , along with a well-justified plan of action to fill that gap.

If you’re new to the oftentimes perplexing world of research, or if this is your first time undertaking a formal academic research project, be sure to check out our free dissertation mini-course. In it, we cover the process of writing a dissertation or thesis from start to end. Be sure to also sign up for our free webinar that explores how to find a high-quality research topic. 

Overview: CompSci Research Topics

  • Algorithms & data structures
  • Artificial intelligence ( AI )
  • Computer networking
  • Database systems
  • Human-computer interaction
  • Information security (IS)
  • Software engineering
  • Examples of CompSci dissertation & theses

Topics/Ideas: Algorithms & Data Structures

  • An analysis of neural network algorithms’ accuracy for processing consumer purchase patterns
  • A systematic review of the impact of graph algorithms on data analysis and discovery in social media network analysis
  • An evaluation of machine learning algorithms used for recommender systems in streaming services
  • A review of approximation algorithm approaches for solving NP-hard problems
  • An analysis of parallel algorithms for high-performance computing of genomic data
  • The influence of data structures on optimal algorithm design and performance in Fintech
  • A Survey of algorithms applied in internet of things (IoT) systems in supply-chain management
  • A comparison of streaming algorithm performance for the detection of elephant flows
  • A systematic review and evaluation of machine learning algorithms used in facial pattern recognition
  • Exploring the performance of a decision tree-based approach for optimizing stock purchase decisions
  • Assessing the importance of complete and representative training datasets in Agricultural machine learning based decision making.
  • A Comparison of Deep learning algorithms performance for structured and unstructured datasets with “rare cases”
  • A systematic review of noise reduction best practices for machine learning algorithms in geoinformatics.
  • Exploring the feasibility of applying information theory to feature extraction in retail datasets.
  • Assessing the use case of neural network algorithms for image analysis in biodiversity assessment

Topics & Ideas: Artificial Intelligence (AI)

  • Applying deep learning algorithms for speech recognition in speech-impaired children
  • A review of the impact of artificial intelligence on decision-making processes in stock valuation
  • An evaluation of reinforcement learning algorithms used in the production of video games
  • An exploration of key developments in natural language processing and how they impacted the evolution of Chabots.
  • An analysis of the ethical and social implications of artificial intelligence-based automated marking
  • The influence of large-scale GIS datasets on artificial intelligence and machine learning developments
  • An examination of the use of artificial intelligence in orthopaedic surgery
  • The impact of explainable artificial intelligence (XAI) on transparency and trust in supply chain management
  • An evaluation of the role of artificial intelligence in financial forecasting and risk management in cryptocurrency
  • A meta-analysis of deep learning algorithm performance in predicting and cyber attacks in schools

Research topic idea mega list

Topics & Ideas: Networking

  • An analysis of the impact of 5G technology on internet penetration in rural Tanzania
  • Assessing the role of software-defined networking (SDN) in modern cloud-based computing
  • A critical analysis of network security and privacy concerns associated with Industry 4.0 investment in healthcare.
  • Exploring the influence of cloud computing on security risks in fintech.
  • An examination of the use of network function virtualization (NFV) in telecom networks in Southern America
  • Assessing the impact of edge computing on network architecture and design in IoT-based manufacturing
  • An evaluation of the challenges and opportunities in 6G wireless network adoption
  • The role of network congestion control algorithms in improving network performance on streaming platforms
  • An analysis of network coding-based approaches for data security
  • Assessing the impact of network topology on network performance and reliability in IoT-based workspaces

Free Webinar: How To Find A Dissertation Research Topic

Topics & Ideas: Database Systems

  • An analysis of big data management systems and technologies used in B2B marketing
  • The impact of NoSQL databases on data management and analysis in smart cities
  • An evaluation of the security and privacy concerns of cloud-based databases in financial organisations
  • Exploring the role of data warehousing and business intelligence in global consultancies
  • An analysis of the use of graph databases for data modelling and analysis in recommendation systems
  • The influence of the Internet of Things (IoT) on database design and management in the retail grocery industry
  • An examination of the challenges and opportunities of distributed databases in supply chain management
  • Assessing the impact of data compression algorithms on database performance and scalability in cloud computing
  • An evaluation of the use of in-memory databases for real-time data processing in patient monitoring
  • Comparing the effects of database tuning and optimization approaches in improving database performance and efficiency in omnichannel retailing

Topics & Ideas: Human-Computer Interaction

  • An analysis of the impact of mobile technology on human-computer interaction prevalence in adolescent men
  • An exploration of how artificial intelligence is changing human-computer interaction patterns in children
  • An evaluation of the usability and accessibility of web-based systems for CRM in the fast fashion retail sector
  • Assessing the influence of virtual and augmented reality on consumer purchasing patterns
  • An examination of the use of gesture-based interfaces in architecture
  • Exploring the impact of ease of use in wearable technology on geriatric user
  • Evaluating the ramifications of gamification in the Metaverse
  • A systematic review of user experience (UX) design advances associated with Augmented Reality
  • A comparison of natural language processing algorithms automation of customer response Comparing end-user perceptions of natural language processing algorithms for automated customer response
  • Analysing the impact of voice-based interfaces on purchase practices in the fast food industry

Research Topic Kickstarter - Need Help Finding A Research Topic?

Topics & Ideas: Information Security

  • A bibliometric review of current trends in cryptography for secure communication
  • An analysis of secure multi-party computation protocols and their applications in cloud-based computing
  • An investigation of the security of blockchain technology in patient health record tracking
  • A comparative study of symmetric and asymmetric encryption algorithms for instant text messaging
  • A systematic review of secure data storage solutions used for cloud computing in the fintech industry
  • An analysis of intrusion detection and prevention systems used in the healthcare sector
  • Assessing security best practices for IoT devices in political offices
  • An investigation into the role social media played in shifting regulations related to privacy and the protection of personal data
  • A comparative study of digital signature schemes adoption in property transfers
  • An assessment of the security of secure wireless communication systems used in tertiary institutions

Topics & Ideas: Software Engineering

  • A study of agile software development methodologies and their impact on project success in pharmacology
  • Investigating the impacts of software refactoring techniques and tools in blockchain-based developments
  • A study of the impact of DevOps practices on software development and delivery in the healthcare sector
  • An analysis of software architecture patterns and their impact on the maintainability and scalability of cloud-based offerings
  • A study of the impact of artificial intelligence and machine learning on software engineering practices in the education sector
  • An investigation of software testing techniques and methodologies for subscription-based offerings
  • A review of software security practices and techniques for protecting against phishing attacks from social media
  • An analysis of the impact of cloud computing on the rate of software development and deployment in the manufacturing sector
  • Exploring the impact of software development outsourcing on project success in multinational contexts
  • An investigation into the effect of poor software documentation on app success in the retail sector

CompSci & IT Dissertations/Theses

While the ideas we’ve presented above are a decent starting point for finding a CompSci-related research topic, they are fairly generic and non-specific. So, it helps to look at actual dissertations and theses to see how this all comes together.

Below, we’ve included a selection of research projects from various CompSci-related degree programs to help refine your thinking. These are actual dissertations and theses, written as part of Master’s and PhD-level programs, so they can provide some useful insight as to what a research topic looks like in practice.

  • An array-based optimization framework for query processing and data analytics (Chen, 2021)
  • Dynamic Object Partitioning and replication for cooperative cache (Asad, 2021)
  • Embedding constructural documentation in unit tests (Nassif, 2019)
  • PLASA | Programming Language for Synchronous Agents (Kilaru, 2019)
  • Healthcare Data Authentication using Deep Neural Network (Sekar, 2020)
  • Virtual Reality System for Planetary Surface Visualization and Analysis (Quach, 2019)
  • Artificial neural networks to predict share prices on the Johannesburg stock exchange (Pyon, 2021)
  • Predicting household poverty with machine learning methods: the case of Malawi (Chinyama, 2022)
  • Investigating user experience and bias mitigation of the multi-modal retrieval of historical data (Singh, 2021)
  • Detection of HTTPS malware traffic without decryption (Nyathi, 2022)
  • Redefining privacy: case study of smart health applications (Al-Zyoud, 2019)
  • A state-based approach to context modeling and computing (Yue, 2019)
  • A Novel Cooperative Intrusion Detection System for Mobile Ad Hoc Networks (Solomon, 2019)
  • HRSB-Tree for Spatio-Temporal Aggregates over Moving Regions (Paduri, 2019)

Looking at these titles, you can probably pick up that the research topics here are quite specific and narrowly-focused , compared to the generic ones presented earlier. This is an important thing to keep in mind as you develop your own research topic. That is to say, to create a top-notch research topic, you must be precise and target a specific context with specific variables of interest . In other words, you need to identify a clear, well-justified research gap.

Fast-Track Your Research Topic

If you’re still feeling a bit unsure about how to find a research topic for your Computer Science dissertation or research project, check out our Topic Kickstarter service.

You Might Also Like:

Research topics and ideas about data science and big data analytics

Investigating the impacts of software refactoring techniques and tools in blockchain-based developments.

Steps on getting this project topic

Joseph

I want to work with this topic, am requesting materials to guide.

Yadessa Dugassa

Information Technology -MSc program

Andrew Itodo

It’s really interesting but how can I have access to the materials to guide me through my work?

kumar

Investigating the impacts of software refactoring techniques and tools in blockchain-based developments is in my favour. May i get the proper material about that ?

BEATRICE OSAMEGBE

BLOCKCHAIN TECHNOLOGY

Nanbon Temasgen

I NEED TOPIC

Submit a Comment Cancel reply

Your email address will not be published. Required fields are marked *

Save my name, email, and website in this browser for the next time I comment.

  • Print Friendly

Email forwarding for @cs.stanford.edu is changing on Feb 1, 2024. More details here . Looking for your W-2 form?  Read Here . CS Commencement Ceremony June 16, 2024.  Learn More .

BS | Research Opportunities

Main navigation.

The Computer Science Department at Stanford have faculty and students that are globally recognized for their innovative and cutting-edge research. We offer scholars various opportunities at their disposal to participate in undergraduate research. If you are interested in research, we welcome you to explore the opportunities at your disposal.

computer science undergraduate research topics

CURIS Research

The program for CS undergrad Summer research. Participating students will work on their projects full-time and are paid a stipend for living expenses. 

computer science undergraduate research topics

Independent Study

Undergraduate research is often done through CURIS, for academic credit, or through an informal arrangement with a professor.

Getting Started

  • Undergraduate CS research website . The most reliable way to learn about projects you can get involved in is through the  undergraduate CS research  website. Throughout the year, professors have openings for undergrads to do work in their labs. They post descriptions of these projects on the site for your perusal. This site lists CS research projects during the academic year for course credit, CS research projects for the Summer quarter under CURIS (paid internship), and research projects in other departments that include CS applications.
  • Go to office hours . Find a professor whose research interests you want to learn more about. Discuss what possibilities are available or find out more about a particular group. Often the professor will be able to direct you to some research papers that might be valuable to read or other groups that you might find interesting. It's always a good idea to email a professor and let them know that you will be coming in. That way if their office hours are particularly busy, they can suggest another time.
  • Connect with a graduate student . Graduate students work on projects every day and deal with most of the details, they are probably one of the best sources of information. They will have a good idea of what role you could initially play in the project and will also be able to give an honest assessment of what it is like to work with the professor and what are the expectations of the group. Finally, if you decide to work with the group, the graduate students will probably be the ones who will be mentoring you in the day-to-day aspects of your work. Before you choose a project, try to meet with at least one graduate student in the group, preferably one that would be mentoring you. If you are still deciding between projects, ask the graduate students for their opinion.
  • Read your email . The bscs list is constantly getting announcements about presentations that are being given by faculty, advanced graduate students, and visiting faculty. Take the time to read through some of the abstracts and pick a few that interest you. These announcements are not usually forwarded to the considering_cs list. If you are interested in getting these announcements, visit the  course advisor  and declare CS !
  • CURIS poster sessions . At the end of the Summer quarter and the beginning of the Fall quarter, the CURIS program organizes poster sessions for undergraduates to present their Summer research projects. This is a great opportunity for you to get first-hand information about your peers' research experience as well as potential project ideas and research groups of interest. In addition, the display in the Gates lobby shows a collection of both undergraduate and graduate research projects year-round.
  • 500 level seminars . All of the CS 500 level courses are topic seminars. For instance,  CS 547 Seminar  focuses on Human-Computer Interaction topics. Each week, a different speaker comes in and presents their research. Sometimes the speakers are Stanford professors, graduate students, or they're outside visitors. The presentations are technical, check the schedules on the class web pages to find talks that may be interesting.
  • CS300 ( speaker schedule ) . At the beginning of each academic year, all new PhD students are required to take CS 300. In each seminar, two professors come in and describe their research work. The idea is to give PhD students an overview of the ongoing research so they can decide which groups they would like to join. Although the class is technically for PhD students, undergraduate and Master's students can enroll. The presentations are likely to be somewhat technical, but since they are geared toward PhD students with a broad variety of interests, they should be fairly accessible.

Find Info For

  • Become a Student
  • Current Students
  • Research and Partnerships

Quick Links

  • Undergraduate
  • Undergraduate Research
  • Undergraduate Program
  • Academic Advisors
  • Student Life
  • Frequently Asked Questions
  • Student Concerns
  • CS Course Proficiency Exams
  • Artificial Intelligence Degree Requirements
  • Computer Science Degree Requirements
  • Data Science Degree Requirements
  • Minor in Computer Science
  • BS/MS Degree Program in CS
  • Honors in Computer Science
  • Cooperative Education Program
  • Curriculum Resources
  • Scholarships
  • Bridge Program

Undergraduate Research at Purdue CS

Current Undergraduate Research Opportunities

The Department of Computer Science, as well as Purdue University as a whole, has multiple research faculty engaging in research for a variety of areas both within the field of computer science and beyond.  For an undergraduate student looking to join in research the process may seem daunting, so here are some FAQ's and resources to assist in getting started.

When do I get involved in research? 

Undergraduate students can engage in research opportunities as early as their freshman year. This will depend on the research project as well as the professor's requirements and skillsets needed. Some professors will want you to have taken a specific course before you start research, while others say it's never too early to engage in a project, especially since you'll do a lot of your learning on the job.

How do I get involved in research?

The first step is finding the type of research you would like to be involved in (see next question for a list of websites). You should talk with faculty who were or are your instructors for ideas and insights. If you are approaching faculty that you have not had for a course, be sure you write a clear and detailed email about your request to be part of their research and see if you can meet them in person to discuss further.

Your academic advisor is also a great resource. They can discuss how to develop the skills you'll need for research, help manage your expectations, assist with the paperwork you need to register once you are on a research project as well as provide other insight and resources.

Excelling in coursework leads to research opportunities

What opportunities are there to do research?

Research is available to students not only through the academic year, but can be an alternative to internships during the summer. Besides research on Purdue's campus (either through the Department of Computer Science or other departments on campus) there are resources and opportunities to do research on other campuses across the country or with other organizations.

Undergraduate Andrew Chu

Volunteering for research leads to first paper

Undergraduate research resources at Purdue:

  • Department of Computer Science Research Areas
  • Department of Computer Science Research Seminars
  • Purdue University Office of Undergraduate Research
  • Purdue University Center for Programming Principles and Software Systems (PURPL)
  • Purdue Summer Undergraduate Research Fellowship Program (SURF)
  • Discovery Park Undergraduate Research Internship Program (DURI)

Research Opportunities off-campus:

  • National Science Foundation's Research Experience for Undergraduates (REU's)
  • Computing Research Association's Computer Science Undergraduate Research (CONQUER)

Department of Computer Science, 305 N. University Street, West Lafayette, IN 47907

Phone: (765) 494-6010 • Fax: (765) 494-0739

Copyright © 2024 Purdue University | An equal access/equal opportunity university | Copyright Complaints

Trouble with this page? Disability-related accessibility issue ? Please contact the College of Science .

Research Opportunities

The Allen School is committed to offering research opportunities to its undergraduate majors. Research is an exciting, and sometimes challenging, process of discovering something completely new and communicating the discovery to others. For a research result to be meaningful, it must be shared for others to apply or build upon.

Research involves many aspects: investigating prior work, experimenting, inventing, reasoning (proofs), collaboration, organization, writing, and speaking. If there is no chance of failure, it is not research. Projects can vary. Always choose one that you think you would enjoy.

Finding a Research Project

Types of research credit.

  • Registration

Research Funding

Departmental honors and senior thesis, cross-departmental research.

What is ugrad research?  |  Why should I get involved in research?  |  What are the prerequisites for research?  | I don't have the prereqs! |  How can I apply?

  • What is ugrad research?
  • Research is a fancy way of saying 'creating new knowledge.' Researchers tackle problems that have unclear solutions and produce new ways of solving these problems.
  • Ugrad research is an opportunity to learn the research mindset and build a relationship with a mentor. This mindset looks different in different subfields (theory, ml/robotics, HCI) and mentors will also have different personal styles.
  • Why should I get involved in research?
  • The main reason is if you want to see what research looks like as a career / think you may want a PhD. Undergraduate research is (unsurprisingly) one of the best ways to experiment with research as a career path.
  • Ugrad research is an experience that is also sometimes transferrable to industry - some subfields, especially in machine learning, HCI, and ubicomp will be programming-heavy and can demonstrate experience for SWE roles.
  • What are the prerequisites for research?
  • This will depend a lot on the subfield you are interested in. Here are a few sample research subfields and the type of work you might encounter:
  • Human-Computer Interaction : HCI researchers ask, how do humans use computers? How can we make those interactions more seamless? Better for people with disabilities? HCI research often will involve coding, user studies, and data analysis.
  • Machine learning/robotics : ML/robotics researchers ask, how can we teach computers to learn? What techniques does the literature use, and how can we improve on that? ML/robotics research will often be coding heavy and may involve matrix calculus/linear algebra. Taking CSE446 (ML) and math coursework is often recommended.
  • Computational/synthetic biology : comp/synth bio researchers ask, how can computational techniques advance our understanding of biology? This field is broad and may require prior knowledge in biology or an aptitude to read papers from both computer science and biology. Research may look like work in the wetlab, data analysis / visualization, or coding.
  • Theory : theory researchers ask, what can we prove using math? Theory often stands alone from other research areas in that coding is infrequently needed - most of the work is reviewing literature and proving theorems. Strong performance in CSE311/421, high level math coursework, or taking graduate level theory courses is recommended.
  • I don't have the prereqs! What should I do?
  • Colloquia  (CSE590) are amazing ways to explore a new field, meet grad students, and see cutting edge research! Plus, you can elect to get 1 credit.
  • Take the relevant classes to your subfield and/or do personal projects
  • Consider summer research internships like the Research Experience for Undergrads (REUs) or internships at a national laboratory
  • What subfield am I interested in? Do I want to work on something specific (e.g. improving mobile communication access for rural communities) or something broad (e.g. exploring HCI as a subfield)?
  • Why am I interested in doing research? Maybe you're interested in research to a) try it out, b) explore a new subfield, or c) deepen knowledge in a subfield you're interested in.
  • How has my prior experience clarified my interests and passions? Did you take a class and really liked the style of thinking? How do you approach problems?
  • (*) For non-theory students : Start at cs.uw.edu/findingresearch - some faculty and labs already have an established pipeline for applicants. If you do not see a faculty/subfield of interest, go to Faculty by Expertise  to see faculty by their subfield.
  • (*) For theory students : your best bet is reaching out directly to theory faculty with some topics of interest. In general, there are fewer students interested in theory research, meaning it is easier to match with grad students or faculty.

screen shot of OneBusAway

The best way to do this is to explore, and the CSE department has a number of ways to do this.

  • Check out the  research project home pages  to find out what research faculty members are doing. Here is an additional page specifically made for CSE undergrads with specific information about research labs and faculty and how to get involved with them. Building connections with graduate students and asking them about projects they are working on can also be a good way to learn more about research opportunities.
  • Attend Faculty Colloquia in the Fall of each year (previous colloquia are archived in the  Colloquia On-Demand  webpage).
  • Talk to the faculty teaching your classes about their work, and other related work going on in the department.

Step 2: Discuss your research interests with a potential faculty sponsor.

Occasionally, faculty members and graduate students will advertise research projects for undergraduates. It is not wise simply to wait for these announcements. It is better to approach a faculty member with the knowledge of their projects and how your experience and background can benefit them. Contact them during office hours or via e-mail to set up a time to discuss  their work. If it seems like a fit, it is worthwhile: (1) to discuss the planned duration of your research (either in terms of number of credits or number of quarters) and expected outcomes (for example, if you are expected to write papers or do a presentation at the end), (2) to make a plan for when you will start, and (3) to determine if you will work for academic credit (either C/NC or graded) or for pay (not all faculty offer paid research opportunities). There are ways to work on the same project for both pay and credit, but it must be clearly articulated which hours are paid and which hours are for credit. Students may not receive both pay and credit for the same hours of research work. If you have questions, please see an academic advisor to clarify your plans.

Step 3: Register for research credits during the quarterly class registration process.

Each research credit hour carries the expectation of three hours of work per week (1 credit = 3 hours per week, 2 credits = 6 hours per week, etc.). Use the CSE research registration tool  to get the add-code you need to enter when you register for classes.

Step 4 (for students pursuing CSE or College honors): Sign up for honors.

Make sure you are familiar with the CSE honors enrollment process and expectations .

Step 5: Complete research.

Be proactive in communicating with your research advisor and in making sure project goals/requirements are clear. One of the skills developed through engagement in research is the ability to work independently; therefore, you will be expected to be somewhat self-directed. Your faculty sponsor is the one to determine if you have met the requirements and expectations of the research project, so checking in periodically to make sure you are on track is a good idea. You should turn in any results, assignments or written work to them, and they will submit your grades at the end of the quarter. Research credits are subject to the UW's numerical and letter grading system . Honors students are required to do research and write a senior thesis.

Each year a Best Senior Thesis Award is given.

NOTE: Students who wish to participate in research outside of CSE can only use it toward CSE senior electives if they get a CSE faculty sponsor and register for CSE 498/496 credit. Please discuss this with an advisor if you have questions about conducting research in another department and applying it toward CSE requirements.

CSE 498, CSE 496, and CSE 499 are used to provide you with academic credit towards your degree requirements for research activities and/or independent projects conducted under the supervision of a faculty member (see detailed descriptions below).The department strongly encourages research and independent project participation by undergraduates both as a way to sample and prepare for graduate school and to work on the leading edge of the field.

Both CSE 498  (maximum of 9 credits) and CSE 496  (maximum of 9 credits) may be used to fulfill Computer Science & Engineering electives and are graded courses. The difference between the two is that CSE 496 is for students enrolled in the University or Departmental Honors programs. CSE 499 may be used only as free elective credit and is graded credit/no-credit. You may register for CSE 499 for a quarter or two prior to fully engaging in a research project under CSE 498/496.

The number of496/498/499credits you take per quarter may vary. However, the average is 3-4 quarterly credits. Expect the workload to be approximately 3-4 hours per week per credit.

A faculty member must officially supervise all projects. A CSE graduate student or industry supervisor may, under the direction of a faculty member, also supervise your work. A faculty member is always responsible for the grading of every research project. Honors projects include an additional requirement that is laid out in detail on the honors webpage. (The content of the honors paper is determined by the student and supervising faculty. The paper is submitted as part of the final grade for the project. Since honors projects span multiple quarters, a student should receive an "X" until a final grade is submitted the last quarter of the project.)

You may not be paid an hourly salary and receive credit for the same research hours. However, if resources allow, it is possible to split research by having some hours paid and some counting towards credit.

CSE 498, 496 Research Projects

To receive graded research, you should describe a development, survey literature, or conduct a small research project in an area of specialization. Objectives are: (1) applying and integrating classroom material from several courses, (2) becoming familiar with professional literature, (3) gaining experience in writing a technical document, and (4) enhancing employability through the evidence of independent work. Your project may cover an area in computer science and engineering or an application to another field. The work normally extends over more than one quarter. Prerequisite: Permission of instructor. Students pursuing 496, honors, must complete all 9 credits, their senior thesis, and oral presentation on the same project.

CSE 499 Reading and Research (1-24)

Available for CSE majors to do reading and research in the field. Usable as a free elective, but it cannot be taken in place of a core course or Computer Science & Engineering senior elective. 499 can be a good way to experiment with a research project before committing to 9 credits of honors work or further graded research. Prerequisite: Permission of instructor. Credit/No credit.

CSE 498, 496, or 499 Registration

The type of research credits a student can enroll in is dependent on the student’s faculty mentor. The flowcharts below describe the research credits you are eligible to enroll in.

If you are a CSE major requesting research registration with an Allen School full-time faculty member, follow the instructions below:

  • Log in to your MyCSE webpage.
  • Scroll down the front page until you see the "Apply for Research" box.
  • Check to make sure the default quarter is accurate; this is especially important when signing up for fall quarter as summer may still be listed.
  • Fill in the online form requesting research. If you plan to work with a CSE grad student, you should list their faculty advisor as your research advisor on the form.
  • An email will be sent to your faculty advisor, who will then go online to approve the request.
  • Once the request has been approved, you will be sent an email with an add code to use to register.
  • Important last step: actually REGISTER for the approved credits.

You are responsible for making sure that you do not over-enroll for more than 9 credits of graded, 498 research (9 credits allowed/required for honors).

Faculty members who have NSF research grants can apply for NSF Research Experience for Undergraduates (REU) as supplements to their existing grants. You should remind your faculty sponsor about this opportunity. This site also gives information about REU programs at other universities for which you may be eligible. The Mary Gates Endowment and the Washington NASA Space Grant Program  have research grants for undergraduates.

For full requirements on how to graduate with departmental honors, please see the departmental honors web page .

Students typically complete their thesis during their last quarter of research. Once a decision is made to pursue departmental honors, you should notify your faculty advisor and determine a topic for your senior thesis. The honors research and project should be completed with one faculty member, or, in the rare instance where you need to switch advisors, faculty within the same area of research as the original advisor.

Once the thesis is completed, one copy should be submitted to the faculty supervisor and one to the CSE undergraduate advisors. If you do not meet the honors thesis requirements, you will not graduate with honors even if  you have successfully completed nine credits of research. In many cases, faculty will not issue grades for honors research until the entire project is finished and approved.

Undergraduate Thesis Archive

All CSE honors theses, including the past winners of the Best Senior Thesis Award, are published online as part of the UW CSE Undergraduate Thesis Archive .

Students can pursue research in any department. However, if they are doing CSE-related work and wish to earn CSE research credits they must find a CSE faculty member to sponsor the research. Credit types, amounts, and grading would then be worked out between the facutly sponsor, the student, and the research advisor in the other department. This should be arranged prior to beginning a project.

  • Who’s Teaching What
  • Subject Updates
  • MEng program
  • Opportunities
  • Minor in Computer Science
  • Resources for Current Students
  • Program objectives and accreditation
  • Graduate program requirements
  • Admission process
  • Degree programs
  • Graduate research
  • EECS Graduate Funding
  • Resources for current students
  • Student profiles
  • Instructors
  • DEI data and documents
  • Recruitment and outreach
  • Community and resources
  • Get involved / self-education
  • Rising Stars in EECS
  • Graduate Application Assistance Program (GAAP)
  • MIT Summer Research Program (MSRP)
  • Sloan-MIT University Center for Exemplary Mentoring (UCEM)
  • Electrical Engineering
  • Computer Science
  • Artificial Intelligence + Decision-making
  • AI and Society

AI for Healthcare and Life Sciences

Artificial intelligence and machine learning.

  • Biological and Medical Devices and Systems

Communications Systems

  • Computational Biology

Computational Fabrication and Manufacturing

Computer architecture, educational technology.

  • Electronic, Magnetic, Optical and Quantum Materials and Devices

Graphics and Vision

Human-computer interaction.

  • Information Science and Systems
  • Integrated Circuits and Systems
  • Nanoscale Materials, Devices, and Systems
  • Natural Language and Speech Processing
  • Optics + Photonics
  • Optimization and Game Theory

Programming Languages and Software Engineering

Quantum computing, communication, and sensing, security and cryptography.

  • Signal Processing

Systems and Networking

  • Systems Theory, Control, and Autonomy

Theory of Computation

  • Departmental History
  • Departmental Organization
  • Visiting Committee
  • Explore all research areas

computer science undergraduate research topics

Computer science deals with the theory and practice of algorithms, from idealized mathematical procedures to the computer systems deployed by major tech companies to answer billions of user requests per day.

Primary subareas of this field include: theory, which uses rigorous math to test algorithms’ applicability to certain problems; systems, which develops the underlying hardware and software upon which applications can be implemented; and human-computer interaction, which studies how to make computer systems more effectively meet the needs of real people. The products of all three subareas are applied across science, engineering, medicine, and the social sciences. Computer science drives interdisciplinary collaboration both across MIT and beyond, helping users address the critical societal problems of our era, including opportunity access, climate change, disease, inequality and polarization.

Research areas

Our goal is to develop AI technologies that will change the landscape of healthcare. This includes early diagnostics, drug discovery, care personalization and management. Building on MIT’s pioneering history in artificial intelligence and life sciences, we are working on algorithms suitable for modeling biological and clinical data across a range of modalities including imaging, text and genomics.

Our research covers a wide range of topics of this fast-evolving field, advancing how machines learn, predict, and control, while also making them secure, robust and trustworthy. Research covers both the theory and applications of ML. This broad area studies ML theory (algorithms, optimization, …), statistical learning (inference, graphical models, causal analysis, …), deep learning, reinforcement learning, symbolic reasoning ML systems, as well as diverse hardware implementations of ML.

We develop the next generation of wired and wireless communications systems, from new physical principles (e.g., light, terahertz waves) to coding and information theory, and everything in between.

We bring some of the most powerful tools in computation to bear on design problems, including modeling, simulation, processing and fabrication.

We design the next generation of computer systems. Working at the intersection of hardware and software, our research studies how to best implement computation in the physical world. We design processors that are faster, more efficient, easier to program, and secure. Our research covers systems of all scales, from tiny Internet-of-Things devices with ultra-low-power consumption to high-performance servers and datacenters that power planet-scale online services. We design both general-purpose processors and accelerators that are specialized to particular application domains, like machine learning and storage. We also design Electronic Design Automation (EDA) tools to facilitate the development of such systems.

Educational technology combines both hardware and software to enact global change, making education accessible in unprecedented ways to new audiences. We develop the technology that makes better understanding possible.

The shared mission of Visual Computing is to connect images and computation, spanning topics such as image and video generation and analysis, photography, human perception, touch, applied geometry, and more.

The focus of our research in Human-Computer Interaction (HCI) is inventing new systems and technology that lie at the interface between people and computation, and understanding their design, implementation, and societal impact.

We develop new approaches to programming, whether that takes the form of programming languages, tools, or methodologies to improve many aspects of applications and systems infrastructure.

Our work focuses on developing the next substrate of computing, communication and sensing. We work all the way from new materials to superconducting devices to quantum computers to theory.

Our research focuses on robotic hardware and algorithms, from sensing to control to perception to manipulation.

Our research is focused on making future computer systems more secure. We bring together a broad spectrum of cross-cutting techniques for security, from theoretical cryptography and programming-language ideas, to low-level hardware and operating-systems security, to overall system designs and empirical bug-finding. We apply these techniques to a wide range of application domains, such as blockchains, cloud systems, Internet privacy, machine learning, and IoT devices, reflecting the growing importance of security in many contexts.

From distributed systems and databases to wireless, the research conducted by the systems and networking group aims to improve the performance, robustness, and ease of management of networks and computing systems.

Theory of Computation (TOC) studies the fundamental strengths and limits of computation, how these strengths and limits interact with computer science and mathematics, and how they manifest themselves in society, biology, and the physical world.

computer science undergraduate research topics

Latest news

Ai generates high-quality images 30 times faster in a single step.

Novel method makes tools like Stable Diffusion and DALL-E-3 faster by simplifying the image-generating process to a single step while maintaining or enhancing image quality.

Optimizing nuclear fuels for next-generation reactors

While working to nurture scientific talent in his native Nigeria, Assistant Professor Ericmoore Jossou is setting his sights on using materials science and computation to design robust nuclear components.

2024 MacVicar Faculty Fellows named

Professors Berggren, Campbell, Pollock, and Vaikuntanathan are honored for exceptional undergraduate teaching.

Priya Donti named AI2050 Early Career Fellow

Assistant Professor Priya Donti has been named an AI2050 Early Career Fellow by Schmidt Sciences, a philanthropic initiative from Eric and Wendy Schmidt aimed at helping to solve hard problems in AI. 

Using generative AI to improve software testing

MIT spinout DataCebo helps companies bolster their datasets by creating synthetic data that mimic the real thing.

Upcoming events

Anqi zhang – minimally invasive neuroelectronics, rachit nigam – modular abstractions for hardware design, doctoral thesis: neuro-symbolic learning for bilevel robot planning, paul krogmeier – learning symbolic concepts and domain-specific languages, career inspiration series: rich miner, managing timelines, deadlines, & exploding offers panel.

Carnegie Mellon University School of Computer Science

Scs undergraduate research, independent study and honors undergraduate research thesis.

SCS undergraduates generally participate in research projects in two ways: as independent study or as an honors undergraduate research thesis. (Often, in fact, the former leads to the latter.)

You can start your research journey by exploring faculty research projects on the SCS Research Portal and comparing how they align with your own goals and interests. You can also examine our list of undergraduate thesis topics and advisors from previous years to understand what's possible at the undergrad level. Finally, you can check out the university's Meeting of the Minds during the spring semester, when students present the results of their work.

SCS also hosts summer research programs designed to give undergrads the chance to gain valuable research experience while considering their plans after graduation.

Explore Summer Research

Learn About the Honors Thesis

  • Concentrations
  • Undergraduate Research
  • Dean's List

Get To Know Us

  • Meet Our Dean
  • Read Our News

computer science undergraduate research topics

Book series

Undergraduate Topics in Computer Science

About this book series.

'Undergraduate Topics in Computer Science' (UTiCS) delivers high-quality instructional content for undergraduates studying in all areas of computing and information science. From core foundational and theoretical material to final-year topics and applications, UTiCS books take a fresh, concise, and modern approach and are ideal for self-study or for a one- or two-semester course. The texts are authored by established experts in their fields, reviewed by an international advisory board, and contain numerous examples and problems, many of which include fully worked solutions.

The UTiCS concept centers on high-quality, ideally and generally quite concise books in softback format. For advanced undergraduate textbooks that are likely to be longer and more expository, Springer continues to offer the highly regarded Texts in Computer Science series, to which we refer potential authors.

Book titles in this series

Understanding computer organization.

A Guide to Principles Across RISC-V, ARM Cortex, and Intel Architectures

  • Patricio Bulić
  • Copyright: 2024

Available Renditions

computer science undergraduate research topics

Concise Guide to the Internet of Things

A Hands-On Introduction to Technologies, Procedures, and Architectures

  • Michael McCarthy
  • Ian Pollock
  • Soft cover ( Book w. online files / update )

computer science undergraduate research topics

Introduction to Artificial Intelligence

  • Wolfgang Ertel

computer science undergraduate research topics

Computability and Complexity

Foundations and Tools for Pursuing Scientific Applications

computer science undergraduate research topics

Introduction to Data Science

A Python Approach to Concepts, Techniques and Applications

  • Laura Igual
  • Santi Seguí

computer science undergraduate research topics

Publish with us

Abstracted and indexed in.

Undergraduate Research Opportunities

Get involved.

Duke undergraduates have numerous opportunities to gain hands-on project and research experience in Computer Science.  A wide range of research projects guided by Duke's world-class faculty engage undergraduates, who often become co-authors on papers in major academic conferences. Undergraduates can pursue independent study courses guided by faculty, participate in the summer research and/or the  Identity in Computing Research  programs, and graduate with a distinction in research.

To stay tapped in and receive info about the latest Computer Science opportunities and events, add yourself to our Duke mailing list [email protected] ! Go to: https://lists.duke.edu/sympa  and enter "compsci" in the search box to find the CS Undergraduate listserv.

Student with diploma

Graduation with Distinction » Alumni who Graduated with Distinction »

If you meet the requirements, including completion of a substantial project, you may qualify to graduate with distinction.

Student with laptop

  • Independent Study

Interested in pursuing independent study of computer science research or non-research projects in a specific field of interest with a faculty member?

Undergraduate student with poster

Undergraduate Project Showcase

This event celebrates student inquiry in computer science. Students present posters on projects from mentored research, class projects, and independent work.

Student researchers beside poster

CS+ Program Summer Research »

Not sure what to do this summer? Enjoy computer science and want to explore in more depth? Check out some projects Computer Science faculty are working on and are seeking help for!

Research Resources

  • Getting into Research as an Undergraduate:   Information and guidance from Computing Research Association (CRA)
  • Undergraduate Research Highlights : A CRA series that showcases outstanding research done by undergrad students at universities and colleges across North America.
  • Undergrad Research at Duke Computer Science : Playlist on Duke Comp Sci's YouTube channel.
  • CS 50th Anniversary
  • Computing Resources
  • Event Archive
  • Location & Directions
  • AI for Social Good
  • Computational Social Choice
  • Computer Vision
  • Machine Learning
  • Natural Language Processing (NLP)
  • Reinforcement Learning
  • Search and Optimization
  • Computational Biochemistry and Drug Design
  • Computational Genomics
  • Computational Imaging
  • DNA and Molecular Computing
  • Algorithmic Game Theory
  • Social Choice
  • Computational Journalism
  • Broadening Participation in Computing
  • CS1/CS2 Learning, Pedagogy, and Curricula
  • Education Technology
  • Practical and Ethical Approaches to Software and Computing
  • Interdisciplinary Research in Data Science
  • Security & Privacy
  • Architecture
  • Computer Networks
  • Distributed Systems
  • High Performance Computing
  • Operating Systems
  • Quantum Computing
  • Approximation and Online Algorithms
  • Coding and Information Theory
  • Computational Complexity
  • Geometric Computing
  • Graph Algorithms
  • Numerical Analysis
  • Programming Languages
  • Why Duke Computer Science?
  • BS Concentration in Software Systems
  • BS Concentration in Data Science
  • BS Concentration in AI and Machine Learning
  • BA Requirements
  • Minors in Computer Science
  • 4+1 Program for Duke Undergraduates
  • IDM in Math + CS on Data Science
  • IDM in Linguistics + CS
  • IDM in Statistics + CS on Data Science
  • IDM in Visual & Media Studies (VMS) + CS
  • Graduation with Distinction
  • Identity in Computing Research
  • CS+ Summer Program
  • CS Related Student Organizations
  • Undergraduate Teaching Assistant (UTA) Information
  • Your Background
  • Schedule a Visit
  • All Prospective CS Undergrads
  • Admitted or Declared 1st Majors
  • First Course in CS
  • Duties and Commitment
  • Compensation
  • Trinity Ambassadors
  • Mentoring for CS Graduate Students
  • MSEC Requirements
  • Master's Options
  • Financial Support
  • MS Requirements
  • Concurrent Master's for Non-CS PhDs
  • Admission & Enrollment Statistics
  • PhD Course Requirements
  • Conference Travel
  • Frequently Asked Questions
  • Additional Graduate Student Resources
  • Graduate Awards
  • Undergraduate Courses
  • Graduate Courses
  • Spring 2024 Classes
  • Fall 2023 Classes
  • Spring 2023 Classes
  • Course Substitutions for Majors & Minors
  • Course Bulletin
  • Course Registration Logistics
  • Assisting Duke Students
  • For Current Students
  • Alumni Lectures - Spring 2024
  • News - Alumni
  • Primary Faculty
  • Secondary Faculty
  • Adjunct and Visiting Faculty
  • Emeriti - In Memoriam
  • Postdoctoral Fellows
  • Ph.D. Program
  • Masters in Computer Science
  • Masters in Economics and Computation
  • Affiliated Graduate Students

Computer Science

Undergraduate Research

Many of our undergraduate students undertake research guided by a faculty member outside of coursework. This page gives a summary of how to go about finding an undergraduate research opportunity that is a good match for you. It was written in January 2020 by Don Porter, with suggestions from Diane Pozefsky, and most recently updated in October 2023.

Take classes!

The first, and hardest, part of finding a research topic is figuring out what you like. Often, investigating new ideas can be quite different than consuming them.

As a hyperbolic example, just because you like playing video games does not necessarily mean you will enjoy research in computer graphics, which requires considerably more math than dominating Fortnite.

Classes in the major, especially upper-division (400+ level) courses, can be a great opportunity to get a taste of a given topic. Similarly, this is a great opportunity to get to know a potential research advisor.

Of course, if it is your first year and you are eager to start research early, it is still an option to jump into research sooner, especially if you are either self-taught on a topic, or just very passionate about learning in your spare time. More notes on this issue are below.

Word to the wise: Be sure to show up for a few office hours with the instructor just to say “hi” and ask their opinion about interesting research topics and what is happening in the department. It’s best to come when the class is less busy, like earlier in the semester or not just before a major assignment or deadline.

Read up on faculty and research group webpages

Once you identify a general area or areas of interest, the next step would be to look at the department webpages ( such as our Research Areas page ) for faculty interested in a given area.

Although faculty webpages vary substantially in how clear they are to non-experts, they can give you a flavor of the type of work that the professor is into.

If a research group webpage looks appealing, the next step is to read a paper or two. You are unlikely to understand everything you read (don’t panic!), but it does give you a flavor of the work. If you can’t understand the introduction or conclusion, consider revisiting the material after you take an appropriate course in that area.

  • Also, pay attention to the way an idea is evaluated: is it proofs? Human subjects work? Measurement of a computer system? This is how you will likely spend a lot of your time if you join that group.

Word to the wise: Faculty project lists are often stale. Faculty often make webpages for a project around the time they are done with the publication and release the source code or other artifacts. So these pages can be useful to get a sense of the type of work, but the specific project you would likely work on is likely not yet written up.

Search the Office of Undergraduate Research (OUR) Database

The Office of Undergraduate Research has a database where faculty can post open research opportunities, including paid RA positions, volunteer opportunities, and course credit opportunities. This is not a complete listing, but it can give you some good leads, both within and outside of the department.

Sign up for the email list for announcements of new opportunities

There is a UNC CS mailing list to announce research and related opportunities, for those looking. You will need to subscribe, and can unsubscribe yourself.

The details are emailed periodically to CS majors. You may also email professor Porter for details if you are not on the majors list.

Speak to the OUR Liaison or student liaisons

Professor Porter is the current department OUR Liaison and can help answer questions about the process or recommend specific faculty you should consider speaking with. If you have a question about the process, something that is not covered on the page, or are just feeling nervous about the process, set up an appointment with professor Porter.

The best way to schedule an appointment with Professor Porter is using this page .

To see a list of undergraduate student researchers, visit this page .

Send a specific request to faculty member(s) for an appointment

Once you have narrowed the field to 2-3 faculty members you would like to work with, send each of them an email requesting an appointment at their convenience, expressing your interest in working with them, and asking if they have openings in their lab.

Word to the wise: Students often write emails that read as “generic” or “spam”, especially if they come from a student the professor doesn’t know. Thus, it is wise to make sure the email conveys that it is written:

  • By a UNC student. Believe it or not, professors get a significant volume of requests from students outside UNC to work on research. Send the message from your UNC email address and mention how far you are in the program, as well as any relevant background that you think will make you able to contribute to the work.
  • That it is not a “form” email with the professor’s name replaced. The best way to address this is to say something more specific about what you have learned from their page, or that attracted you to their work. If the email reads as if it could just as easily be addressed to professors Snoeyink, Mayer-Patel, or Pizer (by simply replacing the “Dear Prof. X” part), give it some more attention.

Other common issues and questions:

  • Not all faculty have funding to pay undergrad RAs, and even those that do have funding may wish to do a “trial period” (say 1 semester) to see if the work is a good fit before paying a student.
  • If you can afford to do the work without being paid, it may open up more opportunities.
  • That said, for many students, being paid may be a requirement. If this is the case for you, there is nothing wrong with this, and it is best to be up-front with a potential mentor about the issue. Note that if you qualify for Federal Work-Study, this may open up some opportunities to do research as your work-study assignment (mention this to the faculty member).
  • Send a few gentle reminders, say a week apart but at different times of day or days of the week, to “bump” the message back to the top of their inbox. Or go by office hours if advertised for their class, or just try to catch them with their door open/cracked.
  • Professors get a lot of email. Too much. We feel bad about being unresponsive or losing track of emails, but it happens. Be patient, but also don’t be afraid to send reminders.
  • Yes! The great thing about working with first or second year students is that you have longer to amortize the cost of climbing the learning curve.
  • This is especially true if there is a topic where you are self-taught, have prior experience, or are just really passionate to catch up out of band. In some labs, you may also be able to help initially with less technical contributions, such as interviewing subjects or running experiments, while you learn the deeper technical material.
  • The best thing to do is follow similar steps as above, and definitely reach out to the OUR liaison for guidance.
  • When you approach a professor, make a point to explain what you have done to prepare yourself for research in their group, and ask if there are other things you can do to prepare yourself.

Book cover

Fundamentals of Discrete Math for Computer Science

A Problem-Solving Primer

  • © 2013
  • Tom Jenkyns 0 ,
  • Ben Stephenson 1

Department of Mathematics, Brock University, St. Catharines, Canada

You can also search for this author in PubMed   Google Scholar

Department of Computer Science, University of Calgary, Calgary, Canada

  • Highly accessible and easy to read, introducing concepts in discrete mathematics without requiring a university-level background in mathematics
  • Ideally structured for classroom-use and self-study, with modular chapters following ACM curriculum recommendations
  • Contains examples and exercises throughout the text, and highlights the most important concepts in each section

Part of the book series: Undergraduate Topics in Computer Science (UTICS)

151k Accesses

1 Citations

  • Table of contents

About this book

Authors and affiliations, about the authors, bibliographic information.

  • Publish with us

This is a preview of subscription content, log in via an institution to check access.

Access this book

Other ways to access.

Licence this eBook for your library

Institutional subscriptions

Table of contents(10 chapters)

Front matter, algorithms, numbers, and machines.

  • Tom Jenkyns, Ben Stephenson

Sets, Sequences, and Counting

Boolean expressions, logic, and proof, searching and sorting, graphs and trees, relations: especially on (integer) sequences, sequences and series, generating sequences and subsets, discrete probability and average-case complexity, turing machines, back matter.

  • Analysis of Algorithms
  • Complexity Analysis
  • Discrete Mathematics
  • Proof of Correctness
  • algorithm analysis and problem complexity

From the reviews:

“This book is dedicated to presenting the basic notions of discrete mathematics for undergraduate students in computer science. With a good balance between theory and practice – including the algorithmic point of view – this book will prove very helpful. … Many examples and exercises make the book both enjoyable and useful.” (Jean-Paul Allouche, zbMATH, Vol. 1278, 2014)

“Jenkyns (Brock Univ., Canada) and Stephenson (Univ. of Calgary, Canada) have written an introductory textbook on discrete mathematics for computer science majors. The volume’s ten chapters cover the standard topics taught in such courses at the freshman or sophomore level … . In comparison with other introductory discrete mathematics textbooks, this work has a very strong emphasis on algorithms, proofs of algorithmic correctness, and the analysis of worst-case and average-case complexity. … Summing Up: Recommended. Lower-division undergraduates.” (B. Borchers, Choice, Vol. 50 (9), May,2013)

“This book is specifically aimed at CS students. The authors include the same discrete math topics that other books have, but, in contrast to most existing books, they introduce each topic with a clear (and entertaining) CS motivation. … Each section is well written, with a highlighted subsection on the most important ideas and plenty of exercises. I highly recommend this book to everyone.” (V. Kreinovich, Computing Reviews, December, 2012)

Tom Jenkyns

Ben Stephenson

Dr. Tom Jenkyns is an Associate Professor in the Department of Mathematics and the Department of Computer Science at Brock University, Canada.

Dr. Ben Stephenson is an Instructor in the Department of Computer Science at the University of Calgary, Canada.

Book Title : Fundamentals of Discrete Math for Computer Science

Book Subtitle : A Problem-Solving Primer

Authors : Tom Jenkyns, Ben Stephenson

Series Title : Undergraduate Topics in Computer Science

DOI : https://doi.org/10.1007/978-1-4471-4069-6

Publisher : Springer London

eBook Packages : Computer Science , Computer Science (R0)

Copyright Information : Springer-Verlag London Ltd., part of Springer Nature 2013

eBook ISBN : 978-1-4471-4069-6 Published: 16 October 2012

Series ISSN : 1863-7310

Series E-ISSN : 2197-1781

Edition Number : 1

Number of Pages : XII, 416

Number of Illustrations : 143 b/w illustrations

Topics : Discrete Mathematics in Computer Science , Algorithm Analysis and Problem Complexity

Policies and ethics

  • Find a journal
  • Track your research

Undergraduate Research

Honors majors are required to complete two consecutive semesters of research . Other advanced undergraduate students are also encouraged to seek research opportunities with regular full-time faculty.

Why research?

Besides the intellectual challenge, there are many practical advantages in getting engaged in research.

  • You must have some research experience if you intend to pursue a Ph.D. after you graduate, whether or not you take gap years. The recommendation letter you get from your research advisor is usually one of the most important piece of material in your graduate school application.
  • Research is much more challenging than classes. If you are doing very well in classes, you should consider doing research. Unlike homework, projects and exams which deal with easily-solvable problems, research projects are open-ended, take a much longer time to solve and is a lot more difficult.
  • Research projects are usually collaborative. As a result of working closely with PhD students and your faculty advisor, you end up making strong connections with them. These connections may become very handy when it comes to being recommended to graduate schools or industry jobs.

All the above benefits do not come by easily, as research is a serious undertaking. Typically, the workload of research is equal to that of one or two regular classes. Therefore, make sure you can devote the required time and energy before searching for research opportunities.

How to prepare yourself for research

Discover your research interests

Contrary to what some NYU advisers may tell you, you should take as many CS classes as early as possible . To make room for CS classes, postpone your humanities and other general class requirements to your senior year if possible. Doing many CS classes early on allows you to start taking advanced undergraduate classes (the electives) and graduate-level classes in your junior or even sophomore year. Sample a few of these advanced classes in different areas and you will find out what you like and what you are particular good at.

You should consider attending the CS colloquium in the spring. The colloquiums in the spring are typically given by faculty job candidates. They target a broad audience. As such, they provide a good overview on the current state-of-art in a specific field of research.

Find a faculty research advisor

The best approach is to take an advanced class from a full-time faculty member who has active research projects . You need to do really, really well in his/her class. As faculty members usually teach classes in their area of research, taking their classes gives you some required background to do research in that area. Faculty members are also more open to providing research opportunities to top students in their class.

You can browse the homepages of individual faculty to find out his/her research interests and active projects. For the list of research areas and the corresponding faculty, please see here .

You may also directly email faculty members to ask for research opportunities without having taking their classes. In this case, you should attach an informal transcript and your Github projects to show your level of experience.

Summer is a great time to gain research experience. Faculty research advisers typically provide funding to undergraduates who have demonstrated productivity in the projects. Sometimes, faculty advisers also fund undergraduates during normal semester time. As such funding comes from a faculty member's own research grant, it varies across individual faculty and you should talk to your faculty research advisor about funding.

The department has a dedicated fund for undergraduate summer research. You need to be nominated by a faculty member. Again, talk to your research advisor about this.

NYU also provides the Dean's Undergraduate Research Fund that you can apply for.

Getting advice

Every Fall semester, the department runs a "how to prepare for graduate school" panel where faculty and interested students get together to discuss their graduate-school plans. The undergraduate advisor will advertise this event via email.

You are welcome to ask for advice in person from individual faculty member that you've taken classes from, the undergraduate director and administrator.

Getting credits for research

Undergraduate students can get credits for their research work by registering for either of the following two courses.

  • CSCI-UA.0520/0521 (Undergraduate Research)
  • CSCI-UA.0997/0998 (Independent Study)

CSCI-UA.0520/0521 Undergraduate Research

To fulfill the research requirement, honors students are required to register for CSCI-UA.0520/0521 for two consecutive semesters, starting in their sixth semester of study (spring of junior year). Non-honors students may also register for this course with either a one or two semester commitment. In order to register for this course, the student must have an approved research proposal and a faculty sponsor, who will have agreed to guide and review the research project. The faculty sponsor will need to send email to the Program Administrator confirming the arrangement.

At the conclusion of the research project, the student will be required to submit a write-up (or a thesis for Honors students) on the research work, which the student can then present at NYU's Undergraduate Research Conference .

CSCI-UA.0997/0998 Independent Study

Honors and non-honors students may also participate in research projects and receive credit by registering for CSCI-UA.0997/0998 , which may be taken for either two or four credits per semester. Research done under Independent Study will not count toward the CS major and will not fulfill any program requirements. The steps for registering for the Independent Study course are similar to the ones listed above: the student must have an approved research proposal and a faculty sponsor.

Requirements for Independent Study in Computer Science:

  • Student must be a declared Computer Science major
  • Student must have at least a 3.5 GPA
  • Student must have completed at least 50% of the Computer Science major courses

Harvard SEAS logo

Undergraduate Research Opportunities

Research may be part of your coursework or as as part of individual research opportunities working with professors.

Learn about Harvard CS Faculty’s research by looking at the following Google spreadsheet on Faculty Research Interests and Office Hours . In addition to information about their research, it lists their office hours. Be sure to look at the info paragraph column to get a sense of what is the background needed to get involved with each particular research group.

Also considering taking a graduate course or advanced undergraduate course as a way to gain deeper knowledge in an area you are interested in. Many undergraduates take graduate courses, and many of these graduate courses involve reading research papers and engaging in a research project. This provides a great way to get involved in research within the context of a course, often in a small class setting.

We also recommend you check out the Computer Science colloquium to get a sense for what’s going on in the world of Computer Science Research.

Another way to get involved with research is to do a CS91r or senior thesis .

Other useful resources

Harvard College Office of Undergraduate Research and Fellowships Many opportunities for funding student research, including PRISE, Herchel Smith, and the Harvard College Research Program (HCRP).

SEAS-wide info on undergraduate research and FAQ

SEAS Undergrad Research Canvas Page (events and information)

Active Learning Labs

Student Employment Office: Research Opportunities

Harvard Innovation Labs

Remote Research Resources

How to get a research-based summer internship/job

REU Programs (Research Experience for Undergraduates funded by NSF):

  • http://www.nsf.gov/crssprgm/reu/reu_search.jsp

Non-REU Programs:

  • Lincoln Labs/MIT
  • DAAD RISE (Germany)
  • AT&T Research Internships
  • DOE Science Undergraduate Laboratory Internships
  • DOE Scholars Program
  • Caltech Summer Undergraduate Research Fellowships
  • Summer Undergraduate Research Fellowships, funded by NIST
  • NCAR Computational Science
  • National Security Agency
  • Lawrence Livermore National Laboratory
  • Privacy Tools for Sharing Research Data Project
  • The Mind Project
  • Radcliffe Research Partnernships

Harvard College offers a variety of research funding opportunities which are administered by the Office of Undergraduate Research and Fellowships . In particular, we’d like to point out PRISE via the Summer Residential Research Programs and the Harvard College Research Program (HCRP) via Independent Research Funding .

The Kempner Institute for the Study of Natural and Artificial Intelligence offers two undergraduate research programs for Harvard College undergraduates: a term-time program (KURE) and a 10-week summer program (KRANIUM). Please see their website for more information.

Though uncommon, sometimes faculty members may be able to pay for students to work during the semester. Please be aware, though, that Harvard does not allow students to receive academic credit for work for which they were compensated .

Harvard offers a Research Experience for Undergraduates (REU) Program for students to spend their summer performing research. Other universities also participate in REU programs for those who would like to do research elsewhere, as discussed above.

Travel Funding for Workshops, conferences, coding bootcamps, and other courses.

Always apply for grants from the hosting organization and check with your research advisor regarding any available funding for research-related presentations. Failing those options, the CS Area does have a small budget to support undergraduate student conference travel to present their research, please check with the DUS team.

The CS Diversity Committee allows students to apply for conference funding in support of women and underrepresented minorities in Computer Science.

The Office of Undergraduate Research and Fellowships offers funding for conferences . The URAF conference funding program supports Harvard College undergraduate students in presenting their original, independent research (poster or paper) at an academic conference. Awards are available year-round with a rolling deadline to apply for funding. Undergraduate students from all concentrations are encouraged to apply.

If your research also falls under Life and/or Physical Sciences and your lab is difficult to get to, then you might be eligible for transportation funding to get to your lab .

  • Senior Thesis

Undergraduate Research

There are a variety of research opportunities for undergraduate students at the University of Michigan. In fact, about 150 undergraduate students conduct research on EECS faculty projects in a typical year; many of these are paid positions. Below you will find some of the research opportunities open to undergraduate students. See the bottom of the page for tips on how to get involved.

Independent research projects

Students are encouraged to contact individual faculty about doing independent research in an area of mutual interest . EECS 399 and EECS 499, Directed Study, can be taken for 1-4 credits. It provides an opportunity for undergraduate students to work on substantial research problems in EECS or areas of special interest such as design problems. For each hour of credit, it is expected that the student will work an average of three or four hours per week and that the challenges will be comparable with other 400 level EECS classes. An oral presentation and/or written report will be due at the end of the term.

Please note:

  • If a student gets approved for an EECS research project after the drop/add deadline, they can submit a late add request in Wolverine Access to get added to the appropriate section of EECS 399 or 499.
  • Students can only enroll in one section of EECS 399 or EECS 499 per term.
  • CS-LSA Honors students cannot enroll in EECS 443 and EECS 499 in the same term.

Steps to take to sign up for independent research

  • Students are responsible for connecting to EECS faculty members to find upcoming research opportunities (for tips on identifying research areas or connecting with faculty see the tips section at the bottom of the page).
  • Brief description of your project
  • How will you be evaluated?
  • Will materials from other classes you have taken be used in the project?
  • How often will you meet with your Faculty Director?
  • How will the completion of your project be determined?
  • Fill out and submit the EECS independent research form .
  • Your Faculty Director must approve your submission before you can enroll.
  • Faculty independent study section numbers

Multidisciplinary Design Program (MDP)

The Multidisciplinary Design Program provides team-based, “learn by doing” opportunities through participation on ongoing faculty research teams. With MDP, you can: apply what you learn in class to engineering research; gain the technical and professional skills necessary to thrive in engineering research or professional settings; and experience how people from multiple disciplines collaborate within a team. In addition to skilled technical roles, teams offer Apprentice Researcher positions for first and second year students to develop their skills through mentoring by experienced members of the team. A minimum of two semesters participation (2 credits per term) is required.  Students are encouraged to participate on their team throughout their degree. Experienced MDP students have presented at research and professional conferences, participated in University patents, and co-authored publications. Experienced students have also taken on leadership roles on their teams.

The MDP application opens in September and is due mid-October; projects begin in January and end in December (summer is generally not included). For more information about how to apply to an MDP research team, please visit here or contact [email protected] .

Summer Undergraduate Research in Engineering (SURE) Program

The Summer Undergraduate Research in Engineering (SURE) offers summer research internships to outstanding undergraduate students who have completed their sophomore or junior year (preference will be given to those who have completed three years of study) by the time of their internship. Participants have the opportunity to conduct 10-12 weeks of full-time summer research with an EECS faculty member on a research project defined by the faculty. Applicants for EECS SURE projects should list on the application their top three areas of interest in preference order.

  • List of SURE projects in CSE (2023-2024)
  • List of SURE projects in CSE (2022-2023)
  • List of SURE projects in CSE (2021-2022)
  • List of SURE projects in CSE (2020-2021)
  • List of SURE projects in CSE (2019-2020)
  • List of SURE projects in CSE (2018-2019)

Undergraduate Research Opportunity Program (UROP)

The Undergraduate Research Opportunity Program (UROP) creates research partnerships between first and second year UM students and faculty. All schools and colleges at the University of Michigan are active participants in UROP, which provides a wealth of interesting research topics for program participants. There are two different ways to engage in UROP research: either throughout the course of an academic year or through a 10-week summer research project. For more information about these research opportunities, contact [email protected] .

Summer Research Opportunity Program (SROP)

The Summer Research Opportunity Program (SROP) is designed for outstanding non-UM students entering into their 3rd or 4th year of undergraduate study and who are underrepresented within their field. The goal of this program is to provide students with the opportunity to conduct an intensive graduate level research project with faculty and graduate students at the University of Michigan. This eight-week program, held on the Ann Arbor campus, culminates in a research symposium where each participant presents their research project. Throughout the program, all students will engage in a series of academic, professional, and personal development seminars. For more information about eligibility requirements, benefits, and the application process, visit here or contact rackham.umich.edu .

Tips for getting involved in research

Research is a cornerstone of academia. The pursuit of new knowledge is one of the main factors that motivates students to attend the University of Michigan. However, stepping into the world of research can feel overwhelming, especially if you’re not sure where to begin. This guide is intended to help CSE students feel empowered to engage in some form of research during their undergraduate studies at the University of Michigan.

  • Start with what interests you! Your interests might be centered around questions, or topics, or methods, and they may be specific or broad. There is no right way to start—the identification or formulation of specific scientific research questions or ideas will come later. 
  • Spend time learning about faculty research interests from their own personal and lab web sites.  Most department web sites allow for keyword searches, and you can always use Google and include “University of Michigan” and a department name in the search. Remember, there is no one right way to start.. and the results of your initial search will help you formulate new searches.
  • Go to professors’ office hours. Ask them about their own research projects and find out what most excites them right now in their science. Ask them how they got started in research. You can do a lot to prepare yourself to get the most out of these meetings. Read the “Contacting Professors and Potential Project Advisors” for more information.
  • Attend extracurricular lectures, symposia, and speaker sessions. Going to these types of events are good ways to see what topics academics and professionals are exploring in their fields and may even give you ideas for projects, or even people you would like to work with in the future.
  • Check out the library!  Campus libraries have incredible resources beyond books. You can set up an appointment with a librarian to learn how to search for scholarly sources, how to develop a research question, and even how to read empirical research articles. Ever heard of JSTOR, Google Scholar or Interlibrary Loan?
  • Take research methods and/or additional statistics classes. Many of these courses will give you tools you will frequently need when working in a laboratory or collecting your own data!
  • Contact Professors and potential Project Advisors . Reaching out to faculty members for the first time can be intimidating. You may not know exactly what your own research interests are, how formal your conversation should be, or may have never even spoken to a professor one-on-one outside of class before! You can find suggestions for interacting with faculty members here .

University of Rochester

Search Rochester.edu

Popular Searches

Resources for

  • Prospective students
  • Current students
  • Faculty and staff

Hajim School of Engineering & Applied Sciences

Department of Computer Science

Undergraduate program, undergraduate research opportunities.

Undergraduate researchers presenting poster

How do I get started in Computer Science research?

  • Talk To A Faculty Member :  Problem solving with students is the cornerstone of research. The collaborative dynamic  required by research between faculty and students is unlike that found in the classroom. Reach out and see for yourself, you might be surprised!
  • Spend a Summer in a Lab: Regardless of your post-grad plans, getting paid to solve CS problems is a great career experience. Interested?... Talk to a faculty member!
  • Have a Plan - Start Early: If you are considering a graduate degree, research experience and published papers are top admission considerations.
  • Attend research group meetings : Many Computer Science research groups have regular meetings that are open to undergrads. Stopping in to evaluate your own interests, watch the research process in action, and make connections is a great first step. Meetings listed in table below.
  • Find an NSF REU : The National Science Foundation funds “ Research Experiences for Undergraduates ” for U.S. citizens and permanent residents. REU students typically get paid and lodged to spend a summer working on a research project in a lab they've chosen which can be anywhere in the US.
  • https://sparc.cra.org/students/  
  • https://conquer.cra.org
  • Distributed Research Experiences for Undergraduates (DREU)   
  • Check AURA for open research opportunities.

Students should also see the Office of Undergraduate Research for more information.

Last Updated 12 December 2023

CS Research Areas

  • Artificial Intelligence (AI)
  • Computer Architecture & Engineering (ARC)
  • Biosystems & Computational Biology (BIO)
  • Cyber-Physical Systems and Design Automation (CPSDA)
  • Database Management Systems (DBMS)
  • Education (EDUC)
  • Graphics (GR)
  • Human-Computer Interaction (HCI)
  • Operating Systems & Networking (OSNT)
  • Programming Systems (PS)
  • Scientific Computing (SCI)
  • Security (SEC)
  • Theory (THY)

Undergraduate Research Opportunities

Undergraduates are an essential part of our leading-edge research. There are many ways to contribute to impactful research early in your career, from summer programs to paid research positions with faculty.

Year Long Research

computer science undergraduate research topics

  • Clare Boothe Luce Research Scholars an ISUR-affiliated program supporting undergraduate women in research and teaching in science, mathematics, and engineering. Eight scholars are selected and funded each year.
  • C3SR-Undergraduate Research in Artificial Intelligence is an IBM-Illinois and ISUR partnership funding undergraduate AI and cognitive computing research, from theory to practical application while working with a C3SR faculty mentor.
  • The National Center for Supercomputing Applications (NCSA) SPIN is an academic internship program for undergraduate students to participate in supercomputing, visualization, data analytics, and similar fields with five weekly paid hours.

Semester Long Research

  • CS Job Portal is our department's employment opportunities with course assistant and undergraduate research positions.
  • PURE (Promoting Undergraduate Research in Engineering) is a student-run research program connecting first-year and second-year students with graduate student mentors to jump-start their research careers. 

Summer Research

computer science undergraduate research topics

  • The National Center for Supercomputing Applications (NCSA) INCLUSION program is a 10-week program for students from underrepresented communities to work in pairs with mentors on research aimed toward social impact based around open-source software development.
  • Summer Research Program for Undergraduates (SRP)  students work on state-of-the-art research with university faculty while attending professional development programs aimed at making students strong researchers and graduate school candidates
  • Mind in Vitro Undergraduate Summer Research Program undergraduate researchers work with faculty mentors and graduate students on projects related to Mind in Vitro while participating in the Illinois summer research program networking, socials, lunches, and seminars.

Mentorship Opportunities

computer science undergraduate research topics

Showcase Opportunities

  • Engineering Research Fair is hosted by Grainger Engineering every semester for researchers to share their work and labs and for companies recruiting researchers.
  • Undergraduate Research Symposium is a yearly campus-wide research symposium for undergraduate researchers to present the results of their research and gain experience presenting work to a wider audience.

Computer Science | Home

Undergraduate Research

Getting involved in research can be the single most influential experience of your undergraduate career. It gives you the opportunity to intensively apply the skills and knowledge you have acquired, and be a part of the process that generates new ideas and technologies. We strongly encourage you to seek opportunities to participate in research, either with our department of elsewhere in the University of Arizona. As a Research I institution, the University of Arizona offers unique opportunities to participate in cutting-edge research. This sort of experience is particularly valuable if you plan on attending graduate school.

Curious about Computing Research? Check out guidance and student stories to help you navigate on the Student Pathways into Research Computing site maintained by the  Computing Research Association  (CRA).

There are several opportunities for optional research, independent study, and internship experiences. You can do coursework (see below) or participate in an REU (Research Experiences for Undergraduates) which are paid research positions, generally in the summer, either here in the department or at other schools. There are also opportunities across the university, through the  Office of Undergraduate Research , as well as from the  Computing Community Consortium  of the CRA. 

It is possible to receive credit for doing research, though either Directed Research (CSC 392 and 492) or Independent Study (CSC 199, 299, 399, 499 and 199H, 299H, 399H, 499H). The differences are mainly in the grading scheme and whether the research is tied to an ongoing research project. Please read below for additional information about these individual studies experiences.

Directed Research (CSC 392, 492)

Students involved in Computer Science departmental research may receive academic credit as Directed Research. CSC 392 is for pre-majors and CSC 492 is for majors. Grades: A, B, C, D, E, I, W

Independent Study (CSC 199, 299, 399, 499)

Students with an idea for an academic project not tied to an ongoing research project or course may pursue independent study. Interested students must make a proposal to a faculty member to solicit support for the project. Students may earn independent study credit for approved projects. Grades: S, P, C, D, E, W

Honors Independent Study (CSC 199H, 299H, 399H, 499H)

Honors students with an idea for an academic project not tied to an ongoing research project or course may pursue independent study. Interested students must make a proposal to a faculty member to solicit support for the project. Students may earn independent study credit for approved projects. Grades: A, B, C, D, E, W

To register for research or independent study, a student and faculty member must work together to complete an  Individual Studies Proposal Form . The form is then submitted to the Academic Services Office in Gould-Simpson Room 917.

University of Delaware

  • Advisory Council
  • Faculty Awards
  • Working at UD CIS
  • Diversity & Inclusion
  • MS in Computer Science
  • PhD in Computer Science
  • Bioinformatics MS/PhD
  • 4+1 Bachelors/CS Masters Program
  • Graduate Certificates
  • Graduate Admissions
  • Professional Development Awards
  • Graduate Resources
  • BA Computer Science
  • BS Computer Science
  • BS Information Systems
  • Independent Study

Undergraduate Research

  • Undergraduate FAQs
  • Undergraduate Resources
  • Student Organizations
  • Faculty Directory
  • Additional Faculty
  • Faculty and Staff Resources
  • Artificial Intelligence and Machine Learning
  • Bioinformatics and Health Informatics
  • Computer Systems, Networks, and Security
  • Computer Vision, Robotics, and Autonomous Systems
  • Computing Foundations
  • Human-Computer Interaction and Education
  • Research Matrix
  • Internships & Opportunities
  • 2023 CIS Honors Day Awards
  • 2022 CIS Honors Day Awards
  • 2021 CIS Honors Day Awards
  • 2020 CIS Honors Day Awards
  • Grace Hopper Celebration
  • Newsletters
  • Undergraduate Newsletter
  • Make a Gift
  • Alumni Spotlight
  • Alumni Connection

Talented, motivated undergraduates majoring in computer science and information systems are encouraged to get involved in research with a faculty mentor. Research opportunities are offered through the Science and Engineering Scholars program, faculty grants with research for undergraduates (REU) supplements, senior theses, independent studies with credit, and other arrangements with individual faculty leading research programs. Find more information about undergraduate research at University of Delaware at urp.udel.edu .

Besides learning about the research process, undergraduate researchers work side-by-side with graduate students and learn about the graduate school environment, gaining valuable advice and guidance about applying to graduate school. In addition, undergraduate researchers often participate in writing papers and preparing posters or talks on their research. Sometimes, the work is published at a regional, national or international conference or workshop, and the student researcher is supported to travel to the venue to present their work to the global research community.

Students completing undergraduate research have been admitted to graduate school in computer science at some of the most well respected departments, including: Cornell, Princeton, University of Washington, University of Massachusetts, University of Virginia, University of California Berkeley, University of Maryland, and University of Texas. Learn more about research, graduate school, and careers in computer science research at conquer.cra.org .

If you are interested in exploring undergraduate research in CIS, we encourage you to explore the faculty web pages and set up an appointment with individual faculty member to discuss the opportunities in their research lab.

All of the Computer Science programs allow students to participate in the University’s Vertically Integrated Projects program . Interested students are encouraged to attend a VIP information session to learn about the different projects. A student typically becomes involved in the VIP project in the first or second year and remains with the project until graduation.

Why do Undergraduate Research?

The University of Delaware believes that exceptionally capable and well-motivated students should be given a chance, while they are still beginners, to see and have a part in what is happening at the frontiers of knowledge today. Toward that end, undergraduates work as assistants or junior members of their faculty research teams.While preparing to do their own research, they have the opportunity to share in a professional researcher’s work.

Undergraduate Assistance

Samantha Fowle Undergraduate Academic Advisor [email protected]  302-831-2712

Visiting Campus/Admissions

Applications, deadlines, campus tours and visitation programs 302-831-8123 [email protected]

group of students with laptops working at a table

Bachelor's Programs

Each year, the School of Computer Science admits students to undergraduate programs ranging from a traditional B.S. in computer science to a bachelor of computer science and arts. 

Whatever option you choose, you’re guaranteed to find a rigorous program dedicated to the real-world training and practical problem solving that has been the hallmark of computer science education at CMU since its inception.

B.S. in Computer Science

Carnegie Mellon's undergraduate major in computer science combines a solid core of computer science courses with the ability to gain substantial depth in another area through a required minor in a second subject. The curriculum also gives you numerous choices for science and humanities courses. Computing is a discipline with strong links to many fields, and our program gives you unparalleled flexibility to pursue these fields. Our mathematics and probability component ensures that you'll have the formal tools to remain current as technologies and systems change, but at the same time you'll gain insight into the practical issues of building and maintaining systems by participating in intensive project-oriented courses.

Unlike other universities, where research rarely occurs at the undergraduate level, CMU CS students often have part-time or summer jobs — or receive independent study credit — working on research while pursuing their bachelor's degree. If you're interested in a research/graduate school career, we offer an intensive course of research, equivalent to four classroom courses, culminating in the preparation of a senior research honors thesis.

Requirements

Current Computer Science Undergraduate Curriculum  

Computer Science Undergraduate curriculum information for prior years are available on the Previous Course Catalogs webpage .

How to Apply

Bachelor of Science in Music and Technology

Carnegie Mellon University's Music and Technology program was established in 2009 as a joint project between three of the schools: The School of Music, School of Computer Science, and the Department of Electrical and Computer Engineering. Information regarding this degree is available on the Bachelor of Science in Music and Technology website . 

  • Bachelor's Admissions - How to Apply
  • Minor and Additional Major in Computer Science
  • Guidelines for Internal Transfer or Dual Degree
  • Bachelor's Concentrations
  • B.S. in CS Program Contacts
  • Other SCS Undergraduate Programs
  • Incoming Student Course Transfer
  • Summer Research for International Students
  • Master's Programs
  • Doctoral Programs
  • Student Resources

Universities Have a Computer-Science Problem

The case for teaching coders to speak French

Photo of college students working at their computers as part of a hackathon at Berkeley in 2018

Listen to this article

Produced by ElevenLabs and News Over Audio (NOA) using AI narration.

Updated at 5:37 p.m. ET on March 22, 2024

Last year, 18 percent of Stanford University seniors graduated with a degree in computer science, more than double the proportion of just a decade earlier. Over the same period at MIT, that rate went up from 23 percent to 42 percent . These increases are common everywhere: The average number of undergraduate CS majors at universities in the U.S. and Canada tripled in the decade after 2005, and it keeps growing . Students’ interest in CS is intellectual—culture moves through computation these days—but it is also professional. Young people hope to access the wealth, power, and influence of the technology sector.

That ambition has created both enormous administrative strain and a competition for prestige. At Washington University in St. Louis, where I serve on the faculty of the Computer Science & Engineering department, each semester brings another set of waitlists for enrollment in CS classes. On many campuses, students may choose to study computer science at any of several different academic outposts, strewn throughout various departments. At MIT, for example, they might get a degree in “Urban Studies and Planning With Computer Science” from the School of Architecture, or one in “Mathematics With Computer Science” from the School of Science, or they might choose from among four CS-related fields within the School of Engineering. This seepage of computing throughout the university has helped address students’ booming interest, but it also serves to bolster their demand.

Another approach has gained in popularity. Universities are consolidating the formal study of CS into a new administrative structure: the college of computing. MIT opened one in 2019. Cornell set one up in 2020. And just last year, UC Berkeley announced that its own would be that university’s first new college in more than half a century. The importance of this trend—its significance for the practice of education, and also of technology—must not be overlooked. Universities are conservative institutions, steeped in tradition. When they elevate computing to the status of a college, with departments and a budget, they are declaring it a higher-order domain of knowledge and practice, akin to law or engineering. That decision will inform a fundamental question: whether computing ought to be seen as a superfield that lords over all others, or just a servant of other domains, subordinated to their interests and control. This is, by no happenstance, also the basic question about computing in our society writ large.

When I was an undergraduate at the University of Southern California in the 1990s, students interested in computer science could choose between two different majors: one offered by the College of Letters, Arts and Sciences, and one from the School of Engineering. The two degrees were similar, but many students picked the latter because it didn’t require three semesters’ worth of study of a (human) language, such as French. I chose the former, because I like French.

An American university is organized like this, into divisions that are sometimes called colleges , and sometimes schools . These typically enjoy a good deal of independence to define their courses of study and requirements as well as research practices for their constituent disciplines. Included in this purview: whether a CS student really needs to learn French.

The positioning of computer science at USC was not uncommon at the time. The first academic departments of CS had arisen in the early 1960s, and they typically evolved in one of two ways: as an offshoot of electrical engineering (where transistors got their start), housed in a college of engineering; or as an offshoot of mathematics (where formal logic lived), housed in a college of the arts and sciences. At some universities, including USC, CS found its way into both places at once.

The contexts in which CS matured had an impact on its nature, values, and aspirations. Engineering schools are traditionally the venue for a family of professional disciplines, regulated with licensure requirements for practice. Civil engineers, mechanical engineers, nuclear engineers, and others are tasked to build infrastructure that humankind relies on, and they are expected to solve problems. The liberal-arts field of mathematics, by contrast, is concerned with theory and abstraction. The relationship between the theoretical computer scientists in mathematics and the applied ones in engineers is a little like the relationship between biologists and doctors, or physicists and bridge builders. Keeping applied and pure versions of a discipline separate allows each to focus on its expertise, but limits the degree to which one can learn from the other.

Read: Programmers, stop calling yourself engineers

By the time I arrived at USC, some universities had already started down a different path. In 1988, Carnegie Mellon University created what it says was one of the first dedicated schools of computer science. Georgia Institute of Technology followed two years later. “Computing was going to be a big deal,” says Charles Isbell, a former dean of Georgia Tech’s college of computing and now the provost at the University of Wisconsin-Madison. Emancipating the field from its prior home within the college of engineering gave it room to grow, he told me. Within a decade, Georgia Tech had used this structure to establish new research and teaching efforts in computer graphics, human-computer interaction, and robotics. (I spent 17 years on the faculty there, working for Isbell and his predecessors, and teaching computational media.)

Kavita Bala, Cornell University’s dean of computing, told me that the autonomy and scale of a college allows her to avoid jockeying for influence and resources. MIT’s computing dean, Daniel Huttenlocher, says that the speed at which computing evolves justifies the new structure.

But the computing industry isn’t just fast-moving. It’s also reckless. Technology tycoons say they need space for growth, and warn that too much oversight will stifle innovation. Yet we might all be better off, in certain ways, if their ambitions were held back even just a little. Instead of operating with a deep understanding or respect for law, policy, justice, health, or cohesion, tech firms tend to do whatever they want . Facebook sought growth at all costs, even if its take on connecting people tore society apart . If colleges of computing serve to isolate young, future tech professionals from any classrooms where they might imbibe another school’s culture and values—engineering’s studied prudence, for example, or the humanities’ focus on deliberation—this tendency might only worsen.

Read: The moral failure of computer scientists

When I raised this concern with Isbell, he said that the same reasoning could apply to any influential discipline, including medicine and business. He’s probably right, but that’s cold comfort. The mere fact that universities allow some other powerful fiefdoms to exist doesn’t make computing’s centralization less concerning. Isbell admitted that setting up colleges of computing “absolutely runs the risk” of empowering a generation of professionals who may already be disengaged from consequences to train the next one in their image. Inside a computing college, there may be fewer critics around who can slow down bad ideas. Disengagement might redouble. But he said that dedicated colleges could also have the opposite effect. A traditional CS department in a school of engineering would be populated entirely by computer scientists, while the faculty for a college of computing like the one he led at Georgia Tech might also house lawyers, ethnographers, psychologists, and even philosophers like me. Huttenlocher repeatedly emphasized that the role of the computing college is to foster collaboration between CS and other disciplines across the university. Bala told me that her college was established not to teach CS on its own but to incorporate policy, law, sociology, and other fields into its practice. “I think there are no downsides,” she said.

Mark Guzdial is a former faculty member in Georgia Tech’s computing college, and he now teaches computer science in the University of Michigan’s College of Engineering. At Michigan, CS wasn’t always housed in engineering—Guzdial says it started out inside the philosophy department, as part of the College of Literature, Science and the Arts. Now that college “wants it back,” as one administrator told Guzdial. Having been asked to start a program that teaches computing to liberal-arts students, Guzdial has a new perspective on these administrative structures. He learned that Michigan’s Computer Science and Engineering program and its faculty are “despised” by their counterparts in the humanities and social sciences. “They’re seen as arrogant, narrowly focused on machines rather than people, and unwilling to meet other programs’ needs,” he told me. “I had faculty refuse to talk to me because I was from CSE.”

In other words, there may be downsides just to placing CS within an engineering school, let alone making it an independent college. Left entirely to themselves, computer scientists can forget that computers are supposed to be tools that help people. Georgia Tech’s College of Computing worked “because the culture was always outward-looking. We sought to use computing to solve others’ problems,” Guzdial said. But that may have been a momentary success. Now, at Michigan, he is trying to rebuild computing education from scratch, for students in fields such as French and sociology. He wants them to understand it as a means of self-expression or achieving justice—and not just a way of making software, or money.

Early in my undergraduate career, I decided to abandon CS as a major. Even as an undergraduate, I already had a side job in what would become the internet industry, and computer science, as an academic field, felt theoretical and unnecessary. Reasoning that I could easily get a job as a computer professional no matter what it said on my degree, I decided to study other things while I had the chance.

I have a strong memory of processing the paperwork to drop my computer-science major in college, in favor of philosophy. I walked down a quiet, blue-tiled hallway of the engineering building. All the faculty doors were closed, although the click-click of mechanical keyboards could be heard behind many of them. I knocked on my adviser’s door; she opened it, silently signed my paperwork without inviting me in, and closed the door again. The keyboard tapping resumed.

The whole experience was a product of its time, when computer science was a field composed of oddball characters, working by themselves, and largely disconnected from what was happening in the world at large. Almost 30 years later, their projects have turned into the infrastructure of our daily lives. Want to find a job? That’s LinkedIn. Keep in touch? Gmail, or Instagram. Get news? A website like this one, we hope, but perhaps TikTok. My university uses a software service sold by a tech company to run its courses. Some things have been made easier with computing. Others have been changed to serve another end, like scaling up an online business.

Read: So much for ‘learn to code’

The struggle to figure out the best organizational structure for computing education is, in a way, a microcosm of the struggle under way in the computing sector at large. For decades, computers were tools used to accomplish tasks better and more efficiently. Then computing became the way we work and live. It became our culture, and we began doing what computers made possible, rather than using computers to solve problems defined outside their purview. Tech moguls became famous, wealthy, and powerful. So did CS academics (relatively speaking). The success of the latter—in terms of rising student enrollments, research output, and fundraising dollars—both sustains and justifies their growing influence on campus.

If computing colleges have erred, it may be in failing to exert their power with even greater zeal. For all their talk of growth and expansion within academia, the computing deans’ ambitions seem remarkably modest. Martial Hebert, the dean of Carnegie Mellon’s computing school, almost sounded like he was talking about the liberal arts when he told me that CS is “a rich tapestry of disciplines” that “goes far beyond computers and coding.” But the seven departments in his school correspond to the traditional, core aspects of computing plus computational biology. They do not include history, for example, or finance. Bala and Isbell talked about incorporating law, policy, and psychology into their programs of study, but only in the form of hiring individual professors into more traditional CS divisions. None of the deans I spoke with aspires to launch, say, a department of art within their college of computing, or one of politics, sociology, or film. Their vision does not reflect the idea that computing can or should be a superordinate realm of scholarship, on the order of the arts or engineering. Rather, they are proceeding as though it were a technical school for producing a certain variety of very well-paid professionals. A computing college deserving of the name wouldn’t just provide deeper coursework in CS and its closely adjacent fields; it would expand and reinvent other, seemingly remote disciplines for the age of computation.

Near the end of our conversation, Isbell mentioned the engineering fallacy, which he summarized like this: Someone asks you to solve a problem, and you solve it without asking if it’s a problem worth solving. I used to think computing education might be stuck in a nesting-doll version of the engineer’s fallacy, in which CS departments have been asked to train more software engineers without considering whether more software engineers are really what the world needs. Now I worry that they have a bigger problem to address: how to make computer people care about everything else as much as they care about computers.

This article originally mischaracterized the views of MIT’s computing dean, Daniel Huttenlocher. He did not say that computer science would be held back in an arts-and-science or engineering context, or that it needs to be independent.

IMAGES

  1. Project Topics for Computer Science Students by

    computer science undergraduate research topics

  2. Computer Science Research Topics

    computer science undergraduate research topics

  3. PhD-Topics-in-Computer-Science-list.pdf

    computer science undergraduate research topics

  4. Computer Science Research Topics (+ Free Webinar)

    computer science undergraduate research topics

  5. Guide for a Flawless PhD in Computer Science

    computer science undergraduate research topics

  6. Undergraduate Thesis Topics for Computer Science Students

    computer science undergraduate research topics

VIDEO

  1. Computer Science Class 12th

  2. Computer Science

  3. 11th computer science

  4. Top 10 best University in Germany for Computer Science

  5. BSc Computer Science Software Engineering overview

  6. Computer Science in 2 Years

COMMENTS

  1. Undergraduate Research Topics

    Available for single-semester IW and senior thesis advising, 2023-2024. Research Areas: Human-Computer Interaction (HCI), Augmented Reality (AR), and Spatial Computing. Independent Research Topics: Input techniques for on-the-go interaction (e.g., eye-gaze, microgestures, voice) with a focus on uncertainty, disambiguation, and privacy.

  2. 100+ Great Computer Science Research Topics Ideas for 2023

    Remarkable Computer Science Research Topics for Undergraduates. Looking for computer science topics for research is not easy for an undergraduate. Fortunately, these computer science project topics should make your research paper easy: Ways of using artificial intelligence in real estate; Discuss reinforcement learning and its applications

  3. Computer Science Research Topics (+ Free Webinar)

    Finding and choosing a strong research topic is the critical first step when it comes to crafting a high-quality dissertation, thesis or research project. If you've landed on this post, chances are you're looking for a computer science-related research topic, but aren't sure where to start.Here, we'll explore a variety of CompSci & IT-related research ideas and topic thought-starters ...

  4. Research Opportunities

    There are several ways that undergraduate research can be funded at SEAS. The Program for Research in Science and Engineering (PRISE) is a 10-week summer program that provides housing in addition to a stipend for summer research.The Harvard College Research Program (HCRP) is available during the academic year as well as the summer.The Harvard University Center for the Environment (HUCE) has a ...

  5. On Undergraduate Research in Computer Science: Tips for shaping

    Note: Khuller was the recipient of the 2020 CRA-E Undergraduate Research Faculty Mentoring Award, which recognizes individual faculty members who have provided exceptional mentorship, undergraduate research experiences and, in parallel, guidance on admission and matriculation of these students to research-focused graduate programs in computing.CRA-E is currently accepting nominations for the ...

  6. BS

    In addition, the display in the Gates lobby shows a collection of both undergraduate and graduate research projects year-round. 500 level seminars. All of the CS 500 level courses are topic seminars. For instance, CS 547 Seminar focuses on Human-Computer Interaction topics. Each week, a different speaker comes in and presents their research.

  7. Undergraduate Research

    Undergraduate Research at Purdue CS. Current Undergraduate Research Opportunities. The Department of Computer Science, as well as Purdue University as a whole, has multiple research faculty engaging in research for a variety of areas both within the field of computer science and beyond.

  8. Research Opportunities

    Research is an exciting, and sometimes challenging, process of discovering something completely new and communicating the discovery to others. For a research result to be meaningful, it must be shared for others to apply or build upon. Research involves many aspects: investigating prior work, experimenting, inventing, reasoning (proofs ...

  9. Computer Science

    Computer science deals with the theory and practice of algorithms, from idealized mathematical procedures to the computer systems deployed by major tech companies to answer billions of user requests per day. ... Our research covers a wide range of topics of this fast-evolving field, advancing how machines learn, predict, and control, while also ...

  10. SCS Undergraduate Research

    Independent Study and Honors Undergraduate Research Thesis. SCS undergraduates generally participate in research projects in two ways: as independent study or as an honors undergraduate research thesis. (Often, in fact, the former leads to the latter.) You can start your research journey by exploring faculty research projects on the SCS ...

  11. Undergraduate Topics in Computer Science

    About this book series. 'Undergraduate Topics in Computer Science' (UTiCS) delivers high-quality instructional content for undergraduates studying in all areas of computing and information science. From core foundational and theoretical material to final-year topics and applications, UTiCS books take a fresh, concise, and modern approach and ...

  12. Undergraduate Research Opportunities

    Undergraduates can pursue independent study courses guided by faculty, participate in the summer research and/or the Identity in Computing Research programs, and graduate with a distinction in research. To stay tapped in and receive info about the latest Computer Science opportunities and events, add yourself to our Duke mailing list compsci ...

  13. Undergraduate Research

    Undergraduate Research. Many of our undergraduate students undertake research guided by a faculty member outside of coursework. This page gives a summary of how to go about finding an undergraduate research opportunity that is a good match for you. It was written in January 2020 by Don Porter, with suggestions from Diane Pozefsky, and most ...

  14. PDF Undergraduate Topics in Computer Science

    Undergraduate Topics in Computer Science (UTiCS) delivers high-quality instructional content for undergraduates studying in all areas of computing and information science. From core foundational and theoretical material to final-year topics and applications, UTiCS books take a fresh, concise, and

  15. Undergraduate Research

    Requirements for Independent Study in Computer Science: Student must be a declared Computer Science major. Student must have at least a 3.5 GPA. Student must have completed at least 50% of the Computer Science major courses. Find out more about undergraduate research at the Computer Science Department at New York University's Courant Institute.

  16. Research :: Harvard CS Concentration

    The CS Diversity Committee allows students to apply for conference funding in support of women and underrepresented minorities in Computer Science. The Office of Undergraduate Research and Fellowships offers funding for conferences. The URAF conference funding program supports Harvard College undergraduate students in presenting their original ...

  17. Undergraduate Research

    There are a variety of research opportunities for undergraduate students at the University of Michigan. In fact, about 150 undergraduate students conduct research on EECS faculty projects in a typical year; many of these are paid positions. Below you will find some of the research opportunities open to undergraduate students.

  18. Undergraduate Research Opportunities

    Have a Plan - Start Early: If you are considering a graduate degree, research experience and published papers are top admission considerations. Attend research group meetings: Many Computer Science research groups have regular meetings that are open to undergrads. Stopping in to evaluate your own interests, watch the research process in action ...

  19. CS Research Areas

    CS Research Areas. Artificial Intelligence (AI) Computer Architecture & Engineering (ARC) Biosystems & Computational Biology (BIO) Cyber-Physical Systems and Design Automation (CPSDA) Database Management Systems (DBMS) Education (EDUC) Graphics (GR) Human-Computer Interaction (HCI)

  20. Undergraduate Research Opportunities

    CS Job Portal is our department's employment opportunities with course assistant and undergraduate research positions. PURE (Promoting Undergraduate Research in Engineering) is a student-run research program connecting first-year and second-year students with graduate student mentors to jump-start their research careers. Summer Research

  21. Undergraduate Research

    Undergraduate Research. Getting involved in research can be the single most influential experience of your undergraduate career. It gives you the opportunity to intensively apply the skills and knowledge you have acquired, and be a part of the process that generates new ideas and technologies. We strongly encourage you to seek opportunities to ...

  22. Undergraduate Research

    Students completing undergraduate research have been admitted to graduate school in computer science at some of the most well respected departments, including: Cornell, Princeton, University of Washington, University of Massachusetts, University of Virginia, University of California Berkeley, University of Maryland, and University of Texas.

  23. Bachelor's Programs

    B.S. in Computer Science. Carnegie Mellon's undergraduate major in computer science combines a solid core of computer science courses with the ability to gain substantial depth in another area through a required minor in a second subject. The curriculum also gives you numerous choices for science and humanities courses.

  24. Universities Have a Computer-Science Problem

    The case for teaching coders to speak French. Updated at 5:37 p.m. ET on March 22, 2024. Last year, 18 percent of Stanford University seniors graduated with a degree in computer science, more than ...

  25. Where To Earn A Ph.D. In Computer Science Online In 2024

    Students enrolled in the online Ph.D. in computer science choose their research topic and method, picking between quantitative, qualitative and constructive research. Learners also complete ...