GroceryKart.com is responsible for supplying fresh vegetables and produce to all mom-and-pop retail stores in Mumbai and adjoining suburbs. There are about 600 stores in their network. They have a fleet of old Matador vans that are being used to haul the goods from their central warehouse in Andheri. Given the perishable nature of the goods, all vans leave at 5:00 AM and all deliveries have to happen before 8:00 AM. Each van can make multiple stops but the union contract prevents any truck from making more than 20 stops or travelling more than 65 KM in any trip.
In an effort to reduce costs and minimize greenhouse emissions, GroceryKart.com is planning to retire all the old Matador vans and purchase a new fleet of Mahindra vans. They believe the cost of purchasing the Mahindra vans will more or less be covered by the sale of Matador vans and the rest of the money will come from the existing savings fund. However, maintaining each truck costs Rs. 20,000 a month (including driver, etc.). Also, the variable cost/km of travel is around Rs. 30 for the first three years of the truck usage. Each Mahindra truck can carry up to 1000 kg at full capacity and at the end of the trip, all trucks return back to the warehouse. Each stop at the store takes 5 minutes to download (irrespective of the weight) and every KM travelled takes 90 seconds on an average.
The distance between each store and the warehouse is provided in Table 1. The daily demand for each store is provided in Table 2. (Click here to download the dataset)
Can you write a program to determine the number of Mahindra vans required to be purchased and the total KM that will be travelled to service the daily demand of all the stores so as to minimize the total cost over the first three years?
The output of the code should clearly mention:
The number of trucks needed
Routing for each truck and
The total miles travelled each day.