Open undergraduate research projects
Interested students should send resumes directly to the faculty advisor of the project.
Project & Advisor | Description & Skills |
---|---|
Accelerating biological systems simulation with high-performance heterogeneous computing platforms (CPU, GPU, FPGA) Radu Marculescu radum@cmu.edu |
Open for: Senior, IMB |
Analyzing Internet Video Performance Bottlenecks Vyas Sekar vsekar@andrew.cmu.edu |
Skills: C/C++ + scripting languages. 441/345 would be great or at least 213 Internet video today constitutes a significant fraction of internet traffic today. However, there are a significant number of quality issues that user face today and there is a lot of "fingerpointing" across ISPs and content providers; e.g., recent spats between Netflix and Comcast/Verizon etc. The goal of this project will be to develop systematic measurement techniques to diagnose video quality bottlenecks and bandwidth properties to inform the next generation of video bitrate adaptation techniques. If successful we can even have pilot deployments as part of a testbed being developed by the Federal Communications Commission! |
Building the Neural Web (a 10,000 Electrode EEG): hardware and algorithms (two separate projects) Advisor: Pulkit Grover |
Open for: Sophomore, Junior, Senior, IMB Skills: circuits OR hardware-software interface OR signal processing With Shawn Kelly, Jeff Weldon, an exciting BrainHUB funded project. We seek to redefine what is possible with these noninvasive brain sensors. |
Create Computer Security Curriculum for High School Students Advisor: |
Open for: Sophomore, Junior, Senior, IMB Skills: At least 15-213. Experience with CTFs (e.g. picoCTF) helpful. Additional security classes desirable. Create security problems and curriculum for middle and high school students. |
Data Mining for Social Networks Radu Marculescu radum@cmu.edu |
Open for: Senior, IMB |
Design and Implementation of an Ultrasonic Phased Array https://users.ece.cmu.edu/~mchamanz/ Advisor: |
Open for: Junior, Senior, IMB Skills: Basic knowledge in circuits. Familiar with electronic characterization tools such as function generators and Oscilloscopes. This project involves the design and implementation of a circuit using off-the-shelf components for realizing a 16-channel electronic drive circuitry for an ultrasonic phased array. The application will be in the stimulation of the brain for suppressing Epileptic Seizures. |
Designing and Evaluating Energy-Efficient Main Memory https://ece.cmu.edu/~saugatag/ Advisor: |
Open for: Sophomore, Junior, Senior, Masters DRAM-based main memory is used in nearly all computers today, but its FPGA programming and Verilog/RTL design, computer architecture "Understanding Latency Variation in Modern DRAM Chips: Experimental Characterization, Analysis, and Optimization", SIGMETRICS 2016. |
Designing Human Embedded Systems Radu Marculescu radum@cmu.edu |
Open for: Junior, Senior, IMB
|
Developing Advisor: Maysam Chamanzar mchamanz@andrew.cmu.edu |
Open for: Sophomore, Junior, Senior, Skills: basic knowledge in circuits, MATLAB/Python, Labview, exposure to optics is a plus The research involves theory and experiment of optical, electrical, and ultrasonic modalities to monitor the activity of neurons. |
Evaluating and Enabling Processing inside Memory https://ece.cmu.edu/~saugatag/ Advisor: |
Open for: Sophomore, Junior, Senior, Masters Almost all data-intensive workload are bottlenecked in terms of performance and energy by the extensive data movement between processor and memory. We are looking for an enthusiastic student who is hungry for learning and enabling a paradigm shift that can eliminate this data movement bottleneck: computation inside memory (i.e., inside where the data resides). You will be involved in a project that aims to evaluate the benefits of executing data-intensive applications inside specialized logic in memory and developing both mechanisms and simulators for this purpose. You need to have outstanding programming skills (C/C++), computer architecture background, an interest in developing and evaluating new ideas, and strong work ethic. For example studies you may perform, please see: "Ambit: In-Memory Accelerator for Bulk Bitwise Operations Using Commodity DRAM Technology", MICRO 2017. "Accelerating Pointer Chasing in 3D-Stacked Memory: Challenges, Mechanisms, Evaluation", ICCD 2016. "LazyPIM: An Efficient Cache Coherence Mechanism for Processing-in-Memory", CAL 2016. "A Scalable Processing-in-Memory Accelerator for Parallel Graph Processing", ISCA 2015. "PIM-Enabled Instructions: A Low-Overhead, Locality-Aware Processing-in-Memory Architecture", ISCA 2015. |
Experiments for Neurostimulation: An Exercise in Circuits and Systems Advisor: Pulkit Grover |
|
Multimodal Brain Stimulation using Optogenetics and Ultrasound www.https://users.ece.cmu.edu/~mchamanz/ Advisor: |
Open for: Junior, Senior, IMB Skills: Basic knowledge of physics, EM, and circuits. MATLAB and Labview would be helpful to know. Experimental demonstration of |
Navigating the Main Memory Landscape with Fast and Novel Infrastructures https://ece.cmu.edu/~saugatag/ Advisor: |
Open for: Sophomore, Junior, Senior, Masters Memory is the major performance, energy and reliability bottleneck of all data-intensive workloads, e.g., graph processing, machine learning using large data sets, data analytics, databases, genome analysis. The landscape of main memory is quickly changing with any technologies appearing and being proposed. This includes 3D-stacked memory designs that are capable of processing in memory, new non-volatile memory technologies that are poised to replace DRAM, and many new types of DRAM architectures. The impact of such new technologies on systems and applications need to be quickly evaluated and understood, with rigorous evaluation infrastructures. Our group develops and openly makes available such infrastructures. A prominent example is infrastructure for simulating DRAM architectures: https://github.com/CMU-SAFARI/ramulator This infrastructure is widely used in both academia and industry (e.g., by Google, Apple, AMD, Samsung).
Your task in this project is to first understand improve and extend it. Some extensions include support for the new technologies mentioned above (processing in memory, non-volatile memory, hybrid memories, new DRAM architectures). You will also evaluate the impact of such technologies on real workloads. You need to have outstanding programming skills (C/C++), computer architecture background, an interest in developing and evaluating new ideas, and strong work ethic.
For example studies you may perform, please see: " "ChargeCache: Reducing DRAM Latency by Exploiting Row Access Locality", HPCA 2016. "Low-Cost Inter-Linked Subarrays (LISA): Enabling Fast Inter-Subarray Data Movement in DRAM", HPCA 2016. |
Next Generation 3D printers https://users.ece.cmu.edu/~mchamanz/ Advisor: Maysam Chamanzar |
Open for: Junior, Senior, IMB Skills: Basic knowledge Experimental and |
Positioning for a Wire-Free EEG hat Advisor: Swarun Kumar swarun@cmu.edu |
Open Skills: C/C++, Matlab This project aims to build a positioning system for a wearable EEG hat. Today's EEG systems require doctors to know where electrodes (sensors) are located on the head before gathering any data. This results in long delays before the test is administered and restricts EEG to clinical environments. Our goal is to create a positioning system where a handheld device can be used to track EEG electrodes on the hat with mm-precision. We will be developing a handheld positioning system that achieves accuracy far beyond traditional indoor positioning systems that operate at tens of cm-accuracy. In doing so, we aim to develop the building blocks for a wearable EEG hat that users can walk around with, as opposed to waiting for long hours in a doctor's office. Students will be working with RFID-based platforms and programming them with C/C++ and writing Matlab code to process signals. |
Advisor: Maysam Chamanzar mchamanz@andrew.cmu.edu |
Open for: Sophomore, Junior, Senior, Skills: basic knowledge in circuits, MATLAB/Python, Labview |
Reconfigurable datacenters Advisor: Vyas Sekar |
Open Skills: C/C++, Java, 18-213 required Conventional static datacenter (DC) network designs offer extreme cost vs. performance tradeoffs. Inspired by recent results in wireless, optical, and free-space optics technologies, we want to explore a datacenter-scale network solution that pushes network design to the extreme by creating a fully reconfigurable |
Reimagining Virtual Memory https://ece.cmu.edu/~saugatag/ Advisor: |
Open for: Sophomore, Junior, Senior, Masters Virtual memory is a critical abstraction in today's computer systems, |
Seamless Cross-Technology Communication for the Internet of Things Advisor: Swarun Kumar swarun@cmu.edu |
Open For: Sophomore, Junior, Senior, IMB Skills: C++/MATLAB Programming Background The Internet of Things (IoT) is seeing rampant growth with the simultaneous deployment of multiple wireless technologies by multiple vendors. Yet, many IoT applications require interaction and end-to-end communication between devices on independent networks. For instance, your home automation system operating on ZigBee might have to talk to your smartwatch which is Bluetooth enabled. G Generally, inter-technology communication is achieved using gateway devices which translate between protocols. Yet, in doing so, these introduce latency and need frequent upgrades to accommodate every new protocol developed. This project aims to build a cross-technology communication system that seamlessly translates between wireless technologies with minimal overhead. |
Secure API usage check via source-level type transformation Advisor: |
Open for: Junior, Senior, IMB Skills: Good knowledge of Python, Experience with C. This project aims to bridge the gap between high-level applied cryptography protocol specification and source-code level protocol enforcement via an annotation system that drives C program rewriting. The annotations specify program requirements on data flow and the rewriting encodes these constraints into a type system that overlays the C type system. Type-checking of the resulting program guarantees enforcement of the high-level security properties. Currently, the project is aiming to move forward on two fronts. |
Signal Processing for Neurostimulation Advisor: |
Open for: Junior, Senior, IMB Skills: Matlab, C++, signal processing, ma Strong signal processing background needed |
Simulating and Programming Highly Integrated Multicore Systems and System-On-Chip Advisor: |
Open for: Senior, IMB This project looks into ways of implementing parallel applications on multiprocessor systems-on-chip where communication happens via a network-on-chip. |
Source localization for curing epilepsy Advisor: Pulkit Grover |
Open for: Sophomore, Junior, Senior, IMB Skills: signal processing, mathematics, MATLAB programming With Mark Richardson, a wonderful neurosurgeon at Pitt. A signal processing project with a strong mathematics background requirement. Will involve optimization and programming, with data-analysis of neural data recorded by Mark on his patients. |
Spectrum Sharing Among Wireless Systems Jon Peha peha@cmu.edu |
Open for: Junior, Senior, IMB According to conventional wisdom, we currently suffer from a terrible shortage of spectrum. This limits our ability to introduce new wireless products and services such as ubiquitous broadband Internet access, limits our ability to make current systems like cellular telephony more common and less expensive, limits our ability to increase the data rates and ranges of existing products like wifi, and even limits our ability to provide firefighters, police, and paramedics with the communications systems they need to keep us safe. Solving this problem will force the world to re-think how it has managed spectrum and prevented interference for over 80 years. In actuality, if one measures spectrum utilization (as CMU students have), it appears that much of the spectrum sits idle at any given time. One reason is that we often prevent interference between systems by giving each system exclusive access to a block of spectrum. Thus, whenever such a system is not transmitting, spectrum sits idle. In this project, we seek new methods that allow disparate wireless systems to share spectrum without causing excessive harmful interference to their neighbors. One current example of technology that operates in shared spectrum is Wi-Fi, but this is just one technical approach, operating under one particular spectrum policy. There are many alternatives. Our goal is use spectrum sharing to increase the amount of communications that can take place in a given amount of spectrum by orders of magnitude, which would lead to a revolution in wireless products and services. For example, can a cellular operator carry some of its traffic in spectrum that is shared with other systems? Is it possible to let a new system share spectrum with radar or television or satellite links without causing harmful interference to the existing system? We will consider new approaches, and examine their effectiveness (or ineffectiveness). |
Virtual Coaches and Applications Advisors:Asim Smailagic / Dan Siewiorek asim@cs.cmu.edu / dps@cs.cmu.edu |
Open for: Junior, Senior, IMB |
Watchdog Timer Effectiveness Philip Koopman koopman@cmu.edu |
Open for: Junior, Senior, IMB |
Wearable sensor platform for user state and activity recognition Advisors:Dan Siewiorek / Asim Smailagic dps@cs.cmu.edu / asim@cs.cmu.edu |
Open for: Junior, Senior, IMB |
Wireless backend for the Advisors: Vyas Sekar vsekar@andrew.cmu.edu Swarun Kumar swarun@cmu.edu |
Open Skills: C/C++, Java, 18-213 required There has been quite a bit of buzz about the Oculus VR headset. The more powerful version of the Oculus needs a tethered backend to a high-end desktop for running real-time processing and graphics rendering. This tether however seriously hinders the user experience and can be an impediment to a range of potential applications. The goal of this project will be to design and implement a “wireless backend” for the Oculus. Note that this is a different kind of wireless link compared to traditional WiFi/wireless -- we need a point to point link with very high bandwidth and very low latency. The latency requirement is especially tight as there can be potential health and user experience implications (e.g., nausea) if the latency is high. |
Wireless Navigation of Robots Advisor: Swarun Kumar swarun@cmu.edu |
Open Skills: C/C++, Matlab Autonomous navigation -- whether for robots or cars, suffers a critical challenge -- vehicles cannot detect objects in |
Wireless Networks for Connected Vehicles Advisor: |
Open for: Junior, Senior, IMB Skills: Programming experience required, preferably with C++. Knowledge of wireless networking helpful, although not necessarily required. New technology has emerged that can create a wireless mesh communications network to connect moving cars. The resulting communications network can be used for everything from sending safety-critical warnings that prevent car accidents to streaming movies to viewers in the back seats of cars. In this project, we are examining technical characteristics of vehicular networks, such as achievable throughput, as well as the economic and policy issues of vehicular networks. This includes determining whether vehicular networks could be a new way of providing Internet access to mobile users that
|
Wireless Power and Data Telemetry for a Retinal Prosthesis for the Blind Advisor: |
Open for: Junior, Senior, IMB Development of inductive coupling systems and circuits for wireless power and data transmission to medical devices, specifically for a retinal prosthesis to restore sight to the blind. |