This repository contains code and data for optimizing the placement of delivery drivers on a last-mile delivery service in Nigeria. The goal is to reduce unfulfilled delivery requests by analyzing historical data and identifying key factors influencing order completion.
- Data Loading: Load the provided datasets (
completed_orders.csv(nb.csv)
anddelivery_requests.csv(driver_locations_during_request.csv)
). - Missing Values and Outliers: Check for missing values and outliers in the datasets and handle them appropriately.
- Exploratory Data Analysis (EDA): Explore the distributions of key variables, identify patterns, and correlations between variables.
- Feature Extraction: Extract relevant features based on time and location, such as rain vs no-rain, holidays, traffic conditions, etc.
- Feature Scaling: Normalize or scale features where necessary.
- Distance and Key Variables: Write a program to compute distances, driving speed, shortest distance, driving route distance, etc., between geographic coordinates and timestamps.
- Riders and Orders in Circles: Compute the number of riders and orders within circles of 500m around accepted and unfulfilled orders.
- Clusters of Delivery Locations: Identify clusters of delivery starting locations and destinations using clustering algorithms.
- Visualization: Create purpose-driven visualizations using Python libraries like Matplotlib, Seaborn, or Datashader.
-
Clone the repository:
git clone git@github.com:Betfsh/Logistic-optimization.git cd Logistic-optimization
-
Create a virtual environment using Python 3.10:
python3.8 -m venv env source env/bin/activate # On Windows use `env\Scripts\activate`
-
Install the required dependencies:
pip install -r requirements.txt ``
Bethelhem Mebratu
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
MIT