Matching Items (22)

134079-Thumbnail Image.png

LEGv8 Runtime Simulator

Description

This project is a full integrated development environment implementing the LEGv8 assembly language standard, to be used in classroom settings. The LEGv8 assembly language is defined by the ARM edition

This project is a full integrated development environment implementing the LEGv8 assembly language standard, to be used in classroom settings. The LEGv8 assembly language is defined by the ARM edition of "Computer Organization and Design: The Hardware/Software Interface" by David A. Patterson and John L. Hennessy as a more approachable alternative to the full ARMv8 instruction set. The MIPS edition of that same book is used in the Computer Organization course at ASU. This class makes heavy use of the "MARS" MIPS simulator, which allows students to write and run their own MIPS assembly programs. Writing assembly language programs is a key component of the course, as assembly programs have many design difficulties as compared to a high-level language. This project is a fork of the MARS project. The interface and functionality remain largely the same aside from the change to supporting the LEGv8 syntax and instruction set. Faculty used to the MARS environment from teaching Computer Organization should only have to adjust to the new language standard, as the editor and environment will be familiar. The available instructions are basic arithmetic/logical operations, memory interaction, and flow control. Both floating-point and integer operations are supported, with limited support of conditional execution. Only branches can be conditionally executed, per LEGv8. Directives remain in the format supported by MARS, as documentation on ARM-style directives is both sparse and agreeable to this standard. The operating system functions supported by the MARS simulator also remain, as there is no generally standardized requirements for operating system interactions.

Contributors

Agent

Created

Date Created
  • 2017-12

134157-Thumbnail Image.png

Blockchain Design and Simulation

Description

This paper details the specification and implementation of a single-machine blockchain simulator. It also includes a brief introduction on the history & underlying concepts of blockchain, with explanations on features

This paper details the specification and implementation of a single-machine blockchain simulator. It also includes a brief introduction on the history & underlying concepts of blockchain, with explanations on features such as decentralization, openness, trustlessness, and consensus. The introduction features a brief overview of public interest and current implementations of blockchain before stating potential use cases for blockchain simulation software. The paper then gives a brief literature review of blockchain's role, both as a disruptive technology and a foundational technology. The literature review also addresses the potential and difficulties regarding the use of blockchain in Internet of Things (IoT) networks, and also describes the limitations of blockchain in general regarding computational intensity, storage capacity, and network architecture. Next, the paper gives the specification for a generic blockchain structure, with summaries on the behaviors and purposes of transactions, blocks, nodes, miners, public & private key cryptography, signature validation, and hashing. Finally, the author gives an overview of their specific implementation of the blockchain using C/C++ and OpenSSL. The overview includes a brief description of all the classes and data structures involved in the implementation, including their function and behavior. While the implementation meets the requirements set forward in the specification, the results are more qualitative and intuitive, as time constraints did not allow for quantitative measurements of the network simulation. The paper concludes by discussing potential applications for the simulator, and the possibility for future hardware implementations of blockchain.

Contributors

Agent

Created

Date Created
  • 2017-12

131260-Thumbnail Image.png

Machine Learning: A Sentiment Analysis of Customer Reviews

Description

Machine learning is the process of training a computer with algorithms to learn from data and make informed predictions. In a world where large amounts of data are constantly collected,

Machine learning is the process of training a computer with algorithms to learn from data and make informed predictions. In a world where large amounts of data are constantly collected, machine learning is an important tool to analyze this data to find patterns and learn useful information from it. Machine learning applications expand to numerous fields; however, I chose to focus on machine learning with a business perspective for this thesis, specifically e-commerce.

The e-commerce market utilizes information to target customers and drive business. More and more online services have become available, allowing consumers to make purchases and interact with an online system. For example, Amazon is one of the largest Internet-based retail companies. As people shop through this website, Amazon gathers huge amounts of data on its customers from personal information to shopping history to viewing history. After purchasing a product, the customer may leave reviews and give a rating based on their experience. Performing analytics on all of this data can provide insights into making more informed business and marketing decisions that can lead to business growth and also improve the customer experience.
For this thesis, I have trained binary classification models on a publicly available product review dataset from Amazon to predict whether a review has a positive or negative sentiment. The sentiment analysis process includes analyzing and encoding the human language, then extracting the sentiment from the resulting values. In the business world, sentiment analysis provides value by revealing insights into customer opinions and their behaviors. In this thesis, I will explain how to perform a sentiment analysis and analyze several different machine learning models. The algorithms for which I compared the results are KNN, Logistic Regression, Decision Trees, Random Forest, Naïve Bayes, Linear Support Vector Machines, and Support Vector Machines with an RBF kernel.

Contributors

Agent

Created

Date Created
  • 2020-05

133853-Thumbnail Image.png

Dining Hall Web Application

Description

For my thesis project, I have developed a cash register web application for the Arizona State University Barrett Dining Hall. I previously worked at the Barrett Dining Hall, and I

For my thesis project, I have developed a cash register web application for the Arizona State University Barrett Dining Hall. I previously worked at the Barrett Dining Hall, and I would occasionally step in as a cashier. This work is how I came to be familiar with the system and all its inefficiencies. The system requires multiple user inputs to implement even the most basic of tasks, is not user-friendly, and therefore very prone to error. In the event that multiple incorrect inputs are entered, the software will freeze, and the user will have to turn off the computer and turn it back on. In theory, this application is an improvement over the software system that is currently in place in that the user interface has been specifically designed to be user-friendly. This application reduces the number of required user inputs by automating certain tasks (such as pricing and determining the meal period), thereby reducing the chance of user error. It is also an improvement in that it allows students to log in to the system to view how many meals they have left, how much M&G is in their account, and how many guest passes they have left. This functionality is extremely important because this is a feature that is not currently in place, and is something that students have actively complained about. Currently, if students want to check on their meal plan, they have to either physically go to a dining hall and ask the cashier, or call a toll-free number. The two technologies used to develop this application are C# and XML. These technologies were chosen because I wanted to learn something new for this project to broaden my knowledge. I also happened to be taking a class at the start of this project that utilized C# and XML for Web Applications, and it seemed like the perfect opportunity to transfer over the skills I had been learning.

Contributors

Created

Date Created
  • 2018-05

135806-Thumbnail Image.png

How to Design, Build, and Run a Website: The Card Trick Quilters Website

Description

It is important for organizations and businesses to have some kind of online presence, as there are enormous benefits, including utilizing the power of web languages to provide services for

It is important for organizations and businesses to have some kind of online presence, as there are enormous benefits, including utilizing the power of web languages to provide services for people. However, creating a website is difficult, and often expensive. While successful businesses can use their profits to develop a costly website, organizations are not so lucky and can't afford to pay large amounts of money for theirs. Thus, the goal of this project was to provide a complete website to the Card Trick Quilters organization found in Show Low, Arizona. The website serves as both a learning experience, to see exactly what it takes to construct a website from the ground up, and a service project that will provide the Card Trick Quilters with a website that performs various services for its members, with functionality that is completely unique to the Arizona quilting community at large. The creation of the website required learning several different skills in regards to web design, such as databases, scripting languages, and even elements of graphic design. The uniqueness of the website comes from the creation of an online submission form for the annual quilt show hosted by the quilters, and an email reminder system where members of the community can submit their addresses and receive emails when there is an upcoming meeting. While there will no doubt be changes and improvements to the website in the future, the website is currently live and ready for the community to use.

Contributors

Created

Date Created
  • 2016-05

135251-Thumbnail Image.png

Approaches to Minimum d-Degree Arrangement

Description

Many systems in the world \u2014 such as cellular networks, the post service, or transportation pathways \u2014 can be modeled as networks or graphs. The practical applications of graph algorithms

Many systems in the world \u2014 such as cellular networks, the post service, or transportation pathways \u2014 can be modeled as networks or graphs. The practical applications of graph algorithms generally seek to achieve some goal while minimizing some cost such as money or distance. While the minimum linear arrangement (MLA) problem has been widely-studied amongst graph ordering and embedding problems, there have been no developments into versions of the problem involving degree higher than 2. An application of our problem can be seen in overlay networks in telecommunications. An overlay network is a virtual network that is built on top of another network. It is a logical network where the links between nodes represent the physical paths connecting the nodes in the underlying infrastructure. The underlying physical network may be incomplete, but as long as it is connected, we can build a complete overlay network on top of it. Since some nodes may be overloaded by traffic, we can reduce the strain on the overlay network by limiting the communication between nodes. Some edges, however, may have more importance than others so we must be careful about our selection of which nodes are allowed to communicate with each other. The balance of reducing the degree of the network while maximizing communication forms the basis of our d-degree minimum arrangement problem. In this thesis we will look at several approaches to solving the generalized d-degree minimum arrangement d-MA problem where we embed a graph onto a subgraph of a given degree. We first look into the requirements and challenges of solving the d-MA problem. We will then present a polynomial-time heuristic and compare its performance with the optimal solution derived from integer linear programming. We will show that a simple (d-1)-ary tree construction provides the optimal structure for uniform graphs with large requests sets. Finally, we will present experimental data gathered from running simulations on a variety of graphs to evaluate the efficiency of our heuristic and tree construction.

Contributors

Created

Date Created
  • 2016-05

135380-Thumbnail Image.png

Exploring Computational Thinking in 9-12 Education: Developing a Computer Science Curriculum for Bioscience High School

Description

Bioscience High School, a small magnet high school located in Downtown Phoenix and a STEAM (Science, Technology, Engineering, Arts, Math) focused school, has been pushing to establish a computer science

Bioscience High School, a small magnet high school located in Downtown Phoenix and a STEAM (Science, Technology, Engineering, Arts, Math) focused school, has been pushing to establish a computer science curriculum for all of their students from freshman to senior year. The school's Mision (Mission and Vision) is to: "..provide a rigorous, collaborative, and relevant academic program emphasizing an innovative, problem-based curriculum that develops literacy in the sciences, mathematics, and the arts, thus cultivating critical thinkers, creative problem-solvers, and compassionate citizens, who are able to thrive in our increasingly complex and technological communities." Computational thinking is an important part in developing a future problem solver Bioscience High School is looking to produce. Bioscience High School is unique in the fact that every student has a computer available for him or her to use. Therefore, it makes complete sense for the school to add computer science to their curriculum because one of the school's goals is to be able to utilize their resources to their full potential. However, the school's attempt at computer science integration falls short due to the lack of expertise amongst the math and science teachers. The lack of training and support has postponed the development of the program and they are desperately in need of someone with expertise in the field to help reboot the program. As a result, I've decided to create a course that is focused on teaching students the concepts of computational thinking and its application through Scratch and Arduino programming.

Contributors

Agent

Created

Date Created
  • 2016-05

135236-Thumbnail Image.png

Tenga: A Case Study on Building Web Applications

Description

Tenga is an e-commerce demo web application for students studying Distributed Software Development and Software Integration and Engineering at Arizona State University (ASU). The application, written in C#, aims to

Tenga is an e-commerce demo web application for students studying Distributed Software Development and Software Integration and Engineering at Arizona State University (ASU). The application, written in C#, aims to empower students to understand how complex systems are build. Complementing the two courses taught at ASU, it seeks to demonstrate how the concepts taught in the two classes can be applied to the real world. In addition to the practical software development process, Tenga also bring in the topics that students are inexperienced with such as recommendation systems and ranking algorithms. Tenga is going to be used in classrooms to help students to learn fundamental issues in Web software development and software integration and to understand tools and skill sets required to built a web application.

Contributors

Created

Date Created
  • 2016-05

135246-Thumbnail Image.png

Automated Testing of Web Services

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

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.

Contributors

Created

Date Created
  • 2016-05

131363-Thumbnail Image.png

Feature Extraction on Sentiment Attitude Values to Better Predict the Stock Market Using Twitter Sentiment

Description

Behavioral economics suggests that emotions can affect an individual’s decision making. Recent research on this idea’s application on large societies hints that there may exist some correlation or maybe even

Behavioral economics suggests that emotions can affect an individual’s decision making. Recent research on this idea’s application on large societies hints that there may exist some correlation or maybe even some causation relationship between public sentiment—at least what can be pulled from Twitter—and the movement of the stock market. One major result of consistent research on whether or not public sentiment can predict the movement of the stock market is that public sentiment, as a feature, is becoming more and more valid as a variable for stock-market-based machine learning models. While raw values typically serve as invaluable points of data, when training a model, many choose to “engineer” new features for their models—deriving rates of change or range values to improve model accuracy.
Since it doesn’t hurt to attempt to utilize feature extracted values to improve a model (if things don’t work out, one can always use their original features), the question may arise: how could the results of feature extraction on values such as sentiment affect a model’s ability to predict the movement of the stock market? This paper attempts to shine some light on to what the answer could be by deriving TextBlob sentiment values from Twitter data, and using Granger Causality Tests and logistic and linear regression to test if there exist a correlation or causation between the stock market and features extracted from public sentiment.

Contributors

Agent

Created

Date Created
  • 2020-05