You're never too young to do research!
The professors of Ying Wu College of Computing are always looking for students to help them with their research.
Don't worry about "not being ready" for research. We have a 9th grade high school student taking part in Social Media research.
Don't even worry if you are not sure what "doing research" means.
You will learn it -- by doing it.
You need one more thing: A good work attitude. Be on time for meetings, reply to email messages of your professor, tell your professor if you run into problems (including private problems) or if you don't understand your assignments, do what your professors assigns you, and make a little progress every week.
Why do research?
We professors do research because it is fun. Hopefully, you will also feel the fun and excitement of doing something new that nobody has ever done before.
Even more important, you can put your research on your resume. You can talk about it at job interviews and impress your interviewer, and it will prepare you for jobs where you are expected to do research. That widens the range of possible jobs you can take.
Academic Credit or Payment?
Projects can be done for payment (if funding is available) or for academic credit.
Contact the supervisor for more details and the timeline.
Academic credit can be obtained by enrolling in one of the following courses:
CS 488 or IS 488 (Independent study for Undergraduates)
CS 725 or IS 725 (Graduate Research 1)
CS 726 or IS 726 (Graduate Research 2)
CS 700B or IS 700B (MS Project - 3 hours)
CS 701B or IS 701B (MS Thesis - 6 hours)
Supervisor: Michael Bieber
Description: Students may be motivated to deeper learning if they play an active role in all parts of the problem life-cycle. The framework for this research project relies on students to make up the problems, solve them, grade solutions and dispute their grades - all with the support of an online system allowing them to read everything their peers have done. Subjects for researching include: Will this work for homework, labs, projects, quizzes, final exams? Will it work for essays, science labs, math problems, computer programs? What about anonymity and group work? What would it take for students and instructors to trust this approach? Projects could design experiments for these aspects, or design new features such as group support and gaming features.
Supervisor: James Calvin and Craig Gotsman
Description: Many applications in computer science and engineering require the solution of an opti- mization problem, namely the minimization of some cost function, which would imply that the solution to the problem is the best possible. Examples include:
In constructing artificial neural networks, it is desirable to choose a set of weights to minimize training error.
In image registration, the goal is to align images (for example medical images taken of the same body area at different times) while minimizing a misalignment cost.
In data clustering, the goal is to partition data points into groups that are similar.
The goal is to find the global minimum of the cost function. Unfortunately, most cost functions have multiple local minima, and standard optimization algorithms are capable of finding only a local minimum of the cost, which may be quite worse than the global minimum. This project addresses the important problem of finding a global minimum of a continuous cost function by a suitable software algorithm.
The approach we propose to compute a global minimum is based on “searching” for the global minimum in the function domain by adaptively subdividing the domain, narrowing down the region of the domain where the global minimum is to be found. Thus, the subdivision becomes finer where the cost function is smallest. The figure on the right below depicts a subdivision into triangles for the cost function depicted on the left. A different subdivision scheme could be based on rectangles and recursive partitioning.
The cost of refining the subdivisions can grow rapidly with the dimension of the do- main. The purpose of this project is to develop efficient data structures and algorithms for subdivision refinement, and explore their use in optimization algorithms. The project will also investigate the application of the algorithms to different computing problems, possibly the ones listed above. The project will involve sophisticated software development in an object-oriented language.
Prerequisites: Experience in programming, basic knowledge in data structures and algorithms at the level of CS435.
Supervisor: Iulian Neamtiu
Description: Users are increasingly relying on smartphones, hence concerns such as mobile app security, privacy, and correctness have become increasingly pressing. Prof. Neamtiu’s group is working on filling this gap through tools that permit a wide range of software analysis for the Android smartphone platform, e.g., static analysis, dynamic analysis, record-and-replay or network traffic profiling. Our tools aim to analyze substantial, widely-popular apps (e.g., Yelp, Facebook) running directly on smartphones, and without requiring access to the app's source code. Our results include finding bugs in popular apps, high-fidelity record-and-replay, exposing risky URLs, self-healing apps, etc.
Prerequisites: Experience with Android or iOS development AND strong programing skills.
Supervisors: Yehoshua Perl, James Geller and Christopher Ochs
Description: Biomedical ontologies are large and complex knowledge representation systems. We have developed a software system called the Ontology Abstraction Framework (OAF) to create, visualize, and explore summaries of ontologies called abstraction networks. In our research ewe use abstraction networks to support comprehension of ontology structure, ontology quality assurance, and ontology change analysis. The OAF is composed of several modules, each of which enables the summarization of a different aspect of an ontology's structure. In a current project we are extending the OAF to support "Live Abstraction Networks," which summarize an ontology as a user is editing it.
Prerequisites: Students interested in working on the OAF project should have experience designing and developing software projects in Java. Experience with Swing, threads, JSON APIs, and Lambda are recommended. A strong background in CS theory, with a thorough understanding of trees and graphs, is required. Experience with Java IDEs, debuggers, profilers, and Git are a plus.
Analysis, Exploration and Visualization of Big Data for Traffic Congestion and Traveling Behavior Prediction
Supervisor: Hai Phan
Description: The long-term effects of traffic congestion may cost the U.S. government and American taxpayers hundreds of billions of dollars annually. Emissions of gases from billions of gallons of fuel lost in gridlock cause global warming and environmental degradation. Long commutes are associated with lower fitness levels, higher weight, and higher blood pressure, all of which are strong predictors of heart disease, diabetes, and different types of cancer. To slow or even reverse the trend of growing gridlock, accurately predicting traffic congestion and traveling behavior is desirable. It leads to more effective investment decisions for transportation improvements, which affect safety, environmental quality, economic development, quality of life, and lower health risks. This project aims at developing innovative solutions using cutting-edge technologies such as Internet of Things (IoT) and deep learning to analyze, explore, and visualize big data for traffic congestion and traveling behavior prediction. This project takes an integrated approach to (1) modeling and representing dynamic traffic flow over time; (2) contextually predicting traffic congestion; (3) modeling and forecasting traffic influence networks (TINs), in which traffic conditions in one location may affect traffic conditions in other locations; (4) predicting traveling behavior, including changes in routes and departing time, in both long and short terms and (5) querying and visualizing large-scale urban transportation data.
Prerequisites: Strong in Python and have a background about data mining, machine learning. Students will have opportunities to work with cutting edge-technologies such as big data and deep learning in urban data science. Students are expected to implement and deploy practical tools to predict and visualize traffic congestion and human behavior in traveling.
Supervisor: Hai Phan
Description: Today, the remarkable development of deep learning in medicine and healthcare domains presents obvious privacy issues, when deep neural networks are built based on patients' personal and highly sensitive data, e.g., clinical records, user profiles, biomedical images, etc. To convince individuals to allow that their data be included in deep learning projects, principled and rigorous privacy guarantees must be provided. However, no deep learning techniques have yet been developed that incorporate privacy protection against model attacks, in which adversaries can use released deep learning models to infer sensitive information from the data. In clinical trials, such lack of protection and efficacy may put patient data at high risk and expose health care providers to legal action based on HIPAA/HITECH law. This project will develop a mechanism, called "DeepPrivate," for privacy preservation in deep learning under model attacks. The PIs' mechanism will offer strong privacy protections for data used in deep learning. To put the DeepPrivate framework to work, fundamental challenges in differential privacy preservation in deep learning under model attacks need to be synergistically overcome. Consequently, this project will advance the state-of-the-art in key questions: (1) The framework design to preserve differential privacy in various types of deep neural networks; (2) The utility maximization of the models; (3) The potential model attacks in deep neural networks under differential privacy; (4) The information disclosure prevention approaches ; and (5) The multiparty computation protocols in deep learning under model attacks.
Prerequisites: Strong in Python and have a background about data mining and machine learning. Students will have opportunities to work with cutting edge-technologies such as deep learning and security and privacy in data science. Students are expected to implement and deploy practical tools in security and privacy in deep learning.
Supervisor: Qiang Tang
Description: Blockchain based applications. Some decentralized applications based on blockchain infrastructure. For example, block chain based logic system, blockchain based storage system, or blockchain based anonymous e-commerce platform.
Prerequisites: Programming proficiency, and ability to learn new technology quickly. Some knowledge about cryptography and bitcoin / blockchain technology is a plus.
Supervisor: Jason Wang
Description: The goal of NetExplorer is to develop a suite of algorithms, tools and web servers for inferring biological, social and transport networks using graph mining algorithms. Specifically, we design, develop, and implement new software for (1) reconstructing networks using a data cleaning approach; (2) inferring networks using deep learning; (3) predicting missing links integrated, heterogeneous networks; and (4) reverse engineering networks using Big Data technologies such as Apache Spark and Hadoop in the cloud.
Prerequisites: The student is expected to collect and clean data. Depending on the student's background and expertise, the student will either implement his/her own algorithms or use existing tools to mine the data for network inference. Knowledge of data science languages such as Python, Java, R, Matlab, Hadoop or Spark is recommended, but not required.
Write-and-Learn: Promoting Meaningful Learning Through Concept Map-Based Formative Feedback On Writing Assignments
Supervisor: Brook (Yi-Fang) Wu
Description: The primary goal of meaningful learning is to deliver course content in innovative ways that allow students to learn and then apply. As a pedagogical strategy, Writing-to-Learn activities use writing to improve students; understanding of course content. We are developing an enhanced "Write-and-Learn" framework to generate automated formative feedback through comparing the concept maps constructed from teaching materials and students' writing assignments. Our work aims to (1) evaluate how effective the automated formative feedback is on the acquisition and development of conceptual knowledge, and (2) explore how such formative feedback can be utilized to scaffold and promote meaningful learning. We are developing Write-and-Learn system to generate automated formative feedback by taking advantage of the concept maps constructed from instructors' lecture notes and individual students' writing assignments to improve students' meaningful learning of conceptual knowledge in WTL activities. We are looking for students to participate in the design, development, maintenance, and evaluation of the research prototype, as well as the design and execution of the research studies in all facets of the project.