Tuesday, May 6, 2025

Supply Chain and Inventory Management – Shipment ETA Predictor

 


Notes:

  • Problem Solved: Predicts estimated time of arrival (ETA) for shipments based on carrier, distance, and historical data.

  • Benefits: Enhances planning accuracy and provides customers with reliable delivery expectations.

  • Adoption: Can be embedded in customer-facing shipment tracking portals or used internally.

Python Code:


import pandas as pd

from sklearn.linear_model import LinearRegression

import numpy as np


class ETAPredictor:

    def __init__(self, training_data):

        self.df = pd.DataFrame(training_data)

        self.model = LinearRegression()


    def train(self):

        X = self.df[['DistanceKm', 'CarrierRating']]

        y = self.df['DeliveryDays']

        self.model.fit(X, y)


    def predict_eta(self, distance_km, carrier_rating):

        input_data = np.array([[distance_km, carrier_rating]])

        return self.model.predict(input_data)[0]


# Sample historical data

data = [

    {'DistanceKm': 100, 'CarrierRating': 4.5, 'DeliveryDays': 2},

    {'DistanceKm': 300, 'CarrierRating': 4.0, 'DeliveryDays': 4},

    {'DistanceKm': 50, 'CarrierRating': 5.0, 'DeliveryDays': 1},

    {'DistanceKm': 400, 'CarrierRating': 3.5, 'DeliveryDays': 5},

]


predictor = ETAPredictor(data)

predictor.train()


# Predict ETA for a new shipment

eta = predictor.predict_eta(250, 4.3)

print(f"Predicted ETA (days): {round(eta, 2)}")


No comments:

Post a Comment

IoT (Internet of Things) Automation - Smart Energy Usage Tracker

  Notes: Problem Solved: Logs and analyzes power usage from smart meters. Customization Benefits: Track per-device energy and set ale...