Question: Using Savings Matrix Method and distance using Google Maps solve the following Niazi Express Cargo service has been operating since the inception of Daewoo Express
Using Savings Matrix Method and distance using Google Maps solve the following Niazi Express Cargo service has been operating since the inception of Daewoo Express in Pakistan. Its Cargo Setups, adjacent to all terminals are open 24/7 providing dispatch and delivery of cargo consignments to its clients. In addition to the main bus terminals they have several Cargo collections points (CCPs) for both booking and delivery located across the country. Table below shows you the address of all the CCPs where point A refers to the central location (Niazi Lahore Headquarters) which will be referred as Distribution Center or DC.
With the increased demand of its services Niazi Express have inducted a fleet of trucks in addition to buses to haul cargo across its nationwide network. This led to increase in capacity and helped it in being punctual in delivering the cargo. The vehicle has a 2600 cc engine and a weight capacity of 1000Kg. The primary goal is to minimize distance travelled and hence cost savings.
| | Address | Cargo Size (in KGs) |
| Distribution Center | Niazi Express Lahore Yateem Khana, Sham Nagar Sanda, Lahore | |
| CCP 1 | Niazi Express, Cantt, Lahore | 480 |
| CCP 2 | Niazi Express Bus Service, Band Road, Jafaria Colony Gulshan-e-Ravi, Lahore | 350 |
| CCP 3 | Niazi Adda, Bahawalpur-Bahawalnagar Road, Chishtian Sharif, Bahawalnagar | 450 |
| CCP 4 | Niazi Express Mansehra Terminal, Mansehra | 400 |
| CCP 5 | Niazi Express, Sargodha Mianwali Road, Mianwali | 630 |
| CCP 6 | Niazi Express, Murree | 520 |
| CCP 7 | Niazi Express, Bahawalpur Road, Lodhrn | 530 |
| CCP 8 | Niazi Express Terminal, Lahore Road, Ghani Park, Sargodha | 350 |
Assuming that there are four trucks in total, assign each CCP to truck and identify a route for each truck, with a goal of minimizing total distance travelled.
Hint: Calculate the distance matrix, saving matrix, assign CCPs to vehicles or routes. For inter cluster routing/route sequencing specify the method/methods and give your justification for choosing that procedure (for example farthest insert, nearest insert and so on.)
Use the addresses mentioned above to find X & Y coordinates rounded off to nearest whole number from Google Maps The assignment shall be submitted in the form of a written report, detailing the proposed solution (1.5 line-spaces, 12 font size, Times New Roman) accompanied with the model as an excel file. Additional Information to solve.
:
VehicleRoutin... The DC nap C3 oldu JO13 5 old OI2 Lo13 must decide which tracks will deliver to which customers and the route that each truck will take en roule suencing and love cach chi'. Ale for cach vehicle. The manager decides to use the to route cach vehicle to minimize the distance turned to whicles and the fourth stepised 12 15 Tanar attempts to the woning either Customer Ser 10 to Route 6 TDC ST in dudarthwed ment method die SEN CHOPRA Technical Note: Routing and Scheduling in Transportation The most important operational decision related to transportation in a supply chain is the routing and scheduling of deliveries. Managers must decide on the customers to be visited by a particular vehicle and the sequence in which they will he visited. For example, an online grocer such as Peapod is built on delivering customer orders to their homes. The success of its operations hinges on its ability to decrease transportation and delivery costs while providing the promised level of responsiveness to the customer. Given a set of customer orders, the goal is to route and schedule delivery vehicles such that the costs incurred to meet delivery promises are as low as possible. Typical objectives when routing and scheduling vehicles include a combination of minimizing cost by decreasing the number of vehicles needed, the total distance traveled by vehicles, and the total travel time of vehicles, as well as eliminating service failures such as a delays in shipments In this note, routing and scheduling problems are discussed from the point of view of the manager of a Peapod distribution center (DC). After customers place orders for groceries online, staff at the IX his to pick the items needed and load them on trucks for delivery. The manager when making deliveries. The manager must e that notruck is overloaded and that promised delivery times are met One morning, the DC manager at leaped his delivery orders from thirteen different customers. The Dic's location, each customer on the grid, and the order size from each customer are shown in Table 1. The manager has four trucks, each capable of carrying up to 200 units. The manager believes that the delivery costs are strongly linked to the total distance the trucks travel and that the distance between two points on the grid is correlated with the actual distance a vehicle will travel between those two points. The manager thus decides to assign customers to trucks and identify a route for each truck, with a goal of minimizing the total distance traveled. This newspaper by Sunil Che Twils are develdy as the basis for Technical endal o vendements, we of primary date of the ineffective 2/16 TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION Table 1: Customer Location and Demand for Peapod Conde Warehouse Customer Customer Customer Customers Customer Customer Customer Customer 10 Customer 11 Customer 12 Customer 13 fird customers to be served by by cach vehicle and then decide on procedures are bed to decide on the following computational procedures to support his decision The savings matrix method The generalized assignment method We discuss how each method can be used to solve the routing and scheduling decision at Peaped Savings Matrix Method This method is simple to implement and can be used to assign customers to when delivery time windows or other constraints exist. The major steps in the savings matrix 1. Identify the distance matrix 2 Identify the wavings matrix 3/16 3. Assign customers to vehicles or routes 4. Sequence customers within routes The first three steps result in customers being TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION Identify the Distance Matrix The distance matrix identifies the distance between every pair of locations to be visited. The distance is used as a surrogate for the cost of traveling between the pair of locations. If the transportation costs between every pair of locations are known, the costs can be used in place of distances. The distance Distra, B) on a grid between a point with coordinates (y) and a point with coordinates Lys) is evaluated as Dist(A,B) - JAXBX+C8A- The distance between every pair of locations for Peapod is shown in Table 2. The distances between every pair of locations are next used to evaluate the savings matrix Table 2: Distance Matrix for Peapod Deliveries Cul Cul Cul Cul Custom Gust Cul Cul Cul Curl Cust 3/16 Custe 20 23 15 2016 Cut * 1916 Identify the Savings Matrix The sawings matrix represents the savings that accrue on consolidating two customers on single truck. Savings may be evaluated in terms of distance, time, or money. The manager at the Peaped DC constructs the savings matrix in terms of distance. A trip is identified as the sequence of locations a vehicle visits. The trip DC Custs DC starts at the DX, visits customer and returns to the DXC The savings Sexy) is the distance saved if the trips DC Custy DC and can be calculated by the following DC Custy DC are combined to a single trip, DC Custx Custy DC. These savings formula Sixy) = IDC, ) + DDC) - Distry). TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION For example, using Table 2 the manager evaluates $1.2) - 12 + 8 - 9 - 11. The savings matrix for the Peopod deliveries is shown in Table 3. The savings matrix is then used to assign customers to vehicles or routes Table 3: Savings Matrix for Peapod Deliveries 4/16 Cunt Dust Got Cut Out Cant Gus Gut Cont Cunt 3 15 220 Custs 10 14 18 100 Cunt 9 13 17 19 >> Cusi 7 12 10 275 Cust Cucto 10 11 12 5 11 14 Assign Customers to Vehicles or Routes When assigning customers to vehicles, the manager attempts to maximize savings. An iterative procedure is used to make this assignment. Initially cach customer is assigned to a separate route Two routes can be combined into franhle route if the total deliveries across both routes do not exceed the vehicle's capacity. At each iterative step, the until no more combinations are feasible At the first step, the highest savings of 34 results on combining truck Routes 6 and 11. The combined route is leasible because the total load is 16 + 91 - 107, which is less than 200. The two customers are thus combined on a single route, as shown in Figure 1, and the saving of 34 is eliminated from further consideration 5/16 TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION Figure 1: Delivery Route by Assigning 6 and 11 to a Common Route O3 O OS ... - O OS OS The next highest saving is 33, which results from adding Customer to the route for Customer 6. This is fonsible because the resulting load is 107 +36-163, which is less than 200 Thus, Customer 7 is also added to Route 6, as shown in Figure 2. Figure 2: Delivery Route by Assigning 6, 7, and 11 to a Common Route O3 O2 -0. 5/16 TECHNICAL NOTE: RATING AND SCHEDULING IN TRANSPORTATION The next highest saving now is 32, which results from adding Customer 10 to Route 6 (we need not consider the saving of 32 on combining Customer 7 with Customer 11 because both are already in Route 6). This, however, is not feasible, as Customer 10 has a delivery totaling 47 units and adding this amount to the de as already on Route 6 would exceed the ed the vehicle capacity of 200 highest savings 29 Each of these is also infeasible because of the capacity constraint. The next highest saving is 28, which results from combining Routes 3 and 4 which is feasible. The two routes are combined into a single route, as shown in Figure 3. Figure 3: Delivery Route by Assigning 3 and 4 to a Common Route 6/16 Continuing the iterative procedure, the manager partitions customers into four groups 1.3 4. 2.9.6.711). 13. 10, 12, 13), with each group assigned to a single vehicle. The next step is to identify the sequence in which each vehicle will visit customers Sequence Customers within Routes At this stage the manager's goal is to sequence customer visits so as to minimize the distance cach vehicle must travel Changing the sequence in which deliveries are made can have a significant impact on the distance traveled by the vehicles. Consider the truck that has been assigned deliveries to Customers 5, 10, 12, and 13. If the deliveries are in the sequence 5, 10, 12 13, the total distance traveled by the truck is 15+9+9+8+ 15 = 36 (distances are obtained from Table 2). In contrast, if deliveries are in the sequence 12, 5, 13, 10, the truck covers a larger distance of 11 +14+ 22 + 16 +16 - 79. Delivery sequences are determined by obtaining an TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION initial route sequence and then using route improvement procedures to obtain 7/16 with a lower transportation distance or cost ROUTE SEQUENCING PROCEDURES The Peapod manager can use route sequencing procedures to obtain an initial trip for cach vehicle. The initial trip is the improved using the route improvement procedure discussed later in this note. All route sequencing procedures are illustrated for the vehicle assigned to Customers 5, 10, 12 and 13. Farthen Given a vehicle trip (including a trip consisting of only the DXC) for each remaining customer, find the minimum increase in length for this customer to be inserted from all the potential points in the trip that they could be inserted. Then choose to actually insert the customer with the largest minimum increase to obtain a new trip. This step is referred to as a farthest insert because the customer furthest from the current trip is inserted. The process is continued until all remaining customers to be visited by the vehicle are included in a trip For the Peapod example, the manager is seeking a trip starting at the DC and visiting Customers 5, 10, 12, 13. The initial trip consists of just the DC with a length of O. Including Customer S in the trip adds 30 to its length, including Customer 10 adds 32, including Customer manager adds Customer lo te obtain a new to the 21. Using the farthese insent, the At the next step, inserting Customer 5 in the trip raises the length of the trip to a minimum of 40, inserting Customer 12 raises it to 36, and inserting Customer 13 raise it to 47. The manager thus inserts the farthest Customer 13 to obtain the new trip (DC, 10, 13, DXC) of length 47. This still leaves Customers 5 and 12 to be inserted. The minimum cost insertion for Customer 5 is (DC 5, 10, 13, DC) for a length of 5, and the minimum cost insertion for Customer 12 is (DC 10, 12, 13, DC) for a length of 48. The manager thus inserts Customer 5 to obtain a trip (DC, 5 10, 13, DC) of length 55. Customer 12 is then inserted between Customers 10 and 13 to obtain a trip (DC, 5, 10, 12 13, DC) of length 56. Nearers Given a vehicle trip (including a trip consisting of only the DXC) for each remaining customer, find the minimum increase in length for this customer to be inserted from all the potential points in the trip that they could be inserted. Insert the customer with the smallest minimum increase to current trip is inserted. The process is continued until all remaining customers the vehicle will visitare included in a trip For the Peapod example, the manager applies the nearest insert to the vehicle serving Customers 5, 10, 12 and 13. Starting at the DC the nearest customer is 12. Inserting Customer 12 results in the trip (DC, 12, DC) of length 22. At the next step inserting Customer results in a trip of length 40 inserting Customer 10 results in a trip of length 36, and inserting Customer 13 results in a trip of length 34. Customer 13 results in the smallest increase and is inserted to obtain a trip (DC, 12, 13, DC) of length 34. The met care insertion is Customer 10 resulting in a trip (DC, 10, 12, 13, DC) of length 45, and the final insertion of Customer 3 results in a trip (DC, 5, 10, 12 56 7/16 TECHNICAL NO ROSTING AND SCHEDULING IN TRANSPORTATION Neurer Neighbor Starting at the DC, this procedure adds the closest customer to extend the trip. At och step trip is built by adding the customer closest to the point last visited by the vehicle until all customers have been visited For the Peapod example, the customer closest to the DC is 12 (see Table 2). This results in the path DC, 12). The customer closest to Customer 12 is 13. extending the path to DC, 12, 13). The ficarest neighber of Customer 13 is 10 and the nearest neighbor of Customer 10 s 5. The Pcaped manager thus obtains a trip (DC, 12, 13, 10.5, DC) of length 59 In the sweep procedure, any point on the grid is selected (generally the DC itself) and a line is swept either clockwise or counterclockwise from that point. The trip is constructed by sequencing customers in the order they are encountered during the sweep The Peapod manager uses the sweep procedure with the line centered at the DC. Customers are encountered in the sequence 5, 10, 12, 13 to obtain the trip (DC, 5, 10, 12 13, DC) for a length of The initial trips resulting from each route sequencing procedure and their lengths are summarired in Table 4 Table 4: Initial Trips Using Different Route Sequencing Procedures at Peapod Houtenquereng Pretur 4 Farthest in DC, 10, 12, 13, DG DC., 12.DC DC, 12. 10.5.13, DC 8/16 ROUTE IMPROVEMENT PROCEDURES Route improvement procedures start with a trip obtained using a route sequencing procedure and improve the trip to shorten its length The Peapod manager next applies route improvement procedures to alter the sequence of customers visited by a vehicle and to shorten the distance a vehicle must travel. The two soule improvement procedures discussed are illustrated on the trip obtained as a result of the nearest neighbor procedure 2-OPT The 2-OPT procedure starts with a trip and breaks it at two places. This results in the trip breaking into two paths, which can be reconnected in two possible ways. The length for each reconnection is evaluated, and the smaller of the two is used to define a new trip. The procedure is continued on the new trip until no further improvement results For example, the trip (DXC, 12, 10, 5, 13, DC) resulting from the nearest meighbor procedure can be broken into two paths (13. DC) and 12, 10, 5) and reconnected into the trip (DC, 5, 10, 12, 13, DC), as shown in Figure 4. The new trip has length 56, which is an improvement over the existing trip TECHNICAL NOTERTING AND SCHEDULING IN TRANSPORTATIN Figure 4: Improving Route Sequencing Using 2-OPT 10 DC 9/16 12 13 J-OPT The 3-OPT procedure breaks a trip at three points to obtain three paths that can be reconnected to form up to eight different trips. The length of each of the eight possible trips is evaluated and the shortest trip is retained. The procedure is continued on the new trip until no improvement results. The trip (DC, 5, 10, 12, 13, DC) resulting from the 2-OPT procedure is broken up into three puths (DC., 101 and (12, 13) The various resulting trips on reconnecting the three paths are (DC 12, 13, 5, 10, DC) of length 65, (DC, 12, 13, 10, 5, DC) of length 81, and (DC, 13, 12, 5, 10, DC) of length 61. All other trips correspond to one of these four trips reversed. This application of the 3- OPT procedure does not improve the trip because the current trip is the shortest. At this stage the Peapod manager can form three new paths from the trip and repeat the procedure The Peapod manager was voule sequencing and improvement procedures to obtain delivery trips for each of the four trucks, as shown in Table S and Figures The total travel distance for the delivery schedule is 185 Table 5: Peapod Delivery Schedule Using Saving Matrix Method C 4400 DC & 11.6.7. DC DOS 10.2.1 DC 10/16 TECHNICAL NOTE: RATING AND SCHLINGEN TRANSPORTATION Figure 5: Delivery Routes at Peapod Using Savings Matrix Method Generalized Assignment Method The generalized assignment method is more sophisticated than the savings matrix method and usually results in better solutions when there are few delivery constraints to be satisfied. The procedure for routing and sequencing of vehicles consists of the following steps: 1. Assign seed points for each route. 2. Evaluate insertion cost for each customer 3. Assign customers to routes 4. Sequence customers within routes The first three steps result in customers being assigned to a vehicle, and the fourth step identifies a route for each vehicle to minimize the distance traveled. We discuss each step in greater detail in the context of the delivery decision at Peaped Assign Seed Points for Each Route 10/16 The goal of this step is to determine a seed point corresponding to the ce by cach vehicle using the following procedure 1. Divide the total load to be shipped to all customers by the number of trucks to obtain the average load allocated to cach seed point TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION 2. Starting at any customer, use a ray starting at the DC to sweep clockwise to obtain cones assigned to each seed point. Fach cone is assigned a load of ... 3. Within each come, the seed point is located in the middle (in terms of angle) at a distance equal to that of the customer with a partial or complete load allocated to the cone) farthest from the DC The manager at Peapod uses the procedure described carlier to obtain seed points for the deliveries described in Table 1. Given our vehicles and a total delivery lead across all customers of 666 units, the manager obtains an average load per vehicle of L. 666/4 - 166.5 units. The next step is to sweep clockwise with a ray emanating from the DC to obtain four cones, one for each vehicle, including all customers. The first step in defining the cones is to obtain the angular position of each customer. The angular position () of customer with coordinates (x) is the angle made relative to the x axis by the line joining the customer to the origin (DC), as shown in Figure 6 Figure 6: Angular Position of Customer i Yaxis (x) 11/16 X axis The angular position of each customer is obtained as the inverse tangent of the ratio of its Coordinate to the coordinate - tan/ (3) The inverse tangent can be evaluated using the Excel function ATAN) as -ATANY) (4) The angular position of cach customer is obtained using Equation 4, as shown in Table 6 TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION Table 6: Angular Positions of Peapod Customers ang Poton Com Customs Custa 4 12/16 Customer Customer Customer Cu 10 0.34 Customer 12 Customer 13 The next step is to sweep clockwise and order the customers as encountered. For Peapod, a clockwise sweep encounters customers in the order 1.3.4.2.5.6.7.11, 10, 8, 12, and 9. Starting with Customer 1, four cones, each representing a load of L-166.5 units are formed. Customers 1 and 3 combine to load 91 units on the truck. Customer 4 is encountered next in the sweep. Adding the entire load for Customer 4 would result in a load of 183, which is larger than 166.5. fo get a load of 166.5, only 166.5-91- 75.5 units of the load should be included. Thus, the first come extends to a point that is 755 / 92 of the angle between Customers 3 and 4 Customer 3 has an angular position of 1.13 and Customer 4 has an angular position of 0.93 resulting in an angle between them of 113-093 -0.20. The first come thus extends to an angle (755/92) * 0.20 beyond Customer with a resulting angle of 1.13 - (75.5/92) 0.20-097. The first come thus hus e end at Customer 1 (angle of 137) and the other at an angle of 97, as shown in Figure 7 Figure 7: Sweep Method to Locale Seed 1 Seed! 10 TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION The seed point is then located at an angle - (0.97 +1.57)/2 - 1.27 in the middle of the come at a distance equal to that of the farthest customer included. Customer 3 at a distance d, - 07-07 +(15-07* = 17, is the farthest customer in the first come. Given the distanced, the coordinates (X,Y) of the Seed Point I are thus given by X; -d.casa) - 17.0/0.95) - 10. and y, -dsinta) - 17 sin(0.95) - 14. The second come starts at the angle 097 and includes 92 - 75.5 = 16.5 units of the Customer 4 load. On sweeping clockwise, Customers 2, 5, 6, and 7 are encountered before a load of 166.5 is exceeded. To get a load of exactly 1665, only 41/56 of Customer 7 load is needed. The angular position of the end of the cone is thus 41/56 between Customers 6 and 7. Customer 6 is at angle of 0.00 and Customer 7 is at the angle of -0.12. The second come thus ends at an angle of 0.00 - 0.12 (41/56) - -0.09. The second one has one end at an angle of 0.33 and the other at magle of 009. The seed points dat an angle a, in the middle of the come that -10.33 -0.09)/2 -0.12. The distance de of the seed point for the second cone is the same as Customer 6 the farthest customer in the cone. This corresponds to a distance of d = 20 (see Table 2). The coordinates (X,Y) of the Seed Point 2 are thus given by: X:=d.cosa) = 20 c0.12) - 20, and yd sina) = 20 sin(0.12) = 2 Proceeding in the same manner the Peapod manager forms four comes to determine the four seed points, as shown in Table 8. Table 8: Seed Point Coordinates for Peapod Deliveries Y Code Evaluate Insertion Cost for Each Customer For each Seed Point S and Customer the insertion cost is the extra distance that would be traveled if the customer is inserted into a trip from the DC to the seed point and back and is given by Ca = DDC, 1)) - DDC.S.). where the Disid) function is evaluated as in Equation 1 For Customer and Seed Point 1, the insertion cost is given by CDi DC, 1) + Disil. S.) - DisDC, S.) = 12-10-17 = 5 TECHNICAL NOTE: ROUTING AND SCHEDELING IN TRANSPORTATION The Peapod manager evaluates all insertion costs, as shown in Table 9. Table 9: Insertion Costs for Peapod Deliveries for Each Customer and Seed Point Seed Part 1 Bed Seed Points Seat Pot Assign Customers to Routes The manager next assigns customers to each of the four vehicles to minimize total insertion cost while respecting vehicle capacity constraints. The assignment problem is formulated as an integer program and requires the following input ca insertion cost of Customer and Seed Point order size from Customeri, capacity of Vehicle Defing following decision variables: Ya = 1 if Customer is assigned to Vehicle 8,0 therwise The integer program for assigning customers to vehicles is given by subject to Zay, shkK, Yotor 1. for all and TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION For Peapod, the order sine for each customer is given in Table 1, the insertion cost is obtained from Table 9, and the capacity of each vehicle is 200 units. The manager at Peapod solves the integer program using the Solver tool in Excel to obtain the assignment of customers to vehicles as shown in Table 10 and Figure & The sequencing of customers within cach trip is obtained using the route sequencing and route improvement procedures discussed carlier. The total distance traveled for the delivery schedule is 159 Table 10: Peapod Delivery Schedule Using Generalized Assignment Method Laryn of TO Load on Truck 1 DC 12406 DC 2.5 67 DC DC, 9, 12, DC Figure 8: Delivery Routes at Peapod Using Generalized Assignment Method 84 LO 012 Applicability of Routing and Scheduling Methods The delivery schedule for Peapod resulting from the generalized assignment method in Table 10 is superior to the solution obtained from the savings matrix method in Table 5. The generalized assignment method is more sophisticated and generally gives a better solution than has no constraints other than vehicle is that it has dit generating good delivery schedules as more constraints are included. For example, if Peapod has 383 993 990 0 40 57 16 22 0.00 12 0.52 -1.41 3 15 57 47 56 03 04 O2 S. S TrH . 30 45 45 3 010 TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION strength als other constraints fixed time windows within which deliveries must be made to customers, it is difficult to use the generalized assignment method to generate a delivery schedule. The generalized assignment method is recommended if the constraints are limited to vehicle capacity or total travel time e savings matrix method is its simplicity and robustness. The method is simple enough to be easily modified to include deli delivery time windows and oth and robust enough to give a reasonably good solution that can be implemented in practice. Its main weakness is the quality of the solution. It is often possible to find better delivery schedules using more sophisticated methods. The savings matrix method is recommended in case there are many constraints that need to be satisfied by the delivery schedule. Software packages for transportation planning and routing and scheduling of deliveries are available from many supply chain software companies 16/16 VehicleRoutin... The DC nap C3 oldu JO13 5 old OI2 Lo13 must decide which tracks will deliver to which customers and the route that each truck will take en roule suencing and love cach chi'. Ale for cach vehicle. The manager decides to use the to route cach vehicle to minimize the distance turned to whicles and the fourth stepised 12 15 Tanar attempts to the woning either Customer Ser 10 to Route 6 TDC ST in dudarthwed ment method die SEN CHOPRA Technical Note: Routing and Scheduling in Transportation The most important operational decision related to transportation in a supply chain is the routing and scheduling of deliveries. Managers must decide on the customers to be visited by a particular vehicle and the sequence in which they will he visited. For example, an online grocer such as Peapod is built on delivering customer orders to their homes. The success of its operations hinges on its ability to decrease transportation and delivery costs while providing the promised level of responsiveness to the customer. Given a set of customer orders, the goal is to route and schedule delivery vehicles such that the costs incurred to meet delivery promises are as low as possible. Typical objectives when routing and scheduling vehicles include a combination of minimizing cost by decreasing the number of vehicles needed, the total distance traveled by vehicles, and the total travel time of vehicles, as well as eliminating service failures such as a delays in shipments In this note, routing and scheduling problems are discussed from the point of view of the manager of a Peapod distribution center (DC). After customers place orders for groceries online, staff at the IX his to pick the items needed and load them on trucks for delivery. The manager when making deliveries. The manager must e that notruck is overloaded and that promised delivery times are met One morning, the DC manager at leaped his delivery orders from thirteen different customers. The Dic's location, each customer on the grid, and the order size from each customer are shown in Table 1. The manager has four trucks, each capable of carrying up to 200 units. The manager believes that the delivery costs are strongly linked to the total distance the trucks travel and that the distance between two points on the grid is correlated with the actual distance a vehicle will travel between those two points. The manager thus decides to assign customers to trucks and identify a route for each truck, with a goal of minimizing the total distance traveled. This newspaper by Sunil Che Twils are develdy as the basis for Technical endal o vendements, we of primary date of the ineffective 2/16 TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION Table 1: Customer Location and Demand for Peapod Conde Warehouse Customer Customer Customer Customers Customer Customer Customer Customer 10 Customer 11 Customer 12 Customer 13 fird customers to be served by by cach vehicle and then decide on procedures are bed to decide on the following computational procedures to support his decision The savings matrix method The generalized assignment method We discuss how each method can be used to solve the routing and scheduling decision at Peaped Savings Matrix Method This method is simple to implement and can be used to assign customers to when delivery time windows or other constraints exist. The major steps in the savings matrix 1. Identify the distance matrix 2 Identify the wavings matrix 3/16 3. Assign customers to vehicles or routes 4. Sequence customers within routes The first three steps result in customers being TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION Identify the Distance Matrix The distance matrix identifies the distance between every pair of locations to be visited. The distance is used as a surrogate for the cost of traveling between the pair of locations. If the transportation costs between every pair of locations are known, the costs can be used in place of distances. The distance Distra, B) on a grid between a point with coordinates (y) and a point with coordinates Lys) is evaluated as Dist(A,B) - JAXBX+C8A- The distance between every pair of locations for Peapod is shown in Table 2. The distances between every pair of locations are next used to evaluate the savings matrix Table 2: Distance Matrix for Peapod Deliveries Cul Cul Cul Cul Custom Gust Cul Cul Cul Curl Cust 3/16 Custe 20 23 15 2016 Cut * 1916 Identify the Savings Matrix The sawings matrix represents the savings that accrue on consolidating two customers on single truck. Savings may be evaluated in terms of distance, time, or money. The manager at the Peaped DC constructs the savings matrix in terms of distance. A trip is identified as the sequence of locations a vehicle visits. The trip DC Custs DC starts at the DX, visits customer and returns to the DXC The savings Sexy) is the distance saved if the trips DC Custy DC and can be calculated by the following DC Custy DC are combined to a single trip, DC Custx Custy DC. These savings formula Sixy) = IDC, ) + DDC) - Distry). TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION For example, using Table 2 the manager evaluates $1.2) - 12 + 8 - 9 - 11. The savings matrix for the Peopod deliveries is shown in Table 3. The savings matrix is then used to assign customers to vehicles or routes Table 3: Savings Matrix for Peapod Deliveries 4/16 Cunt Dust Got Cut Out Cant Gus Gut Cont Cunt 3 15 220 Custs 10 14 18 100 Cunt 9 13 17 19 >> Cusi 7 12 10 275 Cust Cucto 10 11 12 5 11 14 Assign Customers to Vehicles or Routes When assigning customers to vehicles, the manager attempts to maximize savings. An iterative procedure is used to make this assignment. Initially cach customer is assigned to a separate route Two routes can be combined into franhle route if the total deliveries across both routes do not exceed the vehicle's capacity. At each iterative step, the until no more combinations are feasible At the first step, the highest savings of 34 results on combining truck Routes 6 and 11. The combined route is leasible because the total load is 16 + 91 - 107, which is less than 200. The two customers are thus combined on a single route, as shown in Figure 1, and the saving of 34 is eliminated from further consideration 5/16 TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION Figure 1: Delivery Route by Assigning 6 and 11 to a Common Route O3 O OS ... - O OS OS The next highest saving is 33, which results from adding Customer to the route for Customer 6. This is fonsible because the resulting load is 107 +36-163, which is less than 200 Thus, Customer 7 is also added to Route 6, as shown in Figure 2. Figure 2: Delivery Route by Assigning 6, 7, and 11 to a Common Route O3 O2 -0. 5/16 TECHNICAL NOTE: RATING AND SCHEDULING IN TRANSPORTATION The next highest saving now is 32, which results from adding Customer 10 to Route 6 (we need not consider the saving of 32 on combining Customer 7 with Customer 11 because both are already in Route 6). This, however, is not feasible, as Customer 10 has a delivery totaling 47 units and adding this amount to the de as already on Route 6 would exceed the ed the vehicle capacity of 200 highest savings 29 Each of these is also infeasible because of the capacity constraint. The next highest saving is 28, which results from combining Routes 3 and 4 which is feasible. The two routes are combined into a single route, as shown in Figure 3. Figure 3: Delivery Route by Assigning 3 and 4 to a Common Route 6/16 Continuing the iterative procedure, the manager partitions customers into four groups 1.3 4. 2.9.6.711). 13. 10, 12, 13), with each group assigned to a single vehicle. The next step is to identify the sequence in which each vehicle will visit customers Sequence Customers within Routes At this stage the manager's goal is to sequence customer visits so as to minimize the distance cach vehicle must travel Changing the sequence in which deliveries are made can have a significant impact on the distance traveled by the vehicles. Consider the truck that has been assigned deliveries to Customers 5, 10, 12, and 13. If the deliveries are in the sequence 5, 10, 12 13, the total distance traveled by the truck is 15+9+9+8+ 15 = 36 (distances are obtained from Table 2). In contrast, if deliveries are in the sequence 12, 5, 13, 10, the truck covers a larger distance of 11 +14+ 22 + 16 +16 - 79. Delivery sequences are determined by obtaining an TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION initial route sequence and then using route improvement procedures to obtain 7/16 with a lower transportation distance or cost ROUTE SEQUENCING PROCEDURES The Peapod manager can use route sequencing procedures to obtain an initial trip for cach vehicle. The initial trip is the improved using the route improvement procedure discussed later in this note. All route sequencing procedures are illustrated for the vehicle assigned to Customers 5, 10, 12 and 13. Farthen Given a vehicle trip (including a trip consisting of only the DXC) for each remaining customer, find the minimum increase in length for this customer to be inserted from all the potential points in the trip that they could be inserted. Then choose to actually insert the customer with the largest minimum increase to obtain a new trip. This step is referred to as a farthest insert because the customer furthest from the current trip is inserted. The process is continued until all remaining customers to be visited by the vehicle are included in a trip For the Peapod example, the manager is seeking a trip starting at the DC and visiting Customers 5, 10, 12, 13. The initial trip consists of just the DC with a length of O. Including Customer S in the trip adds 30 to its length, including Customer 10 adds 32, including Customer manager adds Customer lo te obtain a new to the 21. Using the farthese insent, the At the next step, inserting Customer 5 in the trip raises the length of the trip to a minimum of 40, inserting Customer 12 raises it to 36, and inserting Customer 13 raise it to 47. The manager thus inserts the farthest Customer 13 to obtain the new trip (DC, 10, 13, DXC) of length 47. This still leaves Customers 5 and 12 to be inserted. The minimum cost insertion for Customer 5 is (DC 5, 10, 13, DC) for a length of 5, and the minimum cost insertion for Customer 12 is (DC 10, 12, 13, DC) for a length of 48. The manager thus inserts Customer 5 to obtain a trip (DC, 5 10, 13, DC) of length 55. Customer 12 is then inserted between Customers 10 and 13 to obtain a trip (DC, 5, 10, 12 13, DC) of length 56. Nearers Given a vehicle trip (including a trip consisting of only the DXC) for each remaining customer, find the minimum increase in length for this customer to be inserted from all the potential points in the trip that they could be inserted. Insert the customer with the smallest minimum increase to current trip is inserted. The process is continued until all remaining customers the vehicle will visitare included in a trip For the Peapod example, the manager applies the nearest insert to the vehicle serving Customers 5, 10, 12 and 13. Starting at the DC the nearest customer is 12. Inserting Customer 12 results in the trip (DC, 12, DC) of length 22. At the next step inserting Customer results in a trip of length 40 inserting Customer 10 results in a trip of length 36, and inserting Customer 13 results in a trip of length 34. Customer 13 results in the smallest increase and is inserted to obtain a trip (DC, 12, 13, DC) of length 34. The met care insertion is Customer 10 resulting in a trip (DC, 10, 12, 13, DC) of length 45, and the final insertion of Customer 3 results in a trip (DC, 5, 10, 12 56 7/16 TECHNICAL NO ROSTING AND SCHEDULING IN TRANSPORTATION Neurer Neighbor Starting at the DC, this procedure adds the closest customer to extend the trip. At och step trip is built by adding the customer closest to the point last visited by the vehicle until all customers have been visited For the Peapod example, the customer closest to the DC is 12 (see Table 2). This results in the path DC, 12). The customer closest to Customer 12 is 13. extending the path to DC, 12, 13). The ficarest neighber of Customer 13 is 10 and the nearest neighbor of Customer 10 s 5. The Pcaped manager thus obtains a trip (DC, 12, 13, 10.5, DC) of length 59 In the sweep procedure, any point on the grid is selected (generally the DC itself) and a line is swept either clockwise or counterclockwise from that point. The trip is constructed by sequencing customers in the order they are encountered during the sweep The Peapod manager uses the sweep procedure with the line centered at the DC. Customers are encountered in the sequence 5, 10, 12, 13 to obtain the trip (DC, 5, 10, 12 13, DC) for a length of The initial trips resulting from each route sequencing procedure and their lengths are summarired in Table 4 Table 4: Initial Trips Using Different Route Sequencing Procedures at Peapod Houtenquereng Pretur 4 Farthest in DC, 10, 12, 13, DG DC., 12.DC DC, 12. 10.5.13, DC 8/16 ROUTE IMPROVEMENT PROCEDURES Route improvement procedures start with a trip obtained using a route sequencing procedure and improve the trip to shorten its length The Peapod manager next applies route improvement procedures to alter the sequence of customers visited by a vehicle and to shorten the distance a vehicle must travel. The two soule improvement procedures discussed are illustrated on the trip obtained as a result of the nearest neighbor procedure 2-OPT The 2-OPT procedure starts with a trip and breaks it at two places. This results in the trip breaking into two paths, which can be reconnected in two possible ways. The length for each reconnection is evaluated, and the smaller of the two is used to define a new trip. The procedure is continued on the new trip until no further improvement results For example, the trip (DXC, 12, 10, 5, 13, DC) resulting from the nearest meighbor procedure can be broken into two paths (13. DC) and 12, 10, 5) and reconnected into the trip (DC, 5, 10, 12, 13, DC), as shown in Figure 4. The new trip has length 56, which is an improvement over the existing trip TECHNICAL NOTERTING AND SCHEDULING IN TRANSPORTATIN Figure 4: Improving Route Sequencing Using 2-OPT 10 DC 9/16 12 13 J-OPT The 3-OPT procedure breaks a trip at three points to obtain three paths that can be reconnected to form up to eight different trips. The length of each of the eight possible trips is evaluated and the shortest trip is retained. The procedure is continued on the new trip until no improvement results. The trip (DC, 5, 10, 12, 13, DC) resulting from the 2-OPT procedure is broken up into three puths (DC., 101 and (12, 13) The various resulting trips on reconnecting the three paths are (DC 12, 13, 5, 10, DC) of length 65, (DC, 12, 13, 10, 5, DC) of length 81, and (DC, 13, 12, 5, 10, DC) of length 61. All other trips correspond to one of these four trips reversed. This application of the 3- OPT procedure does not improve the trip because the current trip is the shortest. At this stage the Peapod manager can form three new paths from the trip and repeat the procedure The Peapod manager was voule sequencing and improvement procedures to obtain delivery trips for each of the four trucks, as shown in Table S and Figures The total travel distance for the delivery schedule is 185 Table 5: Peapod Delivery Schedule Using Saving Matrix Method C 4400 DC & 11.6.7. DC DOS 10.2.1 DC 10/16 TECHNICAL NOTE: RATING AND SCHLINGEN TRANSPORTATION Figure 5: Delivery Routes at Peapod Using Savings Matrix Method Generalized Assignment Method The generalized assignment method is more sophisticated than the savings matrix method and usually results in better solutions when there are few delivery constraints to be satisfied. The procedure for routing and sequencing of vehicles consists of the following steps: 1. Assign seed points for each route. 2. Evaluate insertion cost for each customer 3. Assign customers to routes 4. Sequence customers within routes The first three steps result in customers being assigned to a vehicle, and the fourth step identifies a route for each vehicle to minimize the distance traveled. We discuss each step in greater detail in the context of the delivery decision at Peaped Assign Seed Points for Each Route 10/16 The goal of this step is to determine a seed point corresponding to the ce by cach vehicle using the following procedure 1. Divide the total load to be shipped to all customers by the number of trucks to obtain the average load allocated to cach seed point TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION 2. Starting at any customer, use a ray starting at the DC to sweep clockwise to obtain cones assigned to each seed point. Fach cone is assigned a load of ... 3. Within each come, the seed point is located in the middle (in terms of angle) at a distance equal to that of the customer with a partial or complete load allocated to the cone) farthest from the DC The manager at Peapod uses the procedure described carlier to obtain seed points for the deliveries described in Table 1. Given our vehicles and a total delivery lead across all customers of 666 units, the manager obtains an average load per vehicle of L. 666/4 - 166.5 units. The next step is to sweep clockwise with a ray emanating from the DC to obtain four cones, one for each vehicle, including all customers. The first step in defining the cones is to obtain the angular position of each customer. The angular position () of customer with coordinates (x) is the angle made relative to the x axis by the line joining the customer to the origin (DC), as shown in Figure 6 Figure 6: Angular Position of Customer i Yaxis (x) 11/16 X axis The angular position of each customer is obtained as the inverse tangent of the ratio of its Coordinate to the coordinate - tan/ (3) The inverse tangent can be evaluated using the Excel function ATAN) as -ATANY) (4) The angular position of cach customer is obtained using Equation 4, as shown in Table 6 TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION Table 6: Angular Positions of Peapod Customers ang Poton Com Customs Custa 4 12/16 Customer Customer Customer Cu 10 0.34 Customer 12 Customer 13 The next step is to sweep clockwise and order the customers as encountered. For Peapod, a clockwise sweep encounters customers in the order 1.3.4.2.5.6.7.11, 10, 8, 12, and 9. Starting with Customer 1, four cones, each representing a load of L-166.5 units are formed. Customers 1 and 3 combine to load 91 units on the truck. Customer 4 is encountered next in the sweep. Adding the entire load for Customer 4 would result in a load of 183, which is larger than 166.5. fo get a load of 166.5, only 166.5-91- 75.5 units of the load should be included. Thus, the first come extends to a point that is 755 / 92 of the angle between Customers 3 and 4 Customer 3 has an angular position of 1.13 and Customer 4 has an angular position of 0.93 resulting in an angle between them of 113-093 -0.20. The first come thus extends to an angle (755/92) * 0.20 beyond Customer with a resulting angle of 1.13 - (75.5/92) 0.20-097. The first come thus hus e end at Customer 1 (angle of 137) and the other at an angle of 97, as shown in Figure 7 Figure 7: Sweep Method to Locale Seed 1 Seed! 10 TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION The seed point is then located at an angle - (0.97 +1.57)/2 - 1.27 in the middle of the come at a distance equal to that of the farthest customer included. Customer 3 at a distance d, - 07-07 +(15-07* = 17, is the farthest customer in the first come. Given the distanced, the coordinates (X,Y) of the Seed Point I are thus given by X; -d.casa) - 17.0/0.95) - 10. and y, -dsinta) - 17 sin(0.95) - 14. The second come starts at the angle 097 and includes 92 - 75.5 = 16.5 units of the Customer 4 load. On sweeping clockwise, Customers 2, 5, 6, and 7 are encountered before a load of 166.5 is exceeded. To get a load of exactly 1665, only 41/56 of Customer 7 load is needed. The angular position of the end of the cone is thus 41/56 between Customers 6 and 7. Customer 6 is at angle of 0.00 and Customer 7 is at the angle of -0.12. The second come thus ends at an angle of 0.00 - 0.12 (41/56) - -0.09. The second one has one end at an angle of 0.33 and the other at magle of 009. The seed points dat an angle a, in the middle of the come that -10.33 -0.09)/2 -0.12. The distance de of the seed point for the second cone is the same as Customer 6 the farthest customer in the cone. This corresponds to a distance of d = 20 (see Table 2). The coordinates (X,Y) of the Seed Point 2 are thus given by: X:=d.cosa) = 20 c0.12) - 20, and yd sina) = 20 sin(0.12) = 2 Proceeding in the same manner the Peapod manager forms four comes to determine the four seed points, as shown in Table 8. Table 8: Seed Point Coordinates for Peapod Deliveries Y Code Evaluate Insertion Cost for Each Customer For each Seed Point S and Customer the insertion cost is the extra distance that would be traveled if the customer is inserted into a trip from the DC to the seed point and back and is given by Ca = DDC, 1)) - DDC.S.). where the Disid) function is evaluated as in Equation 1 For Customer and Seed Point 1, the insertion cost is given by CDi DC, 1) + Disil. S.) - DisDC, S.) = 12-10-17 = 5 TECHNICAL NOTE: ROUTING AND SCHEDELING IN TRANSPORTATION The Peapod manager evaluates all insertion costs, as shown in Table 9. Table 9: Insertion Costs for Peapod Deliveries for Each Customer and Seed Point Seed Part 1 Bed Seed Points Seat Pot Assign Customers to Routes The manager next assigns customers to each of the four vehicles to minimize total insertion cost while respecting vehicle capacity constraints. The assignment problem is formulated as an integer program and requires the following input ca insertion cost of Customer and Seed Point order size from Customeri, capacity of Vehicle Defing following decision variables: Ya = 1 if Customer is assigned to Vehicle 8,0 therwise The integer program for assigning customers to vehicles is given by subject to Zay, shkK, Yotor 1. for all and TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION For Peapod, the order sine for each customer is given in Table 1, the insertion cost is obtained from Table 9, and the capacity of each vehicle is 200 units. The manager at Peapod solves the integer program using the Solver tool in Excel to obtain the assignment of customers to vehicles as shown in Table 10 and Figure & The sequencing of customers within cach trip is obtained using the route sequencing and route improvement procedures discussed carlier. The total distance traveled for the delivery schedule is 159 Table 10: Peapod Delivery Schedule Using Generalized Assignment Method Laryn of TO Load on Truck 1 DC 12406 DC 2.5 67 DC DC, 9, 12, DC Figure 8: Delivery Routes at Peapod Using Generalized Assignment Method 84 LO 012 Applicability of Routing and Scheduling Methods The delivery schedule for Peapod resulting from the generalized assignment method in Table 10 is superior to the solution obtained from the savings matrix method in Table 5. The generalized assignment method is more sophisticated and generally gives a better solution than has no constraints other than vehicle is that it has dit generating good delivery schedules as more constraints are included. For example, if Peapod has 383 993 990 0 40 57 16 22 0.00 12 0.52 -1.41 3 15 57 47 56 03 04 O2 S. S TrH . 30 45 45 3 010 TECHNICAL NOTE: ROUTING AND SCHEDULING IN TRANSPORTATION strength als other constraints fixed time windows within which deliveries must be made to customers, it is difficult to use the generalized assignment method to generate a delivery schedule. The generalized assignment method is recommended if the constraints are limited to vehicle capacity or total travel time e savings matrix method is its simplicity and robustness. The method is simple enough to be easily modified to include deli delivery time windows and oth and robust enough to give a reasonably good solution that can be implemented in practice. Its main weakness is the quality of the solution. It is often possible to find better delivery schedules using more sophisticated methods. The savings matrix method is recommended in case there are many constraints that need to be satisfied by the delivery schedule. Software packages for transportation planning and routing and scheduling of deliveries are available from many supply chain software companies 16/16