Available Research Projects

Available Research Projects

 

  • Modeling Bird Wings

  • Faculty Member
    Michael Neff (in collaboration with Christina Harvey, MAE)

    Description
    The goal of this work is to develop a generalized model of the skeleton structure of bird wings that can be adapted to represent a broad range of bird species from albatrosses to hummingbirds.  Such a model can be used to generate bird animations and also support research on bird physiology and bio-inspired aircraft design.  The challenge is to adjust the skeleton based on real bird data to alter the bone length and rotation range of the joints in order to match the morphology and range of motion of different species.  The project should also create a visualization of the skeletons. This work will be completed in consultation with an animator who has worked on numerous blockbuster movies.

    This work can be scoped as either a project or dissertation.

    Requirements
    - Mathematical maturity
    - Ability to work independently
    - Programming skills (C++ is desirable, but other languages are possible)

    - Experience with computer graphics and/or animation is desirable

    How to Apply: Please email a brief statement of interest, a description of any relevant experience and your transcript to mpneff@ucdavis.edu and cc harvey@ucdavis.edu.

  • Real-time robust surgical instrument segmentation using computer vision and deep learning techniques

  • Faculty Member
    Laura Marcu

    Description
    The Marcu lab in the Department of Biomedical Engineering (https://marculab.bme.ucdavis.edu/) is looking for a highly motivated graduate student (MSc.) with an interest in machine vision to develop real-time surgical instrument segmentation using deep learning techniques. Our lab develops fluorescence lifetime-based imaging instruments and software for intraoperative cancer detection and visualization. Detection and tracking of surgical instruments are prerequisites for proper visualization and potential robotic assisted interventions. Deep learning-based algorithm has been developed but need to be improved for robustness and repackaged to C++ to enable reliable real-time segmentation.

    Requirements
    A strong background in computer science and advanced programming skills (Python and C++) are required. The student will work closely with the postdoctoral researchers in the lab to improve existing algorithm and convert it from python to C++ for real-time medical instrument segmentation for intraoperative use.

    Related publication can be found at: https://opg.optica.org/boe/fulltext.cfm?uri=boe-11-9-5166&id=437418.

    How to Apply:
    Qualified candidates can apply by sending their CV and a short statement of research interests to Prof. Laura Marcu (lmarcu@ucdavis.edu) and cc Dr. Xiangnan Zhou (xnzhou@ucdavis.edu).

  • GPU-accelerated Block Matching Algorithm for motion correction of medical images

  • Faculty Member
    Laura Marcu

    Description
    The Marcu lab in the Department of Biomedical Engineering at UC Davis (https://marculab.bme.ucdavis.edu/) is looking for a highly motivated graduate student (MSc.) with an interest in image processing to develop GPU-accelerated motion correction algorithm for real time motion correction of medical images. Our lab develops imaging instrumentations and software for intraoperative cancer detection and visualization. Motion correction based on block matching has been developed but need to be refactored to enable GPU-accelerated computation.

    Requirements
    A strong background in computer science and advanced programming skills (MATLAB and C++) are required. The student will work closely with the postdoctoral researchers in the lab to refactor existing code to enable GPU-accelerated motion correction.

    Related publication can be found at: https://opg.optica.org/boe/fulltext.cfm?uri=boe-11-9-5166&id=437418.

    How to Apply: Qualified candidates can apply by sending their CV and a short statement of research interests to Prof. Laura Marcu (lmarcu@ucdavis.edu) and cc Dr. Xiangnan Zhou (xnzhou@ucdavis.edu).

  • EthikOS, on supporting Deontological Computing

  • Faculty Member
    Felix Wu

    Description
    The current AI/ML technology development, such as Transformer/GPT, is intrinsically following the concept of Utilitarianism. Under this project, we are exploring another avenue regarding how to design a new computational paradigm based on Deontology, following three categorical imperatives under the ethics theory by Immanuel Kant.

    Requirements
    Must be familiar with at least one programming language and JSON. Knowledge of network protocols will help in the ILOT (Internet-Less of Things) sub-project under EthikOS. Interest in Social and Humanity sciences is very desirable.

    How to Apply:
    If interested, please contact Prof. Felix Wu at sfwu@ucdavis.edu.

  • LLNL Code Structure Project

  • Description
    LLNL is looking for a CS Masters student looking for an MS project. The project entails constructing the code structure and working through challenging implementation of a method for particle trajectories and surface impact in a challenging high flow gradient and high aspect ratio mesh.  Required is a C++ code structure that supports CPU parallelization, and optional GPU parallelization.  The student will be working in a team environment.  The project PI is senior scientist, Dr. Kambiz Salari. Dr. Salari has developed the particle trajectory methodology that is currently utilized in a Mathematica code. The student will have some mentoring from a mid-career computer scientist that has initiated the C++ code structure and CS/math experts that support solvers and algorithm libraries for application in the C++ code.  In addition, we have a UCD AME PhD Student employee (advisor is Prof. Seongkyu Lee) who is working with Dr. Salari to perform the code V&V alongside the proposed CS MS student doing code development and parallel scaling performance studies. CS effort includes version control and documentation of implementation, user manual, and installation guide. US citizenship is required for this project.

    Requirements
    - Interest in scientific computing
    - Strong C++ skills
    - Some experience in parallel computing and performance testing
    - Some experience in version control
    - Good verbal communication and writing skills

    How to Apply: If interested, please send an email to Rose Mccallen mccallen1@llnl.gov with your CV.

  • Scientific software development for DNA nanotechnology

  • Faculty Member
    David Doty

    Description
    The project will involve:

     1. scientific software development, for instance on scadnano (https://github.com/UC-Davis-molecular-computing/scadnano#readme) for structural DNA nanotech design, and nuad (https://github.com/UC-Davis-molecular-computing/nuad#readme) for DNA sequence design.

     2. (optional for MS project) Algorithmic and modeling research in support of DNA sequence design.

     3. (optional for MS project) Collaborations with partner institutions on wet-lab experiments in nucleic acid strand displacement and self-assembly to tune the modeling and design software.

    Requirements
    Background in computer science/computer engineering/software engineering (either through a formal degree, or experience with programming)

    How to apply:
    Contact David Doty at doty@ucdavis.edu and indicate your background with software development.

  • Graph Neural Network Modeling of Fintech Networks

  • Faculty Member
    Pantelis Loupos

    Description
    Graph Neural Networks (GNNs) is a new exciting deep neural network approach to perform analysis and inference on graphs. In this project, you will apply GNNs on fintech networks such as Venmo and other ERC-20 blockchain tokens. Potential research questions include but are not limited to: 1) detect fraudulent activity, 2) what makes a successful fintech network in terms of customer adoption, etc.

    Requirements
    - Strong Python skills
    - Willingness to learn Pytorch and Pytorch Geometric.

    How to Apply: Please email your resume at
    ploupos@ucdavis.edu with title “Application for Graph Neural Network Modeling of Fintech Networks MS Project”

  • Analysis and Visualization of Unstructured Climate Data

  • Faculty Member
    Paul Ullrich

    Description
    Professor Paul Ullrich is leading a team to develop tools for analysis and visualization of climate data, particularly global, unstructured climate datasets defined in spherical geometry. These tools are widely employed throughout the climate science community, including the U.S. Department of Energy, the National Oceanic and Atmospheric Administration, and National Center for Atmospheric Research. Interested students can work with Prof. Ullrich and his team to develop new visualization or analysis capabilities in C++ or Python. Our core software repositories for this project can be found at:
    https://github.com/SEATStandards/ncvis
    https://github.com/UXARRAY/uxarray

    Requirements
    - If interested in visualization of climate data, experience with C++
    - If interested in analysis of climate data, experience with Python
    - Familiarity with Linux operating systems
    - Basic familiarity with version control (Git)

    How to apply:
    If intersted, email Prof. Paul Ullrich (paullrich@ucdavis.edu)

  • Fairness in Machine Learning

  • Faculty Member
    Norm Matloff

    Description
    Development of ML algorithms for detection and mitigation of bias against protected groups.

    Requirements
    A deep, intuitive understanding of ML predictive methods. Merely knowing how to call functions in ML library is not enough. Background in analysis of real data helpful.

    How to apply: E-mail matloff@cs.ucdavis.edu.

  • Machine Learning Assisted Gamification for Education

  • Faculty Member
    Setareh Rafatirad

    Description
    This project aims at developing a machine learning assisted gamification framework to promote equity and inclusion in education.

    Requirements
    Applicants need to have experience with python programming and a basic machine learning experience.

    How to apply: Please contact Prof. Setareh Rafatirad srafatirad@ucdavis.edu and send your resume and transcript and the reason for choosing this research topic.

  • Python programming for physics modeling

  • Faculty Member
    Emilie Roncali

    Description
    The Roncali lab in the Department of Biomedical Engineering at UC Davis (https://roncalilab.engineering.ucdavis.edu/) is looking for a highly motivated graduate student (MSc.) with an interest in medical physics and AI programming. Our lab develops physics simulation and AI-based simulations (e.g. GANs), which need to be refactored in Python, specifically for GPU computing.

    Requirements
    A strong background in computer science and advanced programming skills (Python) are required. The candidate should be familiar with Matlab and C++. The student will work closely with the postdoctoral researchers in the lab to translate their code in Python, implementing good programming practice.

    Qualified candidates can apply by sending their CV and a short statement of research interests to Dr. Emilie Roncali (eroncali@ucdavis.edu).

  • Using Deep Neural Networks to develop in silico neuronal
    models

  • Faculty Member
    Roy Ben-Shalom

    Description
    The goal of this project is to predict the biophysical properties of a neuron based on its electrophysiological response to stimuli. We built a deep learning convolutional network to predict the free parameters of a neuron model given its voltage response to a set of stimuli. Trainees in this project will have the opportunity to interact with various stages of the machine learning process, from data generation, analysis to neural network training.

    For this project we are looking for students with an interest in machine learning, optimization, statistics and/or neuroscience with good programming skills to help us improve the algorithm, generate training data, and increase the accuracy of our models. https://www.biorxiv.org/content/10.1101/727974v1

    Requirements
    Background in DL and interest to learn neuroscience.

    To apply, please email rbenshalom@ucdavis.edu.

  • Video-based quantification of dexterous finger movement kinematics using computer vision and deep learning techniques

  • Faculty Member
    Wilsaan Joiner and Karen Moxon

    Description
    This project will apply computer vision and deep learning techniques to analyze the dexterous finger movements of nonhuman primates (rhesus macaque monkeys). The subjects are recorded while performing a task which involves retrieving food rewards from variously-oriented shallow wells (i.e., the Brinkman Board task). The MS student is expected to assist in streamlining the analysis of the videos and applying DeepLabCut, a deep learning toolset that allows for the markerless tracking of various locations across multiple video frames. The information obtained from movement tracking will then be used to quantify several features of finger movements (separation, extension and preshaping) in order to provide behavioral measures that are sensitive to injury (e.g., spinal cord contusion) and treatments. Importantly, this will provide critical information to evaluate the effectiveness of novel interventions for clinical conditions that affect the motor system.

    Requirements

    Applicants should have expertise in machine learning, deep learning and computer vision concepts, and ample experience with common programming languages such as C++, Python and Matlab.

    To apply, please email your CV and interest statement to: wmjoiner@ucdavis.edu

  • Portable Sensor System to Assess the Health Conditions of Individuals working Under Harsh Environments

  • Faculty Member
    Cristina Davis

    Description
    This project aims to design, prototype, and test an integrated sensor platform that will record physiological data (e.g., heart rate, oxygen saturation, physical activity levels, skin temperature, and galvanic skin response) of athletes and individuals who work in harsh environments. The envisioned lightweight device will consist of several commercially available sensors and a microcontroller for physiological data acquisition and integration. A standalone, portable, and small single-board computer (e.g., Raspberry Pi, or alternative) will complement the device for analyzing the extracted data based on prebuilt machine learning models. The system will report data by bluetooth to a WiFi connection hub.

    Requirements
    -The applicant from a computer science background should have a solid knowledge in data structures and algorithms
    -The applicant from a electrical engineering background should know microcontroller coding and circuit designs
    -Willingness to adapt to several programming languages
    -Team work may be required

    To apply, please email your CV and interest statement to:
    biomems.ucdavis@gmail.com.   

  • ResilientDB: Global Scale Resilient Blockchain Fabric

  • Faculty Member
    Mohammad Sadoghi

    Description
    Sadoghi’s research group focuses on all facets of building secure and massive-scale data management. We aim to pioneer a next-generation resilient data platform at scale, a distributed ledger centered around a democratic and decentralized computational model, named ResilientDB Blockchain Fabric

    At the heart of blockchain lies the problem of consensus, which is at the forefront of our research and development in ResilientDB. Currently, we are investigating many exciting directions such as speculative consensus, concurrent & parallel consensus, hardware-accelerated consensus (e.g., SGX or RDMA), view-change-less consensus, reconfigurable consensus, hybrid consensus (e.g., BFT + PoS + PoW), and a wide array sharding and cross-chain protocols. 

    To learn more, we invite you to review ResilientDB BlogWikiCodebaseHands-on TutorialPublications, and Roadmap. We are seeking creative students who aim to be independent thinkers with controversial ideas. Funding may be available for exceptional students upon demonstration of solid progress.

    Requirements
    -Strong C/C++ skills are a must
    -Experience with operating systems, distributed systems, database transactions, concurrency controls, multi-threaded programming, and synchronization would be terrific

    To join us at ExpoLab, please email your resume to Prof. Sadoghi, msadoghi@ucdavis.edu.

  • SSL-Pathology: Semi-supervised Learning in Pathology Detection of Alzheimer's Disease

  • Faculty Member
    Chen-Nee Chuah

    Description
    While supervised learning (SL) techniques such as convolutional neural networks achieve promising results in medical images, procuring a sufficiently large dataset with annotations is labor-intensive, especially in gigapixel pathology images. To circumvent the need for large labeled datasets, semi-supervised learning (SSL) can be a potential approach. Amyloid-beta plaques are hallmarks of Alzheimer's disease. A supervised detection model has been established to classify three types of plaques. However, it relies on more than 50,000 annotated images for training the model. In this project, we will adopt SSL to this problem and explore the upper bound of SSL to relieve the reliance on a large labeled dataset.

    Requirements
    Expertise in machine learning concepts, Docker, and Python programming inclusive of scikit-learn, Pandas, PyTorch/Tensorflow.

    If interested, please email your resume/CV to chuah@ucdavis.edu with [SSL] in the subject title.

  • CeDP:  Computational Efficiency of Deep Learning in Digital Pathology

  • Faculty Member
    Chen-Nee Chuah

    Description
    While supervised learning (SL) techniques such as convolutional neural networks achieve promising results in pathology images, the computational complexity is still significantly heavy due to the gigapixel resolution of pathology images. To make deep learning more practical in digital pathology, it is necessary to comprehensively study the tradeoff between performance and complexity. In this project, we will study how to deploy efficient deep learning models on edge devices for pathology image analysis and how to remove unnecessary computation in the recent state-of-the-art deep learning networks. We will also benchmark the complexity of different models on our pathology datasets.

    Requirements
    Expertise in machine learning concepts, Docker, and Python programming inclusive of scikit-learn, Pandas, PyTorch/Tensorflow.

    If interested, please email your resume/CV to chuah@ucdavis.edu with [CeDP] in the subject title.

  • Augmented Reality Quadcopter Game Control
  • Faculty Member
    Nelson Max

    Description
    Professor Nelson Max is leading a team to develop a quadcopter-based augmented reality video game, in which the players pilot quadcopters “first-person”, viewing an AR game environment through a head-mounted display. The team is seeking a student to continue development of the quadcopter control system using the Robot Operating System (ROS). The student will be responsible for improving the existing control algorithm and interfacing the control algorithm to the Unity game engine to coordinate the real and virtual game experiences. The student will collaborate with other team members responsible for game design and quadcopter localization.

    Requirements
    Required
    ♦   Python programming experience
    ♦   C++ programming experience
    ♦   Familiarity with Linux operating systems (Ubuntu)
    ♦   Basic familiarity with version control (Git)
    ♦   Strong skills in troubleshooting Linux software
    Preferred
    ♦   Familiarity with Robot Operating System (ROS)
    ♦   Familiarity with ArduPilot and/or PX4 autopilot firmware, MAVLink communication protocol
    ♦   Experience piloting consumer drones
    ♦   Basic familiarity with computer networking

  • Gunrock, Parallel Graph Analytics on GPUs
  • Faculty Member
    John Owens

    Description
    John Owens’ research group focuses on GPU computing and has a large project on parallel graph analytics called Gunrock. We have a large need for application development on Gunrock, writing interesting graph applications that use our framework (we have a long list of these from our funding agency). We would hope to train you in GPU computing and in using our framework. This could potentially lead to MS thesis opportunities but also could be a shorter project with an option of switching to another group if interested. We need talented students who can learn quickly and work independently. Funding may be available.

    Requirements
    ♦   Strong C/C++ skills are a must
    ♦   Experience with parallel computing would be terrific, but not required

  • Multiplayer Augmented Reality Quadcopter Game System
  • Faculty Member
    Nelson Max

    Description
    Dr. Max is looking for more master’s students to help with our multiplayer augmented reality quadcopter game system. The system includes for each game player a Solo 3DR quadcopter with a mounted GoPro 4 Black video camera, a computer with an NVIDIA GTX 1070 GPU, Oculus Rift VR goggles, Oculus Touch hand held controllers for flying the drone, and wireless communication links. Using markers in the environment, as seen by the video cameras, the computers determine the position of each quadcopter, and use the inertial sensors and quadcopter physics simulation to extrapolate to future frames to decrease VR latency. The games are written in Unity. The quadcopter positions are communicated to the master computer, and are used in the game physics calculations. The master computer receives the user control signals, and either sends them directly to the quadcopter, or modifies them according to the game physics and to avoid collisions. This centralized master server also contain the game logic, such as scoring.

    The video camera is fixed on the drone, with a wide angle lens so that the part of the image can be selected appropriate to the user head position and orientation. The computer graphics (CG) augmented elements are added in stereo onto the real video background, also accounting for the user head motion. Thus the game players feel as if they were looking through the windows of a real aircraft at the actual environment in which they are flying. We are using the Oculus Rift software development environment, which allows the video input and computer graphics elements to be supplied on separate layers, with different updates and motion extrapolation parameters. Using the known quadcopter positions, the images of the other quadcopters in the video background can be covered up with stereo CG models, so that they also appear in 3D.

    Our initial game was a pong-like paddleball game, with a paddle at each quadcopter, and a virtual ball, which we hope to replace with a third quadcopter. There are game displays showing top down and side views, either on the cockpit dashboard or in a heads-up display on its window, and sound effects when the ball is hit by the paddle, or hits the walls, floor, or ceiling of the game space. Our second game was a maze racing game, where two players start at opposite corners of a two-level maze like track, and attempt to overtake each other.

    We are now developing a shooting game, where each player has a gun to shoot opponents, and the controlling computer decides when an opponent has been hit, adding appropriate graphics like fire. The projectiles are shown in stereo CG. When a player’s quadcopter has been disabled, the computer will take control of its flight and bring it to a safe landing. We are also evolving the paddle-ball game into a 3D soccer game, with goal areas on two opposite walls, which will light up when there is a goal.

    Aspects of the system development which could lead to Master’s projects are:

    The computer vision system for Simultaneous Location and Mapping (SLAM)
    The control of the quadcopter, including anticipating and preventing collisions
    Creating new games, for example, 3D billiards

    Requirements
    ♦   Continuing or admitted Master’s student in the graduate program in Computer Science