Four students from the Department of Computer Science presented their research at the 16th ISU Symposium on Undergraduate Research and Creative Expression on April 20th at the Student Innovation Center.
The Symposium provides undergraduates from all academic disciplines with an opportunity to share their research with the university community and other guests through conference-style oral presentations. The Symposium represents part of a larger effort of Iowa State University to enhance, support, and celebrate undergraduate research activity.
Those who participated and the abstracts of their projects are listed below.
Huaiyao Ma
Mentor, Hridesh Rajan
Research abstract: New language features (NLFs) are continuously being added to Java to make common tasks easier and less verbose. The Java Language Specification currently has eighteen editions that have introduced more than thirty NLFs in total. In this research, we try to understand how GitHub-hosted open-source projects adopt new Java language features over time. Previous studies in this area are currently either outdated or limited to only a few specific language features. This lack of understanding can negatively impact Java developers, users, and researchers. For instance, Java is often criticized as verbose. But newer language features avoid such problems. Our research can help Java language designers know if these new features are being used in real development, and help inform future documentation and training efforts. The analysis of our work is implemented in Boa, a domain-specific language and infrastructure for mining and analyzing ultra-large-scale software repositories. Our study gives interesting insights, such as the majority of NLFs are largely overlooked in practice; there are millions of potential applications of NLFs but not. In the future, we can figure out how to educate developers to use NLFs effectively and reduce their programming errors.
Maxim Popov
Mentor, Ying Cai
Research abstract: The Intersection-tree (I-tree) is a promising technique for highly efficient processing of rank-aware queries, a broad category of queries which let users specify functions to score the records in a relation for applications such as data analysis. Given a set of scoring functions defined on domain D, I-tree computes and indexes the subdomains created by the intersections of these functions and sort the functions for each subdomain according to their scores. This feature makes it significantly more efficient than other techniques in processing various types of queries such as top-k and rank queries when compared head-to-head, as showed by extensive evaluation. The I-tree, unfortunately, is computation-intensive to construct. A set of n d-variable linear functions, each used to score one record, can create a total of O(n^2) intersections, which together can partition their domain into O(n^{2d}) subdomains. These subdomains are computed and indexed while the intersections are inserted one by one to the tree. A major computation incurred in this insertion process is feasibility checking, i.e., given a set of inequalities and an equation f(X)=0, determine whether there exist two distinct inputs X' and X" that satisfy all the inequalities, and f(X') < 0 and f(X") > 0. The current implementation applies the classic simplex algorithm to perform these checks. In this research, we first show that this process incurs a significant amount of unnecessary computation and it is not efficient, and then propose two approaches to minimize the cost. The first one is to reduce the complexity of feasibility checking itself, while the second reuse intermediate results for the next feasibility checking along the insertion path. We implement the proposed methods and evaluate their performance under various settings.
Ranai Srivastav
Mentor, Tichakorn Wongpiromsarn
Research abstract: In this talk, I will describe Duckietown, a city-modeling platform that comprises roads with 2 lanes, intersections, traffic lights, traffic signs, stationary pedestrians, and autonomy capable robots, called DuckieBots. Each Duckiebot is equipped with a camera, 2 wheels with encoders and a gyroscope. The platform is currently being set up at the Autonomous System Research group. I will describe how the platform can be leveraged to implement algorithms and experiment with scenarios to strengthen theoretical papers with experimental verification. In particular, I will describe the implementation of Minimum Violation Planning on this system to test it for a stationary obstacle and then for multiple agents implementing Minimum Violation Planning at the same time.
Jeremy Tracz
Mentor, James Lathrop
Research abstract: This project is part of a larger project to edit molecular DNA origami programs. These programs are small sequences of DNA material that combine with a large scaffold DNA strand to fold the scaffold into specific shapes. These shapes can then be used for various applications from drug delivery vehicles to molecular robots. While the molecular biology techniques are well-known, existing editing software does not utilize or take full advantage of a virtual interface. The overall goal of this project is to determine if virtual reality is helpful in designing and editing molecular programs of this nature, and if such a tool can be used in training and education of the workforce. A secondary goal is to provide new features in virtual reality that are not currently found or possible in non-
virtual reality editors. Molecular dynamics is difficult and often requires significant compute time to simulate each molecule. Programs such as CanDo can perform this function and generate data that could potentially allow these dynamics to be approximately simulated with less computing power. This research will explore and evaluate this possibility by creating a prototype module to read and process the information from CanDo, and then use this data to realize these dynamics in the molecular editor and virtual reality. Evaluation of the effectiveness of the module together with the software and documentation constitute the deliverable for this project.