Giter Club home page Giter Club logo

boutainaelyaziji / tsp_project Goto Github PK

View Code? Open in Web Editor NEW
5.0 1.0 0.0 31.2 MB

The traveling salesman problem (TSP) is a well-known problem in theoretical computer science and operations research. The standard version of the TSP is a hard problem and belongs to the NP-Hard class. In this project, I build an application to implement the TSP by the dynamic approach and the GVNS approach .

Jupyter Notebook 0.25% Python 97.42% Cython 0.33% C 1.52% C++ 0.33% Fortran 0.04% Tcl 0.10% PowerShell 0.01% Batchfile 0.01% CSS 0.01%
metaheuristic-algorithms np-problem python tsp-problem tsp-solver

tsp_project's Introduction

Web application for solving traveling salesman problems by dynamic programming and GVNS ๐Ÿง

Streamlit App

The objective of this project is to solve the problem of the traveling salesman. It is a mathematical problem which consists, given a set of cities separated by given distances, in finding the shortest path which connects all the cities. We have implemented several methods to try to solve this problem :
an exact method represented by dynamic programming as well as another metaheuristic method (GVNS).

Demo click on the link below : ๐Ÿ’ฏ

Description : ๐Ÿ˜Ž

The given instruction provides a user interface for selecting an approach from the sidebar to perform a task related to the Traveling Salesman Problem (TSP). To start with, the user needs to upload an Excel or CSV file. The provided dataset named "TSP Maroc Data" is recommended to test the approach.

Next, the user is required to enter the name of the sheet in the uploaded file and the name of the first city to initiate the computation. The approach then explores the minimum distance between different cities and generates the minimum path that the salesman should take to visit all the cities and return to the starting point.

The user can also generate a visualization graph to view the minimum path and the distance between cities. Once the visualization is generated, the user can download the graph for future reference. This approach can be helpful for businesses and organizations that require optimized route planning for efficient transportation and logistics.

  • Pseudocode de TSP ๐Ÿ’ป

๐ŸŒ Dynammic Approach

๐ŸŒš Metaheuristic Approach (GVNS)

๐ŸŽˆ Graph succesfuly generated

You can download the graph with the button below :)

Mobile view ๐Ÿ“ณ

Install โฌ‡๏ธ

pip install streamlit
pip install pandas 
pip install streamlit_option_menu
pip install matplotlib
pip install numpy
pip install streamlit-lottie

Run ๐Ÿƒ

Streamlit need to run for development mode.

streamlit run App.py

๐Ÿ”— Links

portfolio linkedin

tsp_project's People

Contributors

boutainaelyaziji avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.