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 332

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.


Automating Deep-Sea Video Annotation Using Machine Learning, Hanson Egbert, Lubomir Stanchev, Benjamin Ruttenberg Feb 2020

Automating Deep-Sea Video Annotation Using Machine Learning, Hanson Egbert, Lubomir Stanchev, Benjamin Ruttenberg

Computer Science and Software Engineering

As the world explores opportunities to develop offshore renewable energy capacity, there will be a growing need for pre-construction biological surveys and post-construction monitoring in the challenging marine environment. Underwater video is a powerful tool to facilitate such surveys, but the interpretation of the imagery is costly and time-consuming. Emerging technologies have improved automated analysis of underwater video, but these technologies are not yet accurate or accessible enough for widespread adoption in the scientific community or industries that might benefit from these tools. To address these challenges, we developed a website that allows us to: (1) Quickly play and annotate …


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 …


Combining Parts Of Speech, Term Proximity, And Query Expansion For Document Retrieval, Lubomir Stanchev, Eric Labouve Jan 2019

Combining Parts Of Speech, Term Proximity, And Query Expansion For Document Retrieval, Lubomir Stanchev, Eric Labouve

Computer Science and Software Engineering

Document retrieval systems recover documents from a database and order them according to their perceived relevance to a user's search query. This is a difficult task for machines to accomplish because there exists a semantic gap between the meaning of the terms in a user's literal query and a user's true intentions. The main goal of this study is to modify the Okapi BM25 document retrieval system to improve search results for textual queries and unstructured, textual corpora. This research hypothesizes that Okapi BM25 is not taking full advantage of the structure of text inside documents. This structure holds valuable …


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 …


Characterizing Mental Health And Wellness In Students Across Engineering Disciplines, Andrew Danowitz, Kacey Beddoes Apr 2018

Characterizing Mental Health And Wellness In Students Across Engineering Disciplines, Andrew Danowitz, Kacey Beddoes

Computer Science and Software Engineering

Anecdotal evidence has long supported the idea that engineering students have lower levels of mental health and wellness than their peers. It is often posited that the large number of courses, low overall retention, difficult courses, and the abundance of intensive engineering projects lead to an unhealthy work-life balance and eventually lower levels of mental health for this population. To date, however, there has been no comprehensive study on the prevalence and types of mental health conditions that afflict engineering students, or any data on whether certain disciplines within engineering may see a greater prevalence of certain mental health conditions …


Semantic Document Clustering Using Information From Wordnet And Dbpedia, Lubomir Stanchev Jan 2018

Semantic Document Clustering Using Information From Wordnet And Dbpedia, Lubomir Stanchev

Computer Science and Software Engineering

Semantic document clustering is a type of unsupervised learning in which documents are grouped together based on their meaning. Unlike traditional approaches that cluster documents based on common keywords, this technique can group documents that share no words in common as long as they are on the same subject. We compute the similarity between two documents as a function of the semantic similarity between the words and phrases in the documents. We model information from WordNet and DBPedia as a probabilistic graph that can be used to compute the similarity between two terms. We experimentally validate our algorithm on the …


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 …


Teaching Systems And Robotics In A Four-Week Summer Short Course, Andrew Danowitz, Bridget Benson, Jeremy Edmonds Jun 2017

Teaching Systems And Robotics In A Four-Week Summer Short Course, Andrew Danowitz, Bridget Benson, Jeremy Edmonds

Computer Science and Software Engineering

This paper describes a four-week summer short-course designed to introduce students with limited hands-on technical experience to the low-level details of embedded systems and robotics. Students start the course using a Raspberry Pi 3 to learn the basics of Linux and programming, and end the course by competing in a capture-the-flag type competition with the web-configurable GPS-guided autonomous robots they designed and tested in the course. Throughout the course, students are introduced to programming languages including Python and PHP, advanced programming concepts such as using sockets for inter-process communication, data interchange formats such as JSON, basic API development, system concepts …


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 …


Group Work Versus Informal Collaborations: Student Perspectives, Andrew Danowitz Apr 2017

Group Work Versus Informal Collaborations: Student Perspectives, Andrew Danowitz

Computer Science and Software Engineering

A substantial body of research exists showing that, when implemented correctly, the use of group work in a class can improve student learning outcomes. When implemented incorrectly, however, group-based assignments can lead to dysfunction and inter-personal conflicts that can hamper overall student success. This problem can be especially acute in first and second year engineering fundamentals courses where advanced students who learn the concepts faster may end up completing—and reaping the benefits of—a lions-share of the group work. As the course material starts to build on itself, those students who initially underperformed in their group may lack the understanding to …


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.