A Decision Support System for a Real Logistic Problem - CiteSeerX

3 downloads 299546 Views 1MB Size Report
interactive Decision Support System was also developed to help the .... lot of computer time in order to find an optimal solution. ... C-B(365,24),C-A-B(355,48),.
ORP3 2001, PARIS, SEPTEMBER 26-29.

1

A Decision Support System for a Real Logistic Problem Rubén Ruiz, Concepción Maroto Abstract  The Vehicle Routing Problem is one of the most studied areas in literature, mainly because of the real world logistics and transportation problems related to it. In the present paper, a new two-stage approach for solving a specic real problem is shown, along with a decision making software. In the rst stage all the feasible routes are generated by means of an implicit enumeration algorithm, afterwards, all the information gathered is used by an integer programming model that determines the optimum set of routes for the given demand. The integer model uses a number of 0-1 variables ranging from 2,000 to 15,000 and gives optimum solutions in an average of 60 seconds. An interactive Decision Support System was also developed to help the user in the dierent aspects of the route scheduling process. In a worst-case scenario, the schedules obtained range from a 7% to 12% reduction in the distance travelled and from a 9% to 11% reduction in operational costs. Keywords  Transportation, Logistics, Integer programming, Compound feed. I. Introduction

L

OGISTICS and transportation account for a large portion of the economies of the developed countries. Because of that, governments and private companies focus their attention on developing systems that could aid the logistics managers in the pursuit of lower costs and greater exibility. There is a lot of research done in logistics and a lot of techniques are already developed, from the Travelling Salesman Problem to the Vehicle Routing Problem or complex dynamic routing problems. Much more comprehensive and detailed information about routing can be found in [1], [2], [3] and [4]. The Vehicle Routing Problem can be briey described as a problem in which a set of cities or clients have to be visited and hence, a set of routes have to be found, with an objective function that normally tries to optimize some given criteria like cost or distance and with some constraints to ensure that every client is visited and that routes start and nish at the depot. Describing in detail this problem is outside of the scope of this paper, instead, the reader can refer to [5], [6], [7], [8], [9], [10], [11], [12] and [13]. There are many variations of this problem, a few can be described as follows: • When all the vehicles that have to serve clients have the same capacity, the problem is known as the Capacitated Vehicle Routing Problem (CVRP). R. Ruiz is an assistant professor at the Statistics and Operational Research department in the Polytechnic University of Valencia, Spain. [email protected] C. Maroto is an associate professor at the Statistics and Operational Research department in the Polytechnic University of Valencia, Spain. [email protected]

If the costs of travelling from client i to client j are the same as the costs of travelling from client j to client i, the problem is then known as the Symmetric Vehicle Routing Problem, otherwise the problem is known as the Asymmetric Vehicle Routing Problem (a more general and realistic case). • When the routes include backhauls the problem becomes a Routing Problem with Backhauls (VRPB) ([14], [15]). • Another interesting variation is when the clients have to be visited within a specied time window, the problem is then called the Vehicle Routing Problem with Time Windows (VRPTW). This problem is much more complicated and some references can be found at [16], [17], [18], [19], [20], and [21]. Implantation of the techniques mentioned above in plants and factories is not so straightforward, as many of the techniques do not provide the exibility and responsiveness that a real logistic environment needs. The main objective of this work is to develop a tool for decision making in order to aid in the daily dispatching of feed compounds to clients of a real factory. This needs to have enough exibility and adaptability but without incurring in high costs, and everything within a reasonable amount of time. The remaining paper is organized as follows; in section II, an introduction to the company which is the subject of the study is given, along with the problem to be solved. In section III-A the rst attempt at solving the problem is shown, the problems that were found are stated as an example of a real-life situation. Section III-B explains the two-stage approach in solving the problem. In section IV a brief description of the decision support system developed is given, along with some results and tests. Finally, in section V some conclusions on the study are given. •

II. The problem

Nanta is the leading Iberian feed compounder, with production plants in Spain and, more recently, Portugal. It oers extensive ranges of feed for pigs and poultry and also supplies feed for ruminants, rabbits and other livestock. It currently operates a total of 11 factories. The plant subject of the study is located in Valencia, Spain. With the production problem already solved, the company's plant in Valencia faces other important issues, as it is the distribution of the feed compounds to its clients. Each day, more than 800,000 Kg. of compound feed have to be distributed to average of 70 clients out of a total of 700 dierent clients situated in a distance ranging from 15 to 450 Km. from the production plant. Every day, the orders received have to be delivered with

2

ORP3 2001, PARIS, SEPTEMBER 26-29.

an outsourced truck eet at the next day. Furthermore, between 5 and 30 rush orders are received during the day, causing a degree of havoc both at the production and logistic level. Each truck has its unique characteristics and capacities, the capacities ranging from 12 Tn. to 24 Tn. Every truck has a number of watertight compartments used to carry dierent kinds of feed compounder, as an example, the 24 Tn. truck has 6 compartments, each one capable of carrying up to 4 Tn. of product. The company uses a complex function when evaluating the cost of a given route, it can be explained as follows; The company pays to the truck company a given amount of money depending on the distance travelled to the nal stop of the truck. With that distance, a corresponding price per Tn. of load is looked up in a table, and then multiplied by the number of Tn. that the truck carried initially, which nally gives the amount to be paid. There is an important factor to be taken into account here, if a truck travels half empty, the company would have to pay a minimum load, for example, if a 24 Tn. trucks carries 20 Tn. the company would have to pay for 23 Tn, thus paying 3 Tn. of air. In addition, a lot of constraints have to be considered; the maximum allowed weight of the trucks cannot be exceeded, some trucks cannot travel to some clients or to pass along some roads, bridges or tunnels because of their size and/or weight. Also, the company sets the maximum distance to be travelled by a truck in a single trip to 450 Km and the minimum order weight of 4 Tn. III. The Model

Given the previous constraints, an initial approach to solve the problem was to develop an integer programming model. The parameters and objective function of model can be seen as follows:

N= Cij = Xij =

½

number of clients, or truck stops. distance between client i and client j

1, 0,

if a truck goes from client i to client j otherwise

where i, j ∈ {0, . . . , N }, being 0 the origin or depot. Min

N X N X

Cij Xij

i=1 j=1

A number of constraints had to be added to ensure that; every client is visited exactly once, every route's start and nish points are the same and there are no partial routes, i.e., routes that start and nish in a place dierent from the depot. As we can see, this is a partial model for the VRP, or Vehicle Routing Problem, we tried this rst, as an initial attempt to evaluate the following possibilities. This model proved to be inappropriate for many reasons, some of which can be resumed as follows:

Ineciency: The model uses N 2 variables and it needs a lot of computer time in order to nd an optimal solution. • No Complete: The model does not take into account all the signicant aspects of the problem, situation that aects the measure of eectiveness. • Objective function: Minimizing the total distance travelled is not exactly the goal, we need to minimize the cost of the routes. In order to lower the computing time needed, a solution is to make a set partitioning of the problem. This can be done by separating the dierent clients into 3 big regions and 10 smaller zones depending on the client's location. This partition proved to be feasible in terms of computing time but it introduced some degree of complexity and a signicant degradation of the solution because each region or zone is solved independently from the adjacent regions, which can lead to many short routes running along the edges of zones that could be coalesced into a single one, this fact is depicted in Figures 3 and 4. •

As an alternative, we thought that an implicit enumeration of the routes would lead to a new model with much fewer variables that could be solved in a reasonable amount of time. At a rst glance, enumerating the routes might seem an inappropriate approach as the following example shows: A truck cannot visit more than 6 clients since it cannot carry more than 6 dierent kinds of feed compounder and the minimum order weight is 4 Tn. hence the number of possible routes for 50 clients and 6 unloads per route is:

V50,6 +V50,5 +V50,4 +V50,3 +V50,2 +V50,1 = 11, 701, 202, 500 Obviously this is a very big number. However, only a small fraction of the possible routes are actually feasible. For example, a possible route can be one with six clients located very far from each other and demanding 24 Tn. of feed compound each. The resulting route would require a truck carrying 144 Tn. of product and probably travelling for more than 700 Km. this is clearly a non feasible route. The constraints of the problem can be reminded as: • The number of routes with six clients is very low, not every route can have six stops since the maximum allowed load of the trucks is limited. • A route can be no longer than 450 Km. in length, which also limits the number of routes with many stops. • Some trucks can not be used to visit some clients due to constraints in weight or small roads, bridges or tunnels. Taking into account these constraints, we found that for the previous example, the actual number of feasible routes was only 2,504. A graphical example can be seen as follows: Let us consider an example with only three clients, named A, B and C. The feed compound requirements for these clients are 24, 16 and 8 Tn. respectively. The distance matrix for this three clients and Nanta can be seen in the following table:

RUIZ AND MAROTO: A DECISION SUPPORT SYSTEM FOR A REAL LOGISTIC PROBLEM

Nanta A B C

Nanta 0 50 60 70

A 50 0 100 125

B 60 100 0 235

C 70 125 210 0

TABLE I Distance matrix for the simplified example.

Now let's consider every possible route for these clients, the resulting routes can be seen in Figure 1.

3

the dierent routes, giving for each route the set of clients it visits, the total distance travelled, the total cost of the route, and the kind of truck to be used. The routes are characterized as a set of clients that are visited in the order given. Once all the feasible routes are listed, we need a model that would choose the best set of routes from the feasible route set, being the only constraints type that every client has to be visited by exactly one route, and being the objective function minimizing the total cost of the routes. This new model is explained below:

POSSIBLE ROUTES: 15 1 ST sto p

2 N D stop

3 RD sto p

R oute s ge nera ted (origin and destination Nanta)

B

C

C

B

A

C

C

A

A

B

B

A

A

B

C

A (100,24), A-B(210,40), A-C(245,32),A-B-C(430,48), A-C-B(480,48)

N= C= P Pnc = Costn =

B (120,16), B-A(210,40), B-C(340,24),B-A-C(355,48), B-C-A(445,48)

C (140,8), C-A(245,32), C-B(365,24),C-A-B(355,48), C-B-A(455,48)

number of feasible routes. number of orders. ½ 1, if the route n visits client c 0, otherwise Cost of the route n. n ∈ {1, . . . , N }, c ∈ {1, . . . , C}

½ Xn =

Fig. 1. Possible routes for the example.

As we can see, not every possible route is feasible, for example, the route Nanta-A-B-Nanta is 210 Km. long, which is feasible, but it requires a truck carrying 40 Tn. of compound feed, which is not possible, thus, that route is non feasible. By applying the same rule to all the possible routes we can nd that the feasible routes are only 6, as depicted in Figure 2. FEASIBLE ROUTES: 1 ST stop

2 N D s top

6

R ou tes g en e ra te d (origin and destination Nanta)

A (100,24) A

B (120,16), B-C(340,24) B C A C

C (140,8), C-A(245,32), C-B(365,24)

B

1, if the route n is done 0, otherwise

Min

N X

Costn Xn

n=1

N X

P Pni Xn = 1, ∀i, i ∈ {1, . . . , C}

n=1

All the parameters are calculated by the implicit enumeration algorithm, so any changes in the specication could be done in the algorithm without having to change the model. This model proved to be extremely fast and robust, the solution times were always under 1 minute1 for normal tests and under 5 minutes for models with over 25,000 binary variables. All the models were solved with LINGO v4 ([22], [23]). It is also worth to notice that the model provides the optimum set of routes, i.e. there is no better way of delivering the compound feed under the cost consideration. The model explained is appropriate for the situation studied since it produces the relevant outputs at the lowest possible cost and in the time frame required for eective decision making. IV. Decision Support System

Fig. 2. Feasible routes for the example.

Once the algorithm for the implicit enumeration and the model proved to work, we needed to put it all together under some software application so the logistics manager at

As a result, we developed an algorithm that given a set of orders and clients it would do an implicit enumeration of

1 A PC computer was used for all the tests in this paper, with a Pentium II processor running at 350Mhz and a main memory size of 128Mbytes.

4

ORP3 2001, PARIS, SEPTEMBER 26-29.

the plant could use it. We developed a software application with Delphi 4.0 using the Dynamic Link Libraries (DLL) that come with LINGO v4. We wanted a exible Decision Support System, so every aspect of the route scheduling process was considered, along with the exibility needed in a dynamic environment like the one considered. The solution process with the DSS can be explained as follows: First, the user can select the set of orders that are to be delivered (Figure 7). The user can change at any moment the default distance between each town pair or the possibility of travelling between each pair of towns, by using this we can consider many situations, like asymmetric travelling distances, allowing to travel to a town but not allowing to travel back, considering bad road conditions and more. (Figures 8 and 9). After selecting the orders and changing the distance and accessibility data (if needed) the user can run the solver, a very useful window shows the progress of the dierent stages of the solution process (Figure 10). When the model is solved a solution screen is shown (Figure 11). At this stage the user can select which routes are good and which are not, he might even add orders to or substract orders from the initial set. At every stage, data can be changed. The DSS responds to data changes, as well as to condition changes with a color coded button at the toolbar showing that the last optimum solution obtained might have changed under the new condition. With this tool the user can make what-if analysis and determine which orders are expensive to deliver in a given day, or he/she can obtain a more rened solution after a number of tries, or by postponing and order if it is too expensive to serve in a given day, or by serving future orders in the present day if it is less expensive than to do it separately. Furthermore, the DSS contains all the coding necessary to export the results to common formats, like Word documents, Excel spreadsheets, RTF text or HTML table pages. We tested the DSS and the model for 10 dierent days picked randomly of which we had historical data so we could compare the actual route schedules obtained by the DSS and the routes that were actually scheduled. The resulting graphs can be seen in Figures 5 and 6. The results show that the company could have saved from a 9% to a 11% in operational costs and from a 7% to 12% reduction in the distance travelled by trucks. This is a worst-case scenario, because the logistics manager could have used the DSS to enhance and rene the solution much better than us, as we only did single run tests, without using all the possibilities of the DSS. V. Conclusions

In the present paper we aimed at solving a real problem in a real life company by providing a Decision Support System tool for eective decision making.

The model used by the tool is simple, in the way that the model is easily understood by the decision maker. The model is also complete, easy to manipulate, and easy to communicate with other software as well as user friendly ([24]). We showed that given the correct generation of the variables of a model (feasible routes), a real life problem can be solved, with only minor simplications, to an optimal solution, in computing times of about 1 minute in most of the cases. The logistics manager can now use the DSS and have accuracy and speed over the route scheduling process, allowing him or her to improve the solution and to better control the rush orders just by adding them and by running again the DSS, obtaining a new optimum solution in a very short amount of time. The worst case scenario shows that by using the DSS, savings of 180,000 annually can be obtained only in the company's plant located in Valencia, Spain. This of course does not include the benets of the iteration and renement that the logistics manager can achieve with the DSS or other non-tangible benets like better customer satisfaction, greater response times to rush orders, availability of accurate information, exibility and less manpower required. Acknowledgments

The authors would like to acknowledge the support and colabaration received from D. Juan LaGuarda and D. Antonio Calatayud, from the Nanta factory located in Valencia, Spain. References

M.O. Ball, T.L. Magnanti, C.L. Monma, and G.L. Nemhauser, Eds., Network Routing, vol. 8 of Handbooks in Operations Research and Management Science, Elsevier, 1995. [2] Julien Bramel and David Simchi-Levi, The Logics of Logistics, Theory, Algorithms, and Applications for Logistics Management, Springer Series in Operations Research. Springer-Verlag New York Inc., second edition, 1999. [3] Teodor Gabriel Crainic and Gilbert Laporte, Eds., Fleet Management and Logistics, Centre For Research On Transportation, 25th Anniversary Series. Kluwer Academic Publishers, 1999. [4] Bill Schineller, Transportation Operations, OR/MS Today, vol. 25, no. 6, pp. 3034, Dec. 1998. [5] A. Bachem, W. Hochstättler, and M. Malich, Simulated Trading, A New Parallel Approach for Solving Vehicle Routing Problems, in Parallel Computing: Trends and Applications - ParCo93, 1994. [6] Dimitris Bertsimas and David Simchi-Levi, A New Generation of Vehicle Routing Research: Robust Algorithms, Addressing Uncertainty, Operations Research, vol. 44, no. 2, pp. 286303, 1996. [7] Bernd Billnheimer, Richard F. Hartl, and Christine Strauss, Applying the Ant System to the Vehicle Routing Problem, in 2nd International Conference on Metaheuristics - MIC97, 1997. [8] Bruno de Backer, Vincent Furnon, Philip Kilby, Patrick Prosser, and Paul Shaw, Solving Vehicle Routing Problems using Constraint Programming and Metaheuristics, Journal of Heuristics, vol. 1, no. 16, 1997. [9] M. Desrochers, J. K. Lenstra, M. W. P. Savelsbergh, and L. Stougie, Towards a Model and Algorithm Management System for Vehicle Routing and Scheduling Problems, Tech. Rep., Georgia Institute of Technology, Nov. 1998. [10] Hayri Önal and Benito M. Jaramillo, Two Formulations of the Vehicle Routing Problem: An Empirical Application and Computational Experience, Logistics and Transportation Review, vol. 32, no. 2, pp. 177190, 1995. [1]

RUIZ AND MAROTO: A DECISION SUPPORT SYSTEM FOR A REAL LOGISTIC PROBLEM

[11] César Rego, A Subpath Ejection method for the Vehicle Routing Problem, Tech. Rep., Computer Science Department, Universidade Portualense, 1998. [12] Sam R. Thangiah, Ibrahim H. Osman, Rajini Vinayagamoorthy, and Tong Sun, Algorithms for the Vehicle Routing Problems with Time Deadlines, American Journal of Mathematical and Management Sciences, vol. 13, no. 3, pp. 323355, 1995. [13] Jiefeng Xu and James P. Kelly, A Network Flow-Based Tabu Search Heuristic for the Vehicle Routing Problem, Transportation Science, vol. 30, no. 4, pp. 379393, 1996. [14] Aristide Mingozzi and Simone Giorgi, An Exact Method for the Vehicle Routing Problem with Backhauls, Transportation Science, vol. 33, no. 3, pp. 315329, Aug. 1999. [15] Paolo Toth and Daniele Vigo, An Exact Algorithm for the Vehicle Routing Problem with Backhauls, Transportation Science, vol. 31, no. 4, pp. 372385, Nov. 1997. [16] Julien Bramel and David Simchi-Levi, Probabilistic Analyses and Practical Algorithms for the Vehicle Routing Problem with Time Windows, Tech. Rep., Dept. of Industrial Engineering and Operations Research, Columbia University, NY., July 1993. [17] Julien Bramel and David Simchi-Levi, On the Eectiveness of Set Covering Formulations for the Vehicle Routing Problem with Time Windows, Operations Research, vol. 32, pp. 295301, 1997. [18] Cor de Jong, Goos Kant, and André van Vliet, Ecient Implementations of the Savings Method for the Vehicle Routing Problem with Time Windows, manuscript, 1996. [19] Cor de Jong, Goos Kant, and André van Vliet, On Finding Minimal Route Duration in the Vehicle Routing Problem with Multiple Time Windows, manuscript, 1996. [20] Jörg Homberger and Hermann Gehring, Two Evolutionary Metaheuristics for the Vehicle Routing Problem with Time Windows, Information Systems & Operational Research, vol. 37, no. 3, pp. 297318, 1999. [21] Sam R. Thangiah, Vehicle Routing Problem with Time Windows using Genetic Algorithms, vol. 2 of Application Handbook of Genetic Algorithms: New Frontiers, pp. 253277, CRC Press, 1995. [22] Lindo Systems Inc., 1415 North Dayton Street, Chicago, IL, LINGO 4.0 User's Manual, 1998. [23] Linus Schrage, Optimization Modeling with LINGO, Lindo Systems Inc., second edition, 1998. [24] Hans G Daellenbach, Systems and decision making: a management science approach, John Wiley & Sons, 1994.

5

6

ORP3 2001, PARIS, SEPTEMBER 26-29.

Appendix I. Figures

D ista n c e T ra v e lle d C o m p a ris on 4.400

To tal D is ta nce Tr av e lle d (K m )

4.200

4.000

3.800

3.600

3.400

3.200

DSS CO MPA NY 3.000 21 -s ep-9 9

2 2-s ep- 99

10 -m ay-99

1 4-m ay-9 9

02- feb-9 9

2 5-feb- 99

05-ago- 99

16- ago-99

12 -nov-9 9

3 0-nov- 99

Te st D a y

Fig. 5. In this graph a comparison between the cost of the routes scheduled by the company and the routes obtained by the DSS is shown. Fig. 3. Two routes running very close together in two adjacent zones.

C o st C o m p a r is o n

7.800

To tal R oute C os t (• )

7.300

6.800

6.300

5.800

DSS CO MP ANY 5.300 21 -s ep-9 9

2 2-s ep- 99

10 -m ay-99

1 4-m ay-9 9

02- feb-9 9

2 5-feb- 99

05-ago- 99

16- ago-99

12 -nov-9 9

3 0-nov- 99

Te st D a y

Fig. 4. A much better solution obtained by coalescing the previous routes.

Fig. 6. In this graph a comparison of the distance in Km. travelled by the routes scheduled and the routes obtained by the DSS is shown.

Fig. 7. Order selection screen showing the orders to be arranged into routes.

RUIZ AND MAROTO: A DECISION SUPPORT SYSTEM FOR A REAL LOGISTIC PROBLEM

7

Fig. 8. Distances screen, in which the user can change the distance between the clients.

Fig. 9. Accessibility screen, in this screen the user can select which transitions between clients are allowed.

Fig. 10. Solution in process screen, which shows the current state of the solution process.

Fig. 11. Solution screen, in this nal stage, the routes obtained by the DSS are shown.

Suggest Documents