Generating solutions to Sokoban levels is an NP-hard problem that is difficult for even modern day computers to solve due to its complexity. This project explores the creation of a Sokoban solver by eliminating as many potential moves as possible to greatly limit the overall search space. This reduction is...
A financial processor is the most important component of a credit union‘s IT infrastructure. A database storing member demographic information, account balances, and transaction history, it performs financial calculations, such as interest, dividends, and maturities. It also provides a user interface, allowing tellers and financial service representatives to manage accounts...
SpotFinder is the mobile frontend of a parking system that helps drivers find a parking spot on campus. (The backend piece of the parking system was developed by others in the lab as part of a previous project.) Finding parking can be viewed as both a search problem and a...
A curb ramp is an indispensable ramp system in the transportation network that provides a transition between a sidewalk and a roadway. The Americans with Disabilities Act (ADA) requires that the design, construction, and maintenance of curb ramps meet the ADA standards. However, many existing curb ramps are noncompliant, as...
This research paper describes the impacts of a new programming class on first-year, non-CS engineering students. In the spring of 2021, the College of Engineering at Oregon State University piloted a new programming course that will be required of all engineering majors in the following academic years. We used the...
Many older reinforced concrete bridges and buildings in the United States are considered deficient due to past design codes that are not conservative, increased loading, and deterioration of structural components. Deterioration is most commonly caused by corrosion, which reduces the steel cross sectional area and damages the concrete cross section....
Locating sources of radio signals can be useful in many applications. From pointing antennas at nearby radio towers to fox hunting, being able to determine the relative location or direction to a radio transmitter can be very useful. Generally, it is necessary to have the current GPS locations of both...
With the overwhelming number of open-source resources available online, the developer community is always looking to expand their knowledge. Collaborative development has been recognized as an efficient method of learning by several students and industry professionals. Hence, developers seek to obtain more hands-on experience while collaborating with people of similar...
More than 50% of American families have at least one pet nowadays, and the number is still rising. Pet caring needs are also growing with it. When people need to leave home for work or vacation, leaving pets home alone might bother some pet owners. Unfortunately, existing approaches all have...
Collaboration with people in a team environment to build software is common. In the beginning stage of a team project, it is required that a team decides what tools and services to utilize to control the source code for the project, communicate with the members, and manage the tasks. In...