Pioneer scholars researching computer science explore the nature of algorithms and their applications. Using tools such as modeling, machine learning, coding languages, and other technology-based methods, Pioneer scholars either seek solutions to meaningful problems or explore the algorithms themselves to deepen our knowledge of these valuable tools. Whether applying machine learning to medicine, modeling land-use inequalities, using AI to improve customer service, or exploring possible applications of existing algorithms, Pioneer scholars contribute original, authentic research to the field of computer science.
Practical Applications to Solve a Problem
Many Pioneer scholars in computer science design algorithms with practical applications to solve meaningful problems. Ranjani (India, computer science, 2021), lost a beloved family member to Parkinson’s Disease and was moved to find a way to diagnose neurodegenerative diseases earlier and more effectively. “I was motivated to use my knowledge in computer science to develop a method to detect such diseases that is easier and less expensive,” she says. Ranjani used computer modeling to test novel methods of detecting subtle movements in the human hand, which can reveal important medical information. “Our hands reveal important information such as the pulsing of our veins which help us determine the blood pressure, tremors indicative of motor control, or neurodegenerative disorders such as Essential Tremor or Parkinson’s Disease. [My research] is a novel method that uses Eulerian Video Magnification, Skeletonization, heat mapping, and the kNN machine learning model to detect the micro-motions in the human hand, synthesize their waveforms, and classify these,” she explains.
Amehja (United States, computer science, 2021), also used computer science to tackle an issue in the medical field. After hearing about professional burnout among radiologists, Amehja was inspired to use machine learning to remove some of their workload. Specifically, Amehja’s research seeks to use computer learning to help radiologists identify hairline fractures. Amehja found an image of a hairline fracture and used that as the data to input into her algorithm. Using Python, she was able to manipulate this data and learn more about it. “The way we are looking at it, an image itself can be considered a type of data structure, so the data in an image can be stored in a type of data structure called an array. You can take the data in that array and multiply, manipulate and iterate over it, and that all plays into the manipulation of the image itself,” she explains. The ultimate goal of her research is to create an algorithm that will be able to identify hairline fractures, aiding radiologists.
Computer science can also be used to better understand social issues by organizing data in a comprehensible way. Serena (United States, computer science, 2021), was inspired by her own experience as an Asian-American to explore how computer science can be used to understand systemic inequality. More specifically, she sought to quantify the differences between land allocated to Native Americans in California and the surrounding, non-tribal lands. Serena pulled data from government websites and used Mathematica to develop a model that would allow her to visualize key differences between the pieces of land. “The big question of my research was ‘how do Native American lands in California differ from non-tribal lands?’ I approached that question by looking at three factors: environmental, economic, and social. I used different data sets to map the data of different conditions, and then I compared them,” Serena explains.
Another aspect of computer science is machine learning algorithms to create artificial intelligence (AI). Vienna (United States, computer science, 2021), used machine learning to improve human-AI interactions, addressing problems with AI customer service interfaces. Vienna observed that while customer service AI can understand the content of a message, its inability to recognize human emotions limits its effectiveness. “My research topic is on exploring deep learning approaches for facial emotion recognition, specifically using computer vision techniques. By detecting subtle micro- and macro- expressions, the convolution neural network is able to classify a range of emotions…I also considered real-world applications of emotion recognition; specifically, I explored the field of human-machine interaction and connected my findings to improving user interface and customer service,” she explains. Using video and images of human facial expressions, Vienna designed an algorithm that could use machine learning to allow AI to pick up on human emotions.
Deepening our understanding of existing algorithms
Whereas some Pioneer scholars start with a problem and seek out algorithms to solve it, others use the algorithms themselves as a starting point. Students use various methods to increase knowledge about existing algorithms; they may apply them to datasets with different qualities and compare their efficacy, or translate them into different programming languages. The information gained from this exploratory work is vital to future research, as it gives indications as to which algorithms are best suited to which types of research questions.
A survey paper is a contribution to academia that helps future scholars narrow their research. Kynnedy (United States, computer science, 2020 and 2021), chose to write a survey paper testing several existing algorithms rather than explore a specific practical question. “I specifically did a survey paper as opposed to an exploratory paper, because in the data analytics field, survey papers are something that are consistently done each year, because there are tons of new algorithms,” she explains. “Everyone in my cohort used a minimum of three machine learning algorithms and a minimum of one data set to explore a particular topic. I decided to use four algorithms and two data sets. One data set was about cancer, and the other was customer segmentation. I used some supervised and unsupervised learning algorithms to analyze which algorithms are the best to use on smaller data sets.” In testing the effectiveness of each algorithm on different data sets, she was able to determine the strengths and weaknesses of each. This provides valuable information for future researchers deciding which algorithm is the best fit for a specific data set.
Scholars may learn about an existing algorithm by testing it in different programming languages. Areeb (Pakistan, computer science, 2020), sought to learn more about Booth’s algorithm by implementing its code into the programming languages Rust and Orca. “At Pioneer, our professor gave us some guidelines to do the research, like exploring and creating an algorithm and discussing its limitations, and discussing algorithms that are different in terms of their complexity and runtime. We then had to compare them to give a reasonable conclusion. So my sole source for the research was the digital library that Pioneer gave us access to, which had a ton of resources,” he explains. Areeb worked with Booth’s algorithm, which is a multiplication algorithm for computers that uses the binary numbers 0 and 1. It results in computers doing more effective multiplication and can be used in computer architecture. While Rust is a more traditional programming language for this purpose, akin to Python or Java, Orca is typically used to code music for synthesizers. By implementing the code of Booth’s algorithm in this unconventional method and comparing it to other algorithms that perform similar functions, Areeb obtained a deeper understanding of how it might be used to design computer architecture.
Other papers serve as a “proof of concept” by showing the potential for an algorithm to solve a particular problem. Taimur (Pakistan, computer science, 2021), showed how algorithms might be used to optimize the transmission of encrypted messages. “My paper tackled the problem of finding maximal codes; that is, the code of given length and minimal distance with the largest number of codewords. I proposed an optimization known as ‘simulated annealing’ to find values for these maximal code sizes,” he explains. While he did not attempt to find a direct solution to the issue of maximal codes, his research serves as a valuable stepping stone to future research by exploring the potential of simulated annealing to address this topic. In a sense, I didn’t actually solve the problem, per se–it was more of a proof of concept. I showed that it was possible to apply this algorithm to the problem,” he explains.
Whether designing algorithms to solve problems and answer research questions or exploring the function and properties of existing algorithms, Pioneer scholars expand current global academic knowledge of computer science by contributing their original research.