Coder Social home page Coder Social logo

gomyx / zewail-city-pathfinding-project Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 1.67 MB

your guide in for Zewail city to guide you, enter your location and your destination from the photo attached and the application will guide you

Jupyter Notebook 100.00%

zewail-city-pathfinding-project's Introduction

Zewail City Pathfinding Project

Project Description

The Zewail City Pathfinding Project aims to solve the problem of finding the optimal path between any two places within Zewail City, which is represented as a graph. The graph consists of nodes that represent different places within the city, and the weights of the edges represent the cost associated with traversing from one place to another. The project utilizes various search algorithms, including informed, uninformed, and local search algorithms, to find the most efficient routes.

Problem Statement

The problem addressed in this project is similar to the Traveling Salesman Problem (TSP) in its context. The goal is to determine the optimal path between any given start and goal locations within Zewail City. The graph representation allows us to model the city's layout, with nodes representing distinct places and the edge weights indicating the associated costs. To aid in the search process, a heuristic function is defined using the Euclidean distance between nodes.

Functionality

The project provides the following functionality:

  1. Input: The user is prompted to enter the start and goal locations within Zewail City.

  2. Search Algorithms: The program implements various search algorithms to find the optimal path from the start to the goal. The employed algorithms include informed search algorithms (such as A* search), uninformed search algorithms (such as breadth-first search), and local search algorithms.

  3. Assessment: The results of each search algorithm are evaluated and assessed based on their completeness and optimality. Some algorithms may guarantee finding the optimal solution, while others may not.

  4. Output: The program outputs the found path from the start to the goal, along with any relevant metrics or statistics related to the search process.

Usage

To use the Zewail City Pathfinding Project, follow these steps:

  1. download the notebook
  2. Enter the desired start and goal locations within Zewail City.
  3. all the search algorithms will run
  4. Wait for the program to complete the search and evaluate the results.
  5. Review the outputs, which include the optimal path from the start to the goal(A* algorithm), as well as any relevant metrics or statistics.
  6. Repeat the process for different start and goal locations as needed.

Dependencies

The project has the following dependencies:

  • Programming Language: python
  • building a simple gui visualizing the path
  • using the linked image to use as the reference for the map

Future Enhancements

The Zewail City Pathfinding Project can be further improved and expanded in the following ways:

  1. Additional Heuristics: Explore and implement additional heuristics for the search algorithms to enhance their efficiency and effectiveness.

  2. Graph Visualization: Develop a graph visualization component to display the city's layout and the path between the start and goal locations.

  3. User Interface: Create a user-friendly interface that allows users to interact with the program more intuitively and visualize the search process.

  4. Performance Optimization: Identify and implement optimizations to improve the search algorithms' performance, especially for large-scale graphs.

Contributors

Mahmoud Thabet

zewail-city-pathfinding-project's People

Contributors

gomyx 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.