Skip to content

Bulk Upload and Route Optimization - Engineering Specification

1. Project Context

Background

  • Initial Partner: Online Florist Delivery Service
  • Daily Delivery Volume: 100-300 orders
  • Current Pain Point: Manual route planning consuming 3-4 hours daily

2. System Requirements

2.1 Bulk Upload Specifications

Input Constraints

  • Supported File Format: CSV
  • Maximum File Size:
  • Soft Limit: 1 MB
  • Hard Limit: 5 MB
  • Recommended Row Count: Up to 200 deliveries per upload

Required Columns

  • Delivery ID (unique, alphanumeric)
  • Pickup Latitude
  • Pickup Longitude
  • Dropoff Latitude
  • Dropoff Longitude

2.2 Data Validation Rules

  1. Delivery ID Validation
  2. Must be unique
  3. Non-empty
  4. Alphanumeric characters only

  5. Coordinate Validation

  6. Latitude Range: -90 to 90
  7. Longitude Range: -180 to 180
  8. Must be valid decimal numbers

2.3 Error Handling

  • Provide detailed error messages
  • Highlight specific rows with issues
  • Option to download error report
  • Support partial upload of valid rows

3. Route Optimization Requirements

3.1 Performance Targets

  • Processing Time: < 5 seconds for 200 entries
  • Route Calculation Time: < 500ms
  • Routing Accuracy: > 90%
  • Distance Optimization: Significant reduction

3.2 Routing Approach

  1. Primary Routing Engine: OSRM (Open Source Routing Machine)
  2. Real-time Enrichment: Google Maps API
  3. Fallback Mechanism: Intelligent provider switching

3.3 Routing Workflow

[Delivery Points] 
    → Geocoding Validation 
    → Route Permutation Generation 
    → OSRM Route Calculation 
    → Optimization Selection 
    → Cached Route Storage

4. Technical Architecture

4.1 Technology Stack

  • Backend: Go (Gin/Echo framework)
  • Routing Engine: OSRM
  • Database: PostgreSQL with PostGIS
  • Caching: Redis
  • Frontend: React with TypeScript

4.2 Infrastructure Requirements

  • Compute: 4 vCPU, 16GB RAM
  • Storage: 250GB SSD
  • Estimated Monthly Cost: $250

5. Key Challenges

  • Efficient CSV parsing
  • Geospatial data validation
  • Real-time route optimization
  • Handling variable delivery constraints

6. Optimization Complexity Level

  • Intermediate Route Optimization
  • Time window constraints
  • Priority management
  • Basic capacity planning
  • Multiple vehicle considerations

7. Development Phases

  1. CSV Parsing Module
  2. Geospatial Validation
  3. Initial Routing Algorithm
  4. Caching Mechanism
  5. Performance Benchmarking
  6. Incremental Optimization

8. Success Metrics

  • Reduce route planning time by 75%
  • Minimize delivery planning complexity
  • Provide actionable routing suggestions
  • Support incremental route optimization

9. Ethical Considerations

  • Transparent algorithmic decision-making
  • Fair treatment of delivery personnel
  • Minimizing environmental impact
  • Protecting individual privacy

10. Future Expansion

  • Machine learning route prediction
  • Real-time traffic integration
  • Dynamic routing adjustments
  • Multi-vehicle type support

Appendix: Potential Risks

  • Routing data staleness
  • Performance overhead
  • Scaling challenges with increasing delivery volumes
  • API dependency and rate limiting