Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alessiochen/random-maze-solver
This repository hosts a C++ implementation of a Random Maze Solver that utilizes the OpenMP multi-threading API for parallelization. The project aims to evaluate and compare the performance of sequential and parallel programs in solving randomly generated mazes.
https://github.com/alessiochen/random-maze-solver
maze maze-solver openmp parallelprogramming unifi
Last synced: 16 days ago
JSON representation
This repository hosts a C++ implementation of a Random Maze Solver that utilizes the OpenMP multi-threading API for parallelization. The project aims to evaluate and compare the performance of sequential and parallel programs in solving randomly generated mazes.
- Host: GitHub
- URL: https://github.com/alessiochen/random-maze-solver
- Owner: AlessioChen
- Created: 2024-01-21T15:25:29.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-03-27T20:21:39.000Z (10 months ago)
- Last Synced: 2024-03-27T21:30:58.493Z (10 months ago)
- Topics: maze, maze-solver, openmp, parallelprogramming, unifi
- Language: C++
- Homepage:
- Size: 309 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Random Maze Solver with OpenMP
## Introduction
This repository contains a C++ implementation of a Random Maze Solver utilizing the OpenMP multi-threading API for parallelization. The project compares the performance of sequential and parallel programs in solving randomly generated mazes.## Features
- Generates random mazes using a Depth-First Search (DFS) algorithm.
- Implements a Random Maze Solver algorithm using particles that move through the maze.
- Provides both sequential and parallel implementations of the solver.
- Evaluates and compares the performance of sequential and parallel programs under different scenarios.
- Visualizes the generated mazes and their solutions.## Setup
To run the code, ensure you have a C++ compiler that supports OpenMP installed on your system.## Usag
1. Clone the repository to your local machine.
2. Compile the code using your preferred C++ compiler with OpenMP support.
3. Run the executable to generate and solve random mazes.## Tests
The repository includes tests to evaluate the performance of the parallel solver under different conditions:
- **Thread Scalability Evaluation**: Assesses the impact of increasing the number of threads while maintaining a fixed number of particles.
- **Particle Scalability Evaluation**: Evaluates performance variations by altering the number of particles navigating the maze.## Results
The results of the tests are presented in the accompanying report file. They demonstrate significant performance improvements achieved through parallelization, with speedup values generally increasing with the number of threads.