Open Access. Powered by Scholars. Published by Universities.®

Physical Sciences and Mathematics Commons

Open Access. Powered by Scholars. Published by Universities.®

Articles 1 - 30 of 64

Full-Text Articles in Physical Sciences and Mathematics

Ghostparty Video Game, Tyler Remlinger Hart Mar 2023

Ghostparty Video Game, Tyler Remlinger Hart

Computer Science and Software Engineering

GhostParty is a Unity game that uses a MongoDB database to store players' gameplay values. These values are used to create "Ghosts" that players can compete with in various mini-games. I found that this form of multiplayer using ghosts can create a good gameplay experience without live multiplayer interactions.


Solving Fjssp With A Genetic Algorithm, Michael John Srouji Mar 2023

Solving Fjssp With A Genetic Algorithm, Michael John Srouji

Computer Science and Software Engineering

The Flexible Job Shop Scheduling Problem is an NP-Hard combinatorial problem. This paper aims to find a solution to this problem using genetic algorithms, and discuss the effectiveness of this. Initially, I did exploratory work on whether neural networks would be effective or not, and found a lot of trade offs between using neural networks and chromosome sequencing. In the end, I decided to use chromosome sequencing over neural networks, due to the scope of my problem being on a small scale rather than on a large scale.

Therefore, the genetic algorithm was implemented using chromosome sequencing. My chromosomes were …


Twitch Trivia Battle Royale: Interactive Entertainment Engineering Game, Noah Tyler Ravetch Mar 2023

Twitch Trivia Battle Royale: Interactive Entertainment Engineering Game, Noah Tyler Ravetch

Computer Science and Software Engineering

As the world of digital media evolves, so too does the way producers and consumers of entertainment content interact with each other. Live streaming is one such evolution. In this format, one person broadcasts their camera and/or their computer screen to a large audience of viewers in real time. People tuning in can communicate with other viewers and the streamer using the chat feature built-in to the streaming platform.

A new type of entertainment has recently entered the marketplace: interactive entertainment. Concerts are being held virtually in games like Fortnite (Epic Games 2021). TV Shows on Netflix are beginning to …


Wordmuse, John M. Nelson Dec 2022

Wordmuse, John M. Nelson

Computer Science and Software Engineering

Wordmuse is an application that allows users to enter a song and a list of keywords to create a new song. Built on Spotify's API, this project showcases the fusion of music composition and artificial intelligence. This paper also discusses the motivation, design, and creation of Wordmuse.


Multiple Object Tracking For Marine Science, Nicholas A. Wachter Jun 2022

Multiple Object Tracking For Marine Science, Nicholas A. Wachter

Computer Science and Software Engineering

As drone and computer vision technology has been improving, many fields of study have been quick to utilize it to improve the accuracy and ease of data collection. The combination of the two technologies is perfect for surveying large areas and identifying features of interest. Marine science utilizes these technologies for activities such as animal tracking and population counting. I am working with the Drones for Marine Science research group at Cal Poly who want to build a fleet of drones that will fly out over the ocean to identify and track various marine animals. My role will be to …


M^3, Catherine Mingmin Wei, Syrsha Anne Harvey Jun 2021

M^3, Catherine Mingmin Wei, Syrsha Anne Harvey

Computer Science and Software Engineering

M^3 aims to raise students' interest in physics through an interactive and fun video game. Originally planned as a segment in the Cal Poly SLO Seeds in STEM workshop, M^3 is designed with middle and high school students as the intended audience.


A Mobile Application For Optimally Matching Real Estate Clients, Yu Karen Asai, Steven Andrew Luu Mar 2021

A Mobile Application For Optimally Matching Real Estate Clients, Yu Karen Asai, Steven Andrew Luu

Computer Science and Software Engineering

Real estate agents are often tasked with finding their clients’ ideal properties. This can be difficult because multiple clients may have varying preferences, such as number of bedrooms, square footage, or price. Furthermore, different clients may weight their individual preferences differently. Existing applications do not consider multiple clients’ satisfaction, nor do they allow clients to weigh their preferences, potentially leading to less-than-ideal matchings between clients and properties.

In this project, we design and implement an iOS application whereby real estate agents can match multiple clients with individually weighted preferences to properties scraped from web listings. We model this client-property matching …


Free Space Detection And Trajectory Planning For Autonomous Robot, Zachary Ross Winger Jun 2020

Free Space Detection And Trajectory Planning For Autonomous Robot, Zachary Ross Winger

Computer Science and Software Engineering

Autonomous robots need to know what is around them and where it is safe for them to move to. Because having this ability is so important, Dr. Seng and myself have created a model to predict the free space in front of his autonomous robot, Herbie. We then use this prediction to enforce a driving policy to ensure Herbie drives around safely.


Design And Implementation Of A Deterministic And Nondeterministic Finite Automaton Simulator, Camron C. Dennler Jun 2020

Design And Implementation Of A Deterministic And Nondeterministic Finite Automaton Simulator, Camron C. Dennler

Computer Science and Software Engineering

The purpose of this project is to assist students in visualizing and understanding the structure and operation of deterministic and nondeterministic finite automata. This software achieves this purpose by providing students with the ability to build, modify, and test automata in an intuitive environment. This enables a simple and efficient avenue for experimentation, which upholds the Cal Poly ideal of Learning by Doing.

Readers of this report should be familiar with basic concepts in the theory of finite state machines; a general understanding of object-oriented programming is also necessary.


A Study On The Mental Health Of Women In The Csse Department Of California Polytechnic State University, Sophia Lao, Gabriella Garcia Nobili Jun 2019

A Study On The Mental Health Of Women In The Csse Department Of California Polytechnic State University, Sophia Lao, Gabriella Garcia Nobili

Computer Science and Software Engineering

The goal of this paper is to explore the perceived effect that the Computer Science Curriculum has on the mental health of female students. To discover these effects we conducted 50 interviews over a period of several months with the female students of the Computer Science and Software Engineering (CSSE) department at California Polytechnic State University in San Luis Obispo. The total amount of Computer Science (CSC) majors at this institution is approximately 680, with 150 of them being female, so we were able to gather responses from 33.3% of the female CSC students from our interviews. It is worth …


Radish: A Cross Platform Meal Prepping App For Beginner Weightlifters, Spoorthy S. Vemula, Tanay Gottigundala, Cory Baxes Jun 2019

Radish: A Cross Platform Meal Prepping App For Beginner Weightlifters, Spoorthy S. Vemula, Tanay Gottigundala, Cory Baxes

Computer Science and Software Engineering

With the increasing ease of access and decreasing price of most food, obesity rates in the developing world have risen dramatically in recent years. As of March 23rd, 2019, obesity rates had reached 39.6%, a 6% increase in just 8 years. Research has shown that people with obesity have a significantly increased risk of heart disease, stroke, type 2 diabetes, and certain cancers, among other life-threatening diseases. In addition, 42% of people who begin weightlifting quit because it’s too difficult to follow a diet or workout regimen.

We created Radish in an attempt to tackle these problems. Radish makes it …


Extension Of Cpe 454 Operating System, Joseph Nathaniel Arhar Jun 2018

Extension Of Cpe 454 Operating System, Joseph Nathaniel Arhar

Computer Science and Software Engineering

This project extended on the operating system I wrote in CPE 454 by adding additional features on top of the existing implementation. In order to implement them, I researched operating system design patterns and hardware details. I used wiki.osdev.org for most research, just like I did in CPE 454. The source code for the project is at https://github.com/josepharhar/jos.


Finding Spanning Trees In Strongly Connected Graphs With Per-Vertex Degree Constraints, Samuel Benjamin Chase Jun 2018

Finding Spanning Trees In Strongly Connected Graphs With Per-Vertex Degree Constraints, Samuel Benjamin Chase

Computer Science and Software Engineering

In this project, I sought to develop and prove new algorithms to create spanning trees on general graphs with per-vertex degree constraints. This means that each vertex in the graph would have some additional value, a degree constraint d. For a spanning tree to be correct, every vertex vi in the spanning tree must have a degree exactly equal to a degree constraint di. This poses an additional constraint on what would otherwise be a trivial spanning tree problem. In this paper, two proofs related to my studies will be discussed and analyzed, leading to my algorithm …


Deaddrop: Message Passing Without Metadata Leakage, Davis Mike Arndt Jun 2018

Deaddrop: Message Passing Without Metadata Leakage, Davis Mike Arndt

Computer Science and Software Engineering

Even when network data is encrypted, observers can make inferences about content based on collected metadata. DeadDrop is an exploratory API designed to protect the metadata of a conversation from both outside observers and the facilitating server. To do so, DeadDrop servers are passed no recipient address, instead relying upon the recipient to check for messages of their own volition. In addition, the recipient downloads a copy of every encrypted message on the server to prevent even the server from knowing to whom each message is intended. To these purposes, DeadDrop is mostly successful. However, it does not obscure all …


Lightning Draft, Benjamin Sweedler Jan 2018

Lightning Draft, Benjamin Sweedler

Computer Science and Software Engineering

Lightning Draft is a web application for drafting Magic: the Gathering cards. Users can visit www.lightningdraft.online to build a deck from randomly generated booster packs. This app was inspired by digital card games such as Hearthstone. Lightning Draft is a quick, fun, and simple alternative to drafting with physical cards.


Optimal Layout For A Component Grid, Michael W. Ebert Dec 2017

Optimal Layout For A Component Grid, Michael W. Ebert

Computer Science and Software Engineering

Several puzzle games include a specific type of optimization problem: given components that produce and consume different resources and a grid of squares, find the optimal way to place the components to maximize output. I developed a method to evaluate potential solutions quickly and automated the solving of the problem using a genetic algorithm.


Noteit Ios App, Waylin W. Wang, Gurjeevan Bains Dec 2017

Noteit Ios App, Waylin W. Wang, Gurjeevan Bains

Computer Science and Software Engineering

Miscommunication is a common struggle that many students face in today’s world, despite the significant technological progress that we have made. With NoteIt, we aimed to solve this issue, by allowing students to join groups based off of the courses that they are enrolled in during the current quarter. Within the app, they can send and receive messages and events from everyone else in the group, or post private reminders to themselves. Communication can range from assignment clarification to exam preparation tips. Overall the development of the application went relatively well, despite some roadblocks along the way. We were satisfied …


A High Quality, Eulerian 3d Fluid Solver In C++, Lejon Anthony Mcgowan Nov 2017

A High Quality, Eulerian 3d Fluid Solver In C++, Lejon Anthony Mcgowan

Computer Science and Software Engineering

Fluids are a part of everyday life, yet are one of the hardest elements to properly render in computer graphics. Water is the most obvious entity when thinking of what a fluid simulation can achieve (and it is indeed the focus of this project), but many other aspects of nature, like fog, clouds, and particle effects. Real-time graphics like video games employ many heuristics to approximate these effects, but large-scale renderers aim to simulate these effects as closely as possible.

In this project, I wish to achieve effects of the latter nature. Using the Eulerian technique of discrete grids, I …


Message-Layer Encryption In Ricochet, Liam B. Kirsh Jun 2017

Message-Layer Encryption In Ricochet, Liam B. Kirsh

Computer Science and Software Engineering

My intention for this project was to implement encryption and authentication on Ricochet's message layer. This provides two major benefits. The first is a higher level of encryption in the event that a flaw is found in the existing channel-layer encryption, or if increases in computing power make attacks on that encryption feasible. Tor is used by the military, journalists, law enforcement, researchers, and activists, whose communications may be interesting to state-level adversaries and criminal organizations with access to great amount of computing resources. Additionally, message-layer encryption would allow users to specify relay nodes that can temporarily store messages and …


Performing A Practical Paging Attack On The Lte Network, Nathan H. Yee Jun 2017

Performing A Practical Paging Attack On The Lte Network, Nathan H. Yee

Computer Science and Software Engineering

No abstract provided.


Roborodentia Robot (Duct Tape Craze), Tarrant J. Starck Jun 2017

Roborodentia Robot (Duct Tape Craze), Tarrant J. Starck

Computer Science and Software Engineering

Roborodentia is an annual autonomous robotics competition held at Cal Poly in April. In 2017, Roborodentia was a head-to-head double elimination tournament with the winner being the robot that moves more rings onto the scoring pegs. For this year’s competition, I designed, built, programmed, and tested a robot.


Senior Project: Calendar, Jason L. Chin Jun 2017

Senior Project: Calendar, Jason L. Chin

Computer Science and Software Engineering

This calendar application is meant to help individuals with busy schedules. Those who must balance their time between working on multiple simultaneous projects would categorize key users. In the application, users will be able to participate in multiple projects at any one time. When a user is in a project, they will be able to create tasks, add tasks, be assigned to tasks, and add other users to the project. A key feature in this application is that each user is provided a personal project. In their personal project, any task assigned to the user from any project, will be …


Computer Vision Based Route Mapping, Ryan S. Kehlenbeck, Zachary Cody Jun 2017

Computer Vision Based Route Mapping, Ryan S. Kehlenbeck, Zachary Cody

Computer Science and Software Engineering

The problem our project solves is the integration of edge detection techniques with mapping libraries to display routes based on images. To do this, we used the OpenCV library within an Android application. This application lets a user import an image from their device, and uses edge detection to pull out a path from the image. The application can find the user's location and uses it alongside the path data from the image to create a route using the physical roads near the location. The shape of the route matches the edges from the given image and the user can …


Iota Pi Application For Ios, Deborah Newberry Mar 2017

Iota Pi Application For Ios, Deborah Newberry

Computer Science and Software Engineering

Kappa Kappa Psi is a national honorary fraternity for college band members. They meet every Sunday night, and during these meetings they plan events (both internal and external) that aim to meet our goal of making sure that the Cal Poly band programs have their social, financial, material, and educational needs satisfied. This paper details the steps I took to create an application for them to use internally to help ease organizational processes.


Music Times: A Music Learning Game, Emily Woo Mar 2017

Music Times: A Music Learning Game, Emily Woo

Computer Science and Software Engineering

Music Times is a two dimensional educational video game with the purpose of gamifying learning of musical concepts. It has elements of adventure and visual novel games, and incentivizes the player to learn music to explore new levels. It is developed in the Unity game engine, scripted in C#, and targeted for mobile devices. It has six working levels: three lesson levels and three corresponding challenge levels. Each level contains slight differences in visual and aural feel.


Hitchride Ios App, Petar Georgiev Mar 2017

Hitchride Ios App, Petar Georgiev

Computer Science and Software Engineering

HitchRide is a ride-sharing marketplace connecting regular people making similar trips so everyone benefits: the driver, the passenger, society and the environment. HitchRide allows participants to reduce their travel costs, meet new friends and conveniently reach their destination, all in a simple, satisfactory, and environmentally friendly way. We believe that we can make traveling truly enjoyable, one shared car ride at a time and help save the planet while we’re at it!


Implementation And Testing Of A Book Lookup System For The Robert E. Kennedy Library, Casey C. Sheehan Dec 2016

Implementation And Testing Of A Book Lookup System For The Robert E. Kennedy Library, Casey C. Sheehan

Computer Science and Software Engineering

The goal of this senior project centered around improving the quality of student and teacher experiences when visiting the library. The task of finding a book amongst the shelves is an arduous one, which I felt could be improved upon through implementation and testing of a Book Lookup system for the Cal Poly Robert E. Kennedy Library. Development for this project was done using a Python framework. Testing and earlier designs were also created using JavaScript and PHP. Repeated tests were conducted on the accuracy of the software and its ability to decrease user search-time when compared to conventional methods.


Review Classification, Balraj Aujla Dec 2016

Review Classification, Balraj Aujla

Computer Science and Software Engineering

The goal of this project is to find a way to analyze reviews and determine the sentiment of a review. It uses various machine learning techniques in order to achieve its goals such as SVMs and Naive Bayes. Overall the purpose is to learn many different machine learning techniques, determine which ones would be useful for the project, then compare the results. Research is the foremost goal of the project, and it is able to determine the better algorithm for review classification, naive bayes or an SVM. In addition, an SVM which actually gave review’s scores rather than just classifying …


Ios Application For Inventory In Small Retail Stores, Andrea Savage Dec 2016

Ios Application For Inventory In Small Retail Stores, Andrea Savage

Computer Science and Software Engineering

Currently, small retail stores with low technology budgets such as those right here in San Luis Obispo are struggling to integrate new technologies into their companies. This mobile application built for iOS with a Firebase backend is seeking to remove their barriers to entry. I built this application to give small retail stores a customizable application that allows them to display products electronically to customers and maintain accurate inventory both in one place. The construction of this application hinged around three major design decisions: UI design of the color management views, organization of the database, and accessing the database with …


Raspberry Pi Radio Scanner Control Web Application, Jackson Marshall Strand Jun 2016

Raspberry Pi Radio Scanner Control Web Application, Jackson Marshall Strand

Computer Science and Software Engineering

In this senior project I design and develop software for the Raspberry Pi which allows the user to listen to and control a scanner radio anywhere in their home. The solution involves utilizing a Raspberry Pi 2 interfaced with the radio, a software package to communicate directly with the radio, and a web app hosting a web client providing the interface for user control. Audio streaming is achieved through the use of FFmpeg. Listening on the client is achieved by using an external software such as Video Lan (VLC) to open the audio stream. We provide an operable proof-of-concept with …