1 / 14

Delivery Scheduling

Delivery Scheduling. Evaluation of Different solution methods Joonkyu Kang. Building a Scheduling Problem. Based on typical Fedex delivery situation Machines: delivery trucks Jobs: packages to be delivered Processing time: traveling time to the destination

leon
Download Presentation

Delivery Scheduling

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Delivery Scheduling Evaluation of Different solution methods Joonkyu Kang

  2. Building a Scheduling Problem • Based on typical Fedex delivery situation • Machines: delivery trucks • Jobs: packages to be delivered • Processing time: traveling time to the destination • Deadline: different for each type of package • Constrained to Manhattan, New York area only • Objective: two possible objectives • Minimizing tardiness of delivery • Maximizing the number of delivery • Quite similar, but can be different • Will concentrate on minimizing tardiness

  3. Simplifying Assumptions • Simplifying Manhattan area into a graph • Within the same zip code area, the traveling time is less than five minutes • Define vertices as different zip codes, and edges as distance between center of each area • Create edges only between adjacent areas • Since complete graph would take much more computational time • Packages of the same type and delivery trucks have identical characteristics • No further resource constraints • Ignore distance required to come back to the center

  4. Creating Data • Map • Start at Fedex Ship Center at 25 W, 45thst, New York, NY, 10036 • Use Google Map to calculate cost of edges • Packages • Based on the revenues obtained, calculate the approximate percentage of each package • Cost of each package delivery is 1 • Set deadlines based on package types • In this simulation, we will use 200 packages. • Trucks • Normally, the number of trucks are very small compared to the number of packages • Therefore here we use 10 trucks here.

  5. Poor Lower Bounds • If we have sufficient number of delivery trucks, we can assign one for each package • Total delivery time: 415.88 (Since every zipcode is in delivery locations) • Total lateness: 16.20 • Also, the largest lateness of all packages is 4.310, but it is not as good as above(with delivery time 14.31)

  6. Algorithm #1: EDD Rule • First notice this is a NP Problem • To minimize lateness, the simplest approach would be using EDD rule • The algorithm is: • First align jobs according to the due date • Assign each job to each empty truck • A greedy algorithm in terms of lateness

  7. Simulation Code • …for i=1:Count • [TotalTime Assignment] = min(TruckTime); • CurrentLoc = TruckLocation(Assignment); • MatLoc = find(Distance==CurrentLoc); • Destination = Packages(i,4); • DestLoc = find (Distance==Destination); • CurrentTime = Distance(MatLoc(1), DestLoc(1)); • TruckTime(Assignment)=TruckTime(Assignment)+CurrentTime; • TruckLocation(Assignment)=Destination; • JobAssign(Assignment,i)=i; • Tmp = TruckTime(Assignment)-Packages(i,3); • disp(Tmp); • Lateness = Lateness + max(TruckTime(Assignment)-Packages(i,3),0); • End…

  8. Result and Problems • Processing time of 1,638.2, Lateness of 12,322 • Problems • Extremely high lateness compared to the lower bound we obtained • Need to find a better lower bound • Need to compare to other methods • No consideration of processing time • Many factors affect the performance of the algorithm in this problem; not simply deadline.

  9. Algorithm #2: Greedy Algorithm • Here we process each package in order • However, at each turn the truck closest to the next package is assigned for delivery • Repeat until all packages are assigned

  10. Simulation Code • Destination = Packages(i,4); • DestLoc = find (Distance==Destination); • MinTruck = 0; • MinTruckNo = 0; • MinDistance = 99999; • for j=1:MNo • TempTruck = TruckLocation(j); • TempTruckLoc = find (Distance==TempTruck); • TempDist = Distance(DestLoc(1), TempTruckLoc(1)); • if TempDist < MinDistance • MinTruckNo = j; • MinTruck = TempTruckLoc(1); • MinDistance = TempDist; • end • end • CurrentTime = Distance(MinTruck, DestLoc(1)); • TruckTime(MinTruckNo)=TruckTime(MinTruckNo)+CurrentTime; • TruckLocation(MinTruckNo)=Destination; • JobAssign(MinTruckNo,i)=i; • Lateness = Lateness + max(TruckTime(MinTruckNo)-Packages(i,3),0);

  11. Result and Problems • Processing time of 480.68 total, with lateness of 2770.6 • Problems • Much better result, but with some lateness • The closest truck to the next delivery location is not always the best choice for tardiness • Need to incorporate choice of packages • Also, the completion time of trucks vary; therefore extra lateness occurs

  12. Conclusion • By using a greedy algorithm, we could obtain somewhat satisfying schedule in terms of processing time • However, we are not completely sure if the large lateness is because of the number of trucks or the problem of algorithms • We can expect to obtain the tardiness closer to the lower bound by making the completion time of each truck even

  13. Further Development • Critical Path Method: Applying Graph Theory • Define an appropriate sink node and apply the following algorithm: • For each truck, find a critical path to the sink • Delete the path previously used • Problems: is independent of the characteristics of packages. Data size gets enormous. • Check sensitivity of algorithms by changing factors • In order to have completion time even, mix different algorithms

  14. References • FedexWebsite(www.fedex.com/us ) • Google Map(maps.google.com) • Class Notes on NP-Completeness

More Related