Electric vehicles are often subject to range issues. Unlike gasoline vehicles, EVs need to be charged for longer periods of time. This is especially cumbersome when one is going on a roadtrip that spans lengthy distances. If not well-planned, one might end up stranded with no charge in their EV batteries.
Hence we have taken on the problem of solving shortest path with charge constraint, where one needs to decide the specific route to take to reach their destination, by halting at charging points in the most optimized manner.
- 🗺️ Interactive maps powered by Folium
- 🔋 Smart charging station integration
- 🚙 Support for multiple Tesla models
- 📊 Data visualization with Matplotlib and Seaborn
- 🧮 Advanced pathfinding with modified Dijkstra's algorithm
- Python 3.7+
- pip
Clone the repo: git clone https://github.com/utsavmajumdar14/charge_constrained_route_optimization.git
Select your start point, destination, and Tesla model to visualize the optimal route!
The distance here is an L2 distance whose units are unknown. However, I calculated and figured 1 L2 unit would almost be equivalent to 60 miles. The range, charging speed and charging capacity of the Tesla vehicles are an assumption since this repository focuses more on the algorithm.
Here I used a hypothetical toy network to test out the algorithm
The algorithm is executed on California map
- The supercharger data (slightly dated) is obtained from https://www.kaggle.com/datasets/omarsobhy14/supercharge-locations
- The road networks are obtained from https://users.cs.utah.edu/~lifeifei/SpatialDataset.htm
- NumPy & Pandas: Data manipulation
- Matplotlib & Seaborn: Data visualization
- Folium: Interactive maps
- GeoPandas: Geospatial data handling
- NetworkX: Graph operations
- ipywidgets: Interactive UI components
Optimal route with charging stations
User-friendly interface for route planning
This project is licensed under the MIT License - see the LICENSE file for details.
- Tesla for inspiring the future of electric mobility
- OpenStreetMap contributors for geospatial data
- The open-source community for amazing tools and libraries
Ready to optimize your EV journey? Star ⭐ this repo! 🌍🔌🚗