Matching Items (14)
Filtering by

Clear all filters

156331-Thumbnail Image.png
Description
Graph theory is a critical component of computer science and software engineering, with algorithms concerning graph traversal and comprehension powering much of the largest problems in both industry and research. Engineers and researchers often have an accurate view of their target graph, however they struggle to implement a correct, and

Graph theory is a critical component of computer science and software engineering, with algorithms concerning graph traversal and comprehension powering much of the largest problems in both industry and research. Engineers and researchers often have an accurate view of their target graph, however they struggle to implement a correct, and efficient, search over that graph.

To facilitate rapid, correct, efficient, and intuitive development of graph based solutions we propose a new programming language construct - the search statement. Given a supra-root node, a procedure which determines the children of a given parent node, and optional definitions of the fail-fast acceptance or rejection of a solution, the search statement can conduct a search over any graph or network. Structurally, this statement is modelled after the common switch statement and is put into a largely imperative/procedural context to allow for immediate and intuitive development by most programmers. The Go programming language has been used as a foundation and proof-of-concept of the search statement. A Go compiler is provided which implements this construct.
ContributorsHenderson, Christopher (Author) / Bansal, Ajay (Thesis advisor) / Lindquist, Timothy (Committee member) / Acuna, Ruben (Committee member) / Arizona State University (Publisher)
Created2018
157454-Thumbnail Image.png
Description
The Autonomous Vehicle (AV), also known as self-driving car, promises to be a game changer for the transportation industry. This technology is predicted to drastically reduce the number of traffic fatalities due to human error [21].

However, road driving at any reasonable speed involves some risks. Therefore, even with high-tech

The Autonomous Vehicle (AV), also known as self-driving car, promises to be a game changer for the transportation industry. This technology is predicted to drastically reduce the number of traffic fatalities due to human error [21].

However, road driving at any reasonable speed involves some risks. Therefore, even with high-tech AV algorithms and sophisticated sensors, there may be unavoidable crashes due to imperfection of the AV systems, or unexpected encounters with wildlife, children and pedestrians. Whenever there is a risk involved, there is the need for an ethical decision to be made [33].

While ethical and moral decision-making in humans has long been studied by experts, the advent of artificial intelligence (AI) also calls for machine ethics. To study the different moral and ethical decisions made by humans, experts may use the Trolley Problem [34], which is a scenario where one must pull a switch near a trolley track to redirect the trolley to kill one person on the track or do nothing, which will result in the deaths of five people. While it is important to take into account the input of members of a society and perform studies to understand how humans crash during unavoidable accidents to help program moral and ethical decision-making into self-driving cars, using the classical trolley problem is not ideal, as it is unrealistic and does not represent moral situations that people face in the real world.

This work seeks to increase the realism of the classical trolley problem for use in studies on moral and ethical decision-making by simulating realistic driving conditions in an immersive virtual environment with unavoidable crash scenarios, to investigate how drivers crash during these scenarios. Chapter 1 gives an in-depth background into autonomous vehicles and relevant ethical and moral problems; Chapter 2 describes current state-of-the-art online tools and simulators that were developed to study moral decision-making during unavoidable crashes. Chapters 3 focuses on building the simulator and the design of the crash scenarios. Chapter 4 describes human subjects experiments that were conducted with the simulator and their results, and Chapter 5 provides conclusions and avenues for future work.
ContributorsKankam, Immanuella (Author) / Berman, Spring (Thesis advisor) / Johnson, Kathryn (Committee member) / Yong, Sze Zheng (Committee member) / Arizona State University (Publisher)
Created2019
133194-Thumbnail Image.png
Description
Even in the largest public university in the country, computer related degrees such as Computer Science, Computer Systems Engineering and Software Engineering have low enrollment rates and high dropout rates. This is interesting because the careers that require these degrees are marketed as the highest paying and most powerful. The

Even in the largest public university in the country, computer related degrees such as Computer Science, Computer Systems Engineering and Software Engineering have low enrollment rates and high dropout rates. This is interesting because the careers that require these degrees are marketed as the highest paying and most powerful. The goal of this project was to find out what the students of Arizona State University (ASU) thought about these majors and why they did or did not pick them. A total of 206 students were surveyed from a variety of sources including upper level classes, lower level classes and Barrett, the Honors College. Survey questions asked why the students picked their current major, if they had a previous major and why did they switch, and if the students had considered one of the three computer related degrees. Almost all questions were open ended, meaning the students did not have multiple choice answers and instead could write as short or as long of a response as needed. Responses were grouped based on a set of initial hypotheses and any emerging trends. These groups were displayed in several different bar graphs broken down by gender, grade level and category of student (stayed in a computer related degree, left one, joined one or picked a non-computer related degree). Trends included students of all grade levels picking their major because they were passionate or interested in the subject. This may suggest that college students are set in their path and will not switch majors easily. Students also reported seeing computer related degrees as too difficult and intimidating. However, given the low (when compared to all of ASU) number of students surveyed, the conclusions and trends given cannot be representative of ASU as a whole. Rather, they are just representative of this sample population. Further work on this study, if time permitted, would be to try to survey more students and question some of the trends established to find more specific answers.
ContributorsMeza, Edward L (Author) / Meuth, Ryan (Thesis director) / Miller, Phillip (Committee member) / Computer Science and Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2018-12
135246-Thumbnail Image.png
Description
The areas of cloud computing and web services have grown rapidly in recent years, resulting in software that is more interconnected and and widely used than ever before. As a result of this proliferation, there needs to be a way to assess the quality of these web services in order

The areas of cloud computing and web services have grown rapidly in recent years, resulting in software that is more interconnected and and widely used than ever before. As a result of this proliferation, there needs to be a way to assess the quality of these web services in order to ensure their reliability and accuracy. This project explores different ways in which services can be tested and evaluated through the design of various testing techniques and their implementations in a web application, which can be used by students or developers to test their web services.
ContributorsHilliker, Mark Paul (Author) / Chen, Yinong (Thesis director) / Nakamura, Mutsumi (Committee member) / Computer Science and Engineering Program (Contributor) / School of Mathematical and Statistical Sciences (Contributor) / Barrett, The Honors College (Contributor)
Created2016-05
133334-Thumbnail Image.png
Description
Engineering an object means engineering the process that creates the object. Today, software can make the task of tracking these processes robust and straightforward. When engineering requirements are strict and strenuous, software custom-built for such processes can prove essential. The work for this project was developing ICDB, an inventory control

Engineering an object means engineering the process that creates the object. Today, software can make the task of tracking these processes robust and straightforward. When engineering requirements are strict and strenuous, software custom-built for such processes can prove essential. The work for this project was developing ICDB, an inventory control and build management system created for spacecraft engineers at ASU to record each step of their engineering processes. In-house development means ICDB is more precisely designed around its users' functionality and cost requirements than most off-the-shelf commercial offerings. By placing a complex relational database behind an intuitive web application, ICDB enables organizations and their users to create and store parts libraries, assembly designs, purchasing and location records for inventory items, and more.
ContributorsNoss, Karl Friederich (Author) / Davulcu, Hasan (Thesis director) / Rios, Ken (Committee member) / Computer Science and Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2018-05
134066-Thumbnail Image.png
Description
For those interested in the field of robotics, there are not many options to get your hands on a physical robot without paying a steep price. This is why the folks at BCN3D Technologies decided to design a fully open-source 3D-printable robotic arm. Their goal was to reduce the barrier

For those interested in the field of robotics, there are not many options to get your hands on a physical robot without paying a steep price. This is why the folks at BCN3D Technologies decided to design a fully open-source 3D-printable robotic arm. Their goal was to reduce the barrier to entry for the field of robotics and make it exponentially more accessible for people around the world. For our honors thesis, we chose to take the design from BCN3D and attempt to build their robot, to see how accessible the design truly is. Although their designs were not perfect and we were forced to make some adjustments to the 3D files, overall the work put forth by the people at BCN3D was extremely useful in successfully building a robotic arm that is programmed with ease.
ContributorsCohn, Riley (Co-author) / Petty, Charles (Co-author) / Ben Amor, Hani (Thesis director) / Yong, Sze Zheng (Committee member) / Computer Science and Engineering Program (Contributor) / Mechanical and Aerospace Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2017-12
134797-Thumbnail Image.png
Description
With the progression of different industries moving away from employing secretaries for business professionals and professors, there exists a void in the area of personal assistance. This problem has existing solutions readily available to replace this service, i.e. secretary or personal assistant, tend to range from expensive and useful to

With the progression of different industries moving away from employing secretaries for business professionals and professors, there exists a void in the area of personal assistance. This problem has existing solutions readily available to replace this service, i.e. secretary or personal assistant, tend to range from expensive and useful to inexpensive and not efficient. This leaves a low cost niche into the market of a virtual office assistant or manager to display messages and to help direct people in obtaining contact information. The development of a low cost solution revolves around the software needed to solve the various problems an accessible and user friendly Virtual Interface in which the owner of the Virtual Office Manager/Assistant can communicate to colleagues who are at standby outside of the owner's office and vice versa. This interface will be allowing the owner to describe the status pertaining to their absence or any other message sent to the interface. For example, the status of the owner's work commute can be described with a simple "Running Late" phrase or a message like "Busy come back in 10 minutes". In addition, any individual with an interest to these entries will have the opportunity to respond back because the device will provide contact information. When idle, the device will show supplemental information such as the owner's calendar and name. The scope of this will be the development and testing of solutions to achieve these goals.
ContributorsOffenberger, Spencer Eliot (Author) / Kozicki, Michael (Thesis director) / Goryll, Michael (Committee member) / Electrical Engineering Program (Contributor) / Computer Science and Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2016-12
161223-Thumbnail Image.jpg
Description

User interface development on iOS is in a major transitionary state as Apple introduces a declarative and interactive framework called SwiftUI. SwiftUI’s success depends on how well it integrates its new tooling for novice developers. This paper will demonstrate and discuss where SwiftUI succeeds and fails at carving a new

User interface development on iOS is in a major transitionary state as Apple introduces a declarative and interactive framework called SwiftUI. SwiftUI’s success depends on how well it integrates its new tooling for novice developers. This paper will demonstrate and discuss where SwiftUI succeeds and fails at carving a new path for user interface development for new developers. This is done by comparisons against its existing imperative UI framework UIKit as well as elaborating on the background of SwiftUI and examples of how SwiftUI works to help developers. The paper will also discuss what exactly led to SwiftUI and how it is currently faring on Apple's latest operating systems. SwiftUI is a framework growing and evolving to serve the needs of 5 very different platforms with code that claims to be simpler to write and easier to deploy. The world of UI programming in iOS has been dominated by a Storyboard canvas for years, but SwiftUI claims to link this graphic-first development process with the code programmers are used to by keeping them side by side in constant sync. This bold move requires interactive programming capable of recompilation on the fly. As this paper will discuss, SwiftUI has garnered a community of developers giving it the main property it needs to succeed: a component library.

ContributorsGilchrist, Ethan (Author) / Bansal, Ajay (Thesis director) / Balasooriya, Janaka (Committee member) / Barrett, The Honors College (Contributor) / Computer Science and Engineering Program (Contributor)
Created2021-12
131472-Thumbnail Image.png
Description
Despite efforts to recruit and retain female engineering students, only about 21.3% of bachelor’s degrees each year in engineering and computer science are awarded to women. The purpose of this synthesis is to understand the ways in which current research has explored how self-identity, engineering identity, and sense of belonging

Despite efforts to recruit and retain female engineering students, only about 21.3% of bachelor’s degrees each year in engineering and computer science are awarded to women. The purpose of this synthesis is to understand the ways in which current research has explored how self-identity, engineering identity, and sense of belonging influence undergraduate women’s persistence. Analysis is focused around 4 themes that emerged: (1) Sense of Self: Self-Efficacy, Expectancy Value Theory; (2) Culture of Engineering: Engineering Identity; (3) Stereotype Threat; (4) Interdisciplinary Studies to Expand the Culture of Engineering. Conclusions of this synthesis may be used as opportunities for future engagement with these topics.
ContributorsTapia, Kayla (Author) / Ganesh, Tirupalavanam (Thesis director) / Velez, Jennifer (Committee member) / Computer Science and Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2020-05
132414-Thumbnail Image.png
Description
A common design of multi-agent robotic systems requires a centralized master node, which coordinates the actions of all the agents. The multi-agent system designed in this project enables coordination between the robots and reduces the dependence on a single node in the system. This design change reduces the complexity of

A common design of multi-agent robotic systems requires a centralized master node, which coordinates the actions of all the agents. The multi-agent system designed in this project enables coordination between the robots and reduces the dependence on a single node in the system. This design change reduces the complexity of the central node, and makes the system more adaptable to changes in its topology. The final goal of this project was to have a group of robots collaboratively claim positions in pre-defined formations, and navigate to the position using pose data transmitted by a localization server.
Planning coordination between robots in a multi-agent system requires each robot to know the position of the other robots. To address this, the localization server tracked visual fiducial markers attached to the robots and relayed their pose to every robot at a rate of 20Hz using the MQTT communication protocol. The robots used this data to inform a potential fields path planning algorithm and navigate to their target position.
This project was unable to address all of the challenges facing true distributed multi-agent coordination and needed to make concessions in order to meet deadlines. Further research would focus on shoring up these deficiencies and developing a more robust system.
ContributorsThibeault, Quinn (Author) / Meuth, Ryan (Thesis director) / Chen, Yinong (Committee member) / Computer Science and Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2019-05