Skip to content

Latest commit

 

History

History
28 lines (18 loc) · 1.43 KB

README.md

File metadata and controls

28 lines (18 loc) · 1.43 KB

Pathfinding and Optimization Algorithms

This repository contains implementations of several algorithms designed for pathfinding and optimization tasks, particularly in the context of public transportation scheduling. The algorithms included are A*, Dijkstra's, and Tabu Search, with optimizations and specific adaptations for dealing with complex transfers.

Algorithms

  • A Algorithm*: Standard implementation for pathfinding in graphs.
  • A Optimisation*: Improved version of the A* algorithm with optimizations for better performance in specific scenarios.
  • A Transfers*: A* algorithm adaptation that considers transfer times between different modes of transportation.
  • Dijkstra's Algorithm: Classic algorithm for finding the shortest paths from a single source vertex to all other vertices in a graph.
  • Tabu Search: Optimization algorithm that uses a local search method for solving mathematical optimization problems.

Data

Data for testing these algorithms can be obtained from: OpenData Wroclaw Public Transportation Schedules

Getting Started

Prerequisites

Ensure you have a C++ compiler installed, such as GCC or Clang. The code is standard C++ and should work in any compliant environment.

Compiling and Running

  1. Clone this repository:
    git clone https://github.com/susiecamazotz/converter-project.git