sampsaoinonen / TiRa-RouteOptimizer

RouteOptimizer is a navigational tool that uses and compares A* and Fringe Search pathfinding algorithms to find the most efficient route in Helsinki capital region street network.
0 stars 0 forks source link

RouteOptimizer

GHA workflow badge codecov

Animated gif

RouteOptimizer is a navigational tool that uses and compares A* and Fringe Search pathfinding algorithms to find the most efficient route in Helsinki capital region street network. The project allows users to simulate and visualize shortest path searches and evaluate the performance of used algorithms.

This project is part of the Helsinki University course: Aineopintojen harjoitustyö: Algoritmit ja tekoäly TKT20010.


Documentation

Weekly Reports

Quick Guide

Command Line Operations

Installation

Clone the repository, navigate to the project's root directory and install the dependencies with the command:

poetry install

Running the Main Program

To run the main program, execute the following command:

poetry run invoke start

Wait for OSMnx maps to load and open your browser in http://127.0.0.1:5000

Testing

All tests can be executed with the following command

poetry run invoke all-tests

Unit tests can be executed with the following command

poetry run invoke unit-tests

Integration tests can be executed with the following command

poetry run invoke integration-tests

Performance tests can be executed with the following command

poetry run invoke performance-tests

Rest of the tests wihtout performance testing: (Note that performance test takes couple minutes to finish)

poetry run invoke tests

Test coverage

To generate a test coverage report as html and show in terminal, use the following commands:

poetry run invoke coverage-report