Computer Science and Engineering
Home > Academics > Undergrad Research Opportunities > 2020-2021 SURE Research Projects in CSE

2020-2021 SURE Research Projects in CSE

This page lists summer research opportunities in CSE that are available through the SURE Program. To learn more or apply, visit:


  • Please carefully consider each of the following projects, listed below, before applying to the SURE Program.
  • You must indicate your top three project choices on your SURE application, in order of preference, using the associated CSE project number.
  • Questions regarding specific projects can be directed to the listed faculty mentor. 

Project descriptions

CSE Project #1: Natural Language Processing for Understanding Media Bias and Fake News
Faculty Mentor: Lu Wang [wangluxy @] 
Prerequisites: EECS 445 (Machine Learning), probability and statistics, experience with natural language processing problems, proficient in Python.
Description: News media play a vast role not just in supplying information, but in selecting, crafting, and biasing that information to achieve both nonpartisan and partisan goals. We aim to automate media bias detection from news articles, and quantify and further highlight biased content in order to promote the transparency of news production as well as enhance readers’ awareness of media bias. This project will explore and design natural language processing and machine learning algorithms to detect media bias. Specifically, we will work on developing information extraction systems, e.g., important entities and narrative structure will be extracted automatically from news articles. The developed tools will also be used for understanding fake news.
Expected research delivery mode: Hybrid

CSE Project #2: Computational Strategic Reasoning
Faculty Mentor: Michael Wellman [wellman @] 
Prerequisites: Programming ability; interest/background in finance, economics, game theory, and/or statistics (helpful though not required).
Description: The Strategic Reasoning Group ( develops computational tools to support reasoning about complex strategic environments. Recent applications include scenarios arising in finance and cyber-security. We employ techniques from agent-based modeling, game theory, and machine learning.
Expected research delivery mode: Too soon to say

CSE Project #3: Taming the Performance Bottlenecks of Modern Web Applications
Faculty Mentor: Baris Kasikci [barisk @] 
Prerequisites: EECS 482
Description: Modern data-center applications suffer significant slow-down due to large number instruction cache-misses. To reduce such cache-misses, recent studies have advocated the introduction of a new code prefetch instruction. While warehouse-scale processors do not support this feature yet, some mobile processors already support this code prefetch instruction. In this study, we will design a compiler backend to inject code prefetch instruction both statically and based on profile data in order to evaluate several data-center applications on mobile such processors.
Expected research delivery mode: Too soon to say

CSE Project #4: Web automation using program synthesis
Faculty Mentor: Xinyu Wang [xwangsd @] 
Prerequisites: EECS 485 or equivalent, and familiarity with HTML/DOM/JS
Description: Many computer end-users often need to perform tasks that involve the web, such as filling online forms, extracting data, which are repetitive and tedious in nature. On the other hand, there are existing programming languages that can be used to automate these tasks. However, writing web automation scripts is far beyond the capability of end-users who have very little programming background. In this project, we aim to help users automate web-related programming tasks using program synthesis.
Expected research delivery mode: Too soon to say

CSE Project #5: Interactive program synthesis
Faculty Mentor: Xinyu Wang [xwangsd @] 
Prerequisites: Familiarity with one programming language.
Description: Program synthesis aims to automatically generate programs from user intent expressed in some high-level format (such as input-output examples). It has found a lot of applications, for instance, in data science, software development, etc. While there has been a lot of algorithmic advancements in program synthesis techniques, it is still unclear what is the best way for synthesizers to interact with users. In this project, we will explore how to design interactive program synthesis algorithms as well as good user interfaces for these techniques.
Expected research delivery mode: Too soon to say

CSE Project #6: Superoptimization using program synthesis
Faculty Mentor: Xinyu Wang [xwangsd @] 
Prerequisites: Compilers, strong programming and engineering background.
Description: The goal of superoptimization is to automatically derive compiler optimizations. It automatically searches among a space of optimizations and apply those that can be applied for the input program. The advantage of superoptimization is that it can dramatically reduce human effort and at the same time potentially generate better optimizations. In this project, we will look at how to use program synthesis and program analysis to automatically derive better optimizations more efficiently, compared to prior superoptimization techniques.
Expected research delivery mode: Too soon to say

CSE Project #7: Censored Planet: A Global Observatory for Internet Censorship
Faculty Mentor: Roya Ensafi [ensafi @] 
Prerequisites: EECS 388 and EECS 482
Description: The Internet Freedom community’s understanding of the current state and global scope of censorship remains limited: most work to-date has focused on the practices of particular networks and countries, or on the reachability of small sets of online services and from a small number of volunteers. Creating a global, data-driven view of censorship is a challenging proposition, since censorship practices are intentionally opaque, and there are a host of mechanisms and locations where disruptions can occur. Moreover, the behavior of the network can vary depending on who is requesting content from which location.

Fall 2018, Prof. Ensafi launched a pilot of Censored Planet, an online observatory for Internet censorship that applies all of next-generation measurement techniques in order to rapidly, continuously, and globally track online censorship. Data from the pilot has already been used by dozens of organizations, and it has helped provide insight into important events like Saudi Arabia’s reaction to the death of Jamal Khashoggi, the proliferation of DPI-based censorship products, and recent HTTPS interception attacks sponsored by the government of Kazakhstan.

We seek to extend and fully operationalize Censored Planet and make data from next-generation remote censorship measurements more useful to the entire Internet Freedom community. We plan to mature the project from a pilot to a production system with significant improvements in performance, stability, usability, and code quality; implement an API and new “rapid focus” capabilities to agily respond to world events; and develop aggregation and analysis tools to automatically extract useful insights from that data. We will also cultivate a community of civil society organizations and tool developers to ensure the data best serves real-world needs.

By helping create a more complete picture of global censorship than ever before, Censored Planet will allow researchers and policymakers to closely monitor for deployment of censorship technologies, track policy changes in censoring nations, and better understand the targets of interference. Making opaque censorship practices more transparent at a global scale will help counter the proliferation of these growing restrictions to online freedom.
Expected research delivery mode: Remote

CSE Project #8: Supporting K-5 Children Learning While Using the Collabrify Roadmap Platform
Faculty Mentor: Elliot Soloway [soloway @] 
Prerequisites: Competency in Javascript, databases, interfaces.
Description: The Center for Digital Curricula in the College of Engineering provides deeply-digital curricula, standards-aligned to K-5 classrooms – free. During the fall 2020 semester, over 5,000 K-5 students are using the Center’s curricula on a daily basis. Students use the Collabrify Roadmap Platform to enact the digital curricula. Teachers and students request changes to the Platform; and researchers see opportunities to make the Platform still more effective. During the summer, then, the Center is seeking two ugrads to work on projects to implement the requested changes to the Platform. Join us in helping children to learn more effectively!
Expected research delivery mode: Hybrid

CSE Project #9: Computer Vision for Physical and Functional Understanding
Faculty Mentor: David Fouhey [fouhey @] 
Prerequisites: Good grades in EECS 442 OR EECS 445.
Description: The lab is broadly focused on building 3D representations of the world and understanding human/object interaction. Potential projects include learning about: navigating environments, object articulations, commonsense physical properties of objects, and hand grasps. Please look at: for a sense of what projects we’ve done in the past. We will find a specific project based on mutual interest and particular abilities (e.g., stronger systems programming abilities, experience with graphics, etc.). Students looking for a longer term project continuing during the school year are strongly encouraged to apply.
Expected research delivery mode: Too soon to say

CSE Project #10: Does Wealth Matter? Learning Generative Models with Prediction Markets
Faculty Mentor: Mithun Chakraborty and Sindhu Kutty [skutty @] 
Prerequisites: EECS 445 and STATS 412 (or equivalents) preferred.
Description: As recent events have highlighted, polling can be messy, misleading and prone to misinterpretation. Markets have the advantage over polls in having built-in financial incentives and timely responses, and have been empirically observed to outperform alternative forecasting tools such as polls. However, when traders have varying degrees of wealth, are markets egalitarian? Moreover, how precise are they and what factors impact their precision? We will answer these questions in the context of Prediction Markets by tying market prices to learning a generative model of the outcome space. We will also explore other connections between convergence in Machine Learning algorithms (especially Bayesian processes) and equilibria in these markets.

Prediction markets (e.g. Iowa Electronic Markets, PredictIt, etc.) are a type of financial market the purpose of which is to elicit the personal beliefs of traders about a future uncertain event and aggregate these beliefs into the market price. In this project, students will implement and execute a set of experiments on the interaction of a new prediction market design with simulated trading agents having diverse risk attitudes and help address the above research questions in different environments in a systematic manner. An understanding of connections to Machine Learning algorithms would be illustrative for gauging the accuracy, and hence reliability, of Prediction Markets and can, in turn, inform innovations in their design. The learning outcome for students will be hands-on experience in interdisciplinary research with connections to Machine Learning and Computational Economics.
Expected research delivery mode: Remote

CSE Project #11: Hazel Notebooks: Building a Better Jupyter
Faculty Mentor: Cyrus Omar [comar @] 
Prerequisites: EECS 490 or equivalent is preferred, but not required.
Description: The popular Jupyter lab notebook environment is powerful, but it has a problem: results stored in a notebook are not reproducible, because the user can execute cells out of order. In our group, we are developing a new live functional programming environment called Hazel ( Right now, Hazel does not support multiple program cells. This project will turn Hazel into a next-generation version of Jupyter by adding support for notebooks with multiple cells, with dependencies between them. We will solve the reproducibility problem by developing a mechanism conjectured in a recent paper in our group: fill-and-resume.
Expected research delivery mode: Too soon to say

CSE Project #12: Hazel: A Live Functional Programming Environment
Faculty Mentor: Cyrus Omar [comar @] 
Prerequisites: EECS 490 or equivalent is preferred, but not required.
Description: Hazel ( is a live functional programming environment that is able to typecheck, transform and even execute incomplete programs, i.e. programs with holes. There are a number of projects available within the Hazel project for a student interested in research into programming languages.
Expected research delivery mode: Too soon to say

CSE Project #13: Ubiquitous Health Sensing
Faculty Mentor: Alanson Sample [apsample @] 
Prerequisites: Experience with embedded systems, computer vision, or machine learning
Description: Effective means of unobtrusive and continuous monitoring of one’s health could transform how we detect and treat illnesses. This project aims to create a long-range health monitoring system that can passively measure an individual’s vital signs and daily activities from a distance of up to three meters. Building off of novel sensing techniques developed in the Interactive Sensing and Computing Lab, SURE students will work with faculty and graduate student mentors to create a fully working end-to-end system, utilizing embedded systems, computer vision, and machine learning.
Expected research delivery mode: Hybrid

CSE Project #14: The Internet of Everything: Bringing everyday objects into the digital world with RFID tags
Faculty Mentor: Alanson Sample [apsample @] 
Prerequisites: Strong programming skills.
Description: RFID tags are battery-free, paper-thin stickers that can communicate with RFID readers from +8 meters of distance. These tags offer a minimalistic means of instrumenting everyday objects. By monitoring changes in the low-level communication channel parameters between the tag and reader, it is possible to turn an RFID tag into an ultra-low-cost, battery-free sensor. Applications include in-home activity inferencing, interactive physical objects, and health and wellness monitoring.
Expected research delivery mode: Too soon to say

CSE Project #15: Computer Vision for Physical and Functional Understanding
Faculty Mentor: Alanson Sample [apsample @] 
Prerequisites: Preferred EECS 311 or EECS 373.
Description: This project encompasses a number of efforts at developing energy harvesting, battery free sensing systems that can be easily embedded into everyday objects and thus allowing for near perpetual operation. Topics include ambient energy harvesting techniques, platform architecture and power management, and debugging tools that deal with intermittent power.
Expected research delivery mode: Too soon to say

CSE Project #16: Adversarial Human-AI Interactions in the On-Demand Economy
Faculty Mentor: Nikola Banovic [nbanovic @] 
Prerequisites: Familiarity with programming (i.e., Python), interest in applied machine learning and human-computer interaction.
Description: AI has started to transform the nature of work in many sectors of the economy. One of the most tangible transformations has been in the on-demand economy, for services such as grocery delivery, ride-hailing, and other last-mile services, where its advances have allowed a shift towards greater efficiency, through the use of AI-mediated platforms. On-demand work, with its promises of flexibility, independence and entrepreneurship is also an attractive option for individuals seeking a low-barrier entry into employment and economic opportunities. However, several recent debates around the employment status of workers with services such as Uber, Lyft and Instacart have shined a light on the adversarial relationships between workers and platforms, and the negative effects of opaque algorithms on workers’ well-being. In this project, we seek to design computational methods to audit these opaque platforms to uncover sources of adversarial human-AI interactions that may be potentially harmful to on-demand workers. Our goal is to understand the design of algorithmic platforms that enhance worker well-being and their access to economic opportunities.
Expected research delivery mode: Remote

CSE Project #17: Novel Architectures to Compute with Graphs
Faculty Mentor: Valeria Bertacco [valeria @] 
Prerequisites: EECS 281, EECS 370. Recommended: C++, scripting.
Description: More and more applications rely on graphs as the underlying data structure: from social networks, to internet’s web connections, to geo maps, to ML algorithms and even consumers’ product preferences. The performance of these algorithms is often limited by the latency of accessing vertices in memory, whose access present poor spatial locality. The goal of this project is to boost the performance of graph-based algorithms by developing hardware and software solutions to this end: we plan to work on the data layout, on ad-hoc data structures and on designing dedicated hardware acceleration blocks. We hope to boost the performance of graph traversals by 3-5x.
Expected research delivery mode: Too soon to say

CSE Project #18: From High-Level Language to Hardware — Without the Hardware Design
Faculty Mentor: Valeria Bertacco [valeria @] 
Prerequisites: EECS 281. Recommended: C++, scripting.
Description: This project explores a new hardware design flow, where the starting point is an application specified in a domain-specific language (more specialized than C) like Halide or GraphIt, and the endpoint is a hardware system equipped with specialized hardware accelerators, so to execute the application much faster than it would be possible in software. To reach the endpoint, we will work on the back-end of the compiler, so to target the primitives available in the hardware accelerators.
Expected research delivery mode: Too soon to say

CSE Project #19: Computing on Encrypted Data
Faculty Mentor: Valeria Bertacco [valeria @] 
Prerequisites: EECS 280, EECS 370. Recommended: C++, scripting.
Description: In the age of big data, privacy is a key concern in sharing data. Unfortunately, the field of security is riddled with stories of security attacks…even to the most secure enclaves. The solution we want to investigate with this project uses encryption technology to encrypt data locally, transfer it to the cloud for any required computation, and receive encrypted results back. The enhanced cloud system performs the computation directly on the encrypted data without an access key — it never accesses the plaintext data nor can it decrypt the sensitive data. Only the end device, can decrypt the result and store it locally.
Expected research delivery mode: Too soon to say