The following research project topics are available to Master’s students. If you are interested in any of these projects, please contact the professors listed below.

 


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

Building scalable blockchain fabric: a new era of democratic and decentralized computation

Faculty Member

Mohammad Sadoghi

Description

Professor Mohammad Sadoghi is leading a team to pioneer a new exploratory data platform—referred to as ExpoDB Blockchain Fabric—a distributed ledger that unifies secure transactional and real-time analytical processing, all centered around a democratic and decentralized computational model. We perceive ExpoDB Fabric as a platform to foster “creativity”. We have many exciting projects ranging from novel applications to core systems topics; for example, rethinking classical consensus and agreement protocols, reimagining blockchain as middleware for bringing reliability to unreliable or insecure infrastructure, and envisioning blockchain as an abstraction layer to run emerging software paradigms such as Serverless, Function-as-a-Service (FaaS), and microservice architectures. The students will have the opportunity to collaborate with senior team members on their selected projects.

Requirements

  • C/C++ programming experience
  • Experience with database systems or blockchain fabrics
  • Familiarity with computer networking and distributed systems
  • Familiarity with Linux operating systems
  • Basic familiarity with version control (Git)

Computational geometry for piecewise linear functions in optimization

Faculty Member

Matthias Koeppe

Description

Piecewise linear functions of several variables are a fundamental structure of optimization and data science. I am looking for Master’s students who are interested in a project to implement efficient geometric data structures for storing and querying piecewise linear functions. The goal is an open source library for Python or Julia. The immediate application is in cutting planes for integer programming, but no prior experience with this topic is necessary.

Requirements

  • Strong programming skills in Python and Cython, or in Julia
  • Experience with data structures, computational geometry, or optimization

Deep learning for relating high-dimensional imaging and genomic data to the health of the human brain

Faculty Member

Gerald Quon

Description

The human brain is a highly complex organ. To better understand how the different regions of the brain function and change with age and disease, we have obtained high dimensional imaging and genomic measurements of cells across the brain.

We are looking for 1-2 master’s students interested in building deep neural nets to integrate imaging and genomic data, in order to predict how disease affects brain function and behavior and, more broadly, organization of the brain. No prior experience in biology or genomics is needed, but students will be spending a significant amount of time relating their findings to the biological literature and testing different feature extraction methods to interpret their neural networks.

Requirements

  • Continuing or admitted student in the graduate program in Computer Science

Gunrock, parallel graph analytics on GPUs

Faculty Member

John Owens

Description

John Owens’s 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

I am 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:

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

Requirements

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

Science of self-governing institutions through the analysis of large text corpora

Faculty Member

Seth Frey

Description

Computational social science is the development of computational techniques in pursuit of big picture societal questions. In this project, the big picture questions have to do with rules, norms, governance, and laws. What is the difference between a good or bad policy? How should a set of rules be different for a small versus a large population? How do culture and written rules interact? Using recent developments in NLP, we will develop a tool that parses large volumes of policy texts, from many domains, and then classifies them according to recent rule taxonomies and other institutional characteristics. This project can involve a flexible mix of engineering (developing and validating the tool) and science (testing competing theories of institutional change).

Requirements

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

Self-supervised deep learning models on video for personalized medicine

Faculty Member

Gerald Quon

Description

No biological/medical knowledge is required for this project. Professor Gerald Quon is looking for students interested in building and deploying deep neural nets to predict the success of in vitro fertilization experiments (IVF) from videos. The goals are to:

  1. build an accurate predictor of future fertilization success of an embryo, given a video sequence of the early development of an embryo
  2. extract which features of the videos are being leveraged for prediction.

Requirements

  • Continuing or admitted Master’s student in the graduate program in Computer Science
  • Strong programming skills in Python, and preferably TensorFlow

Wearable technologies and the concious use of unconcious behaviors

Faculty Member

Katia Vega

Description

Normally, while someone enacts an unconscious behaviour such as touching her hair or crossing her arms, unconsciously she is bringing comfort to herself and at the same time is emitting a non-verbal message decodable by an observer. However, when devices sense those behaviours, they could trigger other devices. The aim of this project is to create seamless devices that recognizes auto-contact behaviors concealed to outside observers. This project applies different fields such as sensors development, human-computer interaction, and machine learning algorithms in order to recognize a user’s intentions. An example of a past project, Hairware, is available on YouTube.

If you are interested in this project, please email Professor Katia Vega and include your CV/resume.

Requirements

  • Continuing or admitted student in the graduate program in Computer Science
  • Interests in machine learning, wearable technologies, and human-machine interfaces
  • Optional: Experience with Arduino, sensors, and tensor flow

AI in health research

Faculty Member

Chen-Nee Chuah

Description

I am recruiting students who are interested in the AI-in-Health domain. Please check out this recently funded project. This project is in collaboration with the UC Davis Medical Center, which involves analyzing new datasets (consisting of cardiac output, respiratory rate, and mechanical ventilation waveforms) and developing predictive models. For instance, different types of ventilation change the blood pressure and aortic flow waveforms during fluid boluses, and these waveforms can be used to predict responsiveness to larger fluid boluses. Students who are interested in this opportunity will be trained in health informatics and relevant physiological models. If you are interested in the program, please send an email to chuah@ucdavis.edu with the title [EPACC], along with your resume or CV.

Requirements

  • Experience with machine learning (supervised and unsupervised learning)
  • Experience with reinforcement learning
  • Experience with deep learning

Designing chatbot-based interactions for second language learning and cross-lingual conversation

Faculty Member

Hao-Chuan Wang

Description

In this master’s thesis project, students will investigate using today’s chatbot and speech user interface technologies as tools to support second language speakers’ language learning, especially in terms of the acquisition of skills of everyday conversations in a non-native language. The project will take a Human-Computer Interaction perspective, with a focus on employing state-of-art user research methods and interaction design techniques to understand what are the design principles and key factors to consider in designing successful chatbot-based interactions in the given scenarios. We’ll collaborate with natural language faculty to design and evaluate chatbot-based interactions.

Requirements

  • Continuing or admitted student in the graduate program in Computer Science

Gunrock, social conversational systems

Faculty Member

Zhou Yu

Description

Our team, Gunrock, just won the 2018 Amazon Alexa Prize to build social conversational systems. We won a $500,000 cash award by building the best social bot in the world. You can find more information on Amazon’s website.

We are looking for 2-3 first-year masters students to join our team next year. We would like to recruit students with really strong engineering skills. We are mostly looking for students with at least two years of industry experience. You will be able to join Professor Yu’s group to learn more about natural language processing, machine learning, and AI. You will be able to work collaboratively with other students to build state-of-the-art product-level AI systems.

If you are interested, please email Arbit Chen and Zhou Yu with your resume. Please put “Join Alexa Team” in the title.

Requirements

  • First-year master’s student in the Department of Computer Science
  • Strong engineering skills
  • At least two years of industry experience preferred

Interaction concept map visualization for remote collaborative knowledge transfer

Faculty Member

Hao-Chuan Wang

Description

Building shared understanding and knowledge among group members is known to be crucial to team collaboration. However, transferring knowledge from experts to novices often requires extensive co-located, face-to-face teamwork and tutoring. Remote teamwork that involves members distributed in different locations and times can result in poorer transfer of knowledge due to constraints in telecommunication. In this project, students will explore the system design space of interactive concept map visualization to allow distributed workers to see the domain concepts they possess, as well as compare and link their concepts to those of other people. We aim to improve the design of concept visualization so that the visualization is easy to learn and comprehend, and also allow people to build up shared knowledge through knowledge transfer.

Requirements

  • Continuing or admitted student in the graduate program in Computer Science

Predicting changes to the genome three-dimensional structure as a result of genetic variant

Faculty Member

Fereydoun Hormozdiari

Description

Advances in biotechnology have provided researchers with the means to directly study the 3D structure of the genome and its modifications. This information (which is usually represented as a square matrix) can provide detailed information, such as enhancer-promoter interactions and their contribution to gene expression. Recent studies have shown variations which cause disruption of these genome 3D structures can cause various diseases, such as cancer and developmental disorders. We have very recently developed a novel combinatorial method to predict the effect of deletions of the genome 3D structure and score these variations. As part of this project, we want to extend the proposed method to other types of genetic variants (e.g., duplications and inversions). We would utilize both combinatorial approaches and deep learning models for solving this problem. The objective of this project is thus very clear:

  1. Improving the prediction model proposed (potentially using deep learning approaches)
  2. Extend the model to predict contribution of additional types of genetic variants (e.g., duplication or inversions) on 3D genome structure
  3. Build an online application for others to easily run the method

If you are interested in this project, please email Dr. Fereydoun Hormozdiari and include your CV/resume.

Requirements

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

Predicting gene expression level from genomic sequence with deep learning

Faculty Member

Fereydoun Hormozdiari

Description

Predicting gene expression/activity level from sequencing data is an essential problem in biology. In mammalian cells, gene expression is controlled by various biological factors. Recent advances in deep learning have opened a new approach to predict these factors from the available sequencing data. For example, approaches have been developed to use a deep neural network (DNN) to predict enhancer activity data which then can be used to estimate the activity of enhancer and promoter. In another study, authors proposed to use DNNs to predict the three-dimensional structure of genome which can be used to extract the interactions contributing to gene expression activity. In addition, other studies also used DNN and CNN approaches to solve the gene expression prediction problem. Therefore, a natural question here is that if we can utilize these works to develop a novel model by integrating these DNNs to predict the actual gene expression level from the genomic sequence. The objective of this project is thus very clear:

  1. Make a survey of state-of-the-art methods proposed in the literature to address the gene expression prediction problem and understand the key technique of each method.
  2. Evaluate the performance of these methods in different data sets (e.g. different cell lines).
  3. Integrate these networks in a unique framework to improve the prediction performance.

If you are interested in this project, please email Dr. Fereydoun Hormozdiari and include your CV/resume.

Requirements

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